Force and torque

Command: post_models(“forcce_ag”, “F”)


This command will be replaced by run_models*(“force_torque”) and will be omitted in future FEMAG releases.

Command: post_models(“force_torque”, “F”)

Calculation of the resulting force along the specified calculation path, and the resulting torque with pivot point in the origin of the coordinate system.

The force calculation path can be specified as follows:

  1. Straight or circular arc given by the points (x1, y1) and (x2, y2) in cartesian coordinates. In the cartesian coordinate system, the path is a straight line; in the polar coordinate system, a circular arc is defined in a mathematically positive direction.

  2. Circle with centre at the point (x1, y1).

  3. Circle with centre at the origin given by the air-gap radius stored in the model. The basic data of the model can be set via pre_models(‘basic_modpar’). This is done automatically for the parameter-based models (M-Models) available in FEMAG.

According to the number of defined coordinate points, it is recognized which of these three cases is intended. In case 3, no coordinates need be specified.

The force or torque is returned to the specified path. In the case of a straight line or a circular arc (case 1), the conversion to the total force of the machine must be carried out retrospectively, since only one machine part is modeled. If a circle is specified as the calculation path (cases 2 and 3), the resulting force or torque of the entire machine is returned. The basic data of the model must be known for this purpose and must be specified in advance via pre_models(‘basic_modpar’).


[out] F is a freely-selectable variable identifier that returns the evaluation position and the flux-density components.

Example in cartesian components:

m.coord_x1   = 38.254   -- Point coordinate x1 [mm]
m.coord_y1   = 1.695    -- Point coordinate y1 [mm]
m.coord_x2   = 32.548   -- Point coordinate x2 [mm]
m.coord_y2   = 17.560   -- Point coordinate y2 [mm]
m.arm_length = 100.0    -- Armature length [mm]


Fx = FT[1]  -- x component of force [N]
Fy = FT[2]  -- y component of force [N]
T  = FT[3]  -- Torque [Nm]
Fn = FT[4]  -- Normal component of force [N]
Ft = FT[5]  -- Tangential component of force [N]

Example in polar coordinates without explicit information on the calculation route:

Model creation (or prior force/torque calculation) must specify the basic model parameters that are stored in the model. For the parameter-based models (M-Models) available in FEMAG, this is done automatically.

m.num_poles    =  10  --   Number of Poles 2p            (>= 2)
m.npols_gen    =   5  --   Number of Poles simulated     (>= 1)
m.arm_length   = 100  --   Effect. armature length          [mm]
m.fc_radius    =  27  --   Radius air-gap center (torque)   [mm]


The force/torque calculation can be carried out below without further information.


Fr    = FT[1]  -- Radial component of force [N]
Fphi  = FT[2]  -- Circumferential component of force [N]
T     = FT[3]  -- Torque [Nm]
Fx    = FT[4]  -- x component of force [N]
Fy    = FT[5]  -- y component of force [N]

If the m.arm_length parameter is not specified, the value stored in the model or previously set with pre_models (‘basic_modpar’)is used.

The radial and tangent components (Fr and Fphi) refer to the origin of the coordinate system. It is assumed to be an ‘attacking’ force at the center of the calculation path.

Parameters defined in the script can be deleted by assigning nil. This is necessary in certain cases, e.g. if both coordinates m.coord_x1/y1 and m.coord_x2/y2 have already been defined, but for a further evaluation the path is specified as a circle with radius m.coord_x1/y1. The second point should then be

m.coord_x2 = nil
m.coord_y2 = nil

to allow FEMAG to recognize that the path is now a circle.