Getting Object-Specific Data for Imported Objects

You can use SolverData APIs to get object-specific data for imported objects from External Model. By using GetObjectData for imported objects, you get the collection of solver data information for all rows present in the imported object.

For example, you can use the imported coordinate system to get the collection of coordinate system IDs for all rows present:

solution = Model.Analyses[0].Solution 
solver_data = solution.SolverData 
imported_coordinate_system = DataModel.GetObjectsByType(DataModelObjectCategory.ImportedCoordinateSystems)[0] 
imported_coordinate_system_data = solver_data.GetObjectData(imported_coordinate_system) 
imported_coordinate_system_data[0].SystemId 
imported_coordinate_system_data[1].SystemId 
imported_coordinate_system_data[2].SystemId

 

 

You can use SolverData APIs to retrieve object data for the following imported objects:

  • Imported Bolt Pretensions

  • Imported Contacts

  • Imported Coordinate Systems

  • Imported Flexible Remote Connectors

  • Imported Pre-Meshed Bolt Pretensions

  • Imported Rigid Remote Connectors

  • Imported Spring Connectors

  • Imported Surface Loads

A code example follows for each of these imported objects.

Imported Bolt Pretension

STAT_STRUC = Model.Analyses[0]
SOLN = STAT_STRUC.Solution
SOLVER_DATA = SOLN.SolverData
imported_bolt_pretension = DataModel.GetObjectsByType(DataModelObjectCategory.ImportedBoltPretensions)[0]
imported_bp_data = SOLVER_DATA.GetObjectData(imported_bolt_pretension)
imported_bp_data[0].PretensionNodeIds
imported_bp_data[0].RealConstantIds

Imported Contacts

STAT_STRUC = Model.Analyses[0]
SOLN = STAT_STRUC.Solution
SOLVER_DATA = SOLN.SolverData
imported_contacts = DataModel.GetObjectsByType(DataModelObjectCategory.ImportedContacts)[0]
imported_contacts_data = SOLVER_DATA.GetObjectData(imported_contacts)
imported_contacts_data[0].TargetId
imported_contacts_data[0].SourceId

Imported Coordinate System

STAT_STRUC = Model.Analyses[0]
SOLN = STAT_STRUC.Solution
SOLVER_DATA = SOLN.SolverData
imported_cs = DataModel.GetObjectsByType(DataModelObjectCategory.ImportedCoordinateSystems)[0]
imported_cs_data = SOLVER_DATA.GetObjectData(imported_cs)
imported_cs_data[0].SystemId
imported_cs_data[1].SystemId
imported_cs_data[2].SystemId

Imported Flexible Remote Connectors

STAT_STRUC = Model.Analyses[0]
SOLN = STAT_STRUC.Solution
SOLVER_DATA = SOLN.SolverData
imported_flexible_connector = DataModel.GetObjectsByType(DataModelObjectCategory.ImportedFlexibleRemoteConnectors)[1]
imported_frc_data = SOLVER_DATA.GetObjectData(imported_flexible_connector)
imported_frc_data[0].NodeId

Imported Pre-Meshed Bolt Pretension

STAT_STRUC = Model.Analyses[0]
SOLN = STAT_STRUC.Solution
SOLVER_DATA = SOLN.SolverData
imported_premeshed_bolt_pretension = DataModel.GetObjectsByType(DataModelObjectCategory.ImportedPremeshedBoltPretensions)[0]
imported_pbp_data = SOLVER_DATA.GetObjectData(imported_premeshed_bolt_pretension)
imported_pbp_data[0].PretensionNodeIds
imported_pbp_data[0].RealConstantIds

Imported Rigid Remote Connectors

STAT_STRUC = Model.Analyses[0]
SOLN = STAT_STRUC.Solution
SOLVER_DATA = SOLN.SolverData
imported_rigid_connector = DataModel.GetObjectsByType(DataModelObjectCategory.ImportedRigidRemoteConnectors)[0]
imported_rrc_data = SOLVER_DATA.GetObjectData(imported_rigid_connector)
imported_rrc_data[0].NodeId
imported_rrc_data[1].NodeId
imported_rrc_data[2].NodeId

Imported Spring Connectors

STAT_STRUC = Model.Analyses[0]
SOLN = STAT_STRUC.Solution
SOLVER_DATA = SOLN.SolverData
imported_spring_connector = DataModel.GetObjectsByType(DataModelObjectCategory.ImportedSpringConnectors)[0]
imported_sc_data = SOLVER_DATA.GetObjectData(imported_spring_connector)
imported_sc_data[0].RealConstantId
imported_sc_data[0].ElementId
imported_sc_data[1].RealConstantId
imported_sc_data[1].ElementId

Imported Surface Loads

STAT_STRUC = Model.Analyses[0]
SOLN = STAT_STRUC.Solution
SOLVER_DATA = SOLN.SolverData
Surface_Loads = [x for x in ExtAPI.DataModel.Tree.AllObjects if x.Name == 'Surface Loads(External Model)'][0]
imported_sl_data = SOLVER_DATA.GetObjectData(Surface_Loads)
imported_sl_data[0].LoadTypes
imported_sl_data[1].LoadTypes
imported_sl_data[2].LoadTypes
imported_sl_data[0].GetSurfaceEffectElementTypeId(ExternalModel.ImportedSurfaceLoadType.Convection)
imported_sl_data[1].GetSurfaceEffectElementTypeId(ExternalModel.ImportedSurfaceLoadType.Pressure)
imported_sl_data[2].GetSurfaceEffectElementTypeId(ExternalModel.ImportedSurfaceLoadType.HeatFlux)