Low-frequency electromagnetic simulation

Electromagnetic design for motors, actuators and magnets.

  • Validated
  • Scriptable
  • Open files

One desktop app from CAD to customer-ready report: 2D and 3D, static, AC and transient, with circuits, motion and losses. Over a decade of development and use in industry and academic research, on a numerical foundation proven in real-world engineering since 1997.

  • Windows and macOS
  • Full support from magnetic applications engineers
  • Python built in, documented for automation
  • Engineering services by the project or by the hour

Move the pointer: a steel disc follows it and bends the field.

Magnet on a steel plate (3D) — TerreLenz
TerreLenzshowing the flux density of a block magnet on a steel plate on a cut plane, with forces and torques per body in the Quantities panel.
0.00% gap field difference from FEMM 4.2 on a saturating C-core
+0.04% AC resistance of a round wire against the Bessel-function solution
+0.22% center field of a saturating steel sphere against the exact solution
0.02% torque on the TEAM 30a induction motor against the published table
10+ years of development and use in industry and academic research

Who we are

Built by working magnetic engineers.

We design magnetics for demanding industries, from consumer electronics to aerospace. The commercial suites kept getting in the way: rigid licenses, locked feature tiers and files we couldn’t take elsewhere. So we built our own tools and used them on our own designs first, then in industry and academic research, for over a decade. TerreLenz is those tools, ready for your team.

  • Consumer electronicsTight packaging, fast programs, high volumes
  • AerospaceDemanding reliability and documented results
  • Design work firstFeatures come from problems we had to solve
  • US citizens, all of usITAR and DFARS projects are welcome

Capabilities

Static, AC and transient — in 2D and 3D.

One model runs as a magnetostatic, time-harmonic or transient study. Choose it in the Study menu; the geometry, materials and coils stay the same.

3D fields

Magnetostatics with permanent magnets, coils, linear and saturating iron and uniform applied fields. AC eddy currents from current-fed coils. Adaptive meshing, symmetry planes and open boundaries.

2D planar & axisymmetric

Magnetostatic, AC and transient studies. Draw with a constrained sketcher, import DXF, or cut a 2D model from a section of the 3D one.

Circuits

Current or voltage sources — DC, sine, pulse or table — into stranded or solid coils. Three-phase sets, and netlists with R, L, C, diodes and switches for magnetizers and solenoid drivers.

Motion

Rotors turning in the air gap, at a set speed or driven by load, inertia and friction. Stroke sweeps and plunger dynamics, magnetic gears with a second rotor, and periodic linear arrays.

Losses & heat

Copper, eddy-current and iron losses, with loss coefficients fitted to the supplier’s W/kg data and laminations by stacking factor. 2D heating feeds the temperatures back into resistance and magnets.

Magnets & hysteresis

Parallel, radial and Halbach magnetization; temperature-dependent grades; load-line tools that map each magnet’s permeance coefficient and operating point, and demagnetization margin maps; magnetizer simulation. Jiles–Atherton hysteresis in steels.

Workflow

Four steps, one window.

  1. 1

    Bring the geometry

    Import STEP with part names kept, or sketch and extrude. After a design change, Re-import STEP, keeping settings updates the shapes and keeps every material, magnet and coil.

  2. 2

    Set up the physics

    Pick materials and magnetization directions, turn bodies into coils, and choose the study, circuits and motion. A line atop the Model panel sums up the study.

  3. 3

    Solve, then check

    F5 solves. Shift+F5 Check accuracy solves again with a finer mesh, higher-order elements, smaller time steps and more air, and shows how far each result moved.

  4. 4

    See it in Lenz

    Lenz, the results view, shows fields on any cut plane, flux lines, probes that update without re-solving and animated waveforms. Ctrl+R turns what you see into a report.

    Named for Lenz’s law, and a lens on your fields.

Electric machines

Start from the main dimensions, not a blank sketch.

The Machines menu builds a complete machine model — geometry, a three-phase winding, the smallest periodic sector and the rotation setup — from slots, poles, diameters, magnets and turns.

  • Permanent-magnet machines with surface, inset or buried magnets (flat, V or spoke), and rotor skew.
  • Squirrel-cage induction machines, with torque, currents and losses from standstill to near synchronous speed.
  • One-click analyses: cogging torque, back-EMF, torque against load angle, Ke, Kt and the d-q model with saturation.
  • Torque–speed curve and efficiency map for a DC bus voltage and current limit, and generator operation into a load. Your operating points are marked on the map, down to a whole drive cycle.
  • Quick design: an analytic estimate in about 0.1 ms, before any mesh — magnet flux linkage within 0.7 % and torque within 1.5 % of the finite-element result on the default 12-slot, 10-pole machine.
Efficiency map, default PM machine — TerreLenz
Efficiency map of the default permanent-magnet machine over torque (0 to 5.1 N·m) and speed (0 to about 6000 rpm), peaking at 96.4 % near 5000 rpm and full torque.

Validation

Held to the industry’s own benchmarks.

TerreLenz solves the TEAM benchmark problems the industry validates against, plus closed-form cases and FEMM 4.2 on identical models. Every case below is one of over 60 automated tests that run on every build and fail it if a result drifts out of tolerance.

CaseChecked againstQuantityError
Block magnet 20×20×10 mm, Br 1.3 TClosed formBz, 2 mm from the pole face+0.09 %
Block magnet 20×20×10 mmClosed formBz, 10 mm from the pole face+1.00 %
Steel sphere in a uniform field, at the knee (400 kA/m)Exact solutionB at the center+0.22 %
Steel sphere, deep saturation (1.5 MA/m)Exact solutionB at the center+0.65 %
Two-wire line, planarAnalyticInductance per length−0.08 %
Two coaxial rings, axisymmetricAnalyticMutual inductance−0.08 %
Two coaxial rings, axisymmetricAnalyticAxial force+0.06 %
Thick solenoid, axisymmetricAnalyticCenter field+0.43 %
C-core and armature, 500 A-turnsFEMM 4.2Gap B, force, flux linkage0.00 %
C-core and armature, 3000 A-turns (saturated)FEMM 4.2Armature force−0.04 %
Round copper wire, ACBessel-function solutionResistance (skin effect)+0.04 %
Plate over a coil: transient steady stateAC solutionCurrent, loss, force≤0.06 %
Ring around a wireAnalyticIron losses (Bertotti)0.007 %
Stranded coil, voltage stepe−t/τRL current risepasses
TEAM 7 asymmetric conductor, 50 and 200 HzPublished measurementsBz and Jy along the benchmark linespasses
TEAM 30a induction motor, 0–1200 rad/sPublished reference tableTorquewithin 0.02 %
TEAM 30a induction motorIndependent FE modelRotor losses≤4 %
4-pole rotor, slotted statorFEMM 4.2Cogging torquewithin 6 %
Rotating magnetω·dλ/dθ from a rotor sweepBack-EMFpasses

Cogging torque: within 6 % of its amplitude. Block magnet: the error grows to +1.93 % at 20 mm, where the finite air region starts to count; the tests allow 1 % up to 5 mm. TEAM 30a torque is checked at 0, 200, 400 and 1200 rad/s.

Read the full validation report Every case, how the error is measured, the numerics behind it, and what TerreLenz doesn’t do yet.

Engineering notes

The numerics, in plain terms.

A number is only useful if you know how it was made. This is how TerreLenz makes its.

Second-order elements, always

First-order elements reach 30 % error next to a magnet, so second order is the default on every study: nodal in 2D, hierarchical edge elements in 3D. Not a setting to remember.

Block magnet, 2 mm off the pole: +0.09 %

Open boundaries, not a wall

A zero-potential wall is wrong in a known direction. A shell transformation maps the exterior to infinity, and the tests bracket every open-boundary result between field-normal and flux-tangential walls.

Magnet in a 30 mm ball of air: within 0.3 %; plain wall: 6–13 % off

Forces you can cross-check

Maxwell stress over a shell of air around each body, with a thin-film term for parts that touch. Rotor torque by Arkkio’s method over the meshed gap. Virtual work is kept as an independent check.

Plunger: stress −20.09 N, virtual work −20.14 N, 0.2 % apart

Saturation by Newton–Raphson

The exact Jacobian in 2D and 3D. Given a straight-line B-H curve, the Newton solver reproduces the linear solver to six digits, and curves extend at μ0 past their last point so a solve never runs off the table.

Steel sphere at 3.2 T: +0.65 % against the exact solution

Motion with the load in the loop

A moving band in the air gap, driven by speed, an angle table, or the rotor’s own inertia, friction and load. Two rotors for magnetic gears. Translation with eddy currents re-meshes every step.

Magnetic pendulum period: −0.05 % from 2π√(J/k)

Materials that know their temperature

129 magnet and soft-material grades with Br and HcJ against temperature, per-temperature demagnetization curves, and irreversible demagnetization with recoil tracked in every element.

Demagnetization law followed to 0.2 mT at every step

Automation

Fully scriptable, and ready for your AI agent.

Everything in the window is also in Python, built in with nothing to install. Describe the problem to your AI agent and let it build the model, set up the parameters, run the sweep and pull out the numbers.

  • Documentation written for automation: every feature of the window has its Python call documented beside it, and the customer portal carries the complete Python reference and an automation guide an AI agent can work from to build, solve and report a whole problem.
  • A built-in reference (Script › Python reference) prints every class, function and argument inside the app.
  • Headless batch mode with exit codes, for pipelines, servers and CI.
  • Named parameters drive geometry, materials, circuits and boundaries.
  • Sweeps run several solves at once and report a failed variant instead of stopping.
PromptModel a 10 × 10 × 5 mm N42 magnet in air, sweep its width from 6 to 12 mm, and give me the stored energy for each.
sweep_magnet.py
# the open project
p = terrelenz.project()
p.set_parameter("w", 10, "magnet width")   # mm

m = p.add_box("Magnet", (0, 0, 0), (10, 10, 5))
m.set_step(0, "dx", "w")        # x size follows w
m.material = "NdFeB N42"
m.magnetization = (0, 0, 1)
p.air_region()

r = p.solve()                       # shown in the window too
print(r.energy, r.force("Magnet"))

for row in p.sweep({"w": "6:2:12"}):   # one solve per value
    print(row["values"]["w"], row["results"].energy)

Reports

Reports your customers can read.

One click turns a solved model into a report you can hand to a customer or put in front of a design review: headline numbers, field plots, waveforms, the model and its materials.

  • PowerPoint, Word, PDF or HTML, so it drops into the deck or document you already use.
  • Built for consultants: send clients results they can follow, not raw solver output.
  • Views saved in Lenz keep the figures you chose, and scripts can regenerate the whole report.
The first page of a TerreLenz report for a solenoid actuator: coil flux linkage 14.65 mWb, stored energy 14.65 mJ, force on the coil 687.1 mN and inductance 7.325 mH.
A generated report, unedited: the solenoid actuator example.

Your work, kept safe

Never lose a solve. Take it anywhere.

A crash, a forced restart for updates or a mesh setting that asks too much doesn’t cost you your work. And TerreLenz doesn’t lock that work into a format only it can open.

Recovery after a crash or restart

A recovery copy of your project, solution included, is written every few minutes and before every solve. If TerreLenz or the computer stops, the next start offers it back.

A copy after every solve

Each finished solve is kept as a project of its own in an autosave folder, never over your file or the solution you saved. Hours of solving are never lost to an unsaved session.

A mesh can’t hang the program

Meshing and solving run apart from the window, so it stays responsive and Stop always works. A run that would exhaust the computer’s memory is stopped, with a reason; your model stays as it was.

Open project files

A .tlz project is a zip archive with a JSON-based model and its results inside. Save a copy without solutions to share just the model.

Standard exports

CSV for data, PNG for field views, MP4 and GIF for animations, and reports in PowerPoint, Word, PDF and HTML.

Python in between

Scripts read every result, so the numbers can go to any tool that takes a file or an API call.

Licensing

Licensing that works the way engineers do.

We built TerreLenz because the licensing of the big suites got in our way. So we made it the licensing we wanted.

Works in every region

One license works in any country, with no charge for region unlocking. Take it on the road with you.

Full support included

Every license comes with full support from the magnetic applications engineers who build TerreLenz and design with it: answers from industrial practice, not a script, at a fraction of the cost of comparable suites. Write to [email protected].

No locked tiers

Machine design and transient analysis are a reasonable add-on to the base license, not a top tier you can’t justify.

Flexible licensing

A personal license covers two of your computers, desk and laptop. Team licenses float between people, and if you left your other computer on, you take your license back from it with one click. Requests and license files: [email protected].

Customer sign-in Maintenance includes the customer portal: every new release to download, a tutorial for every feature, the complete Python reference and automation guide, feature trainings and sample projects to run.

Simulation and engineering services

Our applications engineers, on your design.

Bring a design problem and work it through with the magnetic engineers who build TerreLenz and use it on their own designs. We model it in TerreLenz with you, so you end up with the answer, the know-how, and a model your team can run again.

Industrial experience, not just simulation. Our magnetic applications engineers have spent their careers designing magnetics for products that ship, from consumer electronics to aerospace. They know where a model and a measured part disagree, which tolerances and material lots move the answer, and what a supplier can actually build. That practical experience comes with every support question and every project.

Magnetic circuit and motor design, as support or as contracting. Design support alongside your engineers (sizing, magnet and steel choices, winding and drive, loss and thermal budgets), or the whole design contracted to us: a magnetic circuit, an actuator or a motor taken from specification to a documented design your team owns.

By the project or by the hour. A scoped study with a fixed price and a report at the end, or our engineers' time as you need it: a model review, a few hours alongside your team, a script for your sweeps.

Controlled projects welcome. Every TerreLenz employee is a US citizen, and we welcome work under ITAR and DFARS: tell us the handling your program requires and we work within it.

  • Motors and actuators sized from your specification, from quick design to efficiency map.
  • Magnetic circuits designed or reviewed: magnets, poles, gaps, yokes and return paths, with their operating points over temperature.
  • Contract design when you would rather hand the whole task over: specification in, documented design and model out.
  • Magnet choices checked for operating point and demagnetization margin over temperature.
  • Losses and heating in steel, magnets, windings and eddy-current parts.
  • A second look at a model your team built: mesh, boundaries, materials and the numbers that matter.
  • Automation: scripts for your sweeps, optimizations and reports.
  1. 1

    Scope it

    Tell us the device, the targets and the deadline. We agree the questions to answer and what you get back.

  2. 2

    Model it together

    We build or review the model with your engineers in working sessions: geometry, materials, magnets, coils and drives.

  3. 3

    Check the answer

    Every result we hand over has been through Check accuracy, and the report says how far it moved.

  4. 4

    Keep the work

    You get the .tlz project, its scripts and the report, so your team can rerun it, change it and build on it.

TerreLenz — Electromagnetic and motor simulation

Try the pre-release build.

TerreLenz runs on Windows and macOS. Four worked examples under Help › Examples solve in seconds to minutes, or bring your own design and we’ll model it with you, by the project or by the hour.

Every license includes full support, in every region.