Note
Go to the end to download the full example code.
E-magnetic#
This example demonstrates internal scripting E-Mag functionality
import ansys.motorcad.core as pymotorcad
mc = pymotorcad.MotorCAD()
Disable pop-up messages
mc.set_variable("MessageDisplayState", 2)
# This function is called when "Run" is pressed
def main():
pass
class emagnetic:
def initial(self):
mc.display_screen("Scripting")
shaft_speed = mc.get_variable("ShaftSpeed")
if shaft_speed > 1000:
print("Shaft speed is too high. Resetting to 500")
mc.set_variable("ShaftSpeed", 500)
def final(self):
loss_total = mc.get_variable("loss_total")
# display total loss rounded to 2dp if available
print("total loss is: " + str(round(loss_total, 2)))
mc.display_screen("Calculation")
PyMotorCAD Documentation Example#
(Used for the PyMotorCAD Documentation Examples only)
try:
from setup_scripts.setup_script import run_emag_demo
except ImportError:
pass
else:
run_emag_demo(mc)
mc.set_variable("MessageDisplayState", 0)
2:52:52 PM : Warning: Licences for different machine types are checked out.
You may wish to review your licence configuration.
2:53:07 PM : Loaded script file: emag.py
2:53:08 PM : Python script output: Shaft speed is too high. Resetting to 500
2:53:13 PM : FEA Calculation Time: 3 Seconds
2:53:13 PM : Solving completed
2:53:13 PM : Python script output: total loss is: 144.05
Shaft speed:500
Total running time of the script: (0 minutes 32.157 seconds)