Skip to main content

ACT to Automate Post-Processing


I gushed about the ACT console in a previous post. Here's another example of automatically populating some post processing objects for all time steps inside Mechanical after a solve. Copy-and-paste it in Mechanical ACT Console Command Line, then hit the Enter key.

Text file of script: Link.

# Extracts at each time step...
# x, y, z stress components, von Mises stress, max principal stress, total deformation, and x, y, z normal deformation components

numsteps = ExtAPI.DataModel.Project.Model.Analyses[0].AnalysisSettings.NumberOfSteps

for ct in range(numsteps):
   setTime = str(ct+1) + " [s]"
   nowTime = str(ct+1) + "s"

   # Normal Stresses
   sx=ExtAPI.DataModel.Project.Model.Analyses[0].Solution.AddNormalStress()
   sx.NormalOrientation =NormalOrientationType.XAxis
   sx.DisplayTime=Quantity(setTime)
   sx.Name = "Normal Stress X at "+nowTime
   sy=ExtAPI.DataModel.Project.Model.Analyses[0].Solution.AddNormalStress()
   sy.NormalOrientation =NormalOrientationType.YAxis
   sy.DisplayTime=Quantity(setTime)
   sy.Name = "Normal Stress Y at "+nowTime
   sz=ExtAPI.DataModel.Project.Model.Analyses[0].Solution.AddNormalStress()
   sz.NormalOrientation =NormalOrientationType.ZAxis
   sz.DisplayTime=Quantity(setTime)
   sz.Name = "Normal Stress Z at "+nowTime

   # Equivalent Stress
   se=ExtAPI.DataModel.Project.Model.Analyses[0].Solution.AddEquivalentStress()
   se.DisplayTime=Quantity(setTime)
   se.Name = "Equivalent Stress at "+nowTime

   # Maximum Principal Stress
   sm = ExtAPI.DataModel.Project.Model.Analyses[0].Solution.AddMaximumPrincipalStress()
   sm.DisplayTime=Quantity(setTime)
   sm.Name = "Maximum Principal Stress at "+nowTime

   # Total Deformation
   dt = ExtAPI.DataModel.Project.Model.Analyses[0].Solution.AddTotalDeformation()
   dt.DisplayTime=Quantity(setTime)
   dt.Name = "Total Deformation at "+nowTime

   # Directional Deformation
   dx = ExtAPI.DataModel.Project.Model.Analyses[0].Solution.AddDirectionalDeformation()
   dx.NormalOrientation=NormalOrientationType.XAxis
   dx.DisplayTime=Quantity(setTime)
   dx.Name = "Directional Deformation X at "+nowTime
   dy = ExtAPI.DataModel.Project.Model.Analyses[0].Solution.AddDirectionalDeformation()
   dy.NormalOrientation=NormalOrientationType.YAxis
   dy.DisplayTime=Quantity(setTime)
   dy.Name = "Directional Deformation Y at "+nowTime
   dz = ExtAPI.DataModel.Project.Model.Analyses[0].Solution.AddDirectionalDeformation()
   dz.NormalOrientation=NormalOrientationType.ZAxis
   dz.DisplayTime=Quantity(setTime)
   dz.Name = "Directional Deformation Z at "+nowTime

# Evaluates All Results
ExtAPI.DataModel.Project.Model.Analyses[0].Solution.EvaluateAllResults()

# End of Script


This and Other Related Posts
ACT Console: Link
Text List of Named Selection: Link
ACT to Automate Post-Processing: Link

Comments