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():

class emagnetic:
    def initial(self):
        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)))

PyMotorCAD Documentation Example#

(Used for the PyMotorCAD Documentation Examples only)

    from setup_scripts.setup_script import run_emag_demo
except ImportError:

mc.set_variable("MessageDisplayState", 0)
11:32:07 AM : Warning: Licences for different machine types are checked out.
You may wish to review your licence configuration.
11:32:14 AM : Loaded script file: emag.py
11:32:15 AM : Python script output: Shaft speed is too high. Resetting to 500
11:32:20 AM : FEA Calculation Time: 3 Seconds
11:32:20 AM : Solving completed
11:32:20 AM : Python script output: total loss is: 144.05
Shaft speed:500

Total running time of the script: (0 minutes 20.828 seconds)

Gallery generated by Sphinx-Gallery