Replacing Launchpad on the Mac

LaunchPad on the Mac is an attempt to replicate the main screen in Windows — an area filled with icons to launch installed programs (shortcuts in Windows parlance). There is one big difference. In Windows, users can add or remove shortcuts. In macOS, the process is performed automatically — users are prevented from making any changes. This follows from the general Apple philosophy:

  1. Users are incapable of effort.
  2. The company knows best how everything should be set up.

This approach might be tenable if LaunchPad worked correctly. After installing several programs, it became apparent to me that LaunchPad was not reflecting the current content of the Applications folder. Some programs were not represented by icons no matter how many times I reinstalled them. Furthermore, icons remained even after I dragged the apps to the Trash bin. I made an Internet search and turned up hundreds of entries where people complained about the inability to add to and remove programs in LaunchPad. There were many suggested solutions (e.g., drag the program icon from Finder to the LaunchPad icon on the Dock, reinitialize the system,…). I tried them all with no success. I suspect the solutions worked in some past version of macOS (Heroic Marmot 7.56), but were sandbagged by Apple engineers for reasons unknown.

Fortunately, Field Precision offers an effective solution with more power and reliability than LaunchPad. We have recently ported Computer Task Organizer to the Mac. The full-functioned program is distributed at no charge — it includes no advertisements and sends no information to the Internet. Users who would thoroughly enjoy the program meet two criteria:

  1. They are willing to spend a few seconds to add and remove entries.
  2. They are open to the concept that it is easier to pick out a item from an alphabetized list of titles as opposed to staring at a screen full of icons.

Beside user control, Computer Task Organizer offers two advantages over LaunchPad:

  • CTO can perform a variety of operations besides simply launching programs. The key is that a document as well as a program can be associated with a task. This means that you can do things like open a spreadsheet, connect to an FTP site, open a reference work,…
  • Tasks can be grouped in categories — you can switch between them with simple button clicks. In contrast, items in LaunchPad must be organized by dragging icons back and forth between screens. Changing between screens involves either sweeping with the mouse or clicking microscopic buttons. Furthermore, there is no option to title the screens.

For those of you bold enough to eschew the cutting edge, here is a brief description of CTO.

Screenshot of CTO as a program launcher

Figure 1. Screenshot of CTO as a program launcher.

Figure 1 shows a screenshot of a CTO category I created named Applications. Here, the program performs the same function as LaunchPad. I use the category to run less-commonly used programs that I have not included in the Dock. Note that there are no documents associated with the entries. To run a program, you simply click the blue button on the left. Adding a program is easy. Click New entry, edit the task name and then click on the Task program cell. CTO opens a navigation window where you can find the app (usually, in the Applications folder).

Screenshot of CTO as a task organizer

Figure 2. Screenshot of CTO as a task organizer.

Figure 2 illustrates a function that cannot be performed by LaunchPad. I wanted quick access to all our PDF instruction manuals. In this case, the application (Preview) is always the same. A quick way to make a new entry is to copy-and-paste an existing row and then change the task name and target document.

You can also define tasks to automatically open FTP or web sites. I’ll discuss this topic in the next article. Use this link to download Computer Task Organizer. Here is a link to check out the instruction manual.


[1] Contact us :

[2] Field Precision home page:

Installing Field Precision utilities on a Mac

We have recently ported our technical productivity resources to Mac computers. The programs are distributed free of charge to scientists, engineers and students. They run under the latests versions of macOS on computers with Intel processors. Our utility programs include the full set of features and contain no advertising.

The following packages are available:

  • FP Uniscale. An advanced screen ruler and digitization system, a must for anyone who analyzes images on a computer.
  • Computer Task Organizer. A simple way to record and to automate everyday activities — a nice replacement for LaunchPad.
  • Boilerplate. The program has two functions. 1) Record and restore standard text blocks that you use in your work and 2) amplify the power of the clipboard by live storage of multiple entries.
  • FP FileOrganizer. An easy-to-learn two-window file manager, ideal for organizing large data sets.

To start the installation, click the button on the program Web page to download the Mac version of the program. A file ProgName.dmg is automatically placed in your Download folder. Open Finder and navigate to the Applications folder. Then, open the Download folder and double click on ProgName.dmg. The compressed disk image is opened and a new Finder window shows the contents, a single folder with the name ProgName. To complete the installation, simply drag the program folder to the Applications folder. The program folder contains the app, the instruction manual and possibly other documents. After you run the program, the folder will also contain the configuration file which records program features and data that you enter (e.g., saved rulers in Uniscale).

An icon for the program may or may not appear in Launchpad (depending on its mood). I’ll discuss dealing with LaunchPad in the next article. When you start the program, the Mac reacts with disapproval:

“BoilerPlate” can’t be opened because it is from an unidentified developer. Your security preferences allow installation of only apps from the App Store and identified developers.

An idealist would say that Apple is deeply concerned about your well being. A realist would say they want to sandbag any software that wasn’t purchased through the Apple Store. To continue, you will need to click System preferences/Security and privacy  Click OK in the previous warning dialog. The option to approve the program appears in the security dialog. Thereafter, the program runs like any other Mac software. To deinstall the package, simply drag the folder ProgName to the trash bin.

Two general usage tips:

1) Finder does not include a button to go up one folder in the tree, which makes navigation problematic. For this function, use Command-UpArrow.

2) For compatibility with Windows, our programs make extensive use of mouse right-clicks. New Macs are supplied with a stylish lump that appears to be a one-button mouse. Actually, it is a disguised two-button mouse with scroll wheel. To realize the full capabilities, go to System preference/Mouse. Uncheck Scroll direction: Natural, which is totally unnatural for Windows users. Check Secondary click/Click on right side to activate two-button performance. If this doesn’t work, note that you can plug any standard two-button mouse into the Mac to get full capabilities.


[1] Contact us :

[2] Field Precision home page:

Modeling quadrupole mass analyzers with OmniTrak

Linear quadrupoles are widely used for ion mass spectrometry. They can separate ions by the ratio of mass number to charge number (M/Z) without a magnetic field, leading to compact, light and inexpensive systems. An assembly consists of a source of low-energy ions that enter an extended electrostatic  quadrupole. The voltage applied to the lens has both DC and AC components. The orbits of most ions are unstable. Depending on the choice of voltages and RF frequency, only ions within a small range of M/Z have stable orbits and pass to a downstream detector. This report demonstrates the application of the three-dimensional OmniTrak code to characterize quadrupole mass analyzers.

Cross-section of an electrostatic quadrupole.

Figure 1. Cross-section of an electrostatic quadrupole. a}) Lines of constant potential. b}) Electric field lines.

Assume the quadrupole has ideal hyperbolic electrodes with an electrode-tip radius r0 (i.e., the distance from the axis to the closest point on an electrode). The beam propagates in the z direction. Figure 1 shows a cross section of the geometry in the x-y plane. The voltage applied to the top and bottom electrodes has the form of Eq. 1 where U is the DC component and V is the magnitude of the RF voltage with angular frequency ?. Voltages with opposite polarity are applied to the y and x electrodes.


The electrostatic potential in the gap has the form of Eq. 2.  The y component of electric field is given by Eq. 3.  Equation 4 describes ion motion in the y direction. With the introduction of the dimensionless variables of Eqs. 5, 6 and 7, the equation of motion takes the form of Eq. 8. Motion in the x direction is described by Eq. 9.

Equations 8 and 9 must be solved numerically. There are regions in (a,q) space where ion motion in x or y may be stable or unstable. Here, the term stable implies that the trajectories are bounded oscillations. In unstable regions, the displacement increases exponentially so that in a short time ions strike the electrodes. In particular, ions have stable trajectories in both the x and y directions within the shaded region shown in Figure 2. (Note that there is also a symmetric stability region below the q axis. Changing a to -a simply exchanges the roles of x and y).

Region of a-q space with stable motion in both x and y

Figure 2. Region of a-q space with stable motion in both x and y.

For reference, note that the ratio of the parameters is proportional to the DC voltage component divided by the AC component (Eq. 10). A fixed ratio corresponds to a straight line in (q,a) space like the dashed line in Fig. 2. Motion along the line starting at the origin is equivalent to raising the magnitude of U and V while keeping a constant ration. For a section of the scan, the curve in Fig. 2 passes through the stability region. The tip of the stability region has the coordinates q = 0.706 and a = 0.237.

The operation of the quadrupole as a mass filter is clear if we plot regions of stability in terms of voltage values U and V rather than the dimensionless parameters a and q. Figure 3 shows stability regions for two values of M/Z. The M/Z value for the green shaded region is half that of the tan region. The working line follows a fixed voltage ratio, U/V < (0.237)/(2 × 0.706). Note that as the magnitude of the applied voltages increases, the working line first passes through the green stability zone and then through the tan zone. A plot of the detector response versus a scan of voltage magnitude will show two peaks corresponding to the two values of (M/Z). Higher voltages correspond to higher mass-to-charge ratios. Absolute values of (M/Z) may be inferred from known values of the voltage, quadrupole geometry and RF frequency. Note that the ratio U/V = 0.168. gives ideal resolution but no throughput. Lowering the DC voltage allows more particles to pass to the detector at the expense of reduced mass resolution. With no DC offset (U = 0), all ions pass through the quadrupole.

Stability regions and a working line for ion transport as a function of the applied voltages U and V

Figure 3. Stability regions and a working line for ion transport as a function of the applied voltages U and V. The shaded regions show the stability zone for two ion species. The green region has a mass to charge ratio (M/Z) equal to half that of the tan region.

We now have the theoretical resources to design a practical system. Take the quadrupole length as L = 15.0 cm. Fabricating hyperbolic electrodes is expensive, so we’ll use stock electrodes with a circular cross section to approximate the field. The choice is acceptable as long as the ions are confined close to the axis. The electrode diameter is d = 1.0 cm. The electrodes are displaced 0.9 cm from the propagation axis, giving the minimum distance from the axis to an electrode of rc = 0.4 cm. We can identify two questions that can be answered by a 3D code:

  • How does the choice of rc versus d affect the linearity of electric fields near the axis?
  • What is the value of ro for equivalent hyperbolic electrodes? In other words, if we used hyperbolic instead of circular electrodes with a given voltage, what choice of ro would give the same electric field variation near the axis?

We’ll concentrate on the second issue, calculating the electric field with HiPhi. The quadrupole assembly is centered in a solution volume that covers the range -3.0 cm ? x,y ? 3.0 cm and 0.0 cm ? z ? 20.0 cm. The wall of the solution volume is grounded. The element size in the quadrupole region is 0.05 cm. Figure 4 shows the resulting mesh.

Conformal representation of the quadrupole electrodes

Figure 4. Conformal representation of the quadrupole electrodes.

I used normalized voltages of +1.0 V on the y electrodes and -1.0 V on the x electrodes in the electrostatic solution. Figure 5 shows calculated values of Ex in a scan through the axis along x at the quadrupole center. Over the range -0.2 cm ? x ? 0.2 cm, the field varied linearly with x to within 0.01%. The calculated dependence is Ex(x) = (1.255 × 10^5)x V/m. A comparison with Eq. 3 for hyperbolic electrodes implies the relationship of Eq. 11. The equivalent hyperbolic pole tip distance is 0.3993 cm, quite close to the physical distance rc = 0.4000 cm. My initial guess of rc  = 0.4 d turned out to give excellent results.

Scan of Ex(x)

Figure 5. Scan of Ex(x) at position y = 0.0 cm, z = 10.0 cm for normalized electrode voltage magnitude of 1.0 V.

The electrostatic solution was used as a basis for OmniTrak calculations of ion trajectories. I concentrated on singly-charged carbon ions (M = 12, Z = 1) with an initial kinetic energy of 40 eV. The drift velocity was 2.5 × 10^4 m/s, so the transit time through the spectrometer was about 6 ?s. There should be several RF periods over the transit time to ensure that ions experience an average focusing force. I picked f = 2.5 MHz, corresponding to ? = 1.571 × 10^7 1/s. A time step choice of ?t = 10.0 ns gave an acceptable value of 40 integration steps per RF period. I picked the PList command to initiate ion trajectories near the z = 0.0 cm boundary with velocity directed along z. To sample positions in x-y space, I used a spreadsheet to create a circular distribution of 36 particles at radius 0.1 cm. (There was no point in representing an on-axis particle. It would traverse the system with no transverse motion in all circumstances). Equations 6 and 7 can be used to find the U and V values for a working line that passes through the tip of the stability region (Fig. 2). Taking a = 0.237, q = 0.706 and substituting values for the quadrupole leads to the Eqs. 12 and 13.

The values for carbon ions are U = 14.65 V and V = 87.28 V. The value of U must be lower to observe transmitted ions.

The full OmniTrak input script is listed at the end of the report. The critical commands to represent the RF quadrupole are:

EFIELD3D: QuadAnalyzer.HOU 0.9875
MODFUNC E > 14.0 + 87.28*sin(1.571E7*t)

The first command loads the normalized electric field. The adjustment factor (? = 0.9875) determines the voltage magnitude and hence the position along the working line. We can make small changes to study the transmission width of an ion type, or large changes to study a different type. For example, the adjustment factor for singly-ionized iron is about ? = (56/12) = 4.67. The ModFunc command serves two functions:

  • Add a time variation of fields during the ion transit.
  • Set the slope of the working line (i.e., determine the acceptance of the system).

With regard to the first function, all values of potential in the electrostatic solution are multiplied by the current value of the algebraic function. This process is valid when the propagation distance of an electromagnetic signal over an RF period is much larger than the system.

My procedure was to set a value of U less than 14.65 V in the ModFunc command and then to do a series of runs with varying ? to change the total voltage level. Figure 6 shows the results for U = 12.0 V and 14.0 V. As expected, the peak signal occurred near the tip of the stability region and a lower value of U gave an increased transmission width. Figure 7 shows the effect of small changes of ? on ion trajectories.

Particle transmission factor

Figure 6. Particle transmission factor as a function of the relative voltage magnitude and U.

Projected carbon ion trajectories

Figure 7. Projected carbon ion trajectories in the z-y plane for V = 87.28 V and U = 14.0 V. A small change in the applied voltage magnitude causes transmission to drop from 100% to 0%. Note that the y scale has been expanded for clarity.

Finally, note that the calculation procedure can be automated for extended data analyses in the background. For example, to make a scan in voltage magnitude, the EField3D command could be changed to

EFIELD3D: QuadAnalyzer.HOU %1

where %1 represents a command line parameter. Multiple OmniTrak calculations could be controlled with a batch file with a form like this:

REM Xenos batch file, Field Precision
START /B /WAIT C:\fieldp_pro\xenos/omnitrak.exe QuadAnalyzer 0.75
START /B /WAIT C:\fieldp_pro\xenos/omnitrak.exe QuadAnalyzer 0.80
START /B /WAIT C:\fieldp_pro\xenos/omnitrak.exe QuadAnalyzer 0.85
START /B /WAIT C:\fieldp_pro\xenos/omnitrak.exe QuadAnalyzer 0.90

The end result is a set of particle files that may be analyzed with a text editor or a user script to find the fraction of particles that reach z = 20.0 cm.

Example: OmniTrak input script

  EFIELD3D: QuadAnalyzer.HOU 0.9782
  DUNIT:   1.0000E+02
  MODFUNC E > 14.0 + 87.28*sin(1.571E7*t)
  DT  1.0E-8
    12.0  1.0  40.0  0.0996   0.0087 0.01 0.00 0.00 1.00
    12.0  1.0  40.0  0.0966   0.0259 0.01 0.00 0.00 1.00
    12.0  1.0  40.0  0.0906   0.0423 0.01 0.00 0.00 1.00
    12.0  1.0  40.0  0.0819   0.0574 0.01 0.00 0.00 1.00
    12.0  1.0  40.0  0.0707   0.0707 0.01 0.00 0.00 1.00
    12.0  1.0  40.0  0.0574   0.0819 0.01 0.00 0.00 1.00
    12.0  1.0  40.0  0.0574  -0.0819 0.01 0.00 0.00 1.00
    12.0  1.0  40.0  0.0707  -0.0707 0.01 0.00 0.00 1.00
    12.0  1.0  40.0  0.0819  -0.0574 0.01 0.00 0.00 1.00
    12.0  1.0  40.0  0.0906  -0.0423 0.01 0.00 0.00 1.00
    12.0  1.0  40.0  0.0966  -0.0259 0.01 0.00 0.00 1.00
    12.0  1.0  40.0  0.0996  -0.0087 0.01 0.00 0.00 1.00
  PARTFILE: QuadAnalyzer


[1] PDF version of this report:

[2] Information on HiPhi:

[3] Information on OmniTrak:

[4] Contact us :

[5] Field Precision home page:

Building solids in MetaMesh

The programs Geometer and MetaMesh are used to build three-dimensional meshes for our multi-physics solution programs using constructive solid geometry. The user has the option to assemble objects from native models (e.g., spheres, cylinders, boxes, turnings,…) or to import complex shapes from SolidWorks and other 3D CAD programs. This article reviews how to make objects with conformal surfaces from native models. In particular, I want to clarify some points about conformal fitting.

To start, it’s important to understand the concept of the initial foundation mesh versus the final conformal mesh. The foundation mesh is a regular, structured set of box elements that fill the solution volume. Regions in the solution volume are collections in elements that represent physical objects (such as electrodes and dielectrics in electrostatic solutions). In the volume-fitting process, the goal is to make an assignment of region numbers to the foundation-mesh elements for the best representation of the physical objects. The process of surface fitting occurs after the foundation mesh is complete. Here, elements on the object surfaces are shaped to follow the mathematical definitions of native parts or CAD models to produce the final conformal mesh. As a result, elements near the surface become generalized hexahedrons.

The two mesh-generation tools serve the following functions:

1) Geometer is an interactive, graphical environment to create or to edit parts in the foundation mesh. A part is a single native or CAD model. Objects may be composed of multiple parts. The output of Geometer is a text script that lists specifications of the foundation mesh and the included parts. The script (FName.MIN) acts as input to MetaMesh. A script may also be prepared directly with a text editor.

2) MetaMesh analyzes the script to produce a binary output file of the coordinates of mesh nodes and element identities used by the solution programs. If the user makes no changes to the script produced by Geometer, the MetaMesh output is a regular mesh of box elements, identical to the foundation mesh. The user adds or edits commands of the MetaMesh script to control conformal fitting. This process is the focus of this report.

Example geometry

Figure 1. Example geometry.

Figure 1 shows the test geometry, a two-electrode gap. The solution volume covers the space -3.0 ? x,y ? 3.0, 0.0 ? z ? 7.0. The upper electrode has a spherical depression. The lower electrode has a spherical extension and a circular extraction port. The system has cylindrical symmetry about the z axis. A quick approach is to represent the upper and lower electrodes as turnings that extend beyond the boundaries of the solution volume. Instead, we will work with basic shapes to illustrate the construction procedure.

If we start a new script in Geometer with the given solution-volume dimensions, the program automatically adds a box region that fills the volume with the name SolutionVolume. Using the command to edit region names, we change the name of the first region to Air and the second and third region names to Upper and Lower. We then add a part with the name UpperElectrode and the region Upper. The part is a Box with dimensions Lx = Ly = 6.0 and Lz = 2.0 with a displacement 6.0 in z. To cut the depression, we add a sphere with name UpperCut, region Air, radius 2.5 and displacement 2.5 in z. The action changes the region identity of overlapped elements and nodes in the upper electrode to Air. Next we add a Box with name LowerElectrode, region Lower, dimensions Lx = Ly = 3.0 and Lz = 2.0 and displacement 1.0 in z to represent the lower electrode. The extension is a Sphere with name LowerExtension, region Lower, radius 2.0 and displacement z = 1.0. Finally, we add a Cylinder with name Aperture, region Air, radius 0.5, and length 7.0 to cut the hole. Figure 2 shows the resulting mesh created by MetaMesh if no changes are made to the script. It shows the familiar stair-step pattern for curved surfaces characteristic of regular meshes.

Mesh with no conformal fitting

Figure 2. Mesh with no conformal fitting.

Before proceeding, we should note several significant points.

1) Some of the parts (like the Aperture) extended out of the solution volume. This is not a problem — external sections of parts are ignored.

2) Regions may be created by the actions of multiple parts. For example, the lower electrode was the sum of the LowerElectrode and LowerExtension parts minus the Aperture part.

3) Note how the superposition principle affects the ordering of parts. For example, we enter the UpperElectrode and then cut then spherical depression by overwriting part of the object with Air elements. Only then do we then enter the LowerElectrode. If we entered both electrodes followed by the air sphere, both electrodes would have cuts.

4) Finally, there are special considerations for cutting holes when the mesh will be used in a solution program that depends on the node identity.

MetaMesh input script with fitting commands

Figure 3. MetaMesh input script with fitting commands.

Figure 3 shows the input script produced by Geometer. The highlighted lines have been added to implement conformal fitting. The Global section (Lines 1-14) performs three functions: a) set the dimensions of the solution volume, b) specify the sizes of elements in the foundation mesh and c) define names for the regions. Part 1 (15-21) is the solution volume region defined by geometer with all elements set to region number 1 (Air). Part 2 (22-28) is the upper electrode that overwrites the air elements. Part 3 (29-37) is the spherical concavity in the upper electrode. In Part 3, the command

Surface Region Upper

states that elements of the part in contact with elements of type Upper should be shaped so that they conform to the spherical surface. The command

Coat Upper Upper

states that nodes shared with elements of region Upper should be marked as Upper. This operation ensures that the nodes of all elements in the upper electrode are marked as part of the fixed potential region. (Note: a valid solution is obtained even if we forget to add this command. Solution programs like HiPhi automatically set all nodes connected to fixed-potential electrodes to the fixed-potential region number.)

Moving on, Part 4 (38-44) is the lower electrode while Part 5 (45-52) is the spherical extension. The command

Surface Part UpperCut

states that elements adjacent to those marked as part UpperCut are shaped to lie on the spherical surface. The final part is the cylindrical aperture. The length of 7.0 ensures that the cylinder extends above the spherical extension while the section outside the solution volume is ignored. The commands

Surface Region Lower
Coat Lower Lower

move nodes shared with elements of the electrode to conform to the cylindrical shape and correct the region assignment of these nodes. Figure 4 shows a detail with nodes of the cylinder area.

Detail of the mesh around the Aperture

Figure 4. Detail of the mesh around the Aperture showing node assignments.

To conclude, I’ll clarify why a Surface Part command is used in Part 4 rather than a Surface Region command. Fitting occurs after volume assignment operations (i.e., the foundation mesh has been completed). In this case, there are elements of with region identity Air in the aperture as well as in the gap between electrodes. Clearly, we do not want nodes inside the aperture to be shifted to the spherical surface of the extension. Such moves would cause severe distortion of the mesh. Therefore, we use a more specific designation to narrow down the set of nodes that should be shifted.


[1] Information on MetaMesh:

[2] Information on Geometer:

[3] Contact us :

[4] Field Precision home page:


OmniTrak: superposition of magnetic field tables

OmniTrak is our software package for charged-particle guns and beam dynamics. The solution program can read output files from HiPhi and Magnum for 3D electric and magnetic field information. These complex files record values of potential on conformal meshes. Tables are another option for field information. Tables record [Ex,Ey,Ez] or [Bx,By,Bz] on a regular box mesh. Table files are easy to create and facilitate import of field information from other programs. Sometimes, it is useful to use an intermediate table instead of directly reading information from HiPhi and Magnum. In this case, the user uses the MATRIX command in PhiView or MagView to convert the values of potential on the conformal mesh to a table of electric field or magnetic flux density values. This reduces the amount of work performed by OmniTrak and can speed up many calculations.

A user recently suggested another application of tables that is helpful when the fields of a magnetic transport element can be expressed as a linear superposition of the fields produced by different control coils. For example, it may be useful to model the performance of a magnetic scanning system by calculating orbits for several values of current in the the X and Y drive coils. A quick way to do the calculation would be to prepare tables for the fields of the X and Y drive coils with a normalized current, and then to load a superposition of the fields into OmniTrak with different scaling factors. The process could be controlled by a batch file for a parameter search.

Recently, we make changes to OmniTrak to enable this procedure. The command to load a table has the form

BTable3D COIL01.MTX 1.5

where COIL01.MTX is the name of the table in the working directory and 1.5 represents an optional scaling factor. The factor multiples values of [Bx,By,Bz] — the number may be positive or negative. In the past, a second BTable3D command would simply cause the previous table to be overwritten. In the current version of OmniTrak, multiple BTable3D statements result in a superposition of values. There is no limit to number of commands — here is an example with two:

BTable3D COIL01.MTX 1.5
BTable3D COIL02.MTX 2.0

OmniTrak reads the first table in the normal way with scaling factor 1.5. When the second command is encountered, the program opens the file and checks that the map parameters (IMax, JMax, KMax, Xmin, Xmax, Ymin,…) are identical. If so, OmniTrak reads the second table and adds values of {Bx,By,Bz] to those already in memory with the scaling factor 2.0. In summary:

  1. There is no limit to the number of BTable3D commands.
  2. Multiple maps must use the same mesh.
  3. BTable3D commands may appear in any order in the FIELDS section of the OmniTrak script.
  4. Shifts and rotations are applied after all tables have been superimposed.
  5. The user must ensure that the superposition is physically valid.
  6. The ETable3D command has also been extended.

Figure 1 shows data from a test example: two identical shielded solenoid lenses at different positions along the z axis. The blue squares represent the tabular field of the first coil and the red squares show the field of the second downstream coil. The line is the total field calculated with the OmniTrak BSCAN command resulting from the command set listed above. The following parameters were used in the Magview MATRIX command to create the tables: IMax = 21, XMin: -10.0, XMax = 10.0, JMax = 21, YMin = -10.0, YMax = 10.0, KMax = 240, Zmin: -12.0 and ZMax = 12.0.

Test case - superposition of two solenoid lenses

Figure 1. Test case – superposition of two solenoid lenses.


[1] Contact us :

[2] Field Precision home page: