EM.Ferma

From Emagtech Wiki
Revision as of 14:50, 27 May 2015 by Kazem Sabet (Talk | contribs)

Jump to: navigation, search

EM.Ferma is EM.CUBE's 3D static solver. It features two distinct electrostatic and magnetostatic simulation engines that can be used to solve a variety of static and low-frequency electromagnetic problems. Both simulation engines are based on finite difference solutions of Poisson's equation for electric and magnetic potentials.

With EM.Ferma, you can explore the electric fields due to volume charge distributions or fixed-potential perfect conductors, and magnetic fields due to wire or volume current sources and permanent magnets. Your structure may include dielectric or magnetic (permeable) material blocks. You can also use EM.Ferma's 2D quasi-static mode to compute the characteristic impedance (Z0) and effective permittivity of transmission line structures with complex cross section profiles.

Methods Of Electrostatics, Magnetostatics & Quasi-Statics

EM.Ferma solves the Poisson equation for the electric scalar potential subject to specified boundary conditions:

[math]\Delta\Phi(\mathbf{r}) = \nabla^2 \Phi(\mathbf{r}) = -\frac{\rho(\mathbf{r})}{\epsilon}[/math]


where Φ(r) is the electric scalar potential, ρ(r) is the volume charge density, and ε = εr ε0 is the permittivity of the medium.


The electric field boundary conditions at the interface between two material media are:

[math] \hat{\mathbf{n}} . [ \mathbf{D_2(r)} - \mathbf{D_1(r)} ] = \rho_s (\mathbf{r}) [/math]


[math] \hat{\mathbf{n}} \times [ \mathbf{E_2(r)} - \mathbf{E_1(r)} ] = 0 [/math]


where [math] \hat{\mathbf{n}} [/math] is the unit normal vector at the interface pointing from medium 1 towards medium 2, D(r) = εE(r) is the electric flux density, E(r) is the electric field vector, and ρs is the surface charge density at the interface.


In a source-free region, ρ(r) = 0, and Poisson's equation reduces to the familiar Laplace equation:

[math]\Delta\Phi(\mathbf{r}) = \nabla^2 \Phi(\mathbf{r}) = 0[/math]


Keep in mind that in the absence of an electric charge source, you need to specify a non-zero potential somewhere in your structure, for example, on a perfect electric conductor (PEC). Otherwise, you will get a trivial zero solution of the Laplace equation.


Once the electric scalar potential is computed, the electric field can easily be computed via the equation below:

[math] \mathbf{E(r)} = - \nabla \Phi(\mathbf{r})[/math]


EM.Ferma also solves the Poisson equation for the magnetic vector potential subject to specified boundary conditions:

[math]\Delta \mathbf{A} (\mathbf{r}) = \nabla^2 \mathbf{A}(\mathbf{r}) = - \mu \mathbf{J}(\mathbf{r}) [/math]


where A(r) is the magnetic vector potential, J(r) is the volume current density, and μ = μr μ0 is the permeability of the medium. The magnetic Poisson equation is vectorial in nature and involves a system of three scalar differential equations corresponding to the three components of A(r).


The magnetic field boundary conditions at the interface between two material media are:

[math] \hat{\mathbf{n}} . [ \mathbf{B_2(r)} - \mathbf{B_1(r)} ] = 0 [/math]


[math] \hat{\mathbf{n}} \times [ \mathbf{H_2(r)} - \mathbf{H_1(r)} ] = \mathbf{J_s(r)} [/math]


where [math] \hat{\mathbf{n}} [/math] is the unit normal vector at the interface pointing from medium 1 towards medium 2, B(r) = μH(r) is the magnetic flux density, H(r) is the magnetic field vector, and Js is the surface current density at the interface.


Once the magnetic vector potential is computed, the magnetic field can easily be computed via the equation below:

[math] \mathbf{H(r)} = \frac{1}{\mu} \nabla \times \mathbf{A} (\mathbf{r})[/math]

A Note on Material and Source Types in EM.Ferma

In EM.Cube's other modules, material types are specified under the "Physical Structure" section of the Navigation Tree, and sources are organized under a separate "Sources" section. In those modules, the physical structure and its various material types typically represent all the CAD objects you draw in your project. Sources are virtual entities that might be associated with certain physical objects and provide the excitation of your boundary value problem.


In EM.Cube's Static Module, materials and sources are all listed under the "Physical Structure" section of the Navigation Tree, and there is no separate "Sources" section. For example, you can define default zero-potential perfect electric conductors (PEC) in your project to model metal objects. You can also define fixed-potential PEC objects with a nonzero voltage, which can effectively act as a voltage source for your boundary value problem. In this case, you will solve the Lapalce equation subject to the specified nonzero potential boundary values. Both types of PEC objects are defined from the same PEC node of the Navigation Tree by assigning different voltage values. Charge and current sources are defined as CAD objects that you must draw in the project workspace.

Defining the Physical Structure in EM.Ferma

The simplest static problems involve a charge source in the free space that produces an electric field, or a current source in the free space that produces a magnetic field. In such cases, the only applicable boundary conditions are defined at the computational domain boundary. As soon as you introduce a dielectric object next to a charge source or a magnetic (permeable) material next to a current source, you have to deal with a complex boundary value problem. In other words, you need to solve the electric or magnetic Poisson's equation subject to the domain boundary conditions as well as material interface boundary conditions. EM.Ferma used the Finite Difference technique for numerical solution of your static boundary value problem.

For static analysis, the model can be excited with any number of Voltage Sources, Charge Sources, or Current Sources. For Quasistatic analysis, only Voltage Sources are of practical use.


Fixed-Potential PEC Objects

A perfect electric conductor (PEC) is a material with εr = 1 and σ = ∞. Under the static condition, every point on a PEC object has the same electric potential. By default, this is a zero potential, assuming the PEC object is "grounded". You can define a nonzero voltage value for a PEC group. In that case, the PEC object is effective turned into a voltage source. For example, tow parallel PEC plates, one with a zero potential and the other with a nonzero potential represent a simple air-filled capacitor.

To add a new Fixed-Potential PEC group to a project, right-click on "Fixed-Potential PEC Objects" on the Navigation Tree, and select "Insert New PEC..." From the PEC dialog, you can change the default red color and set a value for the "Voltage" in Volts.

Attention icon.png You can define any solid or surface object as a fixed-potential PEC object.


Dielectric/Magnetic Materials

In electromagnetic analysis, a general dielectric material is represented by four constitutive material parameters: relative permittivity εr, relative permeability μr, electric conductivity σ and magnetic conductivity σm. In EM.Ferma, you can define dielectric materials for electrostatic analysis and magnetic (permeable) materials for magnetostatic analysis from the same section of the Navigation Tree titled "Dielectric/Magnetic Materials". For a dielectric material, you specify the relative permittivity εr and electric conductivity σ. For a magnetic material, you specify the relative permeability μr.

To add a new dielectric or magnetic material group to a project, right-click on "Dielectric/Magnetic Materials" on the Navigation Tree, and select "Insert New Dielectric..." From the Dielectric Dialog, you can change the default green color of a material group or set the values of the material parameters.

Attention icon.png You can define any solid object as a dielectric or magnetic material object.


Volume Charge Sources

You can define volume charge sources with a specified charge density in C/m3 confined to certain region of your project. You use EM.Cube's solid objects to define volume charge sources. All the charge sources belonging to the same group have the same color and same charge density value. The charge density can be positive or negative. To add a new charge source group to a project, right-click on "Volume Charges" on the Navigation Tree, and select "Insert New Charge Source..." From the Charge Source Dialog, you can change the default purple color of the source group or set the values of the Charge Density.


Volume Current Sources

You can define volume current sources with a specified current density in A/m2 confined to certain region of your project. Note that current density is a vectorial quantity and has a magnitude and unit direction vector. You use EM.Cube's solid objects to define volume current sources. All the volume current sources belonging to the same group have the same color and same current density magnitude and unit vector.

To add a new volume current source group to a project, right-click on "Volume Currents" on the Navigation Tree, and select "Insert New Current Source..." From the Volume Current Source Dialog, you can change the default brown color of the source group or set the values of the Current Density magnitude and unit direction vector components. The default direction vector is z-directed.


Wire Current Sources

EM.Ferma allows you to define idealized wire current sources. You can use this source type to model filament currents or coils. Wire currents are defined using only line and polyline objects. You also need to define a current value I in Amperes and a wire radius r in the project units. The line or polyline object is then approximated as a volume current with a current density of J = I/(πr2) flowing along the line or polyline side's direction. All the wire current sources belonging to the same group have the same color, same current value and same wire radius. The direction of the current can be reversed in wire current sources.

To add a new wire current source group to a project, right-click on "Wire Currents" on the Navigation Tree, and select "Insert New Current Source..." From the Wire Current Source Dialog, you can change the default brown color of the source group or set the values of the Current and Wire Radius. There is also a check box for "Reverse Current Direction". Note that this will reverse the direction of all the wire currents belonging to the same group. When you draw a line or polyline object under a wire current group in the Navigation Tree, you will notice that direction arrows are placed on the drawn CAD object. You can draw any curve object in the project workspace and convert it to a polyline using EM.Cube's Polygonize Tool.

Attention icon.png If you draw [[[Curve Objects]]] under a wire current group, they will be permanently converted to polyline objects before running the simulation engine.


Permanent Magnets

A permanent magnet is typically a ferromagnetic material with a fixed inherent magnetization vector. As a result, it can be used as a source in an magnetostatic problem. When a permeable material has a permanent magnetization, the following relationship holds:


[math] \mathbf{B(r)} = {\mu} (\mathbf{H(r)} + \mathbf{M(r)} ) [/math]


where M(r) is the magnetization vector. In SI units system, the magnetic field H and magnetization M both have the same units of A/m.

It can be shown that for magnetostatic analysis, the effect of the permanent magnetization can be modeled as an equivalent volume current source:


[math] \mathbf{J_{eq}(r)} = \nabla \times \mathbf{M(r)} [/math]


If the magnetization vector is uniform and constant inside the volume, then its curl is zero everywhere inside the volume except on its boundary surface.


[math] \mathbf{J_{s,eq}(r)} = \mathbf{M(r)} \times \hat{\mathbf{n}} [/math]


where [math] \hat{\mathbf{n}} [/math] is the unit outward normal vector at the surface of the permanent magnet object.

To add a new permanent magnet source group to a project, right-click on "Permanent Magnets" on the Navigation Tree, and select "Insert New Permanent Magnet Source..." From the Permanent Magnet Source Dialog, you can change the default purple color of the source group or set the values of the relative permeability, Magnetization magnitude and unit direction vector components. The default direction vector is z-directed.


EM.Ferma's Voltage Source Dialog
EM.Ferma's Charge Source Dialog
EM.Ferma's Current Source Dialog

Observables in EM.Ferma

Field Sensor

Just like other EM.CUBE Modules, EM.Ferma has a standard Field Sensor observable. To specify a Field Sensor, right-click on "Field Sensors" in the navigation tree and click "Add New...". The Field Sensor dialog allows the user to select the direction of the sensor, visualization type, and whether E-field output or H-field output will be shown during a sweep analysis.

In EM.Ferma, Field Sensors are also used to specify 2D solution planes for EM.Ferma's 2D solution mode. This will be detailed shortly.

The E-fields and H-fields are computed at each mesh node within the specified 2D Field Sensor plane. In other words, the resolution of the Field Sensor is controlled by the mesh resolution.

Transmission Line Characteristics

In EM.Ferma's quasistatic mode, transmission-line parameters Z0 and EpsEff are computed, in addition to output due to the Field Sensor, which is required to define the 2D solution plane. Text files corresponding to these observables will be placed in the project's working directory after each analysis.

Domain and Boundary Conditions

Boundary Condition Dialog

In EM.Ferma, the Laplace equation is solved subject to boundary conditions. Here, we will discuss how to specify these boundary conditions.

3D Domain

The green wireframe around the CAD objects defines the extents of the computational domain. The specified boundary conditions are applied on the domain walls.

EM.Ferma's computational domain defines where the boundary condition will be specified. The domain can be seen as a green cubic wireframe that surrounds all of the CAD objects in the model. To modify the domain boundary, find the "3D Static Domain" entry in the navigation tree, right-click on it, and select "Domain Settings...". The domain dialog will appear. In the domain dialog, the domain boundary can be specified in terms of either a custom, fixed location, or as custom offsets from CAD objects in the scene.

Boundary Condition

EM.Ferma allows the user to either specify the potential on the boundary (Dirichlet boundary condition), or specify the normal derivative on the boundary (Neumann boundary condition) via a specified field strength. To modify the boundary condition, find "Boundary Conditions" on the navigation tree, and select "Boundary Conditions...". The user will be prompted with the dialog seen at right.

2D Solution Planes in EM.Ferma

Setting up a Transmission Line simulation.

EM.Ferma features a 2D solution mode where the model is treated as a longitudinally infinite structure at a list of specified 2D Solution Planes. The 2D planes are defined by a Field Sensor definition that already exists in the project.

To explore EM.Ferma's 2D mode, right-click on "2D Solution Planes" in the navigation tree and select "2D Domain Settings...". In the 2D Static Domain dialog, enable the checkbox labeled "Treat Structure as Longitudinally Infinite across Each 2D Plane Specified Below". The user is then able to Add or Edit 2D Solution Plane definitions to the solution list.

Setting up a Transmission Line Simulation

To perform a Transmission Line simulation, first turn on Quasistatic simulation mode for a selected 2D Solution Plane, as shown in the figure at right. If an analysis is run with this option checked, the characteristic impedance (Z0) and Effective Epsilon will be computed for the corresponding 2D Solution Plane. This output can be found in appropriately-named text files in the project directory upon completion of the simulation. Fields and potentials at the selected 2D plane will still be computed. Many 2D quasistatic solutions can be obtained in the same analysis, if for example, your design contains many types of transmission lines.

Quasistatic analysis can only be performed with a Dirichlet boundary condition with 0V specified on the boundaries.

For a step-by-step demonstration (including transmission line optimization), take a look at this video on our YouTube channel: EM.CUBE Microstrip Optimization

Simulation Modes

EM.Ferma currently offers Analysis, Parametric Sweep, and Optimization simulation modes. More information about these simulation modes can be found on the Optimization page.

Attention icon.png All of these simulation modes are subject to 2D Solution mode being disabled or enabled. Before starting a simulation, you may wish to review the current state of this settings in the 2D Domain dialog.

Simulation Examples / Gallery

Classic Example: Two oppositely charged spheres.
H-Field from array of current loops.
Potential near microstrip conductor from a quasistatic simulation.
Electric field near microstrip conductor from a quasistatic simulation. This Field Sensor's view mode has been set to Vector mode.

Version History

More Resources