Changes

EM.Libera

234 bytes removed, 21:16, 23 April 2021
/* Mesh of Connected Objects */
[[Image:Splash-mom.jpg|right|800px720px]]<strong><font color="#06569f" size="4">3D Wire MoM And Surface MoM Solvers For Simulating Free-Space Structures</font></strong><table><tr><td>[[image:Cube-icon.png | link=Getting_Started_with_EM.Cube]] [[image:cad-ico.png | link=Building_Geometrical_Constructions_in_CubeCAD]] [[image:fdtd-ico.png | link= An EM.Tempo]] [[image:prop-ico.png | link=EM.Terrano]] [[image:static-ico.png | link=EM.Ferma]] [[image:planar-ico.png | link=EM.Picasso]] [[image:po-ico.png | link=EM.Illumina]]</td><tr></table>[[Image:Tutorial_icon.png|30px]] '''[[EM.Cube#EM.Libera_Documentation | EM.Libera Primer Tutorial Gateway]]''' [[Image:Back_icon.png|30px]] '''[[EM.Cube | Back to EM.Cube Main Page]]'''==Product Overview==
=== EM.Libera in a Nutshell ===
[[EM.Libera ]] is a full-wave 3D electromagnetic simulator based on the Method of Moments (MoM) for frequency domain modeling of free-space metallic structures made up of metal and dielectric structuresregions or a combination of them. It features two full-wave Method of Moments (MoM) separate simulation engines, one based on a Wire Surface MoM formulation solver and the other based on a Surface Wire MoM formulation. In generalsolver, the surface that work independently and provide different types of solutions to your numerical problem. The Surface MoM solver is used to simulate your physical structure, which can be made utilizes a surface integration equation formulation of metallic the metal and dielectric objects of arbitrary shapes as well as composite structures that contain conjoined metal and dielectric regions. If in your project workspace contains at least one line or curve object, EMphysical structure.Libera then invokes its The Wire MoM solver. In that case, can only handle metallic wireframe structures can be modeled, and all . [[EM.Libera]] selects the surface and solid PEC simulation engine automatically based on the types of objects are meshed as wireframespresent in your project workspace.
{{Note|You can use [[EM.Libera either for modeling metallic wire objects and wireframe structures or for simulating arbitrary ]] offers two distinct 3D metallic, dielectric and composite surfaces and volumetric structuresMoM simulation engines. EMThe Wire MoM solver is based on Pocklington's integral equation.Libera also serves as the frequency-domain, full-wave '''[[MoM3D Module]]''' The Surface MoM solver uses a number of surface integral equation formulations of Maxwell'''[[EMs equations.Cube]]'''In particular, a comprehensiveit uses an electric field integral equation (EFIE), integratedmagnetic field integral equation (MFIE), modular electromagnetic or combined field integral equation (CFIE) for modeling environmentPEC regions. EM.Libera shares On the visual interface, 3D parametric CAD modeler, data visualization toolsother hand, the so-called Poggio-Miller-Chang-Harrington-Wu-Tsai (PMCHWT) technique is utilized for modeling dielectric regions. Equivalent electric and many more utilities magnetic currents are assumed on the surface of the dielectric objects to formulate their assocaited interior and features collectively known as '''[[CubeCAD]]''' with all of [[EM.Cube]]'s other computational modulesexterior boundary value problems.}}
{{Note|In general, [[EM.Libera]] uses the surface MoM solver to analyze your physical structure. If your project workspace contains at least one line or curve object, [[EM.Libera]] switches to the Wire MoM solver.}} [[Image:Info_icon.png|40px30px]] Click here to learn more about the theory of the '''[[Getting_Started_with_EM.CUBE Basic Principles of The Method of Moments | EM.Cube Modeling Environment3D Method of Moments]]'''.
<table><tr><td>[[Image:Info_iconYagi Pattern.png|40px]] Click here to learn more about thumb|500px|3D far-field radiation pattern of the basic functionality of '''[[CubeCADexpanded Yagi-Uda antenna array with 13 directors.]]'''.</td></tr></table>
=== An Overview EM.Libera as the MoM3D Module of 3D Method Of Moments EM.Cube ===
The Method of Moments (MoM) is a rigorousYou can use [[EM.Libera]] either for simulating arbitrary 3D metallic, dielectric and composite surfaces and volumetric structures or for modeling wire objects and metallic wireframe structures. [[EM.Libera]] also serves as the frequency-domain, full-wave'''MoM3D Module''' of '''[[EM.Cube]]''', numerical technique for solving open boundary a comprehensive, integrated, modular electromagnetic problemsmodeling environment. Using this technique[[EM.Libera]] shares the visual interface, you can analyze electromagnetic radiation3D parametric CAD modeler, data visualization tools, scattering and wave propagation problems with relatively short computation times many more utilities and modest computing resources. The method of moments is an integral equation technique; it solves the integral form of Maxwell’s equations features collectively known as opposed to their differential forms used [[Building Geometrical Constructions in the finite element or finite difference time domain methodsCubeCAD | CubeCAD]] with all of [[EM.Cube]]'s other computational modules.
In a 3D MoM simulation, the currents or fields on the surface of a structure are the unknowns of the problem. The given structure is immersed in the free space. The unknown currents or fields are discretized as a collection of elementary currents or fields with small finite spatial extents. Such elementary currents or fields are called basis functions. They obviously have a vectorial nature and must satisfy [[Maxwell's EquationsImage:Info_icon.png|Maxwell's equations30px]] and relevant boundary conditions individuallyClick here to learn more about '''[[Getting_Started_with_EM. The actual currents or fields on the surface of the given structure (the solution of the problem) are expressed as a superposition of these elementary currents or fields with initially unknown amplitudesCube | EM. Through the MoM solution, you find these unknown amplitudes, from which you can then calculate the currents or fields everywhere in the structureCube Modeling Environment]]'''.
=== Advantages & Limitations of EM.Libera offers two distinct 3D MoM simulation engines. The first one is a Wire MoM solver, which is based on Pocklington's integral equation. This solver can be used to simulate wireframe models of metallic structures and is particularly useful for modeling wire-type antennas and arrays. The second engine features a powerful Surface MoM solver. It can model metallic surfaces and solids as well as solid dielectric objects. The Surface & Wire MoM solver uses a surface integral equation formulation of [[Maxwell's Equations|Maxwell's equations]]. In particular, it uses an electric field integral equation (EFIE), magnetic field integral equation (MFIE), or combined field integral equation (CFIE) for modeling PEC regions. For modeling dielectric regions of the physical structure , the so-called Poggio-Miller-Chang-Harrington-Wu-Tsai (PMCHWT) technique is utilized, in which equivalent electric and magnetic currents are assumed on the surface of the dielectric object to formulate the interior and exterior boundary value problems.Solvers ===
The method of moments uses an open-boundary formulation of Maxwell's equations which does not require a discretization of the entire computational domain, but only the finite-sized objects within it. As a result, [[Image:Info_iconEM.png|40pxLibera]] Click here to learn more about the theory of ''s typical mesh size is typically much smaller that that of a finite-domain technique like [[EM.Tempo]]'s FDTD. In addition, [[3D Method EM.Libera]]'s triangular surface mesh provides a more accurate representation of Momentsyour physical structure than [[EM.Tempo]]'''s staircase brick volume mesh, which often requires a fairly high mesh density to capture the geometric details of curved surfaces. These can be serious advantages when deciding on which solver to use for analyzing highly resonant structures. In that respect, [[EM.Libera]] and [[EM.Picasso]] are similar as both utilize MoM solvers and surface mesh generators. Whereas [[EM.Picasso]] is optimized for modeling multilayer planar structures, [[EM.Libera]] can handle arbitrarily complex 3D structures with high geometrical fidelity.
== Constructing [[EM.Libera]]'s Wire MoM solver can be used to simulate thin wires and wireframe structures very fast and accurately. This is particularly useful for modeling wire-type antennas and arrays. One of the Physical Structure ==current limitations of [[EM.Libera]], however, is its inability to mix wire structures with dielectric objects. If your physical structure contains one ore more wire objects, then all the PEC surface and solid CAD objects of the project workspace are reduced to wireframe models in order to perform a Wire MoM simulation. Also note that Surface MoM simulation of composite structures containing conjoined metal and dielectric parts may take long computation times due to the slow convergence of the iterative linear solver for such types of numerical problems. Since [[EM.Libera]] uses a surface integral equation formulation of dielectric objects, it can only handle homogeneous dielectric regions. For structures that involve multiple interconnected dielectric and metal regions such as planar circuits, it is highly recommended that you use either [[EM.Tempo]] or [[EM.Picasso]] instead.
<table><tr><td>[[Image:wire_pic1Hemi current.png|thumb|350px500px|EM.Libera's Navigation TreeThe computed surface current distribution on a metallic dome structure excited by a plane wave source.]] In EM.Libera, you can create three different types of objects:</td></tr></table>
* '''[[Defining_Materials_in_EM== EM.Cube#Perfect_Electric_Conductors_.26_Metal_Traces | Perfect Electric Conductor (PEC) Objects]]'''* '''[[Defining_Materials_in_EM.Cube#Thin_Wires | Thin Wires]]'''* '''[[Defining_Materials_in_EM.Cube#Defining_Dielectric_Materials | Dielectric Objects]]'''Libera Features at a Glance ==
EM.Libera features two different simulation engines: Wire MoM and Surface MoM. Both simulation engines can handle metallic structures. The Wire MoM engine models metallic objects as perfect electric conductor (PEC) wireframe structures, while the Surface MoM engine treats them as PEC surfaces. The PEC objects can be lines, curves, surfaces or solids. All the PEC objects are created under the '''PEC''' node in the '''=== Physical Structure''' section of the Navigation Tree. Objects are grouped together by their color. You can insert different PEC groups with different colors. A new PEC group can be defined by simply right clicking on the '''PEC''' item in the Navigation Tree and selecting '''Insert New PEC...''' from the contextual menu. A dialog for setting up the PEC properties opens up. From this dialog you can change the name of the group or its color. In EM.Libera, PEC objects have an additional property, which is '''Wire Radius''' expressed in project units. This parameter is used in conjunction with Pocklington's integral equation for wire objects only. The line and [[Curve Objects|curve objects]] you draw in the project workspace are not displayed as cylinders with the specified radius.Definition ===
Of EM.Libera's two simulation engines, only the Surface MoM solver can handle dielectric objects. Dielectric objects are created under the '''Dielectric''' node <ul> <li> Metal wires and curves in the '''Physical Structure''' section of the Navigation Tree. They are grouped together by their color free space</li> <li> Metal surfaces and material properties. You can insert different solids in free space</li> <li> Homogeneous dielectric groups with different colors and different permittivity esolid objects in free space<sub/li>r <li> Import STL CAD files as native polymesh structures</subli> <li> Export wireframe structures as STL CAD files</li></ul> and electric conductivity s. Note that a PEC object is the limiting cases of a lossy dielectric material when &sigma; &rarr; &infin;.
{{Note|Under dielectric material groups=== Sources, you cannot draw surface or curve CAD objects.}}Loads &amp; Ports ===
<ul> <li> Gap sources on wires (for Wire MoM) and gap sources on long, narrow, metal strips (for Surface MoM)</li> <li> Gap arrays with amplitude distribution and phase progression</li> <li> Multi-port port definition for gap sources</li> <li> Short dipole sources</li> <li> Import previously generated wire mesh solution as collection of short dipoles</li> <li> RLC lumped elements on wires and narrow strips with series-parallel combinations</li> <li> Plane wave excitation with linear and circular polarizations</li> <li> Multi-Ray excitation capability (ray data imported from [[Image:Info_iconEM.png|40pxTerrano]] Click here to learn more about '''[[Defining_Materials_in_EM.Cube#Defining_a_New_Material_Group | Defining a New Object Group]]'''.or external files)</li> <li> Huygens sources imported from FDTD or other modules with arbitrary rotation and array configuration</li></ul>
Once a new object group node has been created on the navigation tree, it becomes the "Active" group of the project workspace, which is always listed in bold letters. When you draw a new CAD object such as a Box or a Sphere, it is inserted under the currently active group. There is only one object group that is active at any time. Any object type can be made active by right clicking on its name in the navigation tree and selecting the '''Activate''' item of the contextual menu. It is recommended that you first create object groups, and then draw new CAD objects under the active object group. However, if you start a new [[EM.Libera]] project from scratch, and start drawing a new object without having previously defined any object groups, a new default PEC object group is created and added to the navigation tree to hold your new CAD object.=== Mesh Generation ===
[[Image:Info_icon.png|40px]] Click here <ul> <li> Polygonized mesh of curves and wireframe mesh of surfaces and solids for Wire MoM simulation</li> <li> User defined wire radius</li> <li> Connection of wires/lines to learn more about '''[[Defining_Materials_in_EM.Cube#Moving_Objects_among_Material_Groups | Moving Objects among Material Groups]]'''.wireframe surfaces and solids using polymesh objects</li> <li> Surface triangular mesh of surfaces and solids for Surface MoM simulation</li> <li> Local mesh editing of polymesh objects</li></ul>
{{Note|In [[EM.Cube]], you can import external CAD models (such as STEP, IGES, STL models, etc.) only to [[CubeCAD]]. From [[CubeCAD]], you can then move the imported objects to EM.Libera.}}=== 3D Wire MoM &amp; Surface MoM Simulations ===
[[Image:Info_icon.png|40px]] Click here for a general discussion <ul> <li> 3D Pocklington integral equation formulation of '''[[Defining Materials in EM.Cube]]'''.wire structures</li> <li> 3D electric field integral equation (EFIE), magnetic field integral equation (MFIE) and combined field integral equation (CFIE) formulation of PEC structures</li> <li> PMCHWT formulation of homogeneous dielectric objects</li> <li> AIM acceleration of Surface MoM solver</li> <li> Uniform and fast adaptive frequency sweep</li> <li> Parametric sweep with variable object properties or source parameters</li> <li> Multi-variable and multi-goal optimization of scene</li> <li> Fully parallelized Surface MoM solver using MPI</li> <li> Both Windows and Linux versions of Wire MoM simulation engine available</li></ul>
== 3D Mesh = Data Generation &amp; Visualization ===
=== A Note on <ul> <li> Wireframe and electric and magnetic current distributions</li> <li> Near Field intensity plots (vectorial - amplitude &amp; phase)</li> <li> Huygens surface data generation for use in MoM3D or other [[EM.Libera's Mesh Types ===Cube]] modules</li> <li> Far field radiation patterns: 3D pattern visualization and 2D Cartesian and polar graphs</li> <li> Far field characteristics such as directivity, beam width, axial ratio, side lobe levels and null parameters, etc.</li> <li> Radiation pattern of an arbitrary array configuraition of the wire structure</li> <li> Bi-static and mono-static radar cross section: 3D visualization and 2D graphs</li> <li> Port characteristics: S/Y/Z parameters, VSWR and Smith chart</li> <li> Touchstone-style S parameter text files for direct export to RF.Spice or its Device Editor</li> <li> Custom output parameters defined as mathematical expressions of standard outputs</li></ul>
== Building the Physical Structure in EM.Libera features two simulation engines, Wire MoM and Surface MoM, which require different mesh types. The Wire MoM simulator handles only wire objects and wireframe structures. These objects are discretized as elementary linear elements (filaments). A wire is simply subdivided into smaller segments according to a mesh density criterion. Curved wires are first converted to multi-segment polylines and then subdivided further if necessary. At the connection points between two or more wires, junction basis functions are generated to ensure current continuity. ==
On All the other hands, EM.Libera's Surface MoM solver requires a triangular surface mesh of surface objects in your project workspace are organized into object groups based on their material composition and [[Solid Objects|solid objects]].The mesh generating algorithm tries to generate regularized triangular cells with almost equal surface areas across the entire structure. You can control the cell size using geometry type in the "Mesh DensityPhysical Structure" parameter. By default, the mesh density is expressed in terms section of the free-space wavelengthnavigation tree. The default mesh density is 10 cells per wavelengthIn [[EM. For meshing surfaces, a mesh density of 7 cells per wavelength roughly translates to 100 triangular cells per squared wavelength. AlternativelyLibera]], you can base the definition create three different types of the mesh density on "Cell Edge Length" expressed in project units.objects:
{| class="wikitable"|-! scope="col"| Icon! scope="col"| Material Type! scope="col"| Applications! scope="col"| Geometric Object Types Allowed! scope="col"| Restrictions|-| style="width:30px;" | [[ImageFile:Info_iconpec_group_icon.png|40px]] Click here to learn more about ''| style="width:150px;" | [[Glossary of EM.Cube's Materials, Sources, Devices & Other Physical Object Types#Perfect Electric Conductor (PEC) |Perfect Electric Conductor (PEC)]]| style="width:300px;" | Modeling perfect metals| style="width:250px;" | Solid, surface and curve objects| None|-| style="width:30px;" | [[Mesh_Generation_Schemes_in_EMFile:thin_group_icon.png]]| style="width:150px;" | [[Glossary of EM.Cube's Materials, Sources, Devices & Other Physical Object Types#Working_with_Mesh_Generator Thin Wire | Working with Mesh Generator Thin Wire]]| style="width:300px;" | Modeling wire radiators| style="width:250px;" | Curve objects| Wire MoM solver only |-| style="width:30px;" | [[File:diel_group_icon.png]]| style="width:150px;" | [[Glossary of EM.Cube'''s Materials, Sources, Devices & Other Physical Object Types#Dielectric Material |Dielectric Material]]| style="width:300px;" | Modeling any homogeneous material| style="width:250px;" | Solid objects| Surface MoM solver only |-| style="width:30px;" | [[File:Virt_group_icon.png]]| style="width:150px;" | [[Glossary of EM.Cube's Materials, Sources, Devices & Other Physical Object Types#Virtual_Object_Group | Virtual Object]]| style="width:300px;" | Used for representing non-physical items | style="width:250px;" | All types of objects| None |}
[[Image:Info_icon.png|40px]] Click here on each category to learn more details about it in the [[Glossary of EM.LiberaCube's '''[[Mesh_Generation_Schemes_in_EM.Cube#The_Triangular_Surface_Mesh_Generator | Triangular Surface Mesh Generator Materials, Sources, Devices & Other Physical Object Types]]'''.
Both of [[Image:Info_icon.png|40px]] Click here to learn more about EM.Libera]]'s two simulation engines, Wire MoM and Surface MoM, can handle metallic structures. You define wires under '''[[Mesh_Generation_Schemes_in_EM.Cube#The_Linear_Wireframe_Mesh_Generator | Linear Wireframe Mesh Generator ]]Thin Wire'''. === Mesh of Connected groups and surface and volumetric metal objects under '''PEC Objects ===  [[Image:MOM3.png|thumb|300px|EM.Libera's Mesh Hierarchy dialog''.]] All the objects belonging to the same PEC or dielectric group are merged together using the Boolean union operation before meshing. If your structure contains attachedIn other words, interconnected or overlapping [[Solid Objects|solid objects]]you can draw lines, their internal common faces are removed polylines and only the surface of the external faces is meshed. Similarlyother curve objects as thin wires, all the [[Surface Objects|surface objects]] belonging to the same PEC group are merged together and their internal edges are removed before meshingwhich have a radius parameters expressed in project units. Note that a All types of solid and a surface object belonging to the same PEC group might not always CAD objects can be merged properly.  When two objects belonging to two different material groups overlap or intersect each other, EM.Libera has to determine how to designate the overlap or common volume or surface. As an example, the figure below shows a dielectric cylinder sitting on top of drawn in a PEC plate. The two object share a circular area at the base of the cylinder. Are the cells on this circle metallic or do they belong to the dielectric material group? Note that the cells of the junction are displayed in a different color then those of either groups. To address problems of this kind, EM.Libera does provide a "Material Hierarchy" table, which you Only solid CAD objects can modify. To access this table, select be drawn under '''Menu > Simulate < discretization < Mesh Hierarchy...Dielectric Objects'''. The PEC groups by default have the highest priority and reside at the top of the table. You can select an group from the table and change its hierarch using the {{key|Move Up}} or {{key|Move Down}} buttons of the dialog. You can also change the color of junction cells that belong to each group.
<table>
<tr>
<td> [[Image:MOM1wire_pic1.png|thumb|360px350px|A dielectric cylinder attached to a PEC plateEM.Libera's Navigation Tree.]] </td> <td> [[Image:MOM2.png|thumb|360px|The surface mesh of the dielectric cylinder and PEC plate.]] </td>
</tr>
</table>
=== Using Polymesh Objects Once a new object group node has been created on the navigation tree, it becomes the "Active" group of the project workspace, which is always listed in bold letters. When you draw a new CAD object such as a Box or a Sphere, it is inserted under the currently active group. There is only one object group that is active at any time. Any object type can be made active by right clicking on its name in the navigation tree and selecting the '''Activate''' item of the contextual menu. It is recommended that you first create object groups, and then draw new CAD objects under the active object group. However, if you start a new [[EM.Libera]] project from scratch, and start drawing a new object without having previously defined any object groups, a new default PEC object group is created and added to Connect Wires the navigation tree to Wireframe Surfaces === hold your new CAD object.
If the project workspace contains a line object, the wireframe mesh generator is used to discretize your physical structure. From the point of view of this mesh generator, all PEC [[Surface ObjectsImage:Info_icon.png|surface objects30px]] and PEC Click here to learn more about '''[[Solid Building Geometrical Constructions in CubeCAD#Transferring ObjectsAmong Different Groups or Modules |solid objects]] are treated as wireframe objects. If you want to model a wire radiator connected to a metal surface, you have to make sure that the resulting wireframe mesh of the surface has a node exactly at the location where you want to connect your wire. This is not guaranteed automatically. However, you can use [[EM.CubeMoving Objects among Different Groups]]'s polymesh objects to accomplish this objective''.
{{Note|In [[EM.Cube]], polymesh objects are regards you can import external CAD models (such as already-meshed STEP, IGES, STL models, etc.) only to [[Building_Geometrical_Constructions_in_CubeCAD | CubeCAD]]. From [[Building_Geometrical_Constructions_in_CubeCAD | CubeCAD]], you can then move the imported objects and are not re-meshed again during a simulationto [[EM.Libera]].}}
You can convert any surface object or solid object to a polymesh using [[CubeCAD]]== EM.Libera's '''Polymesh Tool'''. Excitation Sources ==
[[Image:Info_iconYour 3D physical structure must be excited by some sort of signal source that induces electric linear currents on thin wires, electric surface currents on metal surface and both electric magnetic surface currents on the surface of dielectric objects.png|40px]] Click here to learn more about '''[[Discretizing_Objects#Converting_Objects_to_Polymesh | Converting Object to Polymesh]]''' The excitation source you choose depends on the observables you seek in your project. [[EM.CubeLibera]].provides the following source types for exciting your physical structure:
Once an object is converted to {| class="wikitable"|-! scope="col"| Icon! scope="col"| Source Type! scope="col"| Applications! scope="col"| Restrictions|-| style="width:30px;" | [[File:gap_src_icon.png]]| [[Glossary of EM.Cube's Materials, Sources, Devices & Other Physical Object Types#Strip Gap Circuit Source |Strip Gap Circuit Source]]| style="width:300px;" | General-purpose point voltage source | style="width:300px;" | Associated with a polymeshPEC rectangle strip, you can place your works only with SMOM solver|-| style="width:30px;" | [[File:gap_src_icon.png]]| [[Glossary of EM.Cube's Materials, Sources, Devices & Other Physical Object Types#Wire Gap Circuit Source |Wire Gap Circuit Source]]| style="width:300px;" | General-purpose point voltage source| style="width:300px;" | Associated with an PEC or thin wire at any line or polyline, works only with WMOM solver|-| style="width:30px;" | [[File:hertz_src_icon.png]]| [[Glossary of its nodesEM. In that caseCube's Materials, Sources, Devices & Other Physical Object Types#Hertzian Short Dipole Source |Hertzian Short Dipole Source]]| style="width:300px;" | Almost omni-directional physical radiator| style="width:300px;" | None, stand-alone source|-| style="width:30px;" | [[File:plane_wave_icon.png]]| [[Glossary of EM.LiberaCube's Wire MoM engine will sense the coincident nodes between line segments and will create a junction basis function to ensure current continuityMaterials, Sources, Devices & Other Physical Object Types#Plane Wave |Plane Wave Source]]| style="width:300px;" | Used for modeling scattering | style="width:300px;" | None, stand-alone source|-| style="width:30px;" | [[File:huyg_src_icon. png]]| [[Glossary of EM.Cube's Materials, Sources, Devices & Other Physical Object Types#Huygens Source |Huygens Source]]| style="width:300px;" | Used for modeling equivalent sources imported from other [[EM.Cube]] modules | style="width:300px;" | Imported from a Huygens surface data file|}
<table><tr><td> Click on each category to learn more details about it in the [[Image:MOM4.png|thumb|360px|Geometry Glossary of a monopole wire connected to a PEC plateEM.Cube's Materials, Sources, Devices & Other Physical Object Types]] </td><td> [[Image:MOM5.png|thumb|360px|Placing the wire on the polymesh version of the PEC plate.]] </td></tr></table>
== Excitation Sources ==For antennas and planar circuits, where you typically define one or more ports, you usually use lumped sources. [[EM.Libera]] provides two types of lumped sources: strip gap and wire gap. A Gap is an infinitesimally narrow discontinuity that is placed on the path of the current and is used to define an ideal voltage source. Wire gap sources must be placed on '''Thin Wire Line''' and '''Thin Polyline''' objects to provide excitation for the Wire MoM solver. The gap splits the wire into two lines with a an infinitesimally small spacing between them, across which the ideal voltage source is connected. Strip gap sources must be placed on long, narrow, '''PEC Rectangle Strip''' objects to provide excitation for the Surface MoM solver. The gap splits the strip into two strips with a an infinitesimally small spacing between them, across which the ideal voltage source is connected. Only narrow rectangle strip object that have a single mesh cell across their width can be used to host a gap source.
=== Gaps Sources on PEC Wires and Strips === {{Note|If you want to excite a curved wire antenna such as a circular loop or helix with a wire gap source, first you have to convert the curve object into a polyline using [[CubeCAD]]'s Polygonize Tool.}}
A Gap is an infinitesimally narrow discontinuity that is placed on the path short dipole provides another simple way of the current. In exciting a 3D structure in [[EM.Libera, a gap is used to define an excitation ]]. A short dipole source in the form of acts like an infinitesimally small ideal voltage current source. Gap sources You can be placed on '''Thin Wire Line''' and '''Polyline''' objects to provide excitation for the Wire MoM solver. The gap splits the wire into two lines with a also use an infinitesimally small spacing between them, across which the ideal voltage source is connected.  {{Note|If you want incident plane wave to excite a curved wire antenna such as a circular loop or helix with a gap source, first you have to convert the curve object into a polyline using your physical structure in [[CubeCADEM.Libera]]'s Polygonize Tool.}}  Gap sources can also be placed on longIn particular, narrow, PEC '''Rectangle Strip''' objects you need a plane wave source to provide excitation for compute the Surface MoM solverradar cross section of a target. The gap splits direction of incidence is defined by the strip into two strips with a an infinitesimally small spacing between them, across which &theta; and &phi; angles of the ideal voltage source is connectedunit propagation vector in the spherical coordinate system. Only narrow rectangle strip object that have a single mesh cell across their width can be used The default values of the incidence angles are &theta; = 180° and &phi; = 0° corresponding to host a gap sourcenormally incident plane wave propagating along the -Z direction with a +X-polarized E-vector. Huygens sources are virtual equivalent sources that capture the radiated electric and magnetic fields from another structure that was previously analyzed in another [[Image:Info_icon.png|40px]] Click here to learn more about '''[[Common_Excitation_Source_Types_in_EMEM.Cube#Lumped_.26_Gap_Sources | Defining Gap Sources]]'''computational module.
[[Image:Info_icon.png|40px]] Click here to learn more about '''[[Common_Excitation_Source_Types_in_EM.CubePreparing_Physical_Structures_for_Electromagnetic_Simulation#Defining_FiniteModeling_Finite-Sized_Source_Arrays | Using Source Arrays in Antenna Arrays]]'''.
<table>
<tr>
<td> [[Image:MOM6Awire_pic14_tn.png|thumb|360pxleft|EM.Libera's Wire Gap Source dialog.]] </td><td> [[Image:MOM6B.png640px|thumb|360px|EM.Libera's Strip Gap Source dialogA wire gap source placed on one side of a polyline representing a polygonized circular loop.]] </td>
</tr>
<tr>
<table>
<tr>
<td> [[Image:wire_pic14_tnpo_phys16_tn.png|thumb|500pxleft|A gap source placed on one side of 420px|Illuminating a polyline representing a polygonized circular loopmetallic sphere with an obliquely incident plane wave source.]] </td>
</tr>
<tr>
</table>
=== Modeling Lumped Circuits ===
In [[EM.Libera]], you can define simple lumped elements in a similar manner as gap sources. In fact, a lumped element is equivalent to an infinitesimally narrow gap that is placed in the path of the current, across which Ohm's law is enforced as a boundary condition. You can define passive RLC lumped elements or active lumped elements containing a voltage gap source. The latter case can be used to excite a wire structure or metallic strip and model a non-ideal voltage source with an internal resistance. [[EM.Libera]]'s lumped circuit represent a series-parallel combination of resistor, inductor and capacitor elements. This is shown in the figure below:
[[FileImage:image106Info_icon.png|40px]]Click here to learn more about '''[[Preparing_Physical_Structures_for_Electromagnetic_Simulation#Modeling_Lumped_Elements_in_the_MoM_Solvers | Defining Lumped Elements]]'''.
[[FileImage:wire_pic16_tnInfo_icon.png|thumb|200px|Active lumped element with 40px]] Click here for a voltage gap in series with an RC circuit placed on a dipole wiregeneral discussion of '''[[Preparing_Physical_Structures_for_Electromagnetic_Simulation#A_Review_of_Linear_.26_Nonlinear_Passive_.26_Active_Devices | Linear Passive Devices]]'''.
[[Image:Info_icon.png|40px]] Click here to learn more about '''[[Modeling_Lumped_Elements,_Circuits_%26_Devices_in_EM.Cube#Defining_Lumped_Elements_in_EM.Picasso_.26_EM.Libera | === Defining Lumped Elements]]'''.Ports ===
Ports are used to order and index gap sources for S parameter calculation. They are defined in the '''Observables''' section of the navigation tree. By default, as many ports as the total number of sources are created. You can define any number of ports equal to or less than the total number of sources. All port impedances are 50&Omega; by default. [[Image:Info_icon.png|40px]] Click here for a general discussion of to learn more about the '''[[Modeling_Lumped_Elements,_Circuits_%26_Devices_in_EMGlossary_of_EM.Cube%27s_Simulation_Observables_%26_Graph_Types#Port_Definition_Observable | Linear Passive & Nonlinear Active DevicesPort Definition Observable]]'''.
<table>
<tr>
<td> [[Image:MOM6AMOM7A.png|thumb|480px360px|EM.Libera's Wire Lumped Element dialogTwo metallic strips hosting a gap source and a lumped element.]] </td><td> [[Image:MOM6CMOM7B.png|thumb|480px360px|EM.Libera's Strip Lumped Element dialogThe surface mesh of the two strips with a gap source and a lumped element.]] </td>
</tr>
</table>
[[Image:port-definition.png|thumb|450px|== EM.Libera's Port Definition dialog.]]Simulation Data & Observables ==
At the end of a 3D MoM simulation, [[EM.Libera]] generates a number of output data files that contain all the computed simulation data. The primary solution of the Wire MoM simulation engine consists of the linear electric currents on the wires and wireframe structures. The primary solution of the Surface MoM simulation engine consists of the electric and magnetic surface currents on the PEC and dielectric objects. [[EM.Libera]] currently offers the following types of observables: {| class="wikitable"|-! scope="col"| Icon! scope= Defining Ports "col"| Simulation Data Type! scope="col"| Observable Type! scope="col"| Applications! scope="col"| Restrictions|-| style="width:30px;" | [[File:currdistr_icon.png]]| style="width:150px;" | Current Distribution Maps| style="width:150px;" | [[Glossary of EM.Cube's Simulation Observables & Graph Types#Current Distribution |Current Distribution]]| style="width:300px;" | Computing electric surface current distribution on metal and dielectric objects, magnetic surface current distribution on dielectric objects and linear current distribution on wires| style="width:250px;" | None|-| style="width:30px;" | [[File:fieldsensor_icon.png]]| style="width:150px;" | Near-Field Distribution Maps| style="width:150px;" | [[Glossary of EM.Cube's Simulation Observables & Graph Types#Near-Field Sensor |Near-Field Sensor]] | style="width:300px;" | Computing electric and magnetic field components on a specified plane in the frequency domain| style="width:250px;" | None|-| style="width:30px;" | [[File:farfield_icon.png]]| style="width:150px;" | Far-Field Radiation Characteristics| style="width:150px;" | [[Glossary of EM.Cube's Simulation Observables & Graph Types#Far-Field Radiation Pattern |Far-Field Radiation Pattern]]| style="width:300px;" | Computing the radiation pattern and additional radiation characteristics such as directivity, axial ratio, side lobe levels, etc. | style="width:250px;" | None|-| style="width:30px;" | [[File:rcs_icon.png]]| style="width:150px;" | Far-Field Scattering Characteristics| style="width:150px;" | [[Glossary of EM.Cube's Simulation Observables & Graph Types#Radar Cross Section (RCS) |Radar Cross Section (RCS)]] | style="width:300px;" | Computing the bistatic and monostatic RCS of a target| style="width:250px;" | Requires a plane wave source|-| style="width:30px;" | [[File:port_icon.png]]| style="width:150px;" | Port Characteristics| style="width:150px;" | [[Glossary of EM.Cube's Simulation Observables & Graph Types#Port Definition |Port Definition]] | style="width:300px;" | Computing the S/Y/Z parameters and voltage standing wave ratio (VSWR)| style="width:250px;" | Requires one of these source types: lumped, distributed, microstrip, CPW, coaxial or waveguide port|-| style="width:30px;" | [[File:huyg_surf_icon.png]]| style="width:150px;" | Equivalent electric and magnetic surface current data| style="width:150px;" | [[Glossary of EM.Cube's Simulation Observables & Graph Types#Huygens Surface |Huygens Surface]]| style="width:300px;" | Collecting tangential field data on a box to be used later as a Huygens source in other [[EM.Cube]] modules| style= "width:250px;" | None|}
Ports are used Click on each category to order and index gap sources for S parameter calculation. They are defined learn more details about it in the '''Observables''' section [[Glossary of the Navigation TreeEM. Right click on the Cube'''Port Definition''' item of the Navigation Tree and select '''Insert New Port Definition...''' from the contextual menu. The Port Definition Dialog opens up, showing the total number of existing sources in the workspace. By default, as many ports as the total number of sources are created. You can define any number of ports equal to or less than the total number of sources. This includes both gap sources and active lumped elements (which contain gap sources). In the '''Port Association''' section of this dialog, you can go over each one of the sources and associate them with a desired port. Note that you can associate more than one source with same given port. In this case, you will have a coupled port. All the coupled sources are listed as associated with a single port. However, you cannot associate the same source with more than one port. Finally, you can assign '''Port Impedance''' in Ohms. By default, all port impedances are 50s Simulation Observables &Omega;. The table titled '''Port Configuration''' lists all the ports and their associated sources and port impedancesGraph Types]].
Depending on the types of objects present in your project workspace, [[Image:MOM7.png|thumb|360px|EM.Libera's short dipole source dialog.]]performs either a Surface MoM simulation or a Wire MoM simulation. In the former case, the electric and magnetic surface current distributions on the surface of PEC and dielectric objects can be visualized. In the latter case, the linear electric currents on all the wires and wireframe objects can be plotted.
=== Hertzian Dipole Sources === <table><tr><td> [[Image:wire_pic26_tn.png|thumb|360px|A monopole antenna connected above a PEC plate.]] </td><td> [[Image:wire_pic27_tn.png|thumb|360px|Current distribution plot of the monopole antenna connected above the PEC plate.]] </td></tr></table>
A short dipole provides a simple way of exciting a structure {{Note|Keep in mind that since [[EM.Libera. A short dipole source acts like an infinitesimally small ideal current ]] uses MoM solvers, the calculated field value at the sourcepoint is infinite. To define As a short dipole sourceresult, follow these steps:the field sensors must be placed at adequate distances (at least one or few wavelengths) away from the scatterers to produce acceptable results.}}
<table><tr><td> [[Image:Info_iconwire_pic32_tn.png|40pxthumb|360px|Electric field plot of the circular loop antenna.]] Click here to learn more about '''</td><td> [[Common_Excitation_Source_Types_in_EMImage:wire_pic33_tn.Cube#Hertzian_Dipole_Sources png| Hertzian Dipole Sourcesthumb|360px|Magnetic field plot of the circular loop antenna.]]'''.</td></tr></table>
You need to define a far field observable if you want to plot radiation patterns of your physical structure in [[Image:MOM8.png|thumb|360px|EM.Libera's Plane Wave dialog.]]. After a 3D MoM simulation is finished, three radiation patterns plots are added to the far field entry in the Navigation Tree. These are the far field component in Theta direction, the far field component in Phi direction and the total far field.
=== Plane Wave Sources === [[Image:Info_icon.png|30px]] Click here to learn more about the theory of '''[[Defining_Project_Observables_%26_Visualizing_Output_Data#Using_Array_Factor_to_Model_Antenna_Arrays | Using Array Factors to Model Antenna Arrays ]]'''.
Your physical structure in EM.Libera can be excited by an incident plane wave. In particular, you need a plane wave source to compute the radar cross section of a target<table><tr><td> [[Image:wire_pic38_tn. png|thumb|230px|The direction 3D radiation pattern of incidence is defined by the &theta; and &phi; angles of the unit propagation vector in the spherical coordinate systemcircular loop antenna: Theta component.]] </td><td> [[Image:wire_pic39_tn. png|thumb|230px|The default values 3D radiation pattern of the incidence angles are &theta; = 180° and &phi; = 0° corresponding to a normally incident plane wave propagating along the -Z direction with a +X-polarized E-vectorcircular loop antenna: Phi component. ]] </td><td> [[EMImage:wire_pic40_tn.Illumina]] provides png|thumb|230px|The total radiation pattern of the following polarization options: TMz, TEz, Custom Linear, LCPz and RCPzcircular loop antenna.]] </td></tr></table>
When the physical structure is excited by a plane wave source, the calculated far field data indeed represent the scattered fields. [[Image:Info_iconEM.png|40pxLibera]] Click here to learn more about '''calculates the radar cross section (RCS) of a target. Three RCS quantities are computed: the &theta; and &phi; components of the radar cross section as well as the total radar cross section, which are dented by &sigma;<sub>&theta;</sub>, &sigma;<sub>&phi;</sub>, and &sigma;<sub>tot</sub>. In addition, [[Common_Excitation_Source_Types_in_EMEM.Cube#Plane_Wave_Sources | Plane Wave SourcesLibera]]calculates two types of RCS for each structure: '''Bi-Static RCS''' and '''Mono-Static RCS'''. In bi-static RCS, the structure is illuminated by a plane wave at incidence angles &theta;<sub>0</sub> and &phi;<sub>0</sub>, and the RCS is measured and plotted at all &theta; and &phi; angles. In mono-static RCS, the structure is illuminated by a plane wave at incidence angles &theta;<sub>0</sub> and &phi;<sub>0</sub>, and the RCS is measured and plotted at the echo angles 180°-&theta;<sub>0</sub>; and &phi;<sub>0</sub>. It is clear that in the case of mono-static RCS, the PO simulation engine runs an internal angular sweep, whereby the values of the plane wave incidence angles &theta; and &phi; are varied over the entire intervals [0°, 180°] and [0°, 360°], respectively, and the backscatter RCS is recorded.
{{Note|In the spherical coordinate systemTo calculate RCS, normal plane wave incidence from first you have to define an RCS observable instead of a radiation pattern. At the top end of a PO simulation, the domain downward corresponds to thee RCS plots &sigma;<sub>&theta; of 180</sub>, &degsigma;<sub>&phi;</sub>, and &sigma;<sub>tot</sub> are added under the far field section of the navigation tree. }}
[[File:po_phys16_tn{{Note| The 3D RCS plot is always displayed at the origin of the spherical coordinate system, (0,0,0), with respect to which the far radiation zone is defined.png]]Oftentimes, this might not be the scattering center of your physical structure.}}
Figure: Illuminating a metallic sphere with {{Note|Computing the 3D mono-static RCS may take an obliquely incident plane wave sourceenormous amount of computation time.}}
== Running 3D MoM Simulations ==<table><tr><td> [[Image:wire_pic51_tn.png|thumb|230px|The RCS of a metal plate structure: &sigma;<sub>&theta;</sub>.]] </td><td> [[Image:wire_pic52_tn.png|thumb|230px|The RCS of a metal plate structure: &sigma;<sub>&phi;</sub>.]] </td><td> [[Image:wire_pic53_tn.png|thumb|230px|The total RCS of a metal plate structure: &sigma;<sub>tot</sub>.]] </td></tr></table>
Once you have set up your structure == 3D Mesh Generation in EM.Libera, have defined sources and observables and have examined the quality of the structure's mesh, you are ready to run a MoM simulation. EM.Libera offers four types of simulation:==
* Single-Frequency Analysis* Frequency Sweep* Parametric Sweep* [[Optimization]]* HDMR Sweep=== A Note on EM.Libera's Mesh Types ===
[[Image:Info_iconEM.png|40pxLibera]] Click here to learn more about '''[[Parametric_Modelingfeatures two simulation engines,_Sweep_%26_Optimization#Running_Parametric_Sweep_Simulations_in_EMWire MoM and Surface MoM, which require different mesh types.Cube | Running Parametric Sweep Simulations in EMThe Wire MoM simulator handles only wire objects and wireframe structures.Cube]]'''These objects are discretized as elementary linear elements (filaments). A wire is simply subdivided into smaller segments according to a mesh density criterion. Curved wires are first converted to multi-segment polylines and then subdivided further if necessary. At the connection points between two or more wires, junction basis functions are generated to ensure current continuity.
On the other hands, [[Image:Info_iconEM.png|40pxLibera]] Click here to learn more about '''[[Parametric_Modelings Surface MoM solver requires a triangular surface mesh of surface and solid objects.The mesh generating algorithm tries to generate regularized triangular cells with almost equal surface areas across the entire structure. You can control the cell size using the "Mesh Density" parameter. By default,_Sweep_%26_Optimization#Optimization | Running Optimization Simulations the mesh density is expressed in EMterms of the free-space wavelength.Cube]]'''The default mesh density is 10 cells per wavelength. For meshing surfaces, a mesh density of 7 cells per wavelength roughly translates to 100 triangular cells per squared wavelength. Alternatively, you can base the definition of the mesh density on "Cell Edge Length" expressed in project units.
[[Image:Info_icon.png|40px30px]] Click here to learn more about '''[[Running_HDMR_Simulations_in_EMPreparing_Physical_Structures_for_Electromagnetic_Simulation#Working_with_EM.Cube .27s_Mesh_Generators | Running HDMR Simulations in EM.CubeWorking with Mesh Generator]]'''.
=== Running a Single-Frequency MoM Analysis ===  In a single-frequency analysis, the structure of your project workspace is meshed at the center frequency of the project and analyzed by one of EM.Libera's two MoM solvers. If your project contains at lease one line or curve object, the Wire MoM solver is automatically selected. Otherwise, the Surface MoM solver will always be used to simulate your problem. In either case, the engine type is set automatically.  To open the Run Simulation Dialog, click the '''Run''' [[FileImage:run_iconInfo_icon.png|30px]] button of the Click here to learn more about '''Simulate Toolbar''' or select '''Menu > Simulate > Run..[[Preparing_Physical_Structures_for_Electromagnetic_Simulation#The_Triangular_Surface_Mesh_Generator | EM.Libera''' or use the keyboard shortcut {{key|Ctrl+R}}. By default, the s Triangular Surface MoM solver is selected as your simulation engine. To start the simulation, click the {{key|Run}} button of this dialog. Once the 3D MoM simulation starts, a new dialog called Mesh Generator ]]'''Output Window''' opens up that reports the various stages of MoM simulation, displays the running time and shows the percentage of completion for certain tasks during the MoM simulation process. A prompt announces the completion of the MoM simulation.
<table>
<tr>
<td> [[Image:MOM9CMesh5.png|thumb|450px400px|EM.Libera's Simulation Run Mesh Settings dialog showing Wire MoM engine as the solver.]] </td><td> [[Image:MOM9A.png|thumb|450px|EM.Libera's Simulation Run dialog showing Surface MoM engine as parameters of the solverlinear wireframe mesh generator.]] </td>
</tr>
</table>
=== Setting MoM Numerical Parameters The Linear Wireframe Mesh Generator ===
MoM simulations involve a number of numerical You can analyze metallic wire structures very accurately with utmost computational efficiency using [[parametersEM.Libera]] that normally take default values unless you change them's Wire MoM simulator. You can access these When you structure contains at least one PEC line, polyline or any curve CAD object, [[parametersEM.Libera]] will automatically invoke its linear wireframe mesh generator. This mesh generator subdivides straight lines and change their values by clicking on the '''Settings''' button next linear segments of polyline objects into or linear elements according to the &quot;Select Engine&quot; dropdown list in specified mesh density. It also polygonizes rounded [[Curve Objects|curve objects]] into polylines with side lengths that are determined by the '''Run Dialog'''specified mesh density. Depending on which MoM solver has been chosen Note that polygonizing operation is temporary and solely for solving your problemhe purpose of mesh generation. As for surface and solid CAD objects, the corresponding Engine Settings dialog opens upa wireframe mesh of these objects is created which consists of a large number of interconnected linear (wire) elements.
First we discuss the Wire MoM Engine Settings dialog. In the '''Solver''' section of this dialog, you can choose the type of '''Linear Solver'''. The current options are '''LU''' and '''Bi-Conjugate Gradient (BiCG)'''. The LU solver is a direct solver and is the default option of the Wire MoM solver. The BiCG solver is iterative. If BiCG is selected, you have to set a '''Tolerance''' for its convergence. You can also change the maximum number of BiCG iterations by setting a new value for '''Max. No. of Solver Iterations / System Size'''.  The Surface MoM Engine Settings dialog is bit more extensive and provides more options. In the "Integral Equation" section of the dialog, you can choose among the three PEC formulations: EFIE, MFIE and CFIE. The EFIE formulation is the default option. In the case of the CFIE formulation, you can set a value for the "Alpha" parameter, which determines the weights for the EFIE and MFIE terms of the combine field formulation. The default value of this parameter is &alpha; = 0.4. {{Note| The Surface MoM solver provides two types of linear solver: iterative TFQMR and direct LU. The former is the default option and asks for additional [[parameters]]: '''Error Tolerance''' and '''Max. No. of Solver Iterations'''. When the system size is large, typically above 3000, EM.Libera uses an acceleration technique called the Adaptive Integral Method (AIM) to speed up the linear system inversion. You can set the "AIM Grid Spacing" parameter in wavelength, which has a default value of 0.05&lambda;<sub>0</sub>. EM.Liberawireframe mesh generator discretizes rounded curves temporarily using CubeCAD's Surface MoM solver has been highly parallelized using MPI frameworkPolygonize tool. When you install [[EM.Cube]] on your computer, the installer program It also installs the [[Windows]] MPI package on your computer. If you are discretizes surface and solid CAD objects temporarily using a multicore CPU, taking advantage of the MPI-parallelized solver can speed up your simulations significantly. In the "MPI Settings" of the dialog, you can set the "Number of CPUCubeCAD's Used", which has a default value of 4 cores.  For both Wire MoM and Surface MoM solvers, you can instruct EM.Libera to write the contents of the MoM matrix and excitation and solutions vectors into data files with '''.DAT1''' file extensions. These files can be accessed from the '''Input/Output Files''' tab of the Data Manager. In both case, you have the option to uncheck the check box labeled "Superpose Incident plane Wave Fields". This option applies when your structure is excited by a plane wave source. When checked, the field sensors plot the total electric and magnetic field distributions including the incident field. Otherwise, only the scattered electric and magnetic field distributions are visualizedPolymesh tool. }}
<table>
<tr>
<td> [[Image:MOM9BMesh6.png|thumb|420px200px|EMThe geometry of an expanding helix with a circular ground.Libera's Wire MoM Engine Settings dialog]] </td><td> [[Image:Mesh7.png|thumb|200px|Wireframe mesh of the helix with the default mesh density of 10 cells/&lambda;<sub>0</sub>.]] </td><td> [[Image:MOM9Mesh8.png|thumb|480px200px|EMWireframe mesh of the helix with a mesh density of 25 cells/&lambda;<sub>0</sub>.Libera's Surface MoM Engine Settings dialog]] </td><td> [[Image:Mesh9.png|thumb|200px|Wireframe mesh of the helix with a mesh density of 50 cells/&lambda;<sub>0</sub>.]] </td>
</tr>
</table>
=== Running Frequency Sweep Simulations in EM.Libera Mesh of Connected Objects ===
[[Image:wire_pic24.png|thumb|450px| EM.Libera's Frequency Settings dialog.]]In a frequency sweep simulation, All the operating frequency of objects belonging to the project is varied during same PEC or dielectric group are merged together using the simulation, and the frequency response of Boolean union operation before meshing. If your structure is computed at each frequency sample. EM.Libera offers two types of frequency sweep: uniform and adaptive. In a uniform sweepcontains attached, interconnected or overlapping solid objects, equally spaced frequency samples their internal common faces are generated between the start removed and end frequencies. In only the case surface of an adaptive sweep, you must specify the '''Maximum Number of Iterations''' as well as the '''Error'''. An adaptive sweep simulation starts with a few initial frequency samples, where the Wire MoM engine external faces is initially runmeshed. ThenSimilarly, all the intermediate frequency samples are calculated and inserted in a progressive manner. At each iteration, the frequency samples are used surface objects belonging to calculate a rational approximation of the scattering parameter response over the specified frequency range. The process stops when the specified error criterion is met in a mean-square sense. The adaptive sweep simulation results same PEC group are always continuous merged together and smooththeir internal edges are removed before meshing. This is due to the fact Note that a rational function curve is fitted through the discrete frequency data points. This usually captures frequency response characteristics such as resonances with much fewer calculated data points. However, you have solid and a surface object belonging to make sure that the process converges. Otherwise, you same PEC group might get an entirely wrong, but still perfectly smooth, curve at the end of the simulation. To run a 3D MoM frequency sweep, open the '''Run Simulation Dialog''' and select '''Frequency Sweep''' from the '''Simulation Mode''' dropdown list in this dialog. The '''Settings''' button located next to the simulation mode dropdown list becomes enabled. If you click this button, the Frequency Settings Dialog opens up. First you have to choose the '''Sweep Type''' with two options: '''Uniforms''' or '''Adaptive'''. The default option is a uniform sweep. In the frequency settings dialog, you can set the start and end frequencies as well as the number of frequency samplesnot always be merged properly.
During a frequency sweepWhen two objects belonging to two different material groups overlap or intersect each other, as [[EM.Libera]] has to determine how to designate the project's frequency changesoverlap or common volume or surface. As an example, so does the wavelengthfigure below shows a dielectric cylinder sitting on top of a PEC plate. As The two object share a result, circular area at the mesh base of the structure also changes at each frequency samplecylinder. The frequency settings dialog gives you three choices regarding Are the mesh cells on this circle metallic or do they belong to the dielectric material group? Note that the cells of the project structure during junction are displayed in a frequency sweep:different color then those of either groups. To address problems of this kind, [[EM.Libera]] does provide a "Material Hierarchy" table, which you can modify. To access this table, select '''Menu > Simulate > discretization > Mesh Hierarchy...'''. The PEC groups by default have the highest priority and reside at the top of the table. You can select an group from the table and change its hierarchy using the {{key|Move Up}} or {{key|Move Down}} buttons of the dialog. You can also change the color of junction cells that belong to each group.
* Fix mesh at the highest frequency.<table>* Fix mesh at the center frequency.<tr>* Re-mesh at each frequency<td> [[Image:MOM3.png|thumb|300px|EM.Libera's Mesh Hierarchy dialog.]] </td></tr></table>
== Working with 3D MoM Simulation Data ==<table><tr><td> [[Image:MOM1.png|thumb|360px|A dielectric cylinder attached to a PEC plate.]] </td><td> [[Image:MOM2.png|thumb|360px|The surface mesh of the dielectric cylinder and PEC plate.]] </td></tr></table>
=== EM.Libera's Output Simulation Data Using Polymesh Objects to Connect Wires to Wireframe Surfaces ===
At If the end of project workspace contains a 3D MoM simualtionline object, EM.Libera generates a number of output data files that contain all the computed simulation datawireframe mesh generator is used to discretize your physical structure. The primary solution of From the Wire MoM simulation engine consists point of the linear electric currents on the wires view of this mesh generator, all PEC surface objects and PEC solid objects are treated as wireframe structuresobjects. The primary solution of If you want to model a wire radiator connected to a metal surface, you have to make sure that the Surface MoM simulation engine consists resulting wireframe mesh of the electric and magnetic surface currents on has a node exactly at the PEC and dielectric objectslocation where you want to connect your wire. EMThis is not guaranteed automatically.Libera currently offers the following types of observables: * '''Port Characteristics''': SHowever, Z and Y you can use [[ParametersEM.Cube]] and Voltage Standing Wave Ratio (VSWR)* '''Radiation Characteristics''': Radiation Patterns, Directivity, Total Radiated Power, Axial Ratio, Main Beam Theta and Phi, Radiation Efficiency, Half Power Beam Width (HPBW), Maximum Side Lobe Level (SLL), First Null Level (FNL), Front-s polymesh objects to-Back Ratio (FBR), etcaccomplish this objective.* '''Scattering Characteristics''': Bi-static and Mono-static Radar Cross Section (RCS)* '''Current Distributions''': Electric and magnetic surface current amplitude and phase on all metal and dielectric surfaces and electric current amplitude and phase on all wires * '''Near-Field Distributions''': Electric and magnetic field amplitude and phase on specified planes and their central axes
=== Scattering Parameters {{Note|In [[EM.Cube]], polymesh objects are regarded as already-meshed objects and Port Characteristics === are not re-meshed again during a simulation.}}
If the project structure is excited by gap sources, and one You can convert any surface object or more ports have been defined, the Wire MoM engine calculates the scattering (S) [[parameters]] of the selected ports, all based on the port impedances specified in the projectsolid object to a polymesh using CubeCAD's &quot;Port Definition&quot;. If more than one port has been defined in the project, the scattering matrix of the multiport network is calculated. The S [[parameters]] are written into output ASCII data files. Since these data are complex, they are stored as '''.CPX''' files. Every file begins with a header starting with &quot;#&quot;. The admittance (Y) and impedance (Z) [[parameters]] are also calculated and saved in complex data files with '''.CPX''' file extensions. The voltage standing wave ratio of the structure at the first port is also computed and saved to a real data '''.DATPolymesh Tool''' file.
You can plot the port characteristics from the Navigation Tree. Right click on the '''Port Definition''' item in the '''Observables''' section of the Navigation Tree and select one of the items: '''Plot S [[ParametersImage:Info_icon.png|30px]]Click here to learn more about ''', '''Plot Y [[ParametersGlossary_of_EM.Cube%27s_CAD_Tools#Polymesh_Tool | Converting Object to Polymesh]]''', '''Plot Z in [[ParametersEM.Cube]]''', or '''Plot VSWR'''.
Once an object is converted to a polymesh, you can place your wire at any of its nodes. In that case, [[Image:Info_iconEM.png|40pxLibera]] Click here 's Wire MoM engine will sense the coincident nodes between line segments and will create a junction basis function to learn more about '''[[Data_Visualization_and_Processing#Graphing_Port_Characteristics | Graphing Port Characteristics]]'''ensure current continuity.
<table><tr><td> [[Image:Info_iconMOM4.png|40pxthumb|360px|Geometry of a monopole wire connected to a PEC plate.]] Click here to learn more about '''</td><td> [[Data_Visualization_and_Processing#Rational_Interpolation_of_Scattering_Parameters Image:MOM5.png|thumb|360px| Rational Interpolation Placing the wire on the polymesh version of Scattering Parametersthe PEC plate.]]'''.</td></tr></table>
=== Visualizing Current Distributions =Running 3D MoM Simulations in EM.Libera ==
[[Image:MOM10.png|thumb|350px|=== EM.Libera's Current Distribution dialog.]]Simulation Modes ===
At the end of a MoM3D simulation, Once you have set up your structure in [[EM.Cube|EM.CUBELibera]]'s Wire MoM engine generates a number of output data files that contain all the computed simulation data. The main output data are the current distributions , have defined sources and far fields. You can easily examine the 3-D color-coded intensity plots of current distributions in the Project Workspace. Current distributions are visualized on all the wires observables and have examined the magnitude and phase quality of the electric currents structure's mesh, you are plotted for all the PEC objects. In order ready to view these currents, you must first define current sensors before running the Wire run a 3D MoM simulation. To do this, right click on the '''Current Distributions''' item in the '''Observables''' section of the Navigation Tree and select '''Insert New Observable...'''. The Current Distribution Dialog opens up. Accept the default settings and close the dialog. A new current distribution node is added to the Navigation Tree. Unlike the [[Planar ModuleEM.Libera]], in the [[MoM3D Module]] you can define only one current distribution node in the Navigation Tree, which covers all the PEC object in the Project Workspace. After a Wire MoM offers five simulation is completed, new plots are added under the current distribution node of the Navigation Tree. Separate plots are produced for the magnitude and phase of the linear wire currents. The magnitude maps are plotted on a normalized scale with the minimum and maximum values displayed in the legend box. The phase maps are plotted in radians between -&pi; and &pi;.modes:
{| class="wikitable"|-! scope="col"| Simulation Mode! scope="col"| Usage! scope="col"| Number of Engine Runs! scope="col"| Frequency ! scope="col"| Restrictions|-| style="width:120px;" | [[Image#Running a Single-Frequency MoM Analysis| Single-Frequency Analysis]]| style="width:Info_icon270px;" | Simulates the planar structure "As Is"| style="width:80px;" | Single run| style="width:250px;" | Runs at the center frequency fc| style="width:80px;" | None|-| style="width:120px;" | [[Parametric_Modeling_%26_Simulation_Modes_in_EM.pngCube#Running_Frequency_Sweep_Simulations_in_EM.Cube |40pxFrequency Sweep]] Click here to learn | style="width:270px;" | Varies the operating frequency of the surface MoM or wire MoM solvers | style="width:80px;" | Multiple runs | style="width:250px;" | Runs at a specified set of frequency samples or adds more about '''frequency samples in an adaptive way| style="width:80px;" | None|-| style="width:120px;" | [[Data_Visualization_and_ProcessingParametric_Modeling_%26_Simulation_Modes_in_EM.Cube#Visualizing_3D_Current_Distribution_Maps Running_Parametric_Sweep_Simulations_in_EM.Cube | Visualizing 3D Current Distribution MapsParametric Sweep]]'''| style="width:270px;" | Varies the value(s) of one or more project variables| style="width:80px;" | Multiple runs| style="width:250px;" | Runs at the center frequency fc| style="width:80px;" | None|-| style="width:120px;" | [[Parametric_Modeling_%26_Simulation_Modes_in_EM.Cube#Performing_Optimization_in_EM.Cube | Optimization]]| style="width:270px;" | Optimizes the value(s) of one or more project variables to achieve a design goal | style="width:80px;" | Multiple runs | style="width:250px;" | Runs at the center frequency fc| style="width:80px;" | None|-| style="width:120px;" | [[Parametric_Modeling_%26_Simulation_Modes_in_EM.Cube#Generating_Surrogate_Models | HDMR Sweep]]| style="width:270px;" | Varies the value(s) of one or more project variables to generate a compact model| style="width:80px;" | Multiple runs | style="width:250px;" | Runs at the center frequency fc| style="width:80px;" | None|}
You can set the simulation mode from [[File:wire_pic26_tnEM.png|400pxLibera]] [[File:wire_pic27_tn's "Simulation Run Dialog". A single-frequency analysis is a single-run simulation. All the other simulation modes in the above list are considered multi-run simulations. If you run a simulation without having defined any observables, no data will be generated at the end of the simulation. In multi-run simulation modes, certain parameters are varied and a collection of simulation data files are generated. At the end of a sweep simulation, you can graph the simulation results in EM.Grid or you can animate the 3D simulation data from the navigation tree.png|400px]]
Figure: A monopole antenna connected above === Running a PEC plate and its current distribution with the default plot settings.Single-Frequency MoM Analysis ===
In a single-frequency analysis, the structure of your project workspace is meshed at the center frequency of the project and analyzed by one of [[File:wire_pic28EM.png|360pxLibera]] [[File:wire_pic29_tn's two MoM solvers. If your project contains at least one line or curve object, the Wire MoM solver is automatically selected. Otherwise, the Surface MoM solver will always be used to simulate your numerical problem. In either case, the engine type is set automatically.png|440px]]
FigureTo open the Run Simulation Dialog, click the '''Run''' [[File: The output plot settings run_icon.png]] button of the '''Simulate Toolbar''' or select '''Menu > Simulate > Run...''' or use the keyboard shortcut {{key|Ctrl+R}}. By default, the Surface MoM solver is selected as your simulation engine. To start the simulation, click the {{key|Run}} button of this dialog. Once the 3D MoM simulation starts, a new dialog called '''Output Window''' opens up that reports the various stages of MoM simulation, displays the running time and shows the current distribution percentage of completion for certain tasks during the monopole-plate structure with a user defined upper limitMoM simulation process. A prompt announces the completion of the MoM simulation.
=== Near Field Visualization === <table><tr><td> [[Image:Libera L1 Fig13.png|thumb|left|480px|EM.Libera's Simulation Run dialog showing Wire MoM engine as the solver.]] </td></tr><tr><td> [[Image:MOM3D MAN10.png|thumb|left|480px|EM.Libera's Simulation Run dialog showing Surface MoM engine as the solver.]] </td></tr></table>
[[Image:MOM11.png|thumb|350px|EM.Libera's Field Sensor dialog.]] [[EM.Cube|EM.CUBE]] allows you to visualize the near fields at a specific field sensor plane. Calculation of near fields is a post-processing process and may take a considerable amount of time depending on the resolution that you specify. To define a new Field Sensor, follow these steps:=== Setting MoM Numerical Parameters ===
* Right click on the '''Field Sensors''' item in the '''Observables''' section MoM simulations involve a number of the Navigation Tree and select '''Insert New Observable...'''* The '''Label''' box allows numerical parameters that normally take default values unless you to change the sensor’s namethem. you You can also access these parameters and change the color of the field sensor plane using their values by clicking on the '''ColorSettings''' button.* Set next to the '''Direction''' of &quot;Select Engine&quot; dropdown list in the field sensor. This is specified by the normal vector of the sensor plane. The available options are '''XRun Dialog''', '''Y''' and '''Z''', with the last being the default option.* By default [[EM.Cube|EM.CUBE]] creates a field sensor plane passing through the origin of coordinates (0,0,0) and coinciding with the XY plane. You can change the location of the sensor plane to any point by typing in new values Depending on which MoM solver has been chosen for the Xsolving your problem, Y and Z '''Center Coordinates'''. You can also changes these coordinates using the spin buttons. Keep in mind that you can move a sensor plane only along the specified direction of the sensor. Therefore, only one coordinate can effectively be changed. As you increment or decrement this coordinate, you can observe the sensor plane moving along that direction in the Project Workspace.* The initial size of the sensor plane is 100 × 100 project units. You can change the dimensions of the sensor plane to any desired size. You can also set the '''Number of Samples''' along the different directions. These determine the resolution of near field calculations. Keep in mind that large numbers of samples may result in long computation timescorresponding Engine Settings dialog opens up.
After closing First we discuss the Field Sensor Dialog, the a new field sensor item immediately appears under the '''Observables''' section in the Navigation Tree and can be right clicked for additional editing. Once a Wire MoM simulation is finished, a total of 14 plots are added to every field sensor node in the Navigation TreeEngine Settings dialog. These include In the magnitude and phase of all three components of E and H fields and the total electric and magnetic field values. Click on any of these items and a color-coded intensity plot of it will be visualized on the Project Workspace. A legend box appears in the upper right corner of the field plot, which can be dragged around using the left mouse button. The values of the magnitude plots are normalized between 0 and 1. The legend box contains the minimum field value corresponding to 0 of the color map, maximum field value corresponding to 1 of the color map, and the unit of the field quantity, which is V/m for E-field and A/m for H-field. The values of phase plots are always shown in Radians between -&pi; and &pi;. You can change the view of the field plot with the available view operations such as rotating, panning, zooming, etc. [[Image:Info_icon.png|40px]] Click here to learn more about '''[[Data_Visualization_and_Processing#Visualizing_3D_Near-Field_Maps | Visualizing 3D Near Field Maps]]Solver'''. [[File:wire_pic31_tn.png]] Figure: A circular loop antenna fed by a gap source. [[File:wire_pic32_tn.png|400px]] [[File:wire_pic33_tn.png|400px]] Electric and magnetic field plots section of the circular loop antenna. === Visualizing 3D Radiation Patterns === [[Image:MOM12.png|thumb|380px|EM.Libera's Radiation Pattern this dialog.]] Unlike the FDTD method, the method of moments does not need a far field box to perform near-to-far-field transformations. But you still need to define a far field observable if you want to plot radiation patterns in EM.Libera. A far field can be defined by right clicking on choose the type of '''Far FieldsLinear Solver''' item in the . The current options are '''ObservablesLU''' section of the Navigation Tree and selecting '''Insert New Radiation Pattern...Bi-Conjugate Gradient (BiCG)''' from the contextual menu. The Radiation Pattern dialog opens up. You can accept most of LU solver is a direct solver and is the default settings in this dialogoption of the Wire MoM solver. The Output Settings section allows BiCG solver is iterative. If BiCG is selected, you have to change the set a '''Angle IncrementTolerance''' for both Theta and Phi observation angles in the degreesits convergence. These [[parameters]] indeed set You can also change the resolution maximum number of far field calculations. The default values are 5 degrees. After closing the radiation pattern dialog, BiCG iterations by setting a far field entry immediately appears with its given name under the '''Far Fields''' item of the Navigation Tree and can be right clicked new value for further editing. After a 3D MoM simulation is finished, three radiation patterns plots are added to the far field entry in the Navigation Tree. These are the far field component in Theta direction, the far field component in Phi direction and the total far field.  [[Image:Info_icon.png|40px]] Click here to learn more about '''[[Maxwell%27s_Equations#Definition_of_the_Far_Radiation_Zone | Computing the Far Fields & Radiation Characteristics]]'''Max. [[Image:Info_iconNo.png|40px]] Click here to learn more about the theory of '''[[Data_Visualization_and_Processing#Using_Array_Factors_to_Model_Antenna_Arrays | Using Array Factors to Model Antenna Arrays ]]'''. [[Image:Info_icon.png|40px]] Click here to learn more about '''[[Data_Visualization_and_Processing#Visualizing_3D_Radiation_Patterns | Visualizing 3D Radiation Patterns]]'''. [[Image:Info_icon.png|40px]] Click here to learn more about '''[[Data_Visualization_and_Processing#2D_Radiation_and_RCS_Graphs | Plotting 2D Radiation Graphs]]Solver Iterations / System Size'''.
<table>
<tr>
<td> [[Image:wire_pic38_tnMOM9B.png|thumb|280pxleft|The 3D radiation pattern of the circular loop antenna: Theta component480px|EM.]] </td><td> [[Image:wire_pic39_tn.png|thumb|280px|The 3D radiation pattern of the circular loop antenna: Phi componentLibera's Wire MoM Engine Settings dialog.]] </td><td> [[Image:wire_pic40_tn.png|thumb|280px|The total radiation pattern of the circular loop antenna.]] </td>
</tr>
</table>
The Surface MoM Engine Settings dialog is bit more extensive and provides more options. In the "Integral Equation" section of the dialog, you can choose among the three PEC formulations: EFIE, MFIE and CFIE. The EFIE formulation is the default option. In the case of the CFIE formulation, you can set a value for the "Alpha" parameter, which determines the weights for the EFIE and MFIE terms of the combine field formulation. The default value of this parameter is &alpha; === Computing Radar Cross Section === 0.4. The Surface MoM solver provides two types of linear solver: iterative TFQMR and direct LU. The former is the default option and asks for additional parameters: '''Error Tolerance''' and '''Max. No. of Solver Iterations'''. When the system size is large, typically above 3000, [[EM.Libera]] uses an acceleration technique called the Adaptive Integral Method (AIM) to speed up the linear system inversion. You can set the "AIM Grid Spacing" parameter in wavelength, which has a default value of 0.05&lambda;<sub>0</sub>. [[EM.Libera]]'s Surface MoM solver has been highly parallelized using MPI framework. When you install [[EM.Cube]] on your computer, the installer program also installs the Windows MPI package on your computer. If you are using a multicore CPU, taking advantage of the MPI-parallelized solver can speed up your simulations significantly. In the "MPI Settings" of the dialog, you can set the "Number of CPU's Used", which has a default value of 4 cores.
For both Wire MoM and Surface MoM solvers, you can instruct [[Image:MOM13.png|thumb|380px|EM.Libera's Radar Cross Section dialog.]]  When your structure is excited by a plane wave source, to write the calculated far field data indeed represent the scattered fields. EM.Libera can calculate the radar cross section (RCS) contents of a target. Three RCS quantities are computed: the &phi; MoM matrix and &theta; components of the radar cross section as well as the total radar cross section: &sigma;<sub>&theta;</sub>, &sigma;<sub>&phi;</sub>, excitation and &sigma;<sub>tot</sub>. In addition, EM.Libera calculates two types of RCS for each structure: solutions vectors into data files with '''Bi-Static RCS.DAT1''' and file extensions. These files can be accessed from the '''Mono-Static RCSInput/Output Files'''. In bi-static RCS, tab of the structure is illuminated by a plane wave at incidence angles &theta;<sub>0</sub> and &phi;<sub>0</sub> and the RCS is measured and plotted at all &theta; and &phi; anglesData Manager. In mono-static RCS, the structure is illuminated by a plane wave at incidence angles &theta;<sub>0</sub> and &phi;<sub>0</sub> and the RCS is measured and plotted at the echo angles 180°-&theta;<sub>0</sub> and &phi;<sub>0</sub>.It is clear that in the both case of mono-static RCS, the Wire MoM simulation engine runs an internal angular sweep, whereby the values of the plane wave incidence angles &theta;<sub>0</sub> and &phi;<sub>0</sub> are varied over the intervals [0°, 180°] and [0°, 360°], respectively, and the backscatter RCS is recorded. To calculate RCS, first you have to define an RCS observable instead of a radiation pattern. Right click on the '''Far Fields''' item in the '''Observables''' section of the Navigation Tree and select '''Insert New RCS...''' option to open uncheck the Radar Cross Section Dialog. Use the '''Label''' check box to change the name of the far field or change the color of the far field box using the '''Color''' button. Select the type of RCS from the two radio buttons labeled '''Bi-Static RCS''' and '''Mono-Static RCS'''"Superpose Incident plane Wave Fields". The former This option applies when your structure is the default choice. The resolution of RCS calculation is specified excited by '''Angle Increment''' expressed in degrees. By default, the &theta; and &phi; angles are incremented by 5 degrees. At the end of a Wire MoM simulation, besides calculating the RCS data over the entire (spherical) 3-D space, a number of 2-D RCS graphs are also generatedplane wave source. These are RCS cuts at certain planesWhen checked, which include the three principal XY, YZ and ZX planes plus one additional constant &phi;-cut. This latter cut is at &phi;=45° by default. You can assign another phi angle in degrees in the box labeled '''Non-Principal Phi Plane'''. At the end of a Wire MoM simulation, the thee RCS plots &sigma;<sub>&theta;</sub>, &sigma;<sub>&phi;</sub>, and &sigma;<sub>tot</sub>are added under the far field section of sensors plot the navigation tree. The 2D RCS graphs can be plotted from the data manager exactly in the same way that you plot 2D radiation pattern graphs. A total of eight 2D RCS graphs are available: 4 polar electric and 4 Cartesian graphs for the XY, YZ, ZX and user defined plane cuts. At the end of a sweep simulation, EM.Libera calculates some other quantities magnetic field distributions including the backscatter RCS (BRCS), forward-scatter RCS (FRCS) and the maximum RCS (MRCS) as functions of the sweep variable (frequency, angle, or any user defined variable)incident field. In this caseOtherwise, only the RCS needs to be computed at a fixed pair of phi scattered electric and theta angles. These angles magnetic field distributions are specified in degrees as '''User Defined Azimuth &amp; Elevation''' in the &quot;Output Settings&quot; section of the '''Radar Cross Section Dialog'''. The default values of the user defined azimuth and elevation are both zero corresponding to the zenith. {{Note|Computing the 3D mono-static RCS may take an enormous amount of computation time.}} [[Image:Info_icon.png|40px]] Click here to learn more about '''[[Data_Visualization_and_Processing#Visualizing_3D_RCS | Visualizing 3D RCS]]'''. [[Image:Info_icon.png|40px]] Click here to learn more about '''[[Data_Visualization_and_Processing#2D_Radiation_and_RCS_Graphs | Plotting 2D RCS Graphs]]'''visualized.
<table>
<tr>
<td> [[Image:wire_pic51_tnMOM9.png|thumb|300pxleft|The RCS of a metal plate structure: &sigma;<sub>&theta;</sub>.]] </td><td> [[Image:wire_pic52_tn.png640px|thumb|300px|The RCS of a metal plate structure: &sigma;<sub>&phi;</sub>EM.]] </td><td> [[Image:wire_pic53_tn.png|thumb|300px|The total RCS of a metal plate structure: &sigma;<sub>tot</sub>Libera's Surface MoM Engine Settings dialog.]] </td>
</tr>
</table>
<pbr />&nbsp; </phr> [[Image:Top_icon.png|48px30px]] '''[[EM.Libera#An_EM.Libera_Primer Product_Overview | Back to the Top of the Page]]''' [[Image:Tutorial_icon.png|30px]] '''[[EM.Cube#EM.Libera_Documentation | EM.Libera Tutorial Gateway]]'''
[[Image:Back_icon.png|40px30px]] '''[[EM.Cube | Back to EM.Cube Main Page]]'''
4,622
edits