Программа для расчёта конструкций RFEM 6 является основой нашей модульной системы программного обеспечения. Основная программа RFEM 6 используется для задания конструкций, материалов и нагрузок плоских и пространственных конструктивных систем, состоящих из плит, стен, оболочек и стержней. Программа также позволяет создавать комбинированные конструкции, а также моделировать тела и контактные элементы.
RSTAB 9 - это мощная программа для расчёта и проектирования 3D конструкций балок, каркасов или ферм, которая которая помогает инженерам-строителям соответствовать современным требованиям и отражает последние тенденции в области строительного проектирования.
Вы часто тратите слишком много времени на расчёт сечений? Программное обеспечение Dlubal и автономная программа RSECTION облегчают вашу работу, определяя характеристики и выполняя расчёт напряжений для различных сечений.
Вы всегда знаете, откуда дует ветер? Конечно, со стороны инноваций! RWIND 2 - это программа, которая использует цифровую аэродинамическую трубу для численного моделирования потоков ветра. Программа моделирует эти потоки вокруг зданий любой геометрической формы и определяет ветровые нагрузки на поверхности.
Вам нужен обзор зон снеговой, ветровой и сейсмической нагрузок? Тогда вы находитесь по адресу. Используйте инструмент Geo-Zone Tool для быстрого и лёгкого определения снеговых нагрузок, скоростей ветра и данных по сейсмике в соответствии с ASCE 7‑16 и другими нормативами различных стран.
Хотите попробовать в работе функции программ Dlubal Software? У вас есть такая возможность! Бесплатная полная версия на 90 дней позволяет вам в полной мере попробовать в работе все наши программы.
В примере программы сначала создаётся консоль из IPE 200. К ней прилагается нагрузка на стержень 3,5 кН, и выполняется расчёт.
Доступ к этой таблице находится в строке 34:
Метод ResultTables.NodesDeformations () требует три аргумента. Во-первых, определите, какие типы результатов должны быть считаны. Это могут быть результаты по
ResultTables.NodesDeformations ()
sein.
Во-вторых, укажите номер загружения, сочетания нагрузок и т. д. Наконец, передайте номер узла в метод.
Возвращаемое значение d метода - это список, включенный в словарь. В строке 37 d отображается полностью. Строка 40 показывает, как получить доступ к определённому значению. [0] - это индекс списка, а [' displacement_z '] - это ключ словаря.
d
[0]
[' displacement_z ']
Деформации стержней можно считать, например, с помощью функции "GetMemberDeformations()". Однако эта функция ожидает указание номера, типа метода подсчета стержней (номер стержня/номер в списке) и то, какую систему координат следует использовать. Пользователь так может выбрать, будет ли использоваться местная система координат, система главных осей или общая система координат:
Sub test_results_member_axis()Dim iApp As RFEM5.ApplicationSet iApp = GetObject(, "RFEM5.Application")iApp.LockLicenseDim iMod As RFEM5.IModel3Set iMod = iApp.GetActiveModelOn Error GoTo e'get interface for calculationDim iCalc As RFEM5.ICalculation2Set iCalc = iMod.GetCalculation'get interface for resultsDim iRes As RFEM5.IResults2Set iRes = iCalc.GetResultsInFeNodes(LoadCaseType, 1)'get deformations in local coordinate systemDim memDefs_L() As RFEM5.MemberDeformationsmemDefs_L = iRes.GetMemberDeformations(1, AtNo, LocalMemberAxes)'get deformations in global coordinate systemDim memDefs_G() As RFEM5.MemberDeformationsmemDefs_G = iRes.GetMemberDeformations(1, AtNo, GlobalAxes)'get deformations in principal coordinate systemDim memDefs_P() As RFEM5.MemberDeformationsmemDefs_P = iRes.GetMemberDeformations(1, AtNo, LocalPrincipalAxes)e:If Err.Number <> 0 Then MsgBox Err.description, vbCritical, Err.SourceiMod.GetApplication.UnlockLicenseSet iMod = NothingEnd Sub
Эта небольшая программа способна считать местные деформации (memDefs_L) в осях стержня и главных осях (memDefs_P), а также общие деформации в осях стержня (memDefs_G).
Как и все остальные результаты, результирующую сечения можно считывать с помощью команды IModel3 → ICalculation2 → IResults2. Интерфейс результатов обеспечивается посредством функции GetResultant, которая при указании номера желаемого сечения и типа распределения результатов способна вернуть структуру ResultantForce. В данной структуре отображаются, среди прочего, также силы и моменты в виде векторов:
Программа RWIND Simulation создает вокруг модели из RFEM оболочку в виде твердой сетки.
Из-за воздушного потока вокруг этой оболочки возникает дискретное распределение давления на поверхности, которое чередуется между положительными и отрицательными значениями. В программе RWIND Simulation это поверхностное давление четко отображается на внешней стороне оболочки.
При передаче данных в RFEM, программа преобразует эти давления на внешней поверхности твердой оболочки обратно в конструктивную модель RFEM. В этом случае поверхностные давления снова преобразуются вокруг
Таким образом, внутреннее и внешнее давление конструктивного элемента по отношению к нагрузкам нетто упрощено для расчета в программе RFEM.
У «двусторонних» элементов давление на поверхность всегда будет отличаться в программе RFEM и RWIND Simulation из-за сочетания давления на поверхность в результирующем давлении.
Кроме того, при интерпретации давления ветра в программе RFEM необходимо учитывать и ориентацию систем координат элемента. Отображаемые значения давления относятся не к знаку (положительное - давление и отрицательное - подсос), как в RWIND Simulation, а к местной системе координат соответствующих элементов.
Да, напряжения на поверхности можно отобразить также через интерфейс COM. Однако для этого вам потребуется сначала интерфейс для модели (IModel), а потом интерфейс для расчета (ICalculation2). С помощью данного интерфейса затем можно получить интерфейс для результатов (IResults2):
Sub stresses_surfaces_example()Dim iApp As RFEM5.ApplicationDim iModel As RFEM5.modelSet iModel = GetObject(, "RFEM5.Model")On Error GoTo EIf Not iModel Is Nothing Then' get interface from modelSet iApp = iModel.GetApplication iApp.LockLicense ' get interface from calculation Dim iCalc As RFEM5.ICalculation2 Set iCalc = iModel.GetCalculation ' get interface from results from loadcase 1Dim iRes As RFEM5.IResults2 Set iRes = iCalc.GetResultsInFeNodes(LoadCaseType, 1) ' get equivalent stressesDim str_equ() As RFEM5.SurfaceEquivalentStressesstr_equ = iRes.GetSurfaceEquivalentStresses(1, AtNo, VonMisesHypothesis) End IfE:If Err.Number <> 0 ThenMsgBox Err.Number & " " & Err.descriptionEnd IfIf Not iApp Is Nothing Then iApp.UnlockLicenseEnd If
Функция GetSurfaceEquivalentStresses затем требует задания расчетной гипотезы. В данном примере у нас будут отображать результаты напряжения по фон Мизесу. Не забудьте, что в интерфейсе COM используются единицы SI, поэтому напряжение передается всегда в Н/м².
Sub test_section()' get interface from the opened model and lock the licence/program Dim iModel As RFEM5.IModel3 Set iModel = GetObject(, "RFEM5.Model") iModel.GetApplication.LockLicense On Error GoTo E Dim iSecs As RFEM5.ISections Set iSecs = iModel.GetSections()
' first delete all sections iSecs.PrepareModification iSecs.DeleteObjects ("All") iSecs.FinishModification ' set section on solid Dim sec As RFEM5.Section sec.EdgePointA.X = 2 sec.EdgePointA.Y = 5 sec.EdgePointA.Z = 0 sec.EdgePointB.X = 2 sec.EdgePointB.Y = 8 sec.EdgePointB.Z = 0 sec.no = 1 sec.Name = "solid section" sec.Plane = GlobalPlaneInPositiveX sec.ShowValuesInIsolines = False sec.Type = SectionOnSolidSectionLine sec.ObjectList = "1" iSecs.PrepareModification iSecs.SetSection sec iSecs.FinishModification
' set section on surface sec.EdgePointA.X = 2 sec.EdgePointA.Y = 0 sec.EdgePointA.Z = 0 sec.EdgePointB.X = 2 sec.EdgePointB.Y = 3 sec.EdgePointB.Z = 0 sec.no = 2 sec.Name = "surface section" sec.Plane = GlobalPlaneInPositiveX sec.ShowValuesInIsolines = True sec.Type = SectionViaSurfacePlane sec.ObjectList = "1" sec.Vector.X = 0 sec.Vector.Y = 0 sec.Vector.Z = 1 iSecs.PrepareModification iSecs.SetSection sec iSecs.FinishModification
' get results Dim iCalc As ICalculation2 Set iCalc = iModel.GetCalculation Dim iRes As IResults2 Set iRes = iCalc.GetResultsInFeNodes(LoadCaseType, 1) Dim secRes() As RFEM5.SectionResult secRes = iRes.GetResultsInSection(2, AtNo, ShearForceVy,ContinuousDistributionWithinObjects, False)
Dim model As RFEM5.modelSet model = GetObject(, "RFEM5.Model")model.GetApplication.LockLicenseOn Error GoTo eDim data As IModelDataSet data = model.GetModelDataРазмеры стержней (0) Как в RFEM5.Member стержней (0) .No = 3стержней (0) .LineNo = 12члены (0) .Type = ResultBeamType стержни (0) .StartCrossSectionNo = 1стержни (0) .EndCrossSectionNo = 1 стержни (0) .Comment = "результирующая балка 1"data.PrepareModificationэлементы data.SetMembersdata.FinishModification
Dim iMem As IMemberУстановите iMem = data.GetMember (3, AtNo) Dim iRMem как IResultBeamУстановите iRMem = iMem.GetExtraData Dim RMem как ResultBeamRMem = iRMem.GetData RMem.IncludeSurfaces = "1"RMem.IncludeSolids = "все" RMem.Integrate = WithinCuboidGeneral Дим параметры (от 0 до 3) как двойные RMem.Parameters = параметрыRMem.Parameters (0) = 0,5RMem.Parameters (1) = 0,5RMem.Parameters (2) = 0,1RMem.Parameters (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. Данную таблицу можно открыть, щелкнув правой кнопкой мыши по одной из вкладок таблицы «4.xx - Результаты» (см. Рисунок 01).
Кроме контактных напряжений, отображаются также соответствующие опорные силы (см. Рисунок 02).