Glossary of EM.Cube's Materials, Sources, Devices & Other Physical Object Types
Contents
- 1 Anisotropic Material
- 2 Base Location Set
- 3 Capacitor
- 4 Coaxial Port
- 5 Conductive Sheet Trace
- 6 Coplanar Waveguide (CPW) Port
- 7 Dielectric Material
- 8 Using EM.Cube's Materials List
- 9 Defining New Custom Materials
- 10 Diode
- 11 Dispersive Material
- 12 Distributed Source
- 13 Embedded Dielectric Object Set
- 14 Embedded PEC Via Set
- 15 Fixed-Potential PEC
- 16 Gaussian Beam
- 17 Hertzian Short Dipole Source
- 18 Huygens Source
- 19 Impedance Surface
- 20 Impenetrable Surface
- 21 Inductor
- 22 Lumped Source
- 23 Microstrip Port
- 24 Penetrable Surface
- 25 Penetrable Volume
- 26 Perfect Electric Conductor (PEC)
- 27 Perfect Magnetic Conductor (PMC)
- 28 Permanent Magnet
- 29 Plane Wave
- 30 Probe Gap Circuit Load
- 31 Probe Gap Circuit Source
- 32 Resistor
- 33 Scattering Wave Port
- 34 Slot Trace
- 35 Strip Gap Circuit Load
- 36 Strip Gap Circuit Source
- 37 Terrain Surface
- 38 Thin Wire
- 39 Transmitter Set
- 40 Virtual Object Group
- 41 Volume Charge
- 42 Volume Current
- 43 Voxel Database
- 44 Waveguide Port
- 45 Wire Current
- 46 Wire Gap Circuit Load
- 47 Wire Gap Circuit Source
- 48 Exciting Multiport Structures Using Linear Superposition
- 49 Modeling Coupled Sources & Ports
- 50 Modeling Finite-Sized Source Arrays
- 51 Beam Steering in Periodic Phased Array Structures
- 52 A Review of Linear & Nonlinear Passive & Active Devices
- 53 Modeling Lumped Elements in the MoM Solvers
Anisotropic Material
MODULE: EM.Tempo
FUNCTION: Defines an isotropic material object group with four constitutive tensors
TO DEFINE AN ANISOTROPIC MATERIAL GROUP:
- Right-click on the Anisotropic Materials item in the navigation tree.
- Select Insert New Isotropic Material... to open up the Isotropic Material dialog.
- Click the OK button of the dialog to return to the project workspace.
NOTES, SPECIAL CASES OR EXCEPTIONS: EM.Tempo allows you to define a general anisotropic material, whose constitutive parameters, i.e. permittivity (ε), permeability (μ), electrical conductivity (σ) and magnetic conductivity (σm), are all tensorial in nature. Each constitutive parameter in this case is represented by a 3×3 matrix:
A Uniaxial material is a special case of an anisotropic material whose constitutive parameters are all diagonal matrices. Specifying an anisotropic material as Uniaxial in the FDTD Module has a very important computational implication. There are six field update equations for uniaxial materials at each time steps: three for the electric field and three for the magnetic field. In this respect, a uniaxial material is similar to an isotropic dielectric material. On the other hand, a fully anisotropic material with non-zero off-diagonal constitutive matrix elements requires twelve update equations at each time step: three equations for the three components of each of the four vector fields E, D, H and B. As a result, the time loop for fully anisotropic materials takes much longer time than uniaxial materials.
PYTHON COMMAND: None
ANISOTROPIC MATERIAL PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Base Location Set
MODULE: EM.Terrano
FUNCTION: Defines a base location set group to be associated with a transmitter or receiver set
TO DEFINE A BASE LOCATION SET GROUP:
- Right-click on the Base Locataions item in the navigation tree.
- Select Insert New Point Set... to open up the base Location Set dialog.
- The only property of a base location set is its color, which you can change from this dialog.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: base_point_group(label)
BASE LOCATION SET PARAMETERS: None
Capacitor
MODULE: EM.Tempo
FUNCTION: Places a capacitor at a specified point on a PEC line object that is parallel to one of the three principal axes
TO DEFINE A CAPACITOR:
- Right-click on the Lumped Devices item in the navigation tree.
- Select Insert New Source... to open up the Lumped Device Dialog.
- From the Host drop-down list, select a line object. Note that only line parallel to one of the three principal axes are listed.
- From the Type drop-down list, select Capacitor.
- By default, the lumped device is placed at the midpoint of the host line object. You can modify the Offset parameter, which is measured from the start point of the line and is always positive.
- Enter a value for Capacitance in pF. The default capacitance is 1pF.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: capacitor(label,line_object,offset,capacitance_pF)
LUMPED CAPACITOR PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
offset | real numeric | project units | half the length of host line object | distance between the device and the start point of the host line object |
capacitance | real numeric | pF | 1 | - |
Coaxial Port
MODULE: EM.Tempo
FUNCTION: Places a special distributed circular source of a specified width pointing away radially at one of the bases of a PEC cylinder object that is parallel to one of the three principal axes
TO DEFINE A COAXIAL PORT:
- Right-click on the Coaxial Ports item in the navigation tree of EM.Tempo.
- Select Insert New Source... to open up the Coaxial Port Dialog.
- From the Host drop-down list, select a cylinder object. Note that only PEC cylinder objects parallel to one of the three principal axes are listed.
- You have to specify the outer radius of the coaxial port, which is the same as the outer conductor radius of the coaxial transmission line. The inner conductor radius of the coaxial line is the same as the radius of the host cylinder object.
- A coaxial port can be placed at one of the two bases of the host cylinder. You can select the desired location from the Local Edge drop-down list.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: coaxial_src(label,cylinder_object,outer_radius,edge[,magnitude,phase,resistance])
COAXIAL PORT PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
outer radius | real numeric | project units | 2 * host cylinder radius | coaxial line's outer conductor radius |
resistance | real numeric | Ohms | 50 | internal impedance of the distributed voltage source |
Conductive Sheet Trace
MODULE: EM.Picasso
FUNCTION: Defines a conductive sheet trace group
TO DEFINE A CONDUCTIVE SHEET GROUP:
- Right-click on the Conductive Sheet Traces item in the navigation tree.
- Select Insert New Conductive Sheet Trace... to open up the Conductive Sheet Trace dialog.
- Besides the color and texture properties, you have to enter values for the Electric Conductivity σ in S/m and the sheet Thickness in the project units.
- Click the OK button of the dialog to return to the project workspace.
NOTES, SPECIAL CASES OR EXCEPTIONS: In EM.Picasso, you may model imperfect metals using conductive sheet traces, which are an example of impedance surfaces. Keep in mind that you can typically model most lossless metallic traces such as micstorip lines and planar patches using PEC groups. A PEC trace is assumed to have an infinite electric conductivity and a zero metallization thickness. But also remember that since EM.Picasso's simulation engine is based on the 2.5-D method of moments (MoM), lossy embedded dielectric objects with a large σ cannot represent an imperfect metal because can only support vertical currents. A Conductive Sheet Trace group has a finite electric conductivity σ and a small nonzero finite thickness expressed in the project units.
The conductive sheet traces are modeled using the surface impedance boundary condition stated above. If the thickness of the sheet is greater than the skin depth of the metal at the project frequency, then the surface impedance is given by
- [math] Z_s = \dfrac{1+j}{\sigma \delta}, \quad \delta = \sqrt{\dfrac{2}{k_0 Z_0 \sigma}} [/math]
If the thickness t of the sheet is less than the skin depth, then the conductive sheet transition boundary condition is used instead, and the surface impedance is given by
- [math] Z_s = \dfrac{1}{[j k_0 Y_0 (\varepsilon_r - 1) + \sigma] \tau} = \dfrac{1}{\sigma_{tot} \tau} [/math]
PYTHON COMMAND: conductive_sheet_group(label,sigma,thickness)
CONDUCTIVE SHEET PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
sigma (σ) | Real Numeric | S/m | 5.8e+7 | electric conductivity |
thickness | Real Numeric | project units | 1.0 | finite metallization thickness |
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Coplanar Waveguide (CPW) Port
MODULE: EM.Tempo
FUNCTION: Places two coupled special distributed sources of a specified width pointing opposite directions on the two sides of one of the edges of a PEC rectangle strip object that is parallel to one of the three principal planes
TO DEFINE A CPW PORT:
- Right-click on the CPW Ports item in the navigation tree of EM.Tempo.
- Select Insert New Source... to open up the CPW Port Dialog.
- From the Host drop-down list, select a rectangle strip object. Note that only PEC rectangle strip objects parallel to one of the three principal planes are listed.
- You have to specify the width of the CPW port, which is the same as the slot width of the coplanar waveguide transmission line.
- A CPW port can be placed at one of the four edges of the host rectangle strip. You can select the desired location from the Edge drop-down list.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: cpw_src(label,rect_object,spacing,edge[,magnitude,phase,resistance])
CPW PORT PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
width | real numeric | project units | 5 | coplanar waveguide's slot width |
resistance | real numeric | Ohms | 50 | internal impedance of the distributed voltage source |
Dielectric Material
MODULE: EM.Tempo, EM.Ferma, EM.Picasso, EM.Libera
FUNCTION: Defines a dielectric material object group with specified constitutive parameters
TO DEFINE A DIELECTRIC GROUP:
- Right-click on the Dielectric Materials or Dielectric Objects item in the navigation tree.
- Select Insert New Dielectric... to open up the New Dielectric Material dialog.
- Enter values for relative permittivity εr, electric conductivity σ in S/m, relative permittivity μr, and magnetic conductivity σm in Ω/m. The default values are εr = μr = 1, and σ = σm = 0.
- Change the color or texture of the material group if necessary.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: dielectric_group(label,eps,sigma,mu,rho)
DIELECTRIC PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
eps (εr) | Real Numeric | - | 1.0 | relative permittivity |
sigma (σ) | Real Numeric | S/m | 0.0 | electric conductivity |
mu (μr) | Real Numeric | - | 1.0 | relative permeability |
sigma_m (σm) | Real Numeric | Ohm/m | 0.0 | magnetic conductivity |
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Using EM.Cube's Materials List
EM.Cube provides a preloaded database of popular and widely used materials.
Click the Materials button of the Simulate Toolbar or select Menu → Simulate → Materials... or use the keyboard shortcut Ctrl+T to open EM.Cube's Materials List dialog. You can view the various material entries and their constitutive parameter values. You can also type in the first letter of a material to find it. For example, typing V selects Vacuum in the list.
In many of EM.Cube's modules you have to define material properties for as part of definition of object groups. In the property dialog of some of these groups you will see a Material button. If you click this button, it will open up EM.Cube's Material List. Select any material from the list and close the dialog by clicking its OK. The selected material's properties will then fill the corresponding parameter fields automatically.
Defining New Custom Materials
The contents of EM.Cube's Materials List and the listed material parameters are based on published and cataloged data as well as some manufacturer data sheets. They are not definitive by any means. In fact, certain materials like different types of glass, wood, plastic, etc. may have a range of material parameters depending on the manufacturer, temperature, water content and lots of other factors. EM.Cube allows you to define new materials and add them to the Materials List. You can also modify the parameters of a standard or custom material.
To add a new material, follow these steps:
- Click the New... button of the Materials dialog open the "Add New Material" dialog.
- Choose a name and enter values for the four constitutive parameters of the new material.
- Check the check box labeled Specify Loss Tangent if you want to define a loss tangent instead of an electric conductivity value. In that case, the value for σ is calculated based on the center frequency of your project and reflected in the greyed-out sigma box.
- Click the OK button of the dialog to return to the Materials dialog. You will see the name of your new name in the Materials List sorted alphabetically. The new material entry is display in blue fonts.
To edit a custom material, select it from the list and click the Edit button of Materials dialog. To modify the properties of a preloaded standard material, select its name from the list and click the arrow on the New... button of the Materials dialog and select the Modify Existing Material option from the dropdown list.
Diode
MODULE: EM.Tempo
FUNCTION: Places an nonlinear diode at a specified point on a PEC line object that is parallel to one of the three principal axes
TO DEFINE A DIODE:
- Right-click on the Lumped Devices item in the navigation tree.
- Select Insert New Source... to open up the Lumped Device Dialog.
- From the Host drop-down list, select a line object. Note that only line parallel to one of the three principal axes are listed.
- From the Type drop-down list, select Diode.
- By default, the lumped device is placed at the midpoint of the host line object. You can modify the Offset parameter, which is measured from the start point of the line and is always positive.
- Enter values for Saturation Current in fA, ambient Temperature in degrees Kelvin and a value between 1 and 2 for the diode's Ideality Factor.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: inductor(label,line_object,offset,inductance_nH)
LUMPED NONLINEAR DIODE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
offset | real numeric | project units | half the length of host line object | distance between the device and the start point of the host line object |
saturation current | real numeric | fA | 1 | - |
temperature | real numeric | deg K | 300 | - |
ideality factor | real numeric | - | 1 | must be between 1 and 2 |
Dispersive Material
MODULE: EM.Tempo
FUNCTION: Defines a dispersive material object group with specified poles
TO DEFINE A DISPERSIVE MATERIAL GROUP:
- Right-click on the Dispersive Materials item in the navigation tree.
- Select Insert New Debye Material... or Insert New Drude Material... or Insert New Lorentz Material... or Insert New Generalized Metamaterial... or to open up one of the four Dispersive Material dialogs.
- You have to define each pole of the dispersive material individually. You can add as many poles as you want using the Add Pole button of the dialog.
- Click the OK button of the dialog to return to the project workspace.
NOTES, SPECIAL CASES OR EXCEPTIONS: EM.Tempo currently offers four types of dispersive material:
- Debye Material
- Drude Material (Unmagnetized Plasma)
- Lorentz Material
- Generalized Metamaterial
The FDTD simulation engine uses the Auxiliary Differential Equation (ADE) method to model dispersive materials. EM.Cube allows you to define an arbitrary number of poles for each of the above dispersive material types. Keep in mind that all the objects belonging to the same dispersive material group have the same dispersion properties.
The complex permittivity of a Debye material with N poles is given by:
- [math] \varepsilon (\omega) = \varepsilon_\infty + \sum_{p=1}^N \dfrac{\Delta \varepsilon_p}{1 + j\omega \tau_p}, \quad \Delta \varepsilon_p = \varepsilon_{sp} - \varepsilon_\infty [/math]
where [math]\varepsilon_{\infty}[/math] is the value of the permittivity at infinite frequency, [math]\tau_p[/math] is the relaxation time corresponding to the pth pole having the unit of seconds, and [math]\varepsilon_{sp}[/math] is the value of the static permittivity (at DC) corresponding to the pth pole. [math]\Delta \varepsilon_p = \varepsilon_{sp} - \varepsilon_{\infty}[/math] represents the change in permittivity due to the pth pole.
Unmagnetized plasmas are typically modeled as Drude materials. The complex permittivity of a Drude material with N poles is given by:
- [math] \varepsilon(\omega) = \varepsilon_{\infty} - \sum_{p=1}^N \dfrac{{\omega_p}^2}{\omega^2 - j\omega \nu_p} [/math]
where [math]\omega_p[/math] and [math]\nu_p[/math] are the angular plasma frequency and angular collision frequency corresponding to the pth pole, respectively, and both are expressed in rad/s. For an unmagnetized plasma, [math]\varepsilon_{\infty} = 1[/math].
The complex permittivity of a Lorentz material with N poles is given by:
- [math] \varepsilon(\omega) = \varepsilon_{\infty} - \sum_{p=1}^N \dfrac{\Delta \varepsilon_p {\omega_p}^2}{\omega^2 - 2j\omega \delta_p - {\omega_p}^2}, \quad \Delta \varepsilon_p = \varepsilon_{sp} - \varepsilon_{\infty} [/math]
where [math]\omega _p[/math] and [math]\delta_p[/math] are the angular resonant frequency and angular damping frequency corresponding to the pth pole, respectively, and both are expressed in rad/s. Similar to a Debye material, [math]\Delta \varepsilon_p = \varepsilon_{sp} - \varepsilon_{\infty}[/math] represents the change in permittivity due to the pth pole.
The Debye, Drude and Lorentz dispersive materials are all isotropic dielectric materials having a scalar relative permittivity that varies with the frequency. A generalized metamaterial in EM.Tempo is defined as a uniaxial dispersive material that has three relative permittivities εr,xx, εr,yy, εr,zz and three relative permeabilities μr,xx, μr,yy, and μr,zz. These six quantities can independently be functions of the frequency in general or non-dispersive. Moreover, you can define poles of different kind for each constitutive parameter. The pole type can be Debye, Drude or Lorentz.
PYTHON COMMAND: None
DISPERSIVE MATERIAL PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Distributed Source
MODULE: EM.Tempo
FUNCTION: Places a distributed voltage source with a distributed internal resistor over a virtual rectangle strip object that is parallel to one of the three principal planes
TO DEFINE A DISTRIBUTED SOURCE:
- Right-click on the Distributed Sources item in the navigation tree of EM.Tempo.
- Select Insert New Source... to open up the Distributed Source Dialog.
- From the Host drop-down list, select a rectangle strip object. Note that only rectangle strip objects of virtual type and parallel to one of the three principal planes are listed.
- A distributed source has a field profile with three options: uniform, sinusoidal and edge-singular. The default option is uniform.
- The direction of the impressed electric field can be aligned along one of the edges of its host rectangle strip object, either in the positive or negative direction. You can select the desired direction from the Field Dir drop-down list.
- Click the OK button of the dialog to return to the project workspace.
NOTES, SPECIAL CASES OR EXCEPTIONS: The current version of EM.Tempo provides three spatial field profiles for a distributed source:
- Uniform: E = E0
- Sinusoidal: E = E0 cos(πy/w)
- Edge-Singular: E = E0 / √ [ 1-(2y/w)^2 ]
In the above functional forms, E0 is a constant, y is the coordinate along the direction of field variation measured from the center of the rectangular area and w is its total width along the y direction.
PYTHON COMMAND: distributed_src(label,rect_object,field_dir,profile[,magnitude,phase,resistance])
DISTRIBUTED SOURCE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
profile | List: uniform, sinusoidal, edge-singular | V/m | uniform | field distribution profile in the host rectangular region |
offset | real numeric | project units | half the length of host line object | distance between the source and the start point of the host line object |
resistance | real numeric | Ohms | 50 | internal impedance of the distributed voltage source |
Embedded Dielectric Object Set
MODULE: EM.Picasso
FUNCTION: Defines an embedded dielectric object set group
TO DEFINE AN EMBEDDED DIELECTRIC SET:
- Right-click on the Embedded Object Sets item in the navigation tree.
- Select Insert New Dielectric Set... to open up the New Dielectric Object Set dialog.
- From the drop-down list labeled Host Layer, select the substrate layer to embed the new object set.
- Enter values for relative permittivity εr and electric conductivity σ in S/m. The default values are εr = 1 and σ = 0, representing an air void.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND:
pec_via_group(label,host_layer)
EMBEDDED DIELECTRIC SET PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
eps (εr) | Real Numeric | - | 1.0 | relative permittivity |
sigma (σ) | Real Numeric | S/m | 0.0 | electric conductivity |
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Embedded PEC Via Set
MODULE: EM.Picasso
FUNCTION: Defines an embedded PEC via object set group
TO DEFINE A PEC VIA SET:
- Right-click on the Embedded Object Sets item in the navigation tree.
- Select Insert New PEC Via Set... to open up the New PEC Vias Set Dialog.
- From the drop-down list labeled Host Layer, select the substrate layer to embed the new via set.
- Change the color or texture of the via set if desired.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND:
pec_via_group(label,host_layer)
EMBEDDED PEC VIA SET PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Fixed-Potential PEC
MODULE: EM.Ferma
FUNCTION: Defines an equi-potential perfect electric conductor object group with a specified voltage
TO DEFINE A FIXED-POTENTIAL PEC GROUP:
- Right-click on the Fixed-Potential PEC Objects item in the navigation tree.
- Select Insert New Fixed-Potential PEC... to open up the Fixed-Potential PEC dialog.
- Besides the color and texture properties, you have to enter a value for the fixed Voltage in Volts. The default voltage is 0V.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: pec_voltage_group(label,voltage)
FIXED-POTENTIAL PEC PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
voltage | Real Numeric | Volts | 0 | - |
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Gaussian Beam
MODULE: EM.Tempo
FUNCTION: Defines a focused Gaussian beam source with specified incidence angles, polarization, beam focus point and beam radius
TO DEFINE A GAUSSIAN BEAM:
- Right-click on the Plane Waves item in the navigation tree.
- Select Insert New Source... to open up the Plane Wave Dialog.
- By default, a TMz-polarized plane wave source is defined with normal incidence along the negative Z-axis.
- You can change the Polarization type and incident Theta and Phi angles in the spherical coordinate system.
- Click the OK button of the dialog to return to the project workspace.
NOTES, SPECIAL CASES OR EXCEPTIONS: Unlike plane waves, a Gaussian beam is a localized field. By default, the dominant fundamental Hermite-Gauss mode H00 is assumed. You can define a higher-order Hermite-Gauss mode by assigning nonzero values for the modal indices p and q.
The beam radius has to be at least λ0/π; otherwise, strong fields appear outside the excitation box. |
PYTHON COMMAND: gauss_beam(label,theta,phi,polarization,focus_x,focus_y,focus_z,radius,p_mode,q_mode)
GAUSSIAN BEAM PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
polarization | List: TMz, TEz, Custom Linear | - | TMz | select one of the linear or circular polarization types |
theta | real numeric | degrees | 180 | incident elevation angle |
phi | real numeric | degrees | 0 | incident azimuth angle |
focus_x | real numeric | project units | 0 | X-coordinate of beam focus point |
focus_y | real numeric | project units | 0 | Y-coordinate of beam focus point |
focus_z | real numeric | project units | 0 | Z-coordinate of beam focus point |
radius | real numeric | project units | 10 | beam waist radius |
p | integer numeric | - | 0 | first index of Hermite-Gauss mode |
q | integer numeric | - | 0 | second index of Hermite-Gauss mode |
Hertzian Short Dipole Source
MODULE: EM.Terrano, EM.Illumina, EM.Picasso, EM.Libera
FUNCTION: Places a short dipole radiator at a specified location in the project workspace
TO DEFINE A SHORT DIPOLE SOURCE:
- Right-click on the Hertzian Short Dipoles item in the navigation tree.
- Select Insert New Source... to open up the Short Dipole Dialog.
- By default, the short dipole radiator is placed at the origin of coordinates. You can modify the source coordinates.
- By default, a vertical Z-directed short dipole radiator is defined. You can change the components of the unit vector along the dipole to reorient it along any arbitrary direction.
- You may also modify the current strength and length of the Hertzian dipole.
- Click the OK button of the dialog to return to the project workspace.
NOTES, SPECIAL CASES OR EXCEPTIONS: A Hertzian dipole is the simplest type of radiator, which consists of a short current element of length Δl, aligned along a unit vector û and carrying a current of I Amperes. The product IΔl is often called the dipole moment and gives a measure of the radiator's strength. A short vertical dipole in the free space generates an azimuth-symmetric, almost omni-directional, far field. The fields radiated by a short Hertzian dipole in a free-space background medium are given by:
- [math] \mathbf{ E^{inc}(r) } = - jk_0 Z_0 (I\Delta l) \left\{ \left[ 1 - \frac{j}{k_0 R} - \frac{1}{(k_0 R)^2} \right] \mathbf{\hat{u}} - \left[ 1 - \frac{3j}{k_0 R} - \frac{3}{(k_0 R)^2} \right] \mathbf{ (\hat{R} \cdot \hat{u}) } \right\} \frac{e^{-jk_0 R}}{4\pi R} [/math]
- [math] \mathbf{ H^{inc}(r) } = - jk_0 (I\Delta l) \left[ 1-\frac{j}{k_0 R} \right] \mathbf{ (\hat{R} \times \hat{u} ) } \frac{e^{-jk_0 R}}{4\pi R} [/math]
where [math] R=|r-r'| \text{, } k_0 = \frac{2\pi}{\lambda_0} \text{ and } Z_0 = 1/Y_0 = \eta_0 [/math], λ0 is the operating wavelength, [math]\mathbf{\hat{u}}[/math] is the unit vector along the dipole, and r0 = (x0, y0, z0) is the position vector of the dipole source.
The radiation resistance of the short dipole is given by:
- [math] R_r = 80\pi^2 \left( \frac{\Delta l}{\lambda_0} \right)^2 [/math]
The radiated power of the short dipole carrying a current I is displayed in the source dialog and is computed as:
- [math] P_{rad} = \frac{1}{2} R_r |I_0|^2 = 40\pi^2 |I|^2 \left( \frac{\Delta l}{\lambda_0} \right)^2 [/math]
The radiated fields of a short dipole above a layered planar background structure are greatly altered by the presence of the substrate layers. The electric and magnetic fields radiated by a short dipole in the presence of a layered background structure are indeed the dyadic Green's functions of that structure:
- [math] \mathbf{E^{inc}(r)} = \int_{\Delta_L} \mathbf{\overline{\overline{G_{EJ}}}(r|r')} \cdot (I\Delta l \mathbf{\hat{u}}) \, dl' [/math]
- [math] \mathbf{H^{inc}(r)} = \int_{\Delta_L} \mathbf{\overline{\overline{G_{HJ}}}(r|r')} \cdot (I\Delta l \mathbf{\hat{u}}) \, dl' [/math]
PYTHON COMMAND: short_dipole(label,x0,y0,z0,length,uX,uY,uZ,amplitude,phase)
SHORT DIPOLE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
x0 | real numeric | project units | 0 | X-coordinate of source location |
y0 | real numeric | project units | 0 | Y-coordinate of source location |
z0 | real numeric | project units | 0 | Z-coordinate of source location |
amplitude | real numeric | Amperes | 1 | amplitude of dipole current |
phase | real numeric | degrees | 0 | phase of dipole current |
length | real numeric | project units | 3 | dipole length |
uX | real numeric | - | 0 | X-component of unit direction vector |
uY | real numeric | - | 0 | Y-component of unit direction vector |
uZ | real numeric | - | 1 | Z-component of unit direction vector |
Huygens Source
MODULE: EM.Illumina, EM.Picasso, EM.Libera
FUNCTION: Defines an equivalent Huygens source based on a specified Huygens surface data file
TO DEFINE A HUYGENS SOURCE:
- Right-click on the Huygens Sources item in the navigation tree.
- Select Import New Source... to open up Window's Open Dialog. The file extension is automatically set to ".HUY".
- Browse your folders to find the desired Huygens surface data file. Select it and click the Open button of the dialog.
- A Huygens source box appears in the project workspace. You can open the property dialog of the Huygens source and change its location and orientation.
PYTHON COMMAND: huygens_src(label,filename,[set_lcs,x0,y0,z0,x_rot,y_rot,z_rot])
HUYGENS SOURCE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
x0 | real numeric | project units | - | X-coordinate of centroid of the Huygens source box |
y0 | real numeric | project units | - | Y-coordinate of centroid of the Huygens source box |
z0 | real numeric | project units | - | Z-coordinate of centroid of the Huygens source box |
rot_x | real numeric | degrees | 0 | rotation angle of the Huygens source box about the local X-axis |
rot_y | real numeric | degrees | 0 | rotation angle of the Huygens source box about the local Y-axis |
rot_z | real numeric | degrees | 0 | rotation angle of the Huygens source box about the local Z-axis |
Impedance Surface
MODULE: EM.Illumina
FUNCTION: Defines an impedance surface object group
TO DEFINE AN IMPEDANCE SURFACE GROUP:
- Right-click on the Impedance Surfaces item in the navigation tree.
- Select Insert New Impedance Surface... to open up the impedance Surface dialog.
- Besides the color and texture properties, you have to enter values for the real and imaginary parts of Surface Impedance. The default values are 0 + j0 Ω, representing a PEC surface.
- Click the OK button of the dialog to return to the project workspace.
NOTES, SPECIAL CASES OR EXCEPTIONS: An impedance surface is a surface on which the tangential electric and magnetic fields are governed by the surface impedance boundary condition (SIBC):
- [math] \mathbf{\hat{n}} \times \mathbf{\hat{n}} \times \mathbf{E} = -Z_s \mathbf{J_s} = -Z_s \mathbf{\hat{n}} \times \mathbf{H} [/math]
where [math]Z_s[/math] is the surface impedance in Ohms and [math]\mathbf{\hat{n}}[/math] is the unit outward normal on the given surface.
PYTHON COMMAND: impedance_surface_group(label,z_real,z_imag)
IMPEDANCE SURFACE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
resistance | Real Numeric | Ohm | 0.0 | real part of surface impedance |
reactance | Real Numeric | Ohm | 0.0 | imaginary part of surface impedance |
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Impenetrable Surface
MODULE: EM.Terrano
FUNCTION: Defines an impenetrable surface block group
TO DEFINE AN IMPENETRABLE SURFACE GROUP:
- Right-click on the Impenetrable Surfaces item in the navigation tree.
- Select Insert New Block... to open up the Impenetrable Surface dialog.
- In the material table, the default setting shows Brick with a relative permittivity of εr = 4.44 and an electric conductivity of σ = 0.001S/m.
- You can change the default material composition by selecting and highlighting it in the table and clicking the Add/Edit button of the dialog.
- In the Material Layer Properties dialog, either enter new values for εr and σ or click the Material button of this dialog to open EM.Cube's Materials List and select one of its entries.
- You can add several layers to your impenetrable surface composition. In that case, you need to define a thickness for each layer. The bottommost layer always has an infinite thickness representing an unbounded half-space medium as seen by an incident ray.
- After you complete the definition of all layers, click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: impenetrable_surface_group(label,epsilon,sigma)
IMPENETRABLE SURFACE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
epsilon | Real Numeric | - | 4.44 | relative permittivity |
sigma | Real Numeric | S/m | 1e-3 | electric conductivity |
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Inductor
MODULE: EM.Tempo
FUNCTION: Places an inductor at a specified point on a PEC line object that is parallel to one of the three principal axes
TO DEFINE A INDUCTOR:
- Right-click on the Lumped Devices item in the navigation tree.
- Select Insert New Source... to open up the Lumped Device Dialog.
- From the Host drop-down list, select a line object. Note that only line parallel to one of the three principal axes are listed.
- From the Type drop-down list, select Inductor.
- By default, the lumped device is placed at the midpoint of the host line object. You can modify the Offset parameter, which is measured from the start point of the line and is always positive.
- Enter a value for Inductance in nH. The default inductance is 1nH.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: inductor(label,line_object,offset,inductance_nH)
LUMPED INDUCTOR PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
offset | real numeric | project units | half the length of host line object | distance between the device and the start point of the host line object |
inductance | real numeric | nH | 1 | - |
Lumped Source
MODULE: EM.Tempo
FUNCTION: Places an ideal voltage source with a series internal resistor at a specified point on a PEC or thin wire line object that is parallel to one of the three principal axes
TO DEFINE A LUMPED SOURCE:
- Right-click on the Lumped Sources item in the navigation tree.
- Select Insert New Source... to open up the Lumped Source Dialog.
- From the Host drop-down list, select a line object. Note that only line parallel to one of the three principal axes are listed.
- By default, the lumped source is placed at the midpoint of the host line object. You can modify the Offset parameter, which is measured from the start point of the line and is always positive.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: lumped_src(label,line_object,offset,polarity[,amplitude,phase,resistance])
LUMPED SOURCE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
polarity | List: pos, neg | - | - | polarity of the voltage source |
offset | real numeric | project units | half the length of host line object | distance between the source and the start point of the host line object |
resistance | real numeric | Ohms | 50 | internal impedance of voltage source at the gap |
Microstrip Port
MODULE: EM.Tempo
FUNCTION: Places a special distributed source of a specified height underneath one of the edges of a PEC rectangle strip object that is parallel to one of the three principal planes
TO DEFINE A MICROSTRIP PORT:
- Right-click on the Microstrip Ports item in the navigation tree of EM.Tempo.
- Select Insert New Source... to open up the Microstrip Port Dialog.
- From the Host drop-down list, select a rectangle strip object. Note that only PEC rectangle strip objects parallel to one of the three principal planes are listed.
- You have to specify the height of the microstrip port, which is the same as the height of the microstrip's substrate.
- A microstrip port can be placed at one of the four edges of the host rectangle strip. You can select the desired location from the Edge drop-down list.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: microstrip_src(label,rect_object,height,edge[,magnitude,phase,resistance])
MICROSTRIP PORT PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
height | real numeric | project units | 1.5 | microstrip's substrate height |
resistance | real numeric | Ohms | 50 | internal impedance of the distributed voltage source |
Penetrable Surface
MODULE: EM.Terrano
FUNCTION: Defines a penetrable surface (thin wall) block group of a specified thickness
TO DEFINE AN PENETRABLE SURFACE GROUP:
- Right-click on the Penetrable Surfaces item in the navigation tree.
- Select Insert New Block... to open up the Penetrable Surface dialog.
- In the material table, the default setting shows Brick with a relative permittivity of εr = 4.44, an electric conductivity of σ = 0.001S/m and a thickness of 0.5 project units.
- You can change the default material composition by selecting and highlighting it in the table and clicking the Add/Edit button of the dialog.
- In the Material Layer Properties dialog, either enter new values for εr and σ or click the Material button of this dialog to open EM.Cube's Materials List and select one of its entries. You can also change the Wall Thickness from this dialog.
- You can add several layers to your penetrable wall composition. An incident ray first penetrates the topmost layer and finally exits the bottommost layer.
- After you complete the definition of all layers, click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: penetrable_surface_group(label,epsilon,sigma,thickness)
PENETRABLE SURFACE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
epsilon | Real Numeric | - | 4.44 | relative permittivity |
sigma | Real Numeric | S/m | 1e-3 | electric conductivity |
thickness | Real Numeric | project units | 0.5 | finite thickness of thin walls |
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Penetrable Volume
MODULE: EM.Terrano
FUNCTION: Defines a penetrable volume block group
TO DEFINE AN PENETRABLE VOLUME GROUP:
- Right-click on the Penetrable Volumes item in the navigation tree.
- Select Insert New Block... to open up the Penetrable Volume dialog.
- From the Interface drop-down dialog, choose one of the four options: Standard Material, Rain, Fog, Vegetation.
- The default interface type is the standard material Brick with a relative permittivity of εr = 4.44, an electric conductivity of σ = 0.001S/m.
- You can change the default material composition by entering new values for εr and σ. Or click the Material button of this dialog to open EM.Cube's Materials List and select one of its entries.
- If you choose the Rain option, you have to enter a value for Rain Rate in mm/hr.
- If you choose the Fog option, you have to enter a value for Fog Density in g/m^3.
- If you choose the Vegetation option, Weissberger's model will be used and there is no parameter to set.
- After you complete the definition of all layers, click the OK button of the dialog to return to the project workspace.
NOTES, SPECIAL CASES OR EXCEPTIONS: Inside a penetrable volumes, the rays travel through a non-air medium. As a result, they experience different phase velocities and possibly additional losses. Therefore, the attenuation and propagation constants of the material medium are used for wave computations:
- [math] \gamma = \alpha + j\beta = \alpha + j\frac{\omega}{c}\sqrt{\epsilon_r} [/math]
where α and β are the attenuation and propagation constants in Neper/m and radian/m, respectively, ω = 2*πf, εr is the relative permittivity of the medium and f the operational frequency.
There are four types of penetrable volumes:
- Standard material
- Rain
- Fog
- Vegetation
Standard material blocks reflect, transmit and diffract impinging rays. The ray reflection and edge diffraction mechanisms are identical to the cases of impenetrable or penetrable surfaces with the same material properties. The transmitted rays, however, travel in the material medium until they exit the other side of the penetrable volume object. This is different than the case of penetrable surfaces, where the transmitter ray is assumed to travel the very short thickness of a wall before entering the free space again, and the specular points of the entering and exiting rays are taken to be the same.
Of the above list, rain, fog and vegetation media only attenuate the incoming ray and do not generate reflected or diffracted rays. A rain medium is characterized by the Rain Rate expressed in mm/hr, and a fog medium is characterized by the Fog Density expressed in gr/m3. EM.Terrano uses Weissberger's model for the calculation of attenuation due to propagation in a vegetation medium. This model is only applicable when there is foliage obstruction (blockage by dense, dry and leafy trees) in a line-of-sight link. Weissberger's model is valid in the frequency range from 230MHz to 95GHz and provides accurate results for foliage depths up to 400m. It expressed the propagation loss as
- [math] L = \left\{ \begin{array}{lr} 0.45 f^{0.284}d & d\lt14\text{m} \\ 1.33 f^{0.284}d^{0.588} & 14\text{m} \le d \le 400\text{m} \end{array} \right. [/math]
where L is the total loss in dB, d is the depth of the foliage and f is the operational frequency in GHz.
PYTHON COMMAND: penetrable_volume_group(label,epsilon,sigma)
PENETRABLE VOLUME PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
eps | Real Numeric | - | 4.44 | relative permittivity |
sigma | Real Numeric | S/m | 1e-3 | electric conductivity |
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Perfect Electric Conductor (PEC)
MODULE: EM.Tempo, EM.Illumina, EM.Ferma, EM.Picasso, EM.Libera
FUNCTION: Defines a perfect electric conductor object group
TO DEFINE A PEC GROUP:
- Right-click on the PEC Objects or PEC Traces item in the navigation tree.
- Select Insert New PEC... to open up the New PEC Dialog.
- The only properties of a PEC group you can modify is its color and texture.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: pec_group(label)
PEC PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Perfect Magnetic Conductor (PMC)
MODULE: EM.Tempo, EM.Illumina
FUNCTION: Defines a perfect magnetic conductor object group
TO DEFINE A PMC GROUP:
- Right-click on the PMC Planes or PMC Surfaces item in the navigation tree.
- Select Insert New PMC... to open up the New PMC dialog.
- The only properties of a PMC group you can modify is its color and texture.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: pmc_group(label)
PMC PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Permanent Magnet
MODULE: EM.Ferma
FUNCTION: Defines a permanent magnet group with a specified magnetization vector
TO DEFINE A PERMANENT MAGNET GROUP:
- Right-click on the Permanent Magnets item in the navigation tree.
- Select Insert New Permanent Magnet... to open up the Permanent Magnet Source dialog.
- Enter a value for relative permeability μr, which has a default value of 1.
- You have two options for Magnetization to choose from: Uniform and Inhomogeneous.
- If you choose the uniform option, you have to enter three numeric values for the three components of the magnetization vector Mx, My and Mz in A/m.
- If you choose the inhomogeneous option, you have to enter three expressions for the three components of the magnetization vector Mx, My and Mz in the global (x,y,z) coordinates.
- Click the OK button of the dialog to return to the project workspace.
NOTES, SPECIAL CASES OR EXCEPTIONS: A permanent magnet is typically a ferromagnetic material with a fixed intrinsic 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. In this case, the permanent magnetic can be effectively modeled by an equivalent surface current density on the surface of the permanent magnetic object:
[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. Note that the volume of the permanent magnet still acts as a permeable material in the magnetostatic analysis.
PYTHON COMMAND: magnet_group(label,mu,Mx,My,Mz)
PERMANENT MAGNET PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
mu (μr) | Real Numeric | - | 1.0 | relative permeability |
Mx | Real Numeric | A/m | 0.0 | X-component of magnetization vector |
My | Real Numeric | A/m | 0.0 | Y-component of magnetization vector |
Mz | Real Numeric | A/m | 1.0 | Z-component of magnetization vector |
Plane Wave
MODULE: EM.Tempo, EM.Illumina, EM.Picasso, EM.Libera
FUNCTION: Defines a plane wave source with specified incidence angles and polarization
TO DEFINE A PLANE WAVE:
- Right-click on the Plane Waves item in the navigation tree.
- Select Insert New Source... to open up the Plane Wave Dialog.
- By default, a TMz-polarized plane wave source is defined with normal incidence along the negative Z-axis.
- You can change the Polarization type and incident Theta and Phi angles in the spherical coordinate system.
- Click the OK button of the dialog to return to the project workspace.
NOTES, SPECIAL CASES OR EXCEPTIONS: In the case of a free-space background medium, the incident electric and magnetic fields of the plane wave source are given by:
- [math] \mathbf{E^{inc}(r)} = E_0 \mathbf{\hat{e}} e^{ -jk_0 \mathbf{\hat{k}\cdot r} } [/math]
- [math] \mathbf{H^{inc}(r)} = \mathbf{\hat{k} \times \hat{e}} \frac{E_0}{\eta_0} e^{-jk_0 \mathbf{\hat{k} \cdot r} } [/math]
where [math]\eta_0 = 120\pi[/math] is the characteristic impedance of the free space, [math]\mathbf{\hat{k}}[/math] is the unit propagation vector of the incident plane wave, and [math]\mathbf{\hat{e}}[/math] is the polarization vector corresponding to the electric field of that wave.
In EM.Picasso, your plane wave source is placed above a multilayer substrate structure. In that case, the incident plane wave bounces off the layered background structure and part of it also penetrates the substrate layers. The total incident field that is used to calculate the excitation vector is a superposition of the incident, reflected and transmitted plane waves at various regions of your planar structure:
- [math] \mathbf{E^{inc}(r)} = E_0 (\mathbf{\hat{e}_1} e^{ -jk_0 \mathbf{\hat{k}_1\cdot r} } + R \mathbf{\hat{e}_2} e^{ -jk_0 \mathbf{\hat{k}_2\cdot r} } ) [/math]
- [math] \mathbf{H^{inc}(r)} = \frac{E_0}{\eta_0} ( \mathbf{\hat{k}_1 \times \hat{e}_1} e^{-jk_0 \mathbf{\hat{k}_1 \cdot r} } + R \mathbf{\hat{k}_2 \times \hat{e}_2} e^{-jk_0 \mathbf{\hat{k}_2\cdot r} } ) [/math]
where [math]\mathbf{\hat{k}_1}[/math] and [math]\mathbf{\hat{k}_2}[/math] are the unit propagation vectors of the incident plane wave and the wave reflected off the topmost substrate layer, respectively, and [math]\mathbf{\hat{e}_1}[/math] and [math]\mathbf{\hat{e}_2}[/math] are the polarization vectors corresponding to the electric field of those waves. R is the reflection coefficient at the interface between the top half-space and the topmost substrate layer and has different values for the TM and TE polarizations.
PYTHON COMMAND: planewave(label,theta,phi,polarization)
PLANE WAVE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
polarization | List: TMz, TEz, LCPz, RCPz, Custom Linear | - | TMz | select one of the linear or circular polarization types |
theta | real numeric | degrees | 180 | incident elevation angle |
phi | real numeric | degrees | 0 | incident azimuth angle |
Probe Gap Circuit Load
MODULE: EM.Oicasso
FUNCTION: Places a general series-parallel RLC circuit in the middle of an embedded vertical PEC via object
TO DEFINE A PROBE GAP CIRCUIT:
- Right-click on the Probe Gap Circuits item in the navigation tree.
- Select Insert New Source... to open up the Lumped Device Dialog.
- From the Host drop-down list, select a PEC Via object set.
- For "Lumped Circuit Type", select the Passive RLC radio button.
- Click the Impedance... button of the dialog to open up the Lumped Element Impedance dialog. The default series resistance is 50Ω. Check all the boxes for the series or parallel R, L, C elements as desired and enter values for the resistances, capacitances and inductances.
- Click the OK buttons of the dialogs to return to the project workspace.
PYTHON COMMAND: (Only a series resistor when amplitude is set equal to zero.)
probe_src(label,via_object,polarity[,amplitude,phase,resistance])
PROBE GAP LOAD PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
Rs | real numeric | Ohms | 50 | series resistor (must be checked) |
Ls | real numeric | nH | - | series inductor (must be checked) |
Cs | real numeric | pF | - | series capacitor (must be checked) |
Rs | real numeric | Ohms | - | parallel resistor (must be checked) |
Ls | real numeric | nH | - | parallel inductor (must be checked) |
Cs | real numeric | pF | - | parallel capacitor (must be checked) |
Probe Gap Circuit Source
MODULE: EM.Picasso
FUNCTION: Creates an infinitesimal gap across the middle of a vertical PEC via object and places an ideal voltage source with a series internal resistor
TO DEFINE A PROBE GAP SOURCE:
- Right-click on the Probe Gap Circuits item in the navigation tree.
- Select Insert New Source... to open up the Probe Gap Source Dialog.
- From the Host drop-down list, select a PEC via object.
- The probe gap source is always placed in the middle of the PEC via object.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: probe_src(label,via_object,polarity[,amplitude,phase,resistance])
PROBE GAP SOURCE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
polarity | List: pos, neg | - | pos | polarity of the voltage source |
amplitude | real numeric | Volts | 1 | amplitude of voltage source at the gap |
phase | real numeric | degrees | 0 | phase of voltage source at the gap |
Resistor
MODULE: EM.Tempo
FUNCTION: Places a resistor at a specified point on a PEC line object that is parallel to one of the three principal axes
TO DEFINE A RESISTOR:
- Right-click on the Lumped Devices item in the navigation tree.
- Select Insert New Source... to open up the Lumped Device Dialog.
- From the Host drop-down list, select a line object. Note that only line parallel to one of the three principal axes are listed.
- From the Type drop-down list, select Resistor.
- By default, the lumped device is placed at the midpoint of the host line object. You can modify the Offset parameter, which is measured from the start point of the line and is always positive.
- Enter a value for Resistance in Ohms. The default resistance is 100Ω.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: resistor(label,line_object,offset,resistance)
LUMPED RESISTOR PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
offset | real numeric | project units | half the length of host line object | distance between the device and the start point of the host line object |
resistance | real numeric | Ohms | 50 | - |
Scattering Wave Port
MODULE: EM.Picasso
FUNCTION: Creates an infinitesimal gap across a PEC rectangle strip object at a specified location and places an ideal voltage source with a series internal resistor
TO DEFINE A SCATTERING WAVE PORT:
- Right-click on the Scattering Wave Ports item in the navigation tree.
- Select Insert New Source... to open up the Wave Port Dialog.
- From the Host drop-down list, select a PEC rectangle strip object.
- By default, the wave port is placed at one end of the host rect strip object. The incident wave propagates along the host strip towards this end. You can change the direction of the incident wave. You can also modify the Offset parameter, which is measured from the endpoint of the host strip. This establishes the phase reference plane for computation of the scattering parameters.
- Click the OK button of the dialog to return to the project workspace.
NOTES, SPECIAL CASES OR EXCEPTIONS: A scattering wave port is made up of a gap source that is placed close to an open end of a rectangle strip representing a feed line. The other end of the line is typically connected to a planar structure of interest. in the process of planar mesh generation, EM.Picasso automatically extends the length of a port line that hosts a scattering wave port to about two effective wavelengths. This is done to provide enough length for formation of a clean standing wave current pattern. The effective wavelength of a transmission line for length extension purposes is calculated in a similar manner as for the planar mesh resolution. It is defined as [math]\lambda_{eff} = \tfrac{\lambda_0}{\sqrt{\varepsilon_{eff}}}[/math], where εeff is the effective permittivity. For metal and conductive sheet traces, the effective permittivity is defined as the larger of the permittivities of the two substrate layers just above and below the metallic trace. For slot traces, the effective permittivity is defined as the mean (average) of the permittivities of the two substrate layers just above and below the metallic trace. The host port line must always be open from one end to allow for its length extension. You have to make sure that there are no objects standing on the way of the extended port line to avoid any unwanted overlaps.
PYTHON COMMAND: wave_port(label,rect_object,offset,is_negative[,amplitude,phase])
SCATTERING WAVE PORT PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
direction | List: pos, neg | - | pos | direction of the incident wave |
offset | real numeric | project units | 0 | distance between the source and the endpoint of the host strip object |
amplitude | real numeric | Volts | 1 | amplitude of incident wave |
phase | real numeric | degrees | 0 | phase of incident wave |
RELATED LINKS: Calculating Scattering Parameters Using Prony's Method
Slot Trace
MODULE: EM.Picasso
FUNCTION: Defines a slot trace object group on an infinite PEC ground plane
TO DEFINE A SLOT TRACE GROUP:
- Right-click on the Slot Traces item in the navigation tree.
- Select Insert New Slot Trace... to open up the New Slot Trace dialog.
- The only properties of a slot trace group you can modify is its color and texture.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: slot_group(label)
SLOT TRACE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Strip Gap Circuit Load
MODULE: EM.Oicasso, EM.Libera
FUNCTION: Places a general series-parallel RLC circuit at a specified point on a PEC rectangle strip object
TO DEFINE A STRIP GAP CIRCUIT:
- Right-click on the Strip Gap Circuits item in the navigation tree.
- Select Insert New Source... to open up the Lumped Device Dialog.
- From the Host drop-down list, select a rectangle strip object.
- For "Lumped Circuit Type", select the Passive RLC radio button.
- By default, the lumped device is placed at the midpoint of the host rectangle strip object. You can modify the Offset parameter, which is measured from the center of the strip and can be either positive or negative.
- Click the Impedance... button of the dialog to open up the Lumped Element Impedance dialog. The default series resistance is 50Ω. Check all the boxes for the series or parallel R, L, C elements as desired and enter values for the resistances, capacitances and inductances.
- Click the OK buttons of the dialogs to return to the project workspace.
PYTHON COMMAND: (Only a series resistor when amplitude is set equal to zero.)
rect_gap_src(label,rect_object,offset,polarity[,amplitude,phase,resistance])
STRIP GAP LOAD PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
offset | real numeric | project units | half the length of host rectangle strip object | distance between the device and the center of the host strip object |
Rs | real numeric | Ohms | 50 | series resistor (must be checked) |
Ls | real numeric | nH | - | series inductor (must be checked) |
Cs | real numeric | pF | - | series capacitor (must be checked) |
Rs | real numeric | Ohms | - | parallel resistor (must be checked) |
Ls | real numeric | nH | - | parallel inductor (must be checked) |
Cs | real numeric | pF | - | parallel capacitor (must be checked) |
Strip Gap Circuit Source
MODULE: EM.Picasso, EM.Libera
FUNCTION: Creates an infinitesimal gap across a PEC rectangle strip object at a specified location and places an ideal voltage source with a series internal resistor
TO DEFINE A STRIP GAP SOURCE:
- Right-click on the Strip Gap Circuits item in the navigation tree.
- Select Insert New Source... to open up the Strip Gap Source Dialog.
- From the Host drop-down list, select a PEC rectangle strip object.
- By default, the strip gap source is placed at the midpoint of the host rect strip object. You can modify the Offset parameter, which is measured from the midpoint of the host strip and can be either positive or negative.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: rect_gap_src(label,rect_object,offset,polarity[,amplitude,phase,resistance])
STRIP GAP SOURCE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
polarity | List: pos, neg | - | pos | polarity of the voltage source |
offset | real numeric | project units | 0 | distance between the source and the midpoint of the host strip object |
amplitude | real numeric | Volts | 1 | amplitude of voltage source at the gap |
phase | real numeric | degrees | 0 | phase of voltage source at the gap |
Terrain Surface
MODULE: EM.Terrano
FUNCTION: Defines a terrain surface block group
TO DEFINE A TERRAIN SURFACE GROUP:
- Right-click on the Terrain Surfaces item in the navigation tree.
- Select Insert New Terrain... to open up the Terrain Surface dialog.
- In the material table, the default setting shows Rock with a relative permittivity of εr = 5 and an electric conductivity of σ = 0.001S/m.
- You can change the default material composition by selecting and highlighting it in the table and clicking the Add/Edit button of the dialog.
- In the Material Layer Properties dialog, either enter new values for εr and σ or click the Material button of this dialog to open EM.Cube's Materials List and select one of its entries.
- You can add several layers to your terrain surface composition. In that case, you need to define a thickness for each layer. The bottommost layer always has an infinite thickness representing an unbounded half-space medium as seen by an incident ray.
- After you complete the definition of all layers, click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: terrain_group(label,epsilon,sigma)
TERRAIN SURFACE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
epsilon | Real Numeric | - | 5 | relative permittivity |
sigma | Real Numeric | S/m | 5e-3 | electric conductivity |
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Thin Wire
FUNCTION: Defines a thin wire object group with a specified wire radius
TO DEFINE A THIN WIRE GROUP:
- Right-click on the Thin Wires item in the navigation tree.
- Select Insert New Thin Wire... to open up the Thin Wire dialog.
- Enter a value for the Wire Radius.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: thinwire_group(label,radius)
THIN WIRE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
Wire radius | Real Numeric | project units | 0.3 | - |
Locked mesh density | Real Numeric | cells/effective wavelength | 50 | "Lock Mesh" enabled by default |
Transmitter Set
MODULE: EM.Terrano
FUNCTION: Defines an transmitter set associated with an existing base location set
TO DEFINE A TRANSMITTER SET:
- Right-click on the Transmitters item in the navigation tree of EM.Terrano.
- Select Insert New Transmitter Set... to open up the Transmitter Set Dialog.
- From the drop-down list labeled Select Base Point Set, choose the desired base location set, which can be a single point object or a point array.
- By default, the transmitter set is assumed to be made up of vertical half-wave radiators.
- You may also force the transmitters to adjust their Z-coordinates based on the underlying terrain surface.
- Click the OK button of the dialog to return to the project workspace. The new round symbols appear representing the transmitter set.
- You can open the property dialog of the transmitter set and change the radiator type to User Defined Antenna. In that case, click the Import Pattern button of the dialog to set the file path for a far-field radiation pattern data file of ".RAD" type. You can also additionally rotate the imported radiation pattern about its local X-, Y- and Z-axes.
- An imported radiation pattern file typically contains a total radiated power parameter at its file header. By default, this value is overridden and the Custom Power check box is checked. A default total power of 1W is assigned to each transmitter, which you can change to any arbitrary value. Or you may uncheck Custom Power to use the imported value of the total radiated power.
PYTHON COMMAND: transmitter_set(label,base_point_set[,pattern_file,rot_x,rot_y,rot_z])
TRANSMITTER SET PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
radiator type | options: vertical half-wave dipole, user define antenna | - | vertical half-wave dipole | - |
pattern file | file path | - | Models\DPL_STD.RAD | imported far-field radiation pattern data file with a ".RAD" file extension for the case of user defined antenna |
baseband power | real numeric | Watts | 1 | total transmitted power |
phase | real numeric | degrees | 0 | phase of transmitted signal |
rot_x | real numeric | degrees | 0 | additional rotation angle of the imported radiation pattern about the local X-axis |
rot_y | real numeric | degrees | 0 | additional rotation angle of the imported radiation pattern about the local Y-axis |
rot_z | real numeric | degrees | 0 | additional rotation angle of the imported radiation pattern about the local Z-axis |
Virtual Object Group
MODULE: EM.Terrano
FUNCTION: Defines a virtual object group that will be invisible to the simulation engine
TO DEFINE A VIRTUAL OBJECT GROUP:
- Right-click on the Virtual Objects item in the navigation tree.
- Select Insert a Virtual Material... to open up the Virtual Material dialog.
- Virtual materials have only one property, which is their color. You can the change from this dialog.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: virtual_group(label)
VIRTUAL OBJECT PARAMETERS: None
Volume Charge
MODULE: EM.Ferma
FUNCTION: Defines a volume charge source group with a specified charge density
TO DEFINE A VOLUME CHARGE GROUP:
- Right-click on the Volume Charges item in the navigation tree.
- Select Insert New Volume Charge... to open up the Volume Charge Source dialog.
- You have two options to choose from: Uniform and Inhomogeneous.
- If you choose the uniform option, you have to enter a numeric value for Charge Density in C/m^3.
- If you choose the inhomogeneous option, you have to enter an expression for Charge Density in the global (x,y,z) coordinates.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: charge_group(label,density)
VOLUME CHARGE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
density | Real Numeric | C/m^3 | -1e-5 | volume charge density with a positive or negative sign |
Volume Current
MODULE: EM.Ferma
FUNCTION: Defines a volume current source group with a specified current density vector
TO DEFINE A VOLUME CURRENT GROUP:
- Right-click on the Volume Currents item in the navigation tree.
- Select Insert New Volume Current... to open up the Volume Current Source dialog.
- You have two options to choose from: Uniform and Inhomogeneous.
- If you choose the uniform option, you have to enter three numeric values for the three components of volume current density Jx, Jy and Jz in A/m^2.
- If you choose the inhomogeneous option, you have to enter three expressions for the three components of volume current density Jx, Jy and Jz in the global (x,y,z) coordinates.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: volume_current_group(label,Jx,Jy,Jz)
VOLUME CURRENT PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
Jx | Real Numeric | A/m^2 | 0.0 | X-component of volume current density vector |
Jy | Real Numeric | A/m^2 | 0.0 | Y-component of volume current density vector |
Jz | Real Numeric | A/m^2 | 1.0 | Z-component of volume current density vector |
Voxel Database
MODULE: EM.Tempo
FUNCTION: Defines a voxel database group based on a 3D Cartesian data file
TO DEFINE A VOXEL DATABASE GROUP:
- Right-click on the Voxel Databases item in the navigation tree.
- Select Import New Voxel Database... to open up the New Voxel Database dialog. This dialog gives you two options: either open an existing 3D cartesian database or go to EM.Cube's 3D Data Generator and create a new database from the group up.
- Click the button labeled Create New Database if you want to open the 3D Data Generator.
- Click the button labeled Open Exiting Database if you have already created or imported a 3D Cartesian database. In that case, clicking this button opens up the standard Windows Open dialog. The file type or file extension of the Open dialog is automatically set to ".CAR". Browse the Windows Explorer to locate the desired database file. Then, click the Open button to import the contents of the data as rectangular box object to the project workspace.
- Click the OK button of the dialog to close it.
PYTHON COMMAND: None
VOXEL DATABASE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
Locked mesh density | Real Numeric | cells/effective wavelength | 30 | Only if "Lock Mesh" enabled |
Waveguide Port
MODULE: EM.Tempo
FUNCTION: Places a TE10 modal source at a specified location across a hollow PEC box object that is parallel to one of the three principal axes
TO DEFINE A WAVEGUIDE PORT:
- Right-click on the Waveguide Ports item in the navigation tree of EM.Tempo.
- Select Insert New Source... to open up the Waveguide Port Dialog.
- From the Host drop-down list, select a box object. Note that only hollow PEC box objects parallel to one of the three principal axes are listed.
- By default, the waveguide port is placed in the middle of the host box object parallel to its base. You can modify the Offset parameter, which is measured from the bottom base of the box.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: waveguide_src(label,box_object,offset,is_negative[,amplitude,phase])
WAVEGUIDE PORT PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
direction | List: pos, neg | - | - | direction of incident wave propagation |
offset | real numeric | project units | half the height of host box object | distance between the source and the bottom base of the host box object |
Wire Current
MODULE: EM.Ferma
FUNCTION: Defines a wire current source group with a specified current and wire radius
TO DEFINE A WIRE CURRENT GROUP:
- Right-click on the Wire Current item in the navigation tree.
- Select Insert New Wire Current... to open up the Wire Current dialog.
- Enter a value for the total Current flowing in the wire in Amperes as well as a value for Wire Radius in the project units.
- You may assume that the wire current consists of multiple turns or multiple bundled wires. The default number of turns is 1, but you can change it.
- The current flowing in the wire is directional. You may need to check the box labeled Reverse Current if you prefer the opposite direction.
- Click the OK button of the dialog to return to the project workspace.
NOTES, SPECIAL CASES OR EXCEPTIONS: 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.
If you draw curve CAD objects under a wire current group, they will be permanently converted to polyline objects before running the simulation engine. |
PYTHON COMMAND: wire_current_group(label,current,wire_radius)
WIRE CURRENT PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
current | Real Numeric | A | 1.0 | total current flowing through the wire |
wire_radius | Real Numeric | project units | 0.5 | - |
wire_count | Integer Numeric | - | 1 | number of collocated wires or loop turns |
Wire Gap Circuit Load
MODULE: EM.Libera
FUNCTION: Places a general series-parallel RLC circuit at a specified point on a PEC line object
TO DEFINE A WIRE GAP CIRCUIT:
- Right-click on the Wire Gap Circuits item in the navigation tree.
- Select Insert New Source... to open up the Lumped Device Dialog.
- From the Host drop-down list, select a line object.
- For "Lumped Circuit Type", select the Passive RLC radio button.
- By default, the lumped device is placed at the midpoint of the host line object. You can modify the Offset parameter, which is measured from the start point of the line and is always positive.
- Click the Impedance... button of the dialog to open up the Lumped Element Impedance dialog. The default series resistance is 50Ω. Check all the boxes for the series or parallel R, L, C elements as desired and enter values for the resistances, capacitances and inductances.
- Click the OK buttons of the dialogs to return to the project workspace.
PYTHON COMMAND: (Only a series resistor when amplitude is set equal to zero.)
wire_gap_src(label,line_object,offset,polarity[,amplitude,phase,resistance])
WIRE GAP LOAD PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
offset | real numeric | project units | half the length of host line object | distance between the device and the start point of the host line object |
Rs | real numeric | Ohms | 50 | series resistor (must be checked) |
Ls | real numeric | nH | - | series inductor (must be checked) |
Cs | real numeric | pF | - | series capacitor (must be checked) |
Rs | real numeric | Ohms | - | parallel resistor (must be checked) |
Ls | real numeric | nH | - | parallel inductor (must be checked) |
Cs | real numeric | pF | - | parallel capacitor (must be checked) |
Wire Gap Circuit Source
MODULE: EM.Libera
FUNCTION: Creates an infinitesimal gap across a PEC or thin wire line object at a specified location and places an ideal voltage source with a series internal resistor
TO DEFINE A WIRE GAP SOURCE:
- Right-click on the Wire Gap Circuits item in the navigation tree.
- Select Insert New Source... to open up the Wire Gap Source Dialog.
- From the Host drop-down list, select a PEC or thin wire line object.
- By default, the wire gap source is placed at the midpoint of the host line object. You can modify the Offset parameter, which is measured from the start point of the host line and is always positive.
- Click the OK button of the dialog to return to the project workspace.
PYTHON COMMAND: wire_gap_src(label,line_object,offset,polarity[,amplitude,phase,resistance])
WIRE GAP SOURCE PARAMETERS
Parameter Name | Value Type | Units | Default Value | Notes |
---|---|---|---|---|
polarity | List: pos, neg | - | pos | polarity of the voltage source |
offset | real numeric | project units | 0 | distance between the source and the start point of the host line object |
amplitude | real numeric | Volts | 1 | amplitude of voltage source at the gap |
phase | real numeric | degrees | 0 | phase of voltage source at the gap |
Exciting Multiport Structures Using Linear Superposition
If your physical structure has two or more sources, but you have not defined any ports, all the lumped sources excite the structure simultaneously. However, when you assign N ports to the sources, then you have a multiport structure that is characterized by an N×N scattering matrix, an N×N impedance matrix, and an N×N admittance matrix. To calculate these matrices, EM.Cube uses a binary excitation scheme in conjunction with the principle of linear superposition. In this binary scheme, the structure is analyzed N times. Each time one of the N port-assigned sources is excited, and all the other port-assigned sources are turned off.
In the case of gap sources on metal traces and probe sources on PEC vias, turning a source off means shorting a series voltage source. The electric currents passing through these sources are then found at each port location, and the admittance parameters are found as follows:
- [math] I_m = \sum_{n=1}^N Y_{mn} V_n, \quad \quad Y_{mn} = \frac{I_m}{V_n} \bigg|_{V_k=0, k \ne n}[/math]
In the case of gap sources on slot traces, turning a source off means opening a shunt filament current source. The magnetic currents passing through the source locations, and thus the voltages across them, are then found at all ports, and the impedance parameters are found as follows:
- [math] V_m = \sum_{n=1}^N Z_{mn} I_n, \quad \quad Z_{mn} = \frac{V_m}{I_n} \bigg|_{I_k=0, k \ne n}[/math]
The N solution vectors that are generated through the N binary excitation analyses are finally superposed to produce the actual solution to the problem. However, in this process, EM.Cube also calculates all the port characteristics. Keep in mind that the impedance (Z) and admittance (Y) matrices are inverse of each other. From the impedance matrix, the scattering matrix is calculated using the following relation:
Modeling Coupled Sources & Ports
Sources can be coupled to each other to model coupled strip lines (CPS) on metal traces or coplanar waveguides (CPW) on slot traces. Similarly, probe sources may be coupled to each other. Coupling two or more sources does not change the way they excite a planar structure. It is intended only for the purpose of S parameter calculation. The feed lines or vias which host the coupled sources are usually parallel and aligned with one another and they are all grouped together as a single transmission line represented by a single port. This single "coupled" port then interacts with other coupled or uncoupled ports.
You couple two or more sources using the Port Definition Dialog. To do so, you need to change the default port assignments. First, delete all the ports that are to be coupled from the Port List of the dialog. Then, define a new port by clicking the Edit button of the dialog. This opens up the Add Port dialog, which consists of two tables: Available sources on the left and Associated sources on the right. A right arrow --> button and a left arrow <-- button let you move the sources freely between these two tables. You will see in the "Available" table a list of all the sources that you deleted earlier. You may even see more available sources. Select all the sources that you want to couple and move them to the "Associated" table on the right. You can make multiple selections using the keyboard's Shift and Ctrl keys. Closing the Add Port dialog returns you to the Port Definition dialog, where you will now see the names of all the coupled sources next to the name of the newly added port.
Modeling Finite-Sized Source Arrays
You scan define arrays of sources on arrays of legitimate host objects. If your project in EM.Tempo has a line array object, you can define a lumped source array associated with it. If your project in EM.Picasso has an array of rectangle strips or an array of PEC vertical via objects, you can define and place a gap array or an array of probe sources on them, respectively. Similarly, if your project in EM.Libera has a line array object, a polyline array object, or an array of long, narrow rectangle strips, you can define and place a line gap array or a strip gap array on them, respectively. In all of these cases, the legitimate array objects will also be listed as an eligible object for source placement. A lumped or gap source will then be placed on each element of the array. All the individual sources will have identical direction and offset.
You can prescribe certain amplitude and/or phase distribution over the array of gap or probe sources. By default, all the gap or probe sources have identical amplitudes of 1V (or 1A for the slot case) and zero phase. The available amplitude distributions to choose from include Uniform, Binomial and Chebyshev and Date File. In the Chebyshev case, you need to set a value for minimum side lobe level (SLL) in dB. You can also define Phase Progression in degrees along all three principal axes. You can view the amplitude and phase of individual sources by right clicking on the top Sources item in the Navigation Tree and selecting Show Source Label from the contextual menu.
In the data file option, the complex amplitude are directly read in from a data file using a real - imaginary format. When this option is selected, you can either improvise the complex array weights or import them from an existing file. In the former case click the New Data File button. This opens up the Windows Notepad with default formatted data file that has a list of all the array element indices with default 1+j0 amplitudes for all of them. You can replace the default complex values with new one and save the Notepad data file, which brings you back to the Gap Source dialog. To import the array weights, click the Open Data File button, which opens the standard Windows Open dialog. You can then select the right data file from the one of your folders. It is important to note that the data file must have the correct format to be read by EM.Cube. For this reason, it is recommended that you first create a new data file with the right format using Notepad as described earlier and then save it for later use.
Beam Steering in Periodic Phased Array Structures
In EM.Tempo, a periodic structure can be excited using various source types. Exciting the unit cell structure using a lumped source, a waveguide source, or a distributed source, you can model an infinite periodic antenna array. For most practical antenna types, you excite your periodic structure with a lumped source or waveguide source. In this case, you can define a port for the lumped source or waveguide source and calculate the S11 parameter or input impedance of the periodic antenna array. You can also compute the near-field and far-field data.
EM.Tempo's periodic FDTD simulator uses periodic boundary conditions (PBC) to model an infinite periodic array. All the periodic replicas of the unit cell structure are excited. In this case, you can impose a phase progression across the infinite array to steer its beam. You can do this from the property dialog of the lumped source or waveguide source. At the bottom of the Lumped Source Dialog or Waveguide Source Dialog, there is a section titled Periodic Beam Scan Angles. This section is grayed out when the project structure is not periodic. You can enter desired beam scan angle values for both Theta and Phi in degrees. To visualize the radiation pattern of the beam-steered array, you have to define a finite-sized array factor. You do this in the "Impose Array Factor" section of the Radiation Pattern Dialog.
For large θ scan angles, the periodic FDTD time marching loop may take far more time steps to converge. |
When a periodic planar structure is excited using a gap or probe source, it acts like an infinite periodic phased array. All the periodic replicas of the unit cell structure are excited. You can even impose a phase progression across the infinite array to steer its beam. You can do this from the property dialog of the gap or probe source. At the bottom of the Gap Source Dialog or Probe Source Dialog, there is a section titled Periodic Beam Scan Angles. You can enter desired values for Theta and Phi beam scan angles in degrees. To visualize the radiation patterns of a beam-steered antenna array, you have to define a finite-sized array factor in the Radiation Pattern dialog. You do this in the Impose Array Factor section of this dialog. The values of Element Spacing along the X and Y directions must be set equal to the value of Periodic Lattice Spacing along those directions.
A Review of Linear & Nonlinear Passive & Active Devices
The Resistor Device
A resistor is a lumped device that dissipates power and converts electric energy to heat. A simple resistor is made of a bar of resistive material with a rectangular cross section and two metallic contacts at its two ends. A resistor is characterized by its resistance, which has units of Ohm (Ω) and is defined as
- [math] R = \frac{V}{I} = \frac{- \int_C \mathbf{E(r)} . \mathbf{dl} }{ \int\int_S \sigma \mathbf{E(r)} . \mathbf{ds} } [/math]
where V is the voltage across the resistor and I is the current passing through it. In the above equation, C represents an open curve (path), S represents an open surface like a plane, and E(r) is the electric field.
The resistance of a simple resistive bar with electric conductivity σ, length l and cross section area A is given by
- [math] R = \frac{1}{\sigma} \frac{l}{A} [/math]
The time-domain relationship between the voltage and current of a resistor obey Ohm's law:
- [math] v(t) = R i(t) [/math]
Under the assumption of time-harmonic excitation, the frequency-domain relationship can be expressed in phasor form:
- [math] V = R I = Z_R I [/math]
This means that the impedance of a resistor is pure real.
The Capacitor Device
A capacitor is a lumped device that stores electric energy. A simple capacitor is made of two parallel metal plates separated by a dielectric spacer. A capacitor is characterized by its capacitance, which has units of Farad (F) and is defined as
- [math] C = \frac{Q}{V} = \frac{ \int\int_{S_o} \epsilon \mathbf{E(r)} . \mathbf{ds} }{ \int_C \mathbf{E(r)} . \mathbf{dl} } [/math]
where Q is the total charge on the capacitor plates and V is the voltage across the two plates. In the above equation, C represents an open curve (path) and So represents a closed surface like a box.
The capacitance of a simple parallel plate capacitor with plate surface area A, plate spacing d and relative permittivity εr is given by
- [math] C = \epsilon_r \epsilon_0 \frac{d}{A} [/math]
The time-domain relationship between the voltage and current of a capacitor is given by:
- [math] i(t) = C \frac{dv(t)}{dt} [/math]
Under the assumption of time-harmonic excitation, the frequency-domain relationship can be expressed in phasor form:
- [math] I = j\omega C V = Y_C V [/math]
This means that the impedance of a capacitor is pure imaginary.
The Inductor Device
An inductor is a lumped device that stores magnetic energy. A simple inductor is made of a wire coil. An inductor is characterized by its inductance, which has units of Henry (H) and is defined as
- [math] L = \frac{\Phi_H}{I} = \frac{ \int\int_S \mu \mathbf{H(r)} . \mathbf{ds} }{ \oint_{C_o} \mathbf{H(r)} . \mathbf{dl} } [/math]
where ΦH is the total magnetic flux passing through the inductor and I is the current in the wire. In the above equation, Co represents a closed curve (loop), S represents an open surface like a plane, and H(r) is the magnetic field.
The inductance of a simple air-filled coil inductor with N turns, a circular cross section area A, and end-to-end length l is given by
- [math] L = \mu_0 N^2 \frac{A}{l} [/math]
The time-domain relationship between the voltage and current of an inductor is given by:
- [math] v(t) = L \frac{di(t)}{dt} [/math]
Under the assumption of time-harmonic excitation, the frequency-domain relationship can be expressed in phasor form:
- [math] V = j\omega L I = Z_L I [/math]
This means that the impedance of an inductor is pure imaginary.
The Diode Device
A diode is a rectifying device. The time-domain relationship between the voltage and current of a diode is given by the nonlinear equation:
- [math] i(t) = I_s \left( e^{\frac{kv(t)}{nqT}} - 1 \right) [/math]
where Is is called the saturation current, k = 1.3806488 × 10-23m2kg.s-2K-1 is the Boltzmann constant, q = 1.60217657 × 10-19 is the electron charge, T is the temperature in degrees Kelvin, and n is called the "Ideality Factor" and has a value between 1 and 2.
A diode is a directional device marked by positive anode and negative cathode terminals. It allows the flow of positive current in the direction from anode to cathode, but it blocks the flow of current in the opposite direction.
Modeling Lumped Elements in the MoM Solvers
In both of EM.Cube's MoM-based computational modules, EM.Picasso and EM.Libera, the concept of lumped element has been generalized to an "Active Lumped Circuit", which consists of an ideal voltage source together with a series-parallel RLC combination as shown in the figure below. The combination is placed across a gap discontinuity located on a rectangle strip object or on a wire or on a vertical PEC via. You have the choice to set the source voltage to zero and make it a passive load. You can also selectively define the series and shunt RLC elements as you desire. For example, an active voltage source with a series resistor in EM.Picasso or EM.Libera would function like a lumped source in EM.Tempo, which has a built-in source resistance as part of its definition.
In both EM.Picasso and EM.Libera, a lumped element is treated as a complex impedance in the frequency domain. Therefore, the complex-valued Ohm's law is enforced as a boundary condition at the gap discontinuity that is associated with the location of the lumped element. If a lumped element is placed on a PEC line object or on a PEC rectangle strip object, it is treated as a series connection. The boundary condition at the location of the lumped element is:
[math] V_{gap} = Z_L I_{in} + V_s\quad\quad\quad\quad \int_{\delta} \hat{x}\cdot \mathbf{E_{gap}} \, dx = V_s + Z_L \int_W \hat{y} \cdot \mathbf{J_s} \, dy [/math]
where ZL is the total impedance across the two terminals of the series element.
If the lumped element is placed on a slot trace, it is treated as a shunt connection that creates a current discontinuity. In this case, the magnetic current across the gap is continuous, and the boundary condition at the location of the lumped element is:
[math] I_{gap} = Y_L V_{in} + I_s \quad\quad\quad\quad \int_{\delta} J_Y^{filament} \, dx = I_s + Y_L \int_W E_y \, dy [/math]
[math] \int_{\delta} \hat{x}\cdot\hat{n} \times (\mathbf{H_{gap}^+ - H_{gap}^-}) \, dx = I_s + Y_L \int_W \hat{y}\cdot\mathbf{M_s} \, dy [/math]
where YL is the total admittance across the two terminals of the shunt element.
If a lumped element is placed on a PEC via that is connected to a metal strip from one side and to a PEC ground plane from the other end, it is indeed as a series connection across a gap discontinuity at the middle plane of the via. If the via is short, it is meshed using a single prismatic element. In that case, the lumped element in effect shunts the metal strip to the ground. The boundary condition at the location of the lumped element across the PEC via is:
[math] V_{gap} = Z_L I_{in} + V_s \quad\quad\quad\quad \int_{\delta} \hat{z}\cdot \mathbf{E_{gap}} \, dz = V_s + Z_L \int_S \hat{z} \cdot \mathbf{J_p} \, ds [/math]