1124x
004484
7. Juli 2020

Frage

Wie kann ich die Spannungen einer Fläche über RF-COM auslesen?


Antwort:

Die Spannungen einer Fläche können über die COM-Schnittstelle ausgelesen werden. Zuerst braucht man das Interface zum Modell (IModel) und danach das Interface zur Berechnung (ICalculation2). Über dieses Interface kann dann das Interface für die Ergebnisse (IResults2) geholt werden:

Sub stresses_surfaces_example()
Dim iApp As RFEM5.Application
Dim iModel As RFEM5.model
Set iModel = GetObject(, "RFEM5.Model")

On Error GoTo E

If Not iModel Is Nothing Then
    '   get interface from model
    Set iApp = iModel.GetApplication
    iApp.LockLicense
    
    '   get interface from calculation
    Dim iCalc As RFEM5.ICalculation2
    Set iCalc = iModel.GetCalculation
    
    '   get interface from results from loadcase 1
    Dim iRes As RFEM5.IResults2
    Set iRes = iCalc.GetResultsInFeNodes(LoadCaseType, 1)
    
    '   get equivalent stresses
    Dim str_equ() As RFEM5.SurfaceEquivalentStresses
    str_equ = iRes.GetSurfaceEquivalentStresses(1, AtNo, VonMisesHypothesis)
    
End If

E:
If Err.Number <> 0 Then
    MsgBox Err.Number & " " & Err.description
End If

If Not iApp Is Nothing Then
    iApp.UnlockLicense
End If

Die Funktion GetSurfaceEquivalentStresses verlangt die Angabe der Berechnungshypothese. Im obigen Fall werden die Ergebnisse der von-Mises-Spannung ausgelesen. Zu beachten ist, dass die COM-Schnittstelle hier SI-Einheiten verwendet, sodass die Spannung in N/m² übergeben wird.