RFEM 6 jest programem głównym pakietu oprogramowania, który służy do analizy konstrukcji przy użyciu MES. Dalsze analizy oraz wymiarowanie przeprowadzane jest w odpowiednich rozszerzeniach. Program główny RFEM 6 służy do definiowania konstrukcji, materiałów i obciążeń płaskich i przestrzennych układów konstrukcyjnych składających się z płyt, ścian, powłok i prętów. Program umożliwia również tworzenie konstrukcji mieszanych oraz modelowanie elementów bryłowych i kontaktowych.
RSTAB 9 to wydajne oprogramowanie do obliczeń konstrukcji szkieletowych 3D, odzwierciedlające aktualny stan wiedzy i pomagające inżynierom sprostać wymaganiom współczesnej inżynierii lądowej.
Często zbyt długo zajmujesz się obliczaniem przekrojów? Oprogramowanie firmy Dlubal i program samodzielny RSECTION ułatwiają pracę, określając i przeprowadzając analizę naprężeń dla różnych przekrojów.
Czy zawsze wiesz, skąd wieje wiatr? Oczywiście od strony innowacji! RWIND 2 to program, który wykorzystuje cyfrowy tunel aerodynamiczny do numerycznej symulacji przepływu wiatru. Program symuluje przepływ wokół dowolnej geometrii budynku i określa obciążenia wiatrem na powierzchnie.
Szukasz narzędzia do przeglądu stref obciążenia śniegiem, wiatrem i trzęsieniem ziemi? Dobrze trafiłeś! Skorzystaj z narzędzia do geolokalizacji do szybkiego i skutecznego definiowania obciążenia śniegiem, prędkości wiatru, obciążenia trzęsieniem ziemi, zgodnie z Eurokodem i innymi międzynarodowymi normami.
Chcesz wypróbować możliwości programów Dlubal Software? To Twoja szansa! Dzięki 90-dniowej pełnej wersji, możesz w pełni przetestować wszystkie nasze programy.
Odkształcenia prętów można odczytać na przykład za pomocą funkcji "GetMemberDeformations (). Funkcja ta oczekuje numeru, rodzaju metody liczenia prętów (nr pręta/numer na liście) oraz układu współrzędnych, który ma zostać zastosowany. Można wybrać, czy ma zostać zastosowany lokalny układ osi, główny układ osi czy globalny układ współrzędnych:
Sub test_results_member_axis ()Dim iApp As RFEM5.ApplicationUstaw iApp = GetObject(, "RFEM5.Application")iApp.LockLicenseDim iMod As RFEM5.IModel3Set iMod = iApp.GetActiveModelOn Error GoTo e'pobierz interfejs do obliczeńDim iCalc As RFEM5.ICalculation2Ustaw iCalc = iMod.GetCalculation'pobierz interfejs do wynikówDim iRes As RFEM5.IResults2Ustaw iRes = iCalc.GetResultsInFeNodes (LoadCaseType, 1)'otrzymuj deformacje w lokalnym układzie współrzędnychDim memDefs_L () As RFEM5.MemberDeformationsmemDefs_L = iRes.GetMemberDeformations (1, AtNo, osie lokalne)'otrzymuj deformacje w globalnym układzie współrzędnychDim memDefs_G () As RFEM5.MemberDeformationsmemDefs_G = iRes.GetMemberDeformations(1, AtNo, GlobalAxes)'otrzymuj deformacje w głównym układzie współrzędnychDim memDefs_P () As RFEM5.MemberDeformationsmemDefs_P = iRes.GetMemberDeformations (1, AtNo, LocalPrincipalAxes)e:Jeżeli Err.Number <> 0 to MsgBox Err.description, vbCritical, Err.SourceiMod.GetApplication.UnlockLicenseUstaw iMod = NicZakończ sub
Mały program odczytuje lokalne odkształcenia (memDefs_L) w osiach pręta i osiach głównych (memDefs_P) oraz globalne odkształcenia w osiach pręta (memDefs_G).
Podobnie jak wszystkie inne wyniki, wypadkową przekroju można odczytać poprzez IModel3 → ICalculation2 → IResults2. Interfejs do wyników zapewnia funkcja GetResultant, która po podaniu numeru przekroju i rodzaju rozkładu wyników zwraca strukturę ResultantForce. Na konstrukcję tę składają się, między innymi, wektory sił i momentów:
Naprężenia powierzchni można wyświetlić za pomocą interfejsu COM. Najpierw potrzebujesz interfejsu do modelu (IModel), a następnie interfejsu do obliczeń (ICalculation2). Za pomocą tego interfejsu można uzyskać interfejs dla wyników (IResults2):
Sub transitions_surfaces_example ()Dim iApp As RFEM5.ApplicationDim iModel As RFEM5.modelSet iModel = GetObject(, "RFEM5.Model")W przypadku błędu Idź do EJeśli nie iModel jest niczym, to' pobierz interfejs z modeluUstaw iApp = iModel.GetApplicationiApp.LockLicense ' pobierz interfejs z obliczeńDim iCalc As RFEM5.ICalculation2 Set iCalc = iModel.GetCalculation ' pobierz interfejs z wyników z przypadku obciążenia 1Dim iRes As RFEM5.IResults2Ustaw iRes = iCalc.GetResultsInFeNodes (LoadCaseType, 1) ' uzyskać naprężenia równoważneDim str_equ () As RFEM5.SurfaceEquivalentNaprężeniastr_equ = iRes.GetSurfaceEquivalentNaprężenia(1, AtNo, Hipoteza VonMisesa) End IfE:Jeżeli Err.Number <>0 toMsgBox Err.Number & „ ” & Err.descriptionEnd IfJeśli nie iApp to nic, toiApp.UnlockLicenseEnd If
Funkcja GetSurfaceEquivalentNaprężenia wymaga określenia hipotezy obliczeniowej. W tym przypadku wyświetlane są wyniki naprężeń von Misesa. Należy pamiętać, że interfejs COM wykorzystuje jednostki SI, więc naprężenie jest przekazywane w N/m².
Sub test_section ()' pobierz interfejs z otwartego modelu i zablokuj licencję/programDim iModel As RFEM5.IModel3 Set iModel = GetObject(, "RFEM5.Model") iModel.GetApplication.LockLicense W przypadku błędu Idź do E Dim iSecs As RFEM5.ISectionsUstaw iSec = iModel.GetSections ()
' najpierw usuń wszystkie sekcjeiSecs.PrepareModification iSecs.DeleteObjects („Wszystkie”)iSecs.FinishModification ' ustawić przekrój na bryleDim s Jak w RFEM5.Sectionsek.EdgePointA.X = 2sek.EdgePointA.Y = 5sek.Punkt krawędzi A.Z = 0sek.EdgePointB.X = 2sek.EdgePoint BY = 8sek.Punkt krawędzi B.Z = 0 sek.no = 1sec.Name = "przekrój bryły"sec.Plane = GlobalPlaneInPositiveXsec.ShowValuesInIsolines = Falsesec.Type = SectionOnSolidSectionLinesek.ObjectList = "1" iSecs.PrepareModificationiSecs.SetSection sekiSecs.FinishModification
' ustawić przekrój na powierzchnisek.EdgePointA.X = 2sek.EdgePointA.Y = 0sek.Punkt krawędzi A.Z = 0sek.EdgePointB.X = 2sek.EdgePoint BY = 3sek.Punkt krawędzi B.Z = 0 sek.no = 2sec.Name = "przekrój powierzchni"sec.Plane = GlobalPlaneInPositiveX sec.ShowValuesInIsolines = Truesek.Typ = przekrój przez płaszczyznę powierzchniowąsek.ObjectList = "1" Wektor.s.X = 0sek.Wektor.Y = 0sek.Wektor.Z = 1 iSecs.PrepareModificationiSecs.SetSection sekiSecs.FinishModification
' uzyskaj wyniki Dim iCalc As ICalculation2 Set iCalc = iModel.GetCalculation Dim iRes As IResults2Ustaw iRes = iCalc.GetResultsInFeNodes (LoadCaseType, 1) Dim secRes () As RFEM5.SectionResultsecRes = iRes.GetResultsInSection (2, AtNo,Siła ścinania, Ciągły rozkład wewnątrz obiektów, Fałsz)