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.
W przykładowym programie najpierw tworzony jest wspornik z IPE 200. Jest on poddany obciążeniu na pręcie 3,5 kN i przeprowadzane są obliczenia.
Ta tabela jest dostępna w wierszu 34:
Metoda ResultTables.NodesDeformations () wymaga 3 argumentów. Najpierw określa się, jakiego rodzaju wyniki mają zostać odczytane. Mogą być to wyniki
ResultTables.NodesDeformations ()
sein.
Następnie podany zostanie numer przypadku obciążenia, kombinacji obciążeń itp. W końcu, numer węzła zostaje przeniesiony do metody.
Wartość zwrotna d metody jest listą zawartą w słowniku. W wierszu 37, d jest wyświetlane w całości. Wiersz 40 pokazuje, w jaki sposób można uzyskać dostęp do określonej wartości. [0] jest indeksem listy, a [' displacement_z'] jest kluczem słownika.
d
[0]
[' displacement_z']
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:
Program RWIND Simulation tworzy obwiednię w postaci siatki bryłowej wokół modelu z RFEM.
Ze względu na przepływ wiatru wokół tej obwiedni, powstaje dyskretny rozkład ciśnienia powierzchniowego, którego wartości są naprzemiennie dodatnie i ujemne. W RWIND Simulation ciśnienie to jest wyraźnie przedstawione na zewnątrz obwiedni bryły.
Podczas przenoszenia danych do RFEM, program przekształca te ciśnienia na zewnętrzną powierzchnię obwiedni bryły z powrotem na model konstrukcyjny w programie RFEM. W tym przypadku ciśnienia powierzchniowe są ponownie przekształcane
Podsumowując, ciśnienia wewnętrzne i zewnętrzne elementu konstrukcyjnego do obciążeń netto zostają uproszczone na potrzeby obliczeń w programie RFEM.
W przypadku elementów "dwustronnych" nacisk przypowierzchniowy w programach RFEM i RWIND Simulation zawsze będzie różny ze względu na połączenie nacisków przypowierzchniowych w wynikające z tego ciśnienia.
Ponadto podczas interpretacji ciśnienia wiatru w programie RFEM należy uwzględnić orientację układów współrzędnych elementów. Wyświetlane ciśnienia nie odnoszą się do znaku (dodatni - ciśnienie, ujemne - ssanie), jak w RWIND Simulation, ale do lokalnego układu współrzędnych odpowiednich elementó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)
Model przyciemnienia Jak w RFEM5.modelUstaw model = GetObject(, "RFEM5.Model")model.GetApplication.LockLicenseOn Error GoTo eDane Dim As IModelDataUstaw dane = model.GetModelDataPręty Dim (0) As RFEM5.Member pręty (0) .Nr = 3pręty (0) .Linia nr = 12Members (0) .Type = ResultBeamType Members (0) .StartCrossSectionNo = 1pręty (0) .EndCrossSectionNo = 1 Members (0) .Comment = "belka wynikowa 1"data.PrepareModificationdata.SetMembers Membersdata.FinishModification
Dim iMem As IMemberUstaw iMem = data.GetMember (3, AtNo) Dim iRMem As IResultBeamUstaw iRMem = iMem.GetExtraData Dim RMem jako belka wynikowaRMem = iRMem.GetData RMem.IncludeSurfaces = "1"RMem.IncludeSolids = "wszystkie" RMem.Integrate = InternalCuboidGeneral Dim params (0 do 3) As Double RMem.Parametry = parametryRMem.Parametry (0) = 0.5RMem.Parametry (1) = 0.5RMem.Parametry (2) = 0,1RMem.Parametry(3) = 0,1 data.PrepareModificationiRMem.SetData RMemdata.FinishModification
Ja, Lagerkräfte einzelner Flächen können im RFEM-Tabellenfenster in Tabelle "4.21 Flächen - Kontaktspannungen" angezeigt werden. Tabelę tę można otworzyć klikając prawym przyciskiem myszy jedną z zakładek tabeli „4.xx - Wyniki” (patrz Rysunek 01).
Oprócz naprężeń kontaktowych widoczne są również odpowiednie siły podporowe (patrz Rysunek 02).