El software de análisis de estructuras RFEM 6 es la base de un sistema de software modular. El programa principal RFEM 6 se usa para definir estructuras, materiales y cargas de sistemas estructurales planos y espaciales compuestos por placas, muros, láminas y barras. El programa también le permite crear estructuras mixtas, así como modelar elementos sólidos y de contacto.
RSTAB 9 es un software potente de análisis y dimensionamiento en 3D de estructuras de vigas, pórticos o cerchas, que refleja el estado de la técnica actual y ayuda a los ingenieros y consultores de estructuras a cumplir con los requisitos de la ingeniería de estructuras moderna.
¿Está a menudo ocupado con el cálculo de secciones durante demasiado tiempo? Dlubal Software y el programa independiente RSECTION facilitan su trabajo al determinar y realizar un análisis de tensiones para varias secciones.
¿Siempre sabe de dónde viene el viento? ¡Desde la dirección de la innovación, por supuesto! Con RWIND 2 a su lado tiene un programa que utiliza un túnel de viento digital para la simulación numérica de los flujos de viento. El programa simula estos flujos alrededor de cualquier geometría de construcción y determina las cargas de viento en las superficies.
¿Está buscando una vista general de las zonas de carga de nieve, zonas de viento y zonas de sísmicas? Entonces está en el lugar correcto. Utilice la herramienta <i>Geo-Zone</i> para la determinación rápida de las cargas de nieve, velocidades de viento y zonas sísmicas según el Eurocódigo, CTE, ASCE 7-16 y otras normas internacionales.
¿Le gustaría probar la potencia de los programas de Dlubal Software? ¡Es su oportunidad! Con la versión completa gratuita de 90 días, puede probar todos nuestros programas por completo.
Um ein nicht lineares Element wie ein Stabendgelenk mit Diagramm oder Ausfall anlegen zu können, muss zunächst das Stabendgelenk angelegt werden. Wenn RFEM das Stabendgelenk kennt, kann dieses über die Schnittstelle IMemberEndRelease geholt werden. Diese Schnittstelle verfügt dann über die Methoden GetData() und SetData(). Beide Methoden sind in der Lage sowohl die einfachen Stabendgelenkdaten vom Typ MemberEndRelease als auch die Daten einer Nichtlinearität auszulesen bzw. zu schreiben.
Im folgenden Beispiel wird in Stabendgelenk zunächst für die x-Richtung ein Gelenk aktiviert und dann als Nichtlinearität in x-Richtung der Typ WorkingDiagramType eingestellt. Nachdem diese Daten mithilfe eines Prepare-Finish-Modification-Blocks an RFEM übergeben wurden, legt dieses intern die Nichtlinearität an. Um diese mit Daten zu füllen, werden zunächst die vorhandenen Daten über GetData() von der Schnittstelle des Stabendgelenks geholt.
Nachdem die Daten (NonlinearityDiagram) ausgefüllt wurden, werde diese wieder mit SetData() übergeben:
Sub SetNLDiagram()Dim model As RFEM5.modelSet model = GetObject(, "RFEM5.Model")On Error GoTo eDim iApp As RFEM5.ApplicationSet iApp = model.GetApplicationiApp.LockLicenseiApp.ShowDim iModelData As RFEM5.iModelDataSet iModelData = model.GetModelData' modify member end release' set nonlinearity "Diagram" for x translationDim iMemHing As RFEM5.IMemberHingeSet iMemHing = iModelData.GetMemberHinge(1, AtNo)Dim memHing As RFEM5.MemberHingememHing = iMemHing.GetData()memHing.TranslationalConstantX = 0memHing.TranslationalNonlinearityX = WorkingDiagramType' Set new dataiModelData.PrepareModificationiMemHing.SetData memHingiModelData.FinishModification' create diagramDim tbl1() As DoubleReDim tbl1(1, 1)tbl1(0, 0) = 0 ' u-xtbl1(0, 1) = 0 ' P-xtbl1(1, 0) = 0.02 ' u-x (mm)tbl1(1, 1) = 2000 ' P-x (N)Dim nldHing As RFEM5.NonlinearityDiagramnldHing.ForceType = StiffnessDiagramForceType.NoneStiffnessForcenldHing.PositiveZoneType = DiagramAfterLastStepType.TearingDiagramTypenldHing.PositiveZone = tbl1nldHing.Symmetric = TrueDim iNldiag As RFEM5.INonlinearityDiagramSet iNldiag = iMemHing.GetNonlinearity(AlongAxisX)' Set new dataiModelData.PrepareModificationiNldiag.SetData nldHingiModelData.FinishModificatione: If Err.Number <> 0 Then MsgBox Err.description, , Err.Sourcemodel.GetApplication.UnlockLicenseEnd Sub
Die Vorgehensweise ist für Knotenlager und andere Nichtlinearitäten analog.
Los parámetros de un modelo se pueden modificar utilizando la interfaz IModel (a partir de IModel3):
Parámetro_prueba secundaria ()Dim iApp As RFEM5.ApplicationEstablecer iApp = GetObject (, "RFEM5.Application")iApp.LockLicenseDim j como enteroj = iApp.GetModelCountDim iMod como RFEM5.IModel3Set iMod = iApp.GetActiveModelOn Error GoTo eDim formParams () como RFEM5.FormulaParameter' obtener todos los parámetros de la fórmulaformParams = iMod.GetFormulaParameters' eliminar todos los parámetros de la fórmulaiMod.CleanFormulaParameters' establecer la lista de parámetros de la fórmulaReDim Preservar formParams (0 a UBound (formParams, 1) + 1)formParams (UBound (formParams, 1)). Name = "p"formParams (UBound (formParams, 1)). Unit = "m"formParams (UBound (formParams, 1)). UnitType = LengthUnitTypeformParams (UBound (formParams, 1)). Value = 0formParams (UBound (formParams, 1)). ValueType = DoubleTypeformParams (UBound (formParams, 1)). Comment = "nuevo parámetro"formParams (UBound (formParams, 1)). Formula = "b/3"formParams (UBound (formParams, 1)). RangeOfValues = "(3; 5.5>"iMod.SetFormulaParameters formParamse:If Err.Number <> 0 Then MsgBox Err.description, vbCritical, Err.SourceiMod.GetApplication.UnlockLicenseEstablecer iMod = NadaEnd Sub
Solo es posible leer todos los parámetros utilizando la función GetFormulaParameters (). Los parámetros nuevos o modificados se pueden transferir de nuevo como una lista con la función SetFormulaParameters (). Por lo tanto, no se pueden leer ni escribir parámetros individuales.
Cabe señalar que el "Value" relacionado con su tipo (ValueTyp) y su unidad (Unit) deben estar dentro de los límites definidos (RangeOfValues), de lo contrario aparece un mensaje de error. Si se calcula el valor, como en el ejemplo, es irrelevante y el valor calculado con la fórmula (Fórmula) debe estar dentro de los límites, si los límites están definidos.
Dim model As RFEM5.model Set model = GetObject(, "RFEM5.Model") model.GetApplication.LockLicense On Error GoTo e Dim data As IModelData Set data = model.GetModelData Dim members(0) As RFEM5.Member members(0).No = 3 members(0).LineNo = 12 members(0).Type = ResultBeamType members(0).StartCrossSectionNo = 1 members(0).EndCrossSectionNo = 1 members(0).Comment = "result beam 1" data.PrepareModification data.SetMembers members data.FinishModification
Dim iMem As IMember Set iMem = data.GetMember(3, AtNo) Dim iRMem As IResultBeam Set iRMem = iMem.GetExtraData Dim RMem As ResultBeam RMem = iRMem.GetData RMem.IncludeSurfaces = "1" RMem.IncludeSolids = "all" RMem.Integrate = WithinCuboidGeneral Dim params(0 To 3) As Double RMem.Parameters = params RMem.Parameters(0) = 0.5 RMem.Parameters(1) = 0.5 RMem.Parameters(2) = 0.1 RMem.Parameters(3) = 0.1 data.PrepareModification iRMem.SetData RMem data.FinishModification