3D electrostatic application example: getting started

This article is part of the continuing online course, Electric and magnetic field calculations with finite-element methods. We’ll advance to an actual application, a concept for a capacitive position sensor. Rather than using prepared input files, we’ll build the entire solution from scratch. This article covers the initial steps in building a 3D assembly with Geometer. Following articles will cover mesh generation, the FEM solution and analysis techniques. The example emphasizes the internal parametric models of Geometer and MetaMesh rather than the STL models created with CAD programs discussed in a previous article.

Figure 1 shows a view of the detector geometry. A dielectric object of known shape and size drops through the assembly along the y direction. A shaped drive electrode with an applied AC voltage creates a time-varying electric field that varies in the x-direction. Changes in the mutual capacitance between the drive electrode and detector is sensed with a bridge network. The function of the detector is to confirm the presence of the object and its approximate position in x. The purpose of our calculation is find numerical values for the relative changes in mutual capacitance with the size and position of the object to gauge the accuracy requirements for the detector circuit.

Detector geometry in the plane y = 0.0

Figure 1. Detector geometry in the plane y = 0.0 (dimensions in cm).

Figure 2 gives an alternate 3D view of the assembly. For reference, we will use the following dimensions:

  • the solution volume covers the region -2.50 cm ≤ x,y ≤ 2.50 cm and -0.25 cm ≤ z ≤ 3.00 cm.
  • the metal case of thickness 0.25 cm encloses all sides of assembly except for a cut to house the detector and the upper boundary in z. We’ll discuss the physical meaning of this open boundary in a following article.
  • the test object is a sphere of radius 0.375 cm.
  • the detector is a rectangular plate with dimensions Wx = 1.75 cm, Wy = 3.25 cm and Wz = 0.25 cm.
  • the cutout for the detector has dimensions Wx = 2.00 cm and Wy = 3.50 cm.
  • the drive electrode is an extrusion of length Wy = 4.0 cm with a cross-section in the z-x plane defined by  an outline of lines and arcs.
3D view of the detector assembly

Figure 2. 3D view of the detector assembly.

To start, you should decide on a working directory for the input/output files. Run the AMaze program launcher and point the Data folder to the directory. Run Geometer and click File/New script. In the opening dialog, type in the values shown in Fig. 3 to define the dimensions of the solution volume. When you click OK, Geometer automatically creates the first Part[1], a box that fills the solution volume. By default, the part is named SolutionVolume and is assigned to Region 1. The program displays a default orthogonal view in the x-y plane. The programs turns off the visibility of the first Part because it would obscure the view of additional parts.

Dialog to start a new assembly in Geometer

Figure 3. Dialog to start a new assembly in Geometer.

At this point, we need to make a strategy decision. We could associate the first Part with air and add five parts to build up the metal case wall. On the other hand, it is easier to start with a block of metal that fills the solution volume and then to carve out an internal air volume. We’ll take this approach. To start, let’s define the physical regions that will be needed for the electrostatic solution and give them names that will help to remember their functions. Click Edit/Edit region names to bring up the dialog of Fig. 4. Replace the default region names with the ones shown and click OK.

Dialog to define region names

Figure 4. Dialog to define region names.

Click the command Edit/Edit part, select SolutionVolume (the only one available) and click OK. The dialog of  Fig. 5 (left) shows the properties of the parametric model. The Part is a Box that fills the solution volume. The box length in z is Wz = 3.25 cm. The part has been shifted a distance 1.375 cm so that it fills the region -0.25 cm ≤ z ≤ 3.00 cm. Note that the name of the associated region has been changed to MetalWall. Change the default Part name to MetalWall and then click OK to exit.

Edit part dialogs

Figure 5. Edit part dialogs for the first (metal wall) and second (air volume) parts.

Next, we shall add a part that carves out the air volume. Choose Edit/Add part to open the model parameter dialog. Under Part type, choose Box from the popup menu. Set the Part name to Air and pick the Region Air. To leave metal walls of thickness 0.25 cm, the box should have lengths Lx = Ly = 4.50 cm and Lz = 3.00 cm. We need to set ZShift = 1.50 cm to fill in the region from 0.0 cm ≤ z ≤ 3.0 cm. Figure 5 (right) shows the final state of the dialog. When you exit, the boundary of the air region appears in the plot. Click View/Y normal axis to check that the length and displacement of the box are correct. At this point, it’s a good idea save the work. Click File/Save script and accept the name DetectorStudy.MIN. The text file is in a format recognized as input to MetaMesh.

We need to include a slot in the wall to house the detector. Click on Edit/Add part and fill in the dialog with the following values

Type: Box
Part name: DetectorWell
Region: Air
Lx = 2.00
Ly = 3.50
Lz = 0.25
ZShift = -0.125

If everything is correct, the plot looks like Fig. 6. Go ahead and add the detector and the test object using the following parameters

Type: Box
Part name: Detector
Region: Detector
Lx = 1.75
Ly = 3.25
Lz = 0.25
ZShift = -0.125
Type: Sphere
Part name: Object
Region: Object
Radius = 0.375
ZShift = 0.625

The spherical object is centered at x = y = 0.0 cm with center 0.625 cm from the surface of the detector.

State of the assembly

Figure 6. State of the assembly with the metal wall, air volume and detector slot.


Viewing the state of the assembly requires some effort and experience. The surfaces of selected parts are plotted using OpenGL. When an encompassing part (like the metal wall) is included, it obscures internal parts. The following options are useful to display internal parts:

  • Turn off the visibility of encompassing parts.
  • Use a wireframe display for the encompassing part.
  • Assign clipping planes to the part display.

The Geometer Instruction Manual gives a complete description of the plot controls. To illustrate the current state of the setup, Fig. 7 shows a perspective view of the detector and object regions with the air region shown as a wireframe.

Perspective view of the assembly by regions.

Figure 7. Perspective view of the assembly by regions with the air region shown as a wireframe.

We need only define the drive electrode to complete the assembly. The Part is an extrusion, a shape that extends a given distance along one direction with an arbitrary shape in the plane normal to that direction. In comparison, a turning is an arbitrary shape rotated about an axis of symmetry. In both case, the shape is defined by a set of connected line and arc vectors. Extrusions and turnings are highly useful and versatile models that merit their own discussion. We’ll cover the topic in the next article.


[1] It is important to understand the definitions of Parts and Regions. To review, see this previous article.

[2] Contact us : techinfo@fieldp.com.

[3] Field Precision home page: www.fieldp.com.

Running a 3D electrostatic solution: mesh generation and solution

This article is part of the continuing online course, Electric and magnetic field calculations with finite-element methods. This article continues an example 3D electrostatic solution. The previous article introduced the concept of mesh Parts and Regions. The emphasis was on input from 3D CAD programs via STL files. Here, we’ll consider how MetaMesh uses the STL data and processes extra information to create the result of Fig. 1. We could go through all the interactive operations in Geometer to define the parts, but there’s a quicker way to understand the setup. The end result Geometer activity is a succinct MetaMesh input script that includes all the information. We’ll study the script directly. A following article shows how to use Geometer to create a solution from scratch.

Conformal mesh created by MetaMesh

Figure 1. Conformal mesh created by MetaMesh, outline of the VACUUM region.

Run AMaze and launch MetaMesh. We’ll assume that the Data folder is still pointing to the working directory of the previous article. Click File/Load MIN file and choose sheetgun.min. Then click File/Edit MIN file to view the contents of the script. The first part of the Global section has detailed specifications for element sizes over multiple zones along the axes. The feature was necessary for accuracy in subsequent beam emission calculations – the details are not of immediate concern. Instead, we’ll concentrate on the Part definitions shown in Fig. 2 [1]

MetaMesh input script sheetgun.min

Figure 2. MetaMesh input script sheetgun.min.

The Parts named Anode, Focus and Cathode (marked in green) use the STL models that we previously discussed. The Type command of each part section reads the associated STL file. The Fab (fabrication) command defines fitting controls — default values are usually sufficient. Although the intent is build the mesh around the assembly positions of the STL parts, we do want to reverse the emission direction to +z. This is accomplished with the commands

Rotate 180.0 0.0 0.0 XYZ

Each command rotates the coordinates of all facet nodes 180° about the x-axis relative to the assembly origin. The commands

Surface Region VACUUM

instruct the code to adjust all element facets of the part adjacent to Vacuum elements to conform closely to the defined surface of the STL model.

The assembly is located inside a cylindrical vacuum chamber of radius 1.23″ that extends from z = 0.0″ to the boundary of the solution volume at z = -1.50″. For high speed, HiPhi uses a structured conformal mesh, which means that the elements are arranged like a big apartment building. The term conformal means that apartments are not necessarily right-angle boxes [2]. The solution volume of a structured mesh is always a box. To create the vacuum chamber, we fill the entire volume with elements assigned to the fixed-potential region Ground (part VChamber) and then carve out a cylindrical volume of elements associated with the Vacuum region. The part ExitPort is a slot to accommodate the beam exit aperture. The final part (Support) is a cylindrical pipe attached to the cathode. Note that the part belongs to the same Region as the cathode and the focus electrode.  The physical property of the Region in the HiPhi solution is is a fixed potential (-74.0 kV).

Exit the text editor and click the Process mesh command. MetaMesh reports the progress of the mesh creation. When the program is finished, right-click to exit the report and use the File/Save mesh command to create the file sheetgun.mdf (mesh definition file).

HiPhi dialog

Figure 3. HiPhi dialog to set program parameters and the physical properties of regions.

We can now proceed to the HiPhi solution. Run the program, click Setup and choose sheetgun.mdf to open the dialog of Fig. 3. Fill in the values as shown. Click OK and save the results as sheetgun.hin. The resulting file has the contents:

Mesh = sheetgun
DUnit =   3.9370E+01
ResTarget =   5.0000E-08
MaxCycle =    4000
Parallel = 4
* Region 1: GROUND
Potential(1) =   0.0000E+00
* Region 2: VACUUM
Epsi(2) =   1.0000E+00
* Region 3: CATHODE
Potential(3) =  -7.4000E+04

The clear format of the file makes it easy to identify the functions of the commands. I have the Pro version of HiPhi and a core i7 computer, so I added the command

Parallel = 4

with a text editor to speed things up.

Click the Run button and choose the input file to generate a solution recorded as the binary file sheetgun.hou. We can get some useful information by checking the text listing files sheetgun.mls and sheetgun.hls created by MetaMesh and HiPhi. For example, I found that the mesh had 1,295,952 active [3] elements and took 19 seconds to process on my computer. The 4000 matrix-inversion cycles in HiPhi took 363 seconds to reach a relative residual of 8.6E-07 [4].

To complete the exercise, run PhiView and load sheetgun.hou. You can experiment with the options for 2D and 3D plots. Figure 4 shows an example. Here, I wanted to get a quick overview of levels of |E| on the focus-electrode surface. The red areas correspond to |E| = 16.7 MV/m (167 kV/cm).

3D plot of the assembly

Figure 4. 3D plot of the assembly showing levels of |E| on the surface of the focus electrode.


[1] The attractive text display is from the ConText editor using syntax highlighting definitions that we supply with the software.

[2] The general term for a six-sided solid where facets may not be at right angles is a hexahedron.

[3] The term active means that the elements are not part of a fixed-potential region.

[4] The relative residual, a measure of the accuracy of the iterative solution, should be much smaller than unity.

[5] Contact us : techinfo@fieldp.com.

[6] Field Precision home page: www.fieldp.com.


Running a 3D electrostatic solution: STL input

This article is part of the continuing online course, Electric and magnetic field calculations with finite-element methods. As in the introduction to the 3D software, we’ll run through a complete field solution for a sophisticated gun designed at the Lawrence Livermore National Laboratory to generate sheet electron beams . We’ll use prepared input files — later articles will help you prepare you own inputs.

To start, run the AMaze program launcher and set the Data folder command to point to a working directory. Copy the following files from the MetaMesh example directory to the working directory:


The text file sheetbeam.min is a set of instructions to MetaMesh giving the shapes and assembly method of the gun parts. The instructions were built in the interactive environment of Geometer. The text file sheetbeam.hin gives HiPhi the material properties and other parameters needed to generate a finite-element solution. The stereolithography files cathode.stl, focus.stl and output.stl were supplied by a laboratory engineer who exported them from a Solidworks model. They define shapes that are too complex to create from a summation of simple solid models (e.g., box, cylinder,…).

As we saw in a previous article, the procedure for 2D shapes is relatively simple. Objects are created from a boundary outline of line and arc vectors. The outlines may be derived from or exported to DXF files. In contrast, shapes encountered in the 3D world may be vastly more complex. A flexible approach is essential to make the task manageable. The following principles underlie the operation of Geometer and MetaMesh. Their implications will become clear as we progress through the example:

  • Objects (like electrodes and dielectrics) are constructed from one or more Parts.
  • Physical properties (like potential and relative dielectric constant) as assigned to Regions. Each Part belongs to a Region.
  • An object may be constructed from several Parts associated with the same Region. For example, a grounded electrode could be composed of Parts that belong to a Region that has a fixed potential 0.0 V.
  • Parts are processed in the order in which they appear in the MetaMesh input file. The currently-processed Part overwrites any shared volumes with previously-processed Parts.

Parts are defined at a standard position and orientation. They may be moved or rotated to a final configuration in the solution space.

It’s clear that the idea of a Part is central to the mesh building process. There are two types:

  • Parametric models for simple shapes like cones or spheres. These models are built into Geometer and MetaMesh and do not require external data.
  • Arbitrary shapes created with 3D CAD programs like SolidWorks and exported as files in the STL format. These files must be loaded into Geometer or MetaMesh.

A mesh may combine both types of parts.

Let’s get started with the calculation. To begin, it’s useful to understand the information in STL files. Run Geometer and click on the STL viewer command. The program becomes a full-featured STL viewer that can display the shapes defined by individual STL files and their relationships in space. Click on File/Add model and choose focus.stl. Click on View control/Orthogal/perspective to enter the 3D mode. This is an interactive environment based on OpenGL. Move the mouse cursor to the sides and left click to change the view. You can also move the cursor toward the center and left or right-click to zoom in or out. The view looks like the right-hand side of Fig. 1. The part is a dish-shaped focusing electrode with a hole for the cathode.

Geometer STL viewer

Figure 1. Geometer STL viewer, showing solid and wireframe views of focus.stl.

To see the inherent data of the STL file, click Plot control/Model display. Uncheck the Solid box to create a view like the left-hand side of Fig. 1. The view shows the set of contiguous triangular facets that define the surface of the part. The STL file is simply a list of facets. The facets shown are typical of those created by 3D CAD programs. Although all facets are theoretically correct, they may vary considerably in scale. To determine if an element is inside  an STL shape, MetaMesh must analyze all facets, an intensive activity where parallel processing is a big advantage.

Return to a solid view of the surface and load the other two parts to get a view like that of Fig. 2. Per my request, the mechanical engineer exported the parts from a SolidWorks assembly. In this case, the coordinates of facets in the STL file are absolute with respect to the assembly space rather than relative to the part. Therefore, the facets not only define the shape of parts, but also their positions and orientations relative to each other[1].

 Full set of STL shapes for the assembly

Figure 2. Full set of STL shapes for the assembly.

The parts as loaded define the full volumes of the cathode and focus electrode, but only half of the output transport tube. This is not a problem because by symmetry it is necessary only to do a calculation in the first quadrant of the x-y plane. MetaMesh automatically clips over-sized parts. There is one problem that you can see by shifting to the Orthogonal view and clicking View control/Y normal axis. The Solidworks model has the beam moving in the -z direction. To match transport calculations, we want the beam to move in +z following the standard convention. The modification will be made during MetaMesh processing.

Exit Geometer and run MetaMesh. Click File/Load MIN file and choose sheetgun.min. Click the Process mesh command and wait for the program to complete it’s analysis. It takes about 20 seconds to generate a mesh with 1.3 million elements on a multi-core computer. Right-click to close the messages. Choose Plot3D to observe the display of Fig. 3. The plot (which shows the surfaces of elements of the vacuum region) gives a good output of all the electrodes. The parts defined by STL files are present, but much more has happened. The mesh has been created in the first quadrant with fine resolution of the cathode surface, the hexahedron elements conform closely to the theoretical shapes, the beam direction points in +z, the assembly is inside a cylindrical vacuum chamber and there is a support rod for the cathode. All will be explained in the next article where we take a close look at the MetaMesh script.

 Completed mesh

Figure 3. Completed mesh, outline of the vacuum region.


[1] (Note that we could move the parts to different positions by adding shift operations in Geometer.

[2] Contact us : techinfo@fieldp.com.

[3] Field Precision home page: www.fieldp.com.

Adding 3D software

With a good background in 2D finite-element solutions, it’s time to advance to the more challenging and sophisticated task of full 3D electrostatic and magnetostatic field calculations. In this article (the twelth in the online course Electric and magnetic field calculations with finite-element methods), we’ll make two assumptions:

  • You purchased or requested a trial of HiPhi, our unitized package for electrostatic and high-voltage devices.
  • You have already installed and activated the Basic version of EStat (2D electrostatics).

In this case, installation is quite simple. Activation of the computer will carry over from the existing programs.

If you make a purchase or request a trial, we will send an E mail message with a link to download HiPhi:

Package: HiPhi (Basic)
Link: www.dsite.us/download/bin16/HiPhiSetupBasic.exe
User: bin16
Password: HklW29567$

Download and run the installer. It adds the 3D programs to create the directory structure shown in Fig. 1. There are now two sub-directories in the main program directory: tricomp (the existing 2D software) and amaze (the new 3D programs). Note that the 2D and 3D programs are not directly coupled because they use completely different types of meshes (triangles in a plane versus hexahedrons in a volume). Note further that if you do not have an existing installation, it will be necessary to follow the process described in a previous article.

Directory setup with 2D and 3D programs

Figure 1. Directory setup with 2D and 3D programs.

Let’s review the contents of the amaze directory:

  • amaze.exe: A program launcher to run the HiPhi programs and to organize data files.
  • dielectric_constants.html and physcons.pdf: Useful reference material for electric field calculations.
  • geometer.exe: An interactive 3D environment based on OpenGL for building assemblies from simple shapes or exported parts from SolidWorks and other CAD programs.
  • hiphi.exe: The main FEM solution program.
  • hiphi.pdf: The HiPhi Instruction manual that can be called using tools in hiphi.exe and phiview.exe.
  • metamesh.exe and metamesh.pdf: Automatic conformal mesh generator, program and instruction manual.
  • notify.exe and notify.wav:  A beep program and waveform to support the Task feature of amaze.exe.
  • phiview.exe: A flexible graphical post-processor for analyzing HiPhi solutions.
  • phiview_conductive.cfg, phiview_dielectric.cfg and phiview_force.cfg  Standard PhiView configurations for different types of solutions and analyses.

Following article will clarify the functions of the components and their relationship to each other.

Amaze program launcher

Figure 2. Amaze program launcher.

Click on the desktop shortcut to Amaze created by the installer to run the program controller shown in Fig. 2. It contains a number of buttons to run the 3D programs and perform other tasks. The buttons are organized into the following groups:


  • Tasks: Advanced function for power users to create and to run batch files for automatic control of complex calculations.
  • Mesh generation: As we saw in the previous chapter on 2D calculations, defining the shapes of physical objects and dividing the solution space into small pieces is an essential part of the finite-element process.
  • Solution: The main FEM solution program. In Fig. 2, only HiPhi has been installed.
  • Analysis: Explore the solutions, creating plots and numerical results.
  • Utilities: Prepare inputs and display outputs for special solution programs. HiPhi does not use any of the utilities.
  • Control: Organize your data.
  • Tools: Call up text editors, terminal windows and other programs that you use in your work.

There is also an Activate button in case you haven’t previously installed 2D software. The next article describes a quick calculation that demonstrates how everything fits together.


[1] Contact us : techinfo@fieldp.com.

[2] Field Precision home page: www.fieldp.com.

Magnetostatic solutions: permanent magnets

As the final topic in two-dimensional magnetostatics, we’ll consider solutions with permanent magnets. To start, it’s useful to review how permanent magnets work. Introductory electromagnetic texts often don’t treat the topic, and the explanations in many specialized references are overly complex.

The electrons of many atoms carry a circulating current, like a small current loop. Such an atom has a magnetic moment , a vector pointing from the center of the loop normal to the current. The vector lies in the the direction of the magnetic flux density B created by the loop. The distinguishing feature of ferromagnetic materials is that the atoms prefer to orient their currents in the same direction (a quantum mechanical effect). A region where all atoms are aligned is called a domain. Figure 1:top shows the summation of aligned atomic currents in a domain. Currents on the inside cancel each other, so the net result is a surface current in the direction normal to the magnetic moment.

Domains and atomic currents

Figure 1. Top: alignment of atomic currents in a domain. Bottom: alignment of domains in unmagnetized material.

In the natural state of a ferromagnetic material, the orientation of domains is randomized so that there is no macroscopic field outside the material (Fig. 1:bottom). External fields would require energy to generate. Let’s say that we supplied that energy by placing the material inside a strong magnet coil. In this case, the domains line up and the current of all domains sum up as in Fig. 1:top. The domain currents cancel inside, but there is a net surface current on the object. If we turn off the coil, the domains of a soft magnetic material return to a random distribution. On the other hand, suppose we could physically lock the domains in position before we turned off the coil. In such a hard material, the object retains its surface current and can generate external fields. The energy for the field was supplied by the magnetizing coil and it was bound in the material. Such a object is called a permanent magnet.

The distinguishing feature of modern permanent-magnet materials like neodymium-iron and samarium-cobalt is that domain locking is extremely strong. The domains remain lined up, independent of external processes. This property makes it simple to model the materials. Let’s review some definitions and facts. The direction of the magnetic moments of the aligned atoms (and domains) is called the magnetization direction. Suppose we have a permanent magnet that is long along the direction of magnetization and self-connected (e.g. a large torus). In this case, there is no external field and the flux density inside the material is generated entirely by the surface currents. This intrinsic flux density is called the remanence flux, Br. A typical value for neodymium iron is Br = 1.6 tesla.

We can express the surface current density in terms of the remanence flux. Take Br as a vector pointing along the direction of magnetization and let ns be a vector normal to the surface of the permanent magnet. The surface current density is given by

Js = (Br × ns)/μ0 (A/m).  [1]

We can use PerMag to confirm this physical interpretation. Figure 2:top shows a calculation in cylindrical geometry for an annular permanent magnet in space (i.e., no iron, coils or other permanent magnets). The remenance field is Br = 1.5 tesla and the direction of magnetization is along z. The plot shows lines of B. According to Eq. 1, we would get the same results by replacing the permanent magnet with thin surface current layers. By the properties of the cross product in Eq. 1, there should be no current on the ends and uniform current density Js = 1.193 Ma/m on the inner and outer radial surfaces. In the second model (Fig. 2:bottom), the permanent magnet is replaced by two thin solenoid coils (length = 0.08 m, thickness = 0.00125 m). The total current of the outer coil is 1.193E6*0.08 = 95470.0 A and the current on the inner coil is -95470.0, Figure 2:bottom shows that the calculated lines of B are indistinguishable from the permanent magnet calculation. For a quantitative check, we can compare scans of Bz along the axis. Figure 3 shows the results. The small difference is a result of the finite thickness of the layers.

Lines of magnetic flux density for an annular permanent magnet (top) versus equivalent surface current layers (bottom).

Figure 2. Lines of magnetic flux density for an annular permanent magnet (top) versus equivalent surface current layers (bottom).

Scans of By(x,0) for an annular permanent magnet versus equivalent surface current layers.

Figure 3. Scans of By(x,0) for an annular permanent magnet (line) versus equivalent surface current layers (red symbols).

If permanent magnets are that simple, where could confusion arise? Unfortunately, things are more challenging when we talk about older materials like Alnico. Such materials are characterized by a demagnetization curve. The curve is usually a plot of B inside the permanent magnet versus H, where H is the applied magnetic field that arises from coils and other permanent magnets. It is easier to see the meaning of the curve if we make the plot in terms of the applied magnetic flux density, B0 = μ0*H. Applied fields have no effect on a modern materials. Therefore, the total flux density inside the material is simply

B = Br – B0.  [2]

Figure 4a shows a plot. The value of applied magnetic field where B = 0.0 is called the coercive force Hc. For modern materials, the coercive force is

Hc = -Br/μ0.  [3]

Demagnetization curves for modern (a) and older (b) permanent magnet materials.

Figure 4. Demagnetization curves for modern (a) and older (b) permanent magnet materials.

It is clear that neither the demagnetization curve or the coercive force are particularly meaningful for materials like NdFeB. On the other hand, the concepts are useful for older materials. Here, the domains are not tightly locked. Putting such a magnet in a device with an air gap causes degradation of the alignment so that the total flux density falls below the ideal curve (Fig. 4b). PerMag can solve such problems, but it is important to clarify what such solutions mean. Suppose you bought an Alnico magnet that was magnetized at the factory and shipped with an iron flux return clamp (i.e., B = Br). If you could move it instantaneously to the application device, then the operating point calculated by PerMag would apply. On the other hand, if you removed the clamp during assembly so the permanent magnet was exposed to an air gap and possibly dropped it on the floor, then the material would have undergone an irreversible degradation and the fields generated would be lower than the numerical prediction. The only way to get the theoretical performance based on the demagnetization curve is to magnetize the material in situ. One big advantage of modern materials (beside their strength) is that they achieve the predicted performance, even if they are magnetized at the factory, shipped from China and moved to the assembly.

We’ll conclude with an application calculation, a bending magnet for an ion spectrometer. This is a long assembly, and we will do a preliminary 2D calculation in a cross section. Figure 5:top shows half the geometry (there is a symmetry plane with a Neumann boundary at y = 0.0 cm). The goal is to create a dipole field By in the air gap to bend ions moving in z in the x-direction. The arrow shows the magnetization direction of the permanent magnet (NdFeB with Br = 1.6 tesla). Two features ensure the maximum air-gap field for the given magnet surface currents:

The figure shows the calculated lines of B. Figure 6 shows a scan of By along x across the air gap. The field is strong but non-uniform, probably of little use in a spectrometer. Here, where we can take advantage of one of the properties of soft steel, field shaping. Consider the effect of adding a steel layer adjacent to the gap. Figure 5:bottom shows the change in lines of B. The steel shifts flux away from the center out to the edges of the gap. Figure 6 shows the effect on the field scan. With some sacrifice in the magnitude of the flux, the steel insert gives a working volume of approximately uniform field.

Application example, permanent-magnet ion spectrometer

Figure 5. Application example, permanent-magnet ion spectrometer. Top: bare magnet. Bottom: magnet with steel insert for field shaping.

Spectrometer application, scan of By(x,0)

Figure 6. Spectrometer application, scan of By(x,0) with and without the steel insert.


[1] Contact us : techinfo@fieldp.com.

[2] Field Precision home page: www.fieldp.com.