Preguntas más frecuentes (FAQ)

Buscar pregunta más frecuente

Show Filter Hide Filter





Soporte técnico 24/7

Base de datos de conocimientos

Además de nuestro soporte técnico (por ejemplo, por medio del chat), podrá encontrar varios recursos en nuestra página web que pueden ayudarle con su cálculo y diseño de estructuras utilizando Dlubal Software.

Boletín de noticias

Reciba información de manera regular sobre noticias, consejos útiles, eventos programados, ofertas especiales y cupones.

  • Respuesta

    Para sólo calcular ciertos casos de carga, combinaciones de carga o combinaciones de resultados, justo como el comando "Para calcular...." (ver figura 01), puede usar el método "CalculateBarch" de la interfaz ICalculation. Al transferir datos, el método espera un campo con el tipo de carga. La carga incluye el número de la carga, y el tipo (p. ej. combinación de carga):

    Sub batch_test ()
        
    '   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
        
        '   get interface for calculationv
        Dim iCalc As ICalculation2
        Set iCalc = iModel.GetCalculation
        
        '   create array with loading types
        Dim loadings(3) As Loading
        loadings(0).no = 1
        loadings(0).Type = LoadCaseType
        
        loadings(1).no = 4
        loadings(1).Type = LoadCaseType
        
        loadings(2).no = 4
        loadings(2).Type = LoadCombinationType
        
        '   calculate all loadings from the array at once
        iCalc.CalculateBatch loadings

    e:  If Err.Number <> 0 Then MsgBox Err.description, , Err.Source
        
        Set iModelData = Nothing
        iModel.GetApplication.UnlockLicense
        Set iModel = Nothing

    End Sub
  • Respuesta

    Una imperfección se considera una carga y se transfiere mediante la interfaz del caso de carga. Siempre que la interfaz para el modelo ya se haya importado, la interfaz para las cargas (ILoads) seguida de la interfaz para el caso de carga 1 (ILoadCase) se importará posteriormente, si ya se ha creado antes:

            '   set loadcases
            Dim iLoads As iLoads
            Set iLoads = model.GetLoads
            
            '   get load case
            Dim iLc1 As ILoadCase
            Set iLc1 = iLoads.GetLoadCase(1, AtNo)
            
            '   define imperfection
            Dim imperf As Imperfection
            imperf.Comment = "test"
            imperf.Direction = LocalZType
            imperf.Inclination = 200
            imperf.no = 1
            imperf.ObjectList = 1
            imperf.Precamber = 300
            imperf.PrecamberActivity = ActivityAccording_EN_1993_1_1
            
            '   set imperfection
            iLc1.PrepareModification
            iLc1.SetImperfection imperf
            iLc1.FinishModification

    Los datos de la imperfección se completan primero, aquí para la barra 1, y luego se transfieren dentro de un bloque Prepare-/FinishModification de las interfaces del caso de carga.

  • Respuesta

    Para modificar un elemento existente, tiene que obtener la interfaz del elemento correspondiente, mostrado aquí utilizando una barra como ejemplo:

        Dim iModel As RSTAB8.model
        Set iModel = GetObject(, "RSTAB8.Model")
        iModel.GetApplication.LockLicense
        
        Dim iModData As IModelData
        Set iModData = iModel.GetModelData
        
        Dim iMem As RSTAB8.IMember
        Set iMem = iModData.GetMember(1, AtNo)

    Use este código para obtener la interfaz para la barra 1, que ya debe estar creada. Luego, puede usar el método .GetData () de la interfaz para obtener los datos de la barra.

    Si desea modificar los datos (como el giro de la barra en este caso), puede transferirlos posteriormente al programa dentro de un bloque Prepare-/FinishModification con el método .SetData ().


        Dim mem As RSTAB8.Member
        mem = iMem.GetData
        
        mem.Rotation.Angle = 0.5
        mem.Rotation.Type = RSTAB8.Angle
       
        iModData.PrepareModification
        iMem.SetData mem
        iModData.FinishModification
  • Respuesta

    El siguiente código muestra cómo obtener diferentes parámetros de cálculo a través de la interfaz COM. También se muestra cómo especificar una configuración para desactivar la rigidez a cortante:

        '   get model interface
        Set iApp = iModel.GetApplication()
        iApp.LockLicense
        
        '   get calculation interface
        Dim iCalc As RFEM5.ICalculation2
        Set iCalc = iModel.GetCalculation
        
        '   get surface bending theory
        Dim calc_bend As RFEM5.BendingTheoryType
        calc_bend = iCalc.GetBendingTheory
        
        '   get settings for nonlinearities
        Dim calc_nl As RFEM5.CalculationNonlinearities
        calc_nl = iCalc.GetNonlinearities
        
        '   get precision and tolerance settings
        Dim calc_prec As RFEM5.PrecisionAndTolerance
        calc_prec = iCalc.GetPrecisionAndTolerance
        
        '   get calculation settings
        Dim calc_sets As RFEM5.CalculationSettings
        calc_sets = iCalc.GetSettings
        
        '   get calculation options
        Dim calc_opts As RFEM5.CalculationOptions
        calc_opts = iCalc.GetOptions
        
        '   set ShearStiffness to false
        calc_opts.ShearStiffness = False
        iCalc.SetOptions calc_opts

    En el anexo, hay un Macro de EXCEL para su descarga.
  • Respuesta

    La fricción representa una no linealidad y, por lo tanto, solo se puede modificar a través de la interfaz con la articulación en el extremo de la barra.

    Para este propósito, se debe crear primero la articulación en el extremo de la barra, si aún no está disponible. Luego, la interfaz IMemberHinge se lleva a la articulación en el extremo de la barra y luego a la no linealidad (aquí IFricción). Luego, puede usar los métodos GetDataSetData para modificar los datos (aquí Friction):

    Sub SetMemberHingeFriction ()

        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 hinge(0 To 0) As RFEM5.MemberHinge

        hinge(0).No = 1
        hinge(0).RotationalConstantX = 1
        hinge(0).RotationalConstantY = 2
        hinge(0).RotationalConstantZ = 3
        hinge(0).TranslationalConstantX = 4
        hinge(0).TranslationalConstantY = 5
        hinge(0).TranslationalConstantZ = 6
        hinge(0).Comment = "Member Hinge 1"
        
        hinge(0).TranslationalNonlinearityX = FrictionAType

        data.PrepareModification
        data.SetMemberHinges hinge
        data.FinishModification
        
        ' get interface for member hinge
        Dim imemhing As IMemberHinge
        Set imemhing = data.GetMemberHinge(1, AtNo)
        
        ' get interface for nonlinearity "friction"
        Dim iFric As IFriction
        Set iFric = imemhing.GetNonlinearity(AlongAxisX)
        
        ' get friction data
        Dim fric As Friction
        fric = iFric.GetData
        
        fric.Coefficient1 = 0.3
        
        ' set friction data
        data.PrepareModification
        iFric.SetData fric
        data.FinishModification
        
        
    e:  If Err.Number <> 0 Then MsgBox Err.Description, , Err.Source

        Set data = Nothing
        model.GetApplication.UnlockLicense
        Set model = Nothing

    End Sub


    En el caso de la fricción Vy + Vz, se usa el "Coefficient2" para establecer el segundo coeficiente. La constante elástica en el cuadro de diálogo "Fricción" está controlada por el muelle traslacional de la articulación en el extremo de la barra. En el caso concreto, esto es TranslationalConstantX para la dirección X (ver figura 01).

  • Respuesta

    El cálculo asíncrono se usa si un programa de creación propia sólo se debe abrir o continuar con RFEM o RSTAB. Cuando se completa el cálculo, el evento se transfiere a través de un delegado. Puede encontrar un ejemplo de C# en un proyecto de Visual Studio en el área de descargas a continuación.
  • Respuesta

    Esta comprobación se puede llevar a cabo automáticamente mediante

    • "IApplication.LockLicense ()"
    • "bool isLicensed = IApplication.IsComLicensed ()"
    • "IApplication.UnlockLicense ()"


  • Respuesta

    Para transferir varios elementos, primero hay que crear un campo (matriz) en VBA:

    Dim. de los nudos (0 a 2) como RFEM5.Node

    Entonces, puede transferir todos los nudos a la vez en el campo (aquí tres elementos 0,1,2) con el método IModelData.SetNodes ().

    Estos métodos también están disponibles, por ejemplo, para los siguientes elementos estructurales:

    IModelData.SetLines ()
    IModelData.SetMembers ()
    IModelData.SetSurfaces ()
  • Respuesta

    Básicamente se establece cualquier modificación posible de la interfaz COM en nuestros informes de actualización para el módulo adicional respectivo. Todos los informes de actualización están disponibles en el siguiente enlace.

    Si hay un cambio en la interfaz COM, se enumera allí. Especialmente cuando se convierten las interfaces antiguas de COM desde RSTAB6/RFEM3 a RSTAB8/RFEM5, no se garantiza una compatibilidad completa debido al cambio desde tlb en VBA a una solución integrada con dll.

    Sin embargo, normalmente es posible sobrescribir dll dentro de la interfaz COM actual sin ningún problema. Para las copias de seguridad adicionales, siempre se recomienda hacer una copia de seguridad de los archivos antiguos.
  • Respuesta

    No, eso no es posible. El informe no se puede abrir o gestionar a través de la interfaz COM. Lo único que se puede hacer es acceder al número de informes creados en una lista.

    Es posible acceder a las plantillas de los informes. Esto se explica en la siguiente FAQ.  Sin embargo, esto no se puede controlar mediante la interfaz COM de RFEM/RSTAB, sino desde una funcionalidad general de Windows.

1 - 10 de 20

Contacte con nosotros

Contacte con Dlubal Software

¿Ha encontrado su pregunta?
Si no es así, contacte con nosotros a través de nuestro servicio de asistencia gratuito por correo electrónico, chat o fórum, o envíenos su pregunta mediante el formulario en línea.

+34 911 438 160

info@dlubal.com

Primeros pasos

first-steps

Le proporcionamos consejos y trucos para ayudar a iniciarse con los programas principales de RFEM y RSTAB.

Simulación de flujos de viento y generación de cargas de viento

Con el programa independiente RWIND Simulation, se pueden simular flujos de viento alrededor de estructuras simples o complejas por medio de un túnel de viento digital.

Las cargas de viento generadas que actúan sobre esos objetos se pueden importar a RFEM o RSTAB.

Su soporte es el mejor con diferencia

“Gracias por la valiosa información.

Me gustaría felicitar a su equipo de soporte. Estoy siempre impresionado por la rapidez y profesionalidad de las respuestas a las preguntas. He utilizado una gran cantidad de software con un contrato de soporte en el campo del análisis estructural, pero su soporte es, con mucho, el mejor. "