You use the object Analysis to add a load. This topic describes adding loads to a static structural analysis.
To access the first analysis in the Mechanical project:
static_structural = Model.Analyses[0]
To change the number of steps of the analysis:
analysis_settings = static_structural.AnalysisSettings.NumberOfSteps = 4
To add and define a bolt and fixed support:
bolt = static_structural.AddBoltPretension() bolt_scoping = ExtAPI.SelectionManager.CreateSelectionInfo(SelectionTypeEnum.GeometryEntities) bolt_scoping.Ids = [200] bolt.Location = bolt_scoping bolt.SetDefineBy(1, BoltLoadDefineBy.Load) # Change definition for step #1. bolt.Preload.Output.SetDiscreteValue(0, Quantity("15 [N]")) # Change preload value for step #1. support = static_structural.AddFixedSupport() support_scoping = ExtAPI.SelectionManager.CreateSelectionInfo(SelectionTypeEnum.GeometryEntities) support_scoping.Ids = [104] support.Location = support_scoping
To add and define the external and internal pressures exerted on the pipe and the force on a section of the pipe:
pressure = static_structural.AddPressure() pressure_scoping = ExtAPI.SelectionManager.CreateSelectionInfo(SelectionTypeEnum.GeometryEntities) pressure_scoping.Ids = [220] pressure.Location = pressure_scoping pressure.Magnitude.Output.Formula = '10*time' pressure = static_structural.AddPressure() pressure_scoping = ExtAPI.SelectionManager.CreateSelectionInfo(SelectionTypeEnum.GeometryEntities) pressure_scoping.Ids = [221] pressure.Location = pressure_scoping pressure.Magnitude.Output.DiscreteValues=[Quantity('6 [Pa]')] force = static_structural.AddForce() force_scoping = ExtAPI.SelectionManager.CreateSelectionInfo(SelectionTypeEnum.GeometryEntities) force_scoping.Ids = [219] force.Location = force_scoping force.Magnitude.Output.DiscreteValues=[Quantity('11.3 [N]'), Quantity('12.85 [N]')]
Script execution results in the following force definition:
To define a constant value of the force:
force.Magnitude.Output.DiscreteValues=[Quantity('10 [N]')]
You can also change the force to be defined by components instead of by magnitude and set the values of an individual component:
force.DefineBy = LoadDefineBy.Components force.ZComponent.Output.DiscreteValues = [Quantity('0 [N]'),Quantity('-9 [N]')]