Changes

Glossary of EM.Cube's Python Functions

4,264 bytes added, 22:22, 11 June 2018
<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=EM.Tempo]] [[image:prop-ico.png | link=EM.Terrano]] [[image:static-ico.png | link=EM.Ferma]] [[image:planar-ico.png | link=EM.Picasso]] [[image:metal-ico.png | link=EM.Libera]] [[image:po-ico.png | link=EM.Illumina]]</td>
<tr>
</table>
[[Image:Back_icon.png|30px]] '''[[EM.Cube | Back to EM.Cube Main Page]]'''
<br />
 
== Standard Python Operators ==
|}
== Standard Basic Mathematical Python Functions ==
{| class="wikitable"
| Hyperbolic tangent function
| -
|-
| np.floor(x)
| Std. Python function
| Floor function
| nearest integer <= x
|-
| np.arcsinh(x)
| Inverse hyperbolic tangent function
| -
|-
| np.floor(x)
| Std. Python function
| Floor function
| nearest integer <= x
|}
|}
== EM.Cube's Miscellaneous Native Python Functions == {| class="wikitable"!scope="col"| Syntax!scope="col"| Type!scope="col"| Description!scope="col"| Notes|-| style="width:80px;" | rect(x)| style="width:150px;" | EMAG Python function| style="width:270px;" | Rectangle function| style="width:270px;" | 1 if |x|&le;0.5, 0 elsewhere |-| tri(x)| EMAG Python function| Triangle function| 1 if |1-x|&le;1, 0 elsewhere |-| spline2(x)| EMAG Python function| Quadratic spline function| -|-| spline3(x)| EMAG Python function| Cubic spline function| -|-| step(x)| EMAG Python function| Step function| 1 if x>0, 0 if x<0|-| sgn(x)| Std. Python function| Sign function| 1 if x>0, -1 if x<0|-| ramp(x)| EMAG Python function| Ramp function| x if x>0, 0 if x<0|-| sqr_wave(x)| EMAG Python function| Square wave function| -|-| tri_wave(x)| EMAG Python function| Triangle wave function| -|-| sawtooth(x)| EMAG Python function| Sawtooth wave function| -|-| sinc(x)| EMAG Python function| Sinc function| sin(pi*x)/(pi*x)|-| gauss(x,mu,sigma)| EMAG Python function| Gaussian function of mean mu and standard deviation sigma| exp(-0.5*((x-mu)/sigma)**2)/sigma/sqrt(2*pi)|-| msin(x,r)| EMAG Python function| super-quadratic sine function of order r| -|-| mcos(x,r)| EMAG Python function| super-quadratic cosine function of order r| -|-| sigmoid(x,a)| EMAG Python function| Sigmoid function of slope a| 2/(1 + exp(-a*x)) - 1|-| bh_window(x,T)| EMAG Python function| Blackman-Harris window function| -|-| bh_step(x,T)| EMAG Python function| Blackman-Harris step function| -|-| rand(x,y)| EMAG Python function| Random function| -|-| rosen(x,y,a,b)| EMAG Python function| Rosenbrock function| (a-x)**2 + b*(y-x**2)**2|-| mean(x,y)| EMAG Python function| arithmetic mean of x and y| 0.5*(x+y)|-| geo(x,y)| EMAG Python function| geometric mean of x and y| sqrt(x*y)|-| harm(x,y)| EMAG Python function| harmonic mean of x and y| 2/(1/x+1/y)|-| sqr2(x,y)| EMAG Python function| sum of squares of x and y| x**2 + y**2|-| sqr3(x,y,z)| EMAG Python function| sum of squares of x and y and z| x**2 + y**2 + z**3|-| sqrt2(x,y)| EMAG Python function| radius of 2D point (x,y)| sqrt(x**2 + y**2)|-| sqrt3(x,y,z)| EMAG Python function| radius of 3D point (x,y,z)| sqrt(x**2 + y**2 + z**3)|} == EM.Cube's Design Python Functions == {| class="wikitable"!scope="col"| Syntax!scope="col"| Type!scope="col"| Description!scope="col"| Notes|-| style="width:100px;" | microstrip_design(z0,er)| style="width:150px;" | EMAG Python function| style="width:250px;" | Returns the width-to-height ratio of a microstrip transmission line | style="width:250px;" | z0: characteristic impedance in Ohms, er: substrate permittivity|-| style="width:100px;" | microstrip_z0(w,h,er)| style="width:150px;" | EMAG Python function| style="width:250px;" | Returns the characteristic impedance of a microstrip transmission line in Ohms | style="width:250px;" | w: microstrip width, h: substrate height, er: substrate permittivity|-| style="width:100px;" | microstrip_eps_eff(w,h,er)| style="width:150px;" | EMAG Python function| style="width:250px;" | Returns the effective permittivity of a microstrip transmission line | style="width:250px;" | w: microstrip width, h: substrate height, er: substrate permittivity|-| style="width:100px;" | microstrip_lambda_g(w,h,er,freq_hertz)| style="width:150px;" | EMAG Python function| style="width:250px;" | Returns the guide wavelength of a microstrip transmission line in meters| style="width:250px;" | w: microstrip width, h: substrate height, er: substrate permittivity, freq_hertz: frequency in Hz|-| style="width:100px;" | cpw_design_w(z0,s,h,er)| style="width:150px;" | EMAG Python function| style="width:250px;" | Returns the slot width of a coplanar waveguide (CPW) transmission line | style="width:250px;" | z0: characteristic impedance in Ohms, s: center strip width (or slot spacing), h: substrate height, er: substrate permittivity|-| style="width:100px;" | cpw_design_s(z0,w,h,er)| style="width:150px;" | EMAG Python function| style="width:250px;" | Returns the center strip width (or slot spacing) of a coplanar waveguide (CPW) transmission line | style="width:250px;" | z0: characteristic impedance in Ohms, w: slot width, h: substrate height, er: substrate permittivity|-| style="width:100px;" | coaxial_design(z0,er)| style="width:150px;" | EMAG Python function| style="width:250px;" | Returns the ratio of radius of the outer conductor to the radius of the inner conductor of a coaxial transmission line | style="width:250px;" | z0: characteristic impedance in Ohms, er: core permittivity|-| style="width:100px;" | waveguide_design(er,freq_hertz)| style="width:150px;" | EMAG Python function| style="width:250px;" | Returns the minimum larger dimension in meter of the cross section of a hollow rectangular waveguide above cutoff | style="width:250px;" | er: filling permittivity, freq_hertz: frequency in Hz|-| style="width:100px;" | horn_design_a(D0_dB,a_lambda,b_lambda)| style="width:150px;" | EMAG Python function| style="width:250px;" | Returns the wavelength-normalized larger dimension of the aperture of an optimal pyramidal horn antenna | style="width:250px;" | D0_dB: directivity d, a_lambda: wavelength-normalized larger dimension of the feed waveguide, b_lambda: wavelength-normalized smaller dimension of the feed waveguide |-| style="width:100px;" | horn_design_b(D0_dB,a_lambda,b_lambda)| style="width:150px;" | EMAG Python function| style="width:250px;" | Returns the wavelength-normalized smaller dimension of the aperture of an optimal pyramidal horn antenna | style="width:250px;" | D0_dB: directivity d, a_lambda: wavelength-normalized larger dimension of the feed waveguide, b_lambda: wavelength-normalized smaller dimension of the feed waveguide |-| style="width:100px;" | horn_design_l(D0_dB,a_lambda,b_lambda)| style="width:150px;" | EMAG Python function| style="width:250px;" | Returns the wavelength-normalized length of an optimal pyramidal horn antenna | style="width:250px;" | D0_dB: directivity d, a_lambda: wavelength-normalized larger dimension of the feed waveguide, b_lambda: wavelength-normalized smaller dimension of the feed waveguide |} == EM.Cube's Python Functions for Geometric Object Creation ==
====activate====
EXAMPLE: ''activate("Color_1")''
DESCRIPTION: Activates a color, material or object group in the current active [[EM.Cube]] modulefor insertion of new objects.
====add_variable====
DESCRIPTION: Adds a new substrate layer to [[EM.Picasso]]'s background layer stackup.
 
====base_point_group====
 
SYNTAX: base_point_group({{ArgTypeString}} label)
 
EXAMPLE: ''base_point_set("BP_Set_1")''
 
DESCRIPTION: Creates a base point set in [[EM.Terrano]]. If the base point set group 'label' already exists, the group is activated.
 
====bh_step====
 
SYNTAX: bh_step({{ArgTypeReal}} x, {{ArgTypeReal}} T)
 
EXAMPLE: ''bh_step(0.5,1)''
 
DESCRIPTION: Computes and returns the Blackman-Harris step function.
 
====bh_window====
 
SYNTAX: bh_window({{ArgTypeReal}} x, {{ArgTypeReal}} T)
 
EXAMPLE: ''bh_window(0.5,1)''
 
DESCRIPTION: Computes and returns the Blackman-Harris window function.
====box====
DESCRIPTION: Draws a box object in the project workspace under the currently activated material group node, or modifies the box named 'label' if it already exists.
 
====capacitance====
 
SYNTAX: capacitance({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2, {{ArgTypeAny}} x3, {{ArgTypeAny}} y3, {{ArgTypeAny}} z3, {{ArgTypeAny}} x4, {{ArgTypeAny}} y4, {{ArgTypeAny}} z4)
 
EXAMPLE: ''capacitance("FI_1",-10,-10,5,10,10,10,0,0,-10,0,0,10)''
 
DESCRIPTION: Creates a capacitance integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
 
====capacitor====
 
SYNTAX: capacitor({{ArgTypeString}} label, {{ArgTypeAny}} line_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} capacitance_pF)
 
EXAMPLE: ''capacitor("Cap_1","Line_1",25,10)''
 
DESCRIPTION: Creates a capacitor in [[EM.Tempo]]. If the capacitor 'label' already exists, its properties are modified.
 
====charge_group====
 
SYNTAX: charge_group({{ArgTypeString}} label, {{ArgTypeAny}} density)
 
EXAMPLE: ''charge_group("Charge_1",-1e-5)''
 
DESCRIPTION: Creates a volume charge source group in [[EM.Ferma]]. If the charge group 'label' already exists, the group is activated.
====circ_strip====
DESCRIPTION: Sets the open/close state of a polyline or NURBS curve. Use 0 for open curve and 1 for close curve.
 
====coaxial_design====
 
SYNTAX: coaxial_design({{ArgTypeReal}} z0, {{ArgTypeReal}} er)
 
EXAMPLE: ''coaxial_design(50,2.2)''
 
DESCRIPTION: Computes and returns the ratio of the radius of the outer conductor to the radius of the inner conductor of a coaxial transmission line of characteristic impedance z0 (in Ohms) with core relative permittivity er.
 
====coaxial_src====
 
SYNTAX: coaxial_src({{ArgTypeString}} label, {{ArgTypeAny}} cylinder_object, {{ArgTypeAny}} outer_radius, {{ArgTypeAny}} edge[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''coaxial_src("COAX_1","Cyl_1",1.5,"+z")''
 
DESCRIPTION: Creates a coaxial port source in [[EM.Tempo]]. If the coaxial port 'label' already exists, its properties are modified.
====color_group====
DESCRIPTION: Creates a color group in CubeCAD module. If the color group 'label' already exists, the group is activated.
 
====conduction_current_integral====
 
SYNTAX: conduction_current_integral({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2)
 
EXAMPLE: ''conduction_current_integral("FI_1",-10,-10,0,10,10,0)''
 
DESCRIPTION: Creates a conduction current integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
 
====conductive_sheet_group====
 
SYNTAX: conductive_sheet_group({{ArgTypeString}} label, {{ArgTypeAny}} sigma, {{ArgTypeAny}} thickness)
 
EXAMPLE: ''conductive_sheet_group("Cond_1",100, 0.01)''
 
DESCRIPTION: Creates a conductive sheet group in [[EM.Picasso]]. If the conductive sheet group 'label' already exists, the group is activated.
====cone====
DESCRIPTION: Consolidates a specified object.
 
====cpw_design_s====
 
SYNTAX: cpw_design_s({{ArgTypeReal}} z0, {{ArgTypeReal}} w, {{ArgTypeReal}} h, {{ArgTypeReal}} er)
 
EXAMPLE: ''cpw_design_s(50,2,0.5,2.2)''
 
DESCRIPTION: Computes and returns the center strip width (in meters) of a CPW transmission line of characteristic impedance z0 with slot width w, substrate height h and substrate relative permittivity er.
 
====cpw_design_w====
 
SYNTAX: cpw_design_w({{ArgTypeReal}} z0, {{ArgTypeReal}} s, {{ArgTypeReal}} h, {{ArgTypeReal}} er)
 
EXAMPLE: ''cpw_design_w(50,1,0.5,2.2)''
 
DESCRIPTION: Computes and returns the slot width (in meters) of a CPW transmission line of characteristic impedance z0 with center strip width s, substrate height h and substrate relative permittivity er.
 
====cpw_src====
 
SYNTAX: cpw_src({{ArgTypeString}} label, {{ArgTypeAny}} rect_object, {{ArgTypeAny}} spacing, {{ArgTypeAny}} edge[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''cpw_src("CPW_1","Rect_1",1.5,"+x")''
 
DESCRIPTION: Creates a CPW port source in [[EM.Tempo]]. If the CPW port 'label' already exists, its properties are modified.
====cubecad_mesh_settings====
DESCRIPTION: Sets the parameters of CubeCAD's mesh generator.
 
====current_dist====
 
SYNTAX: current_dist({{ArgTypeString}} label)
 
EXAMPLE: ''current_dist("CD_1")''
 
DESCRIPTION: Creates a current distribution observable. If the observable 'label' already exists, its properties are modified.
 
====current_integral====
 
SYNTAX: current_integral({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2)
 
EXAMPLE: ''current_integral("FI_1",-10,-10,0,10,10,0)''
 
DESCRIPTION: Creates a current integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
====cylinder====
DESCRIPTION: Deletes a finite-thickness substrate layer from [[EM.Picasso]]'s background layer stackup.
 
====dielectric_group====
 
SYNTAX: dielectric_group({{ArgTypeString}} label, {{ArgTypeAny}} eps, {{ArgTypeAny}} sigma, {{ArgTypeAny}} mu, {{ArgTypeAny}} rho)
 
EXAMPLE: ''dielectric_group("Dielectric_1","my_eps",0,1,0)''
 
DESCRIPTION: Creates a dielectric material group in the current module with the specified material properties. If the dielectric group 'label' already exists, the group is activated.
 
====diode====
 
SYNTAX: diode({{ArgTypeString}} label, {{ArgTypeAny}} line_object, {{ArgTypeAny}} polarity, {{ArgTypeAny}} is_fA, {{ArgTypeAny}} temperature_K, {{ArgTypeAny}} ideality_factor)
 
EXAMPLE: ''diode("Diode_1","Line_1",25,0,10,300,1)''
 
DESCRIPTION: Creates a diode in [[EM.Tempo]]. If the diode 'label' already exists, its properties are modified.
 
====distributed_src====
 
SYNTAX: distributed_src({{ArgTypeString}} label, {{ArgTypeAny}} rect_object, {{ArgTypeAny}} field_dir, {{ArgTypeAny}} profile[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''distributed_src("DS_1","Rect_1","+y","uniform")''
 
DESCRIPTION: Creates a distributed source in [[EM.Tempo]]. If the distributed source 'label' already exists, its properties are modified.
====ellipse_strip====
DESCRIPTION: Sets the parameters of [[EM.Terrano]]'s facet mesh generator.
 
====energy_electric====
 
SYNTAX: energy_electric({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2)
 
EXAMPLE: ''energy_electric("FI_1",-10,-10,-10,10,10,10)''
 
DESCRIPTION: Creates an electric energy integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
 
====energy_magnetic====
 
SYNTAX: energy_magnetic({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2)
 
EXAMPLE: ''energy_magnetic("FI_1",-10,-10,-10,10,10,10)''
 
DESCRIPTION: Creates a magnetic energy integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
====explode====
DESCRIPTION: Creates or modifies an extrusion object from a specified object by the specified height. If modifying an existing extrusion object, the pre-existing primitive is used. This command can only extrude objects that have a single face and will extrude along the face's normal.
 
====farfield====
 
SYNTAX: farfield({{ArgTypeString}} label, {{ArgTypeAny}} theta_incr, {{ArgTypeAny}} phi_incr)
 
EXAMPLE: ''farfield("FF_1",1,1)''
 
DESCRIPTION: Creates a far-field radiation pattern observable. If the observable 'label' already exists, its properties are modified.
 
====field_probe====
 
SYNTAX: field_probe({{ArgTypeString}} label, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0)
 
EXAMPLE: ''field_probe("FS_1",0,0,50)''
 
DESCRIPTION: Creates a temporal field probe observable in [[EM.Tempo]] or [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
 
====field_sensor====
 
SYNTAX: field_sensor({{ArgTypeString}} label, {{ArgTypeAny}} dir_coordinate, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} xSize, {{ArgTypeAny}} ySize, {{ArgTypeAny}} zSize, {{ArgTypeAny}} xSamples, {{ArgTypeAny}} ySamples, {{ArgTypeAny}} zSamples)
 
EXAMPLE: ''field_sensor("FS_1","z",0,0,0,100,100,0,25,25,0)''
 
DESCRIPTION: Creates a near-field sensor observable. If the observable 'label' already exists, its properties are modified.
 
====field_sensor_grid====
 
SYNTAX: field_sensor_grid({{ArgTypeString}} label, {{ArgTypeAny}} dir_coordinate, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0)
 
EXAMPLE: ''field_sensor_grid("FS_1","z",0,0,0)''
 
DESCRIPTION: Creates a near-field sensor observable in [[EM.Tempo]] or [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
====fill_curve====
DESCRIPTION: Fillets the corners of the specified surface or curve object by the specified radius.
 
====flux_electric====
 
SYNTAX: flux_electric({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2)
 
EXAMPLE: ''flux_electric("FI_1",-10,-10,5,10,10,10)''
 
DESCRIPTION: Creates an electric flux integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
 
====flux_magnetic====
 
SYNTAX: flux_magnetic({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2)
 
EXAMPLE: ''flux_magnetic("FI_1",0,0,-10,10,0,10)''
 
DESCRIPTION: Creates a magnetic flux integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
====fractal_tree====
DESCRIPTION: Sets the freeze state of an object (0/1).
 
====gauss====
 
SYNTAX: gauss({{ArgTypeReal}} x, ArgTypeReal}} mu, ArgTypeReal}} sigma)
 
EXAMPLE: ''gauss(0.5,0,1)''
 
DESCRIPTION: Computes and returns the Gaussian function of mean mu and standard deviation sigma: exp(-0.5*((x-mu)/sigma)**2)/sigma/sqrt(2*pi).
 
====gauss_beam====
 
SYNTAX: gauss_beam({{ArgTypeString}} label, {{ArgTypeAny}} theta, {{ArgTypeAny}} phi, {{ArgTypeAny}} polarization, {{ArgTypeAny}} focus_x, {{ArgTypeAny}} focus_y, {{ArgTypeAny}} focus_z, {{ArgTypeAny}} radius, {{ArgTypeAny}} p_mode, {{ArgTypeAny}} q_mode)
 
EXAMPLE: ''gauss_beam("PW_1",180,0,"tm",0,0,0,20,0,0)''
 
DESCRIPTION: Creates a Gaussian beam source in [[EM.Tempo]]. If the Gaussian beam source 'label' already exists, its properties are modified.
 
====generate_input_files====
 
SYNTAX: generate_input_files()
 
EXAMPLE: ''generate_input_files()''
 
DESCRIPTION: Generates all the input files for the simulation engine of the current module without running a simulation.
 
====geo====
 
SYNTAX: geo({{ArgTypeReal}} x, {{ArgTypeReal}} y)
 
EXAMPLE: ''geo(1,2)''
 
DESCRIPTION: Computes and returns the geometric mean of x and y: sqrt(x*y).
====get_area====
DESCRIPTION: Groups a number of objects into a composite object with the given label.
 
====harm====
 
SYNTAX: harm({{ArgTypeReal}} x, {{ArgTypeReal}} y)
 
EXAMPLE: ''harm(1,2)''
 
DESCRIPTION: Computes and returns the harmonic mean of x and y: 2/(1/x+1/y).
====helix====
EXAMPLE: ''helix("Helix_1",0,0,0,15,15,10,0)''
DESCRIPTION: Draws a helical curve in the project workspace under the currently activated material group node, or modifies the helix named 'label' if it already exists. The parameter "radius_inner" specifies the helix's radius at the beginning of the helix, and radius_outer specifies the radius at the end of the helix. If the Boolean parameter "helixl_dir" is 1, the helical curve will be drawn counter-clockwise. ====horn_design_a==== SYNTAX: horn_design_a({{ArgTypeReal}} D0_dB, {{ArgTypeReal}} a_lambda, {{ArgTypeReal}} b_lambda) EXAMPLE: ''horn_design_a(15,0.4,0.3)'' DESCRIPTION: Computes and returns the wavelength-normalized larger dimension of the aperture of an optimal pyramidal horn antenna with directivity D0_dB and wavelength-normalized feed waveguide dimensions a_lambda and b_lambda. ====horn_design_b==== SYNTAX: horn_design_b({{ArgTypeReal}} D0_dB, {{ArgTypeReal}} a_lambda, {{ArgTypeReal}} b_lambda) EXAMPLE: ''horn_design_b(15,0.4,0.3)'' DESCRIPTION: Computes and returns the wavelength-normalized smaller dimension of the aperture of an optimal pyramidal horn antenna with directivity D0_dB and wavelength-normalized feed waveguide dimensions a_lambda and b_lambda. ====horn_design_l==== SYNTAX: horn_design_l({{ArgTypeReal}} D0_dB, {{ArgTypeReal}} a_lambda, {{ArgTypeReal}} b_lambda) EXAMPLE: ''horn_design_l(15,0.4,0.3)'' DESCRIPTION: Computes and returns the wavelength-normalized length of an optimal pyramidal horn antenna with directivity D0_dB and wavelength-normalized feed waveguide dimensions a_lambda and b_lambda. ====huygens_src==== SYNTAX: huygens_src({{ArgTypeString}} label, {{ArgTypeAny}} filename[, {{ArgTypeAny}} set_lcs, {{ArgTypeAny}} polarization, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} x_rot, {{ArgTypeAny}} y_rot, {{ArgTypeAny}} z_rot]) EXAMPLE: ''huygens_src("HS_1","Huygens_1.HUY",1,100,100,0,0,0,0)'' DESCRIPTION: Creates a Huygens source. If the Huygens source 'label' already exists, its properties are modified. ====huygens_surface==== SYNTAX: huygens_surface({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2, {{ArgTypeAny}} xSamples, {{ArgTypeAny}} ySamples, {{ArgTypeAny}} zSamples) EXAMPLE: ''huygens_surface("HS_1",-10,-10,-10,10,10,10,40,40,40)'' DESCRIPTION: Creates a Huygens surface observable. If the observable 'label' already exists, its properties are modified. ====huygens_surface_grid==== SYNTAX: huygens_surface_grid({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2) EXAMPLE: ''huygens_surface_grid("HS_1",-10,-10,-10,10,10,10)'' DESCRIPTION: Creates a Huygens surface observable in [[EM.Tempo]]. If the observable 'label' already exists, its properties are modified.
====hyperbola====
DESCRIPTION: Draws a hyperbola object in the project workspace under the currently activated material group node, or modifies the hyperbola named 'label' if it already exists. If the Boolean parameter "half_only" is 1, only half of the hyperbola will be drawn.
 
====impedance_surface_group====
 
SYNTAX: impedance_surface_group({{ArgTypeString}} label, {{ArgTypeAny}} z_real, {{ArgTypeAny}} z_imag)
 
EXAMPLE: ''impedance_surface_group("IMP_1",100,-100)''
 
DESCRIPTION: Creates a impedance_surface group in [[EM.Illumina]]. If the impedance surface group 'label' already exists, the group is activated.
 
====impenetrable_surface_group====
 
SYNTAX: impenetrable_surface_group({{ArgTypeString}} label, {{ArgTypeAny}} eps, {{ArgTypeAny}} sigma)
 
EXAMPLE: ''impenetrable_surface_group("Impenet_1",2.2,0.0001)''
 
DESCRIPTION: Creates an impenetrable surface group in [[EM.Terrano]]. If the impenetrable surface group 'label' already exists, the group is activated.
====import_dxf====
DESCRIPTION: Imports an external STEP model file to the project workspace. If the file path is not specified, the current project folder is assumed as the path.
 
====inductance====
 
SYNTAX: inductance({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2, {{ArgTypeAny}} x3, {{ArgTypeAny}} y3, {{ArgTypeAny}} z3, {{ArgTypeAny}} x4, {{ArgTypeAny}} y4, {{ArgTypeAny}} z4)
 
EXAMPLE: ''inductance("FI_1",0,0,-10,10,0,10,2.5,-2.5,0,7.5,2.5,0)''
 
DESCRIPTION: Creates a inductance integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
 
====inductor====
 
SYNTAX: inductor({{ArgTypeString}} label, {{ArgTypeAny}} line_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} inductance_nH)
 
EXAMPLE: ''inductor("Cap_1","Line_1",25,10)''
 
DESCRIPTION: Creates a inductor in [[EM.Tempo]]. If the inductor 'label' already exists, its properties are modified.
====intersect====
DESCRIPTION: Creates or modifies a loft object from a specified object by the specified height. If modifying an existing loft object, the pre-existing primitive is used. This command can only loft objects that have a single face and will loft along the face's normal.
 
====lumped_src====
 
SYNTAX: lumped_src({{ArgTypeString}} label, {{ArgTypeAny}} line_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} polarity[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''lumped_src("LS_1","Line_1",50,0)''
 
DESCRIPTION: Creates a lumped source in [[EM.Tempo]]. If the lumped source 'label' already exists, its properties are modified.
 
====magnet_group====
 
SYNTAX: magnet_group({{ArgTypeString}} label, {{ArgTypeAny}} mu, {{ArgTypeAny}} Mx, {{ArgTypeAny}} My, {{ArgTypeAny}} Mz)
 
EXAMPLE: ''magnet_group("Magnet_1",1,0,0,100)''
 
DESCRIPTION: Creates a permanent magnet source group in [[EM.Ferma]]. If the magnet group 'label' already exists, the group is activated.
 
====mcos====
 
SYNTAX: mcos({{ArgTypeReal}} x, {{ArgTypeReal}} r)
 
EXAMPLE: ''mcos(0.5,2)''
 
DESCRIPTION: Computes and returns the super-quadratic cosine function of order r.
 
====mean====
 
SYNTAX: mean({{ArgTypeReal}} x, {{ArgTypeReal}} y)
 
EXAMPLE: ''mean(1,2)''
 
DESCRIPTION: Computes and returns the arithmetic mean of x and y: 0.5*(x+y).
====merge_curve====
DESCRIPTION: Generates and displays the mesh of the physical structure.
 
====microstrip_design====
 
SYNTAX: microstrip_design({{ArgTypeReal}} z0, {{ArgTypeReal}} er)
 
EXAMPLE: ''microstrip_design(50,2.2)''
 
DESCRIPTION: Computes and returns the width-to-height ratio of a microstrip transmission line with characteristic impedance z0 in Ohms and substrate relative permittivity er.
 
====microstrip_eps_eff====
 
SYNTAX: microstrip_eps_eff({{ArgTypeReal}} w, {{ArgTypeReal}} h, {{ArgTypeReal}} er)
 
EXAMPLE: ''microstrip_eps_eff(2,0.5,2.2)''
 
DESCRIPTION: Computes and returns the effective permittivity of a microstrip transmission line with width w, substrate height h and substrate relative permittivity er.
 
====microstrip_lambda_g====
 
SYNTAX: microstrip_lambda_g({{ArgTypeReal}} w, {{ArgTypeReal}} h, {{ArgTypeReal}} er, {{ArgTypeReal}} freq_hertz)
 
EXAMPLE: ''microstrip_lambda_g(2,0.5,2.2,2e9)''
 
DESCRIPTION: Computes and returns the guide wavelength (in meters) of a microstrip transmission line with width w, substrate height h and substrate relative permittivity er at an operating frequency of freq_hertz.
 
====microstrip_src====
 
SYNTAX: microstrip_src({{ArgTypeString}} label, {{ArgTypeAny}} rect_object, {{ArgTypeAny}} height, {{ArgTypeAny}} edge[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''microstrip_src("MS_1","Rect_1",1.5,"+x")''
 
DESCRIPTION: Creates a microstrip port source in [[EM.Tempo]]. If the microstrip port 'label' already exists, its properties are modified.
 
====microstrip_z0====
 
SYNTAX: microstrip_z0({{ArgTypeReal}} w, {{ArgTypeReal}} h, {{ArgTypeReal}} er)
 
EXAMPLE: ''microstrip_z0(2,0.5,2.2)''
 
DESCRIPTION: Computes and returns the characteristic impedance (in Ohms) of a microstrip transmission line with width w, substrate height h and substrate relative permittivity er.
 
====microstrip_zoc====
 
SYNTAX: microstrip_zoc({{ArgTypeReal}} w, {{ArgTypeReal}} l, {{ArgTypeReal}} h, {{ArgTypeReal}} er, {{ArgTypeReal}} freq_hertz)
 
EXAMPLE: ''microstrip_zoc(2,25,0.5,2.2,2e9)''
 
DESCRIPTION: Computes and returns the input reactance (in Ohms) of an open-circuited microstrip transmission line with width w, length l, substrate height h and substrate relative permittivity er at an operating frequency of freq_hertz.
 
====microstrip_zsc====
 
SYNTAX: microstrip_zsc({{ArgTypeReal}} w, {{ArgTypeReal}} l, {{ArgTypeReal}} h, {{ArgTypeReal}} er, {{ArgTypeReal}} freq_hertz)
 
EXAMPLE: ''microstrip_zsc(2,25,0.5,2.2,2e9)''
 
DESCRIPTION: Computes and returns the input reactance (in Ohms) of a short-circuited microstrip transmission line with width w, length l, substrate height h and substrate relative permittivity er at an operating frequency of freq_hertz.
====mirror====
DESCRIPTION: Transfers an object from its current material/object group node in the navigation tree to another node or optionally to another [[EM.Cube]] module.
 
====msin====
 
SYNTAX: msin({{ArgTypeReal}} x, {{ArgTypeReal}} r)
 
EXAMPLE: ''msin(0.5,2)''
 
DESCRIPTION: Computes and returns the super-quadratic sine function of order r.
====nurbs_curve====
DESCRIPTION: Creates or modifies a NURBS Strip object in the project workspace. Each point is represented with a Python tuple type. The nurbs_strip function is 'self-closing' -- there is no need to supply the first point again at the end of the point list.
 
====ohmic_loss====
 
SYNTAX: ohmic_loss({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2)
 
EXAMPLE: ''ohmic_loss("FI_1",-10,-10,-10,10,10,10)''
 
DESCRIPTION: Creates an ohmic loss integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
====parabola====
DESCRIPTION: Generates a parametric surface in the project workspace under the currently activated material group node, or modifies the parametric surface named 'label' if it already exists.
 
====pec_group====
 
SYNTAX: pec_group({{ArgTypeString}} label)
 
EXAMPLE: ''pec_group("PEC_1")''
 
DESCRIPTION: Creates a PEC material group in the current module. If the PEC group 'label' already exists, the group is activated.
 
====pec_via_group====
 
SYNTAX: pec_via_group({{ArgTypeString}} label, {{ArgTypeAny}} host_layer)
 
EXAMPLE: ''pec_via_group("PEC_1",10)''
 
DESCRIPTION: Creates an embedded PEC via set group in the current module. If the PEC via group 'label' already exists, the group is activated.
 
====pec_voltage_group====
 
SYNTAX: pec_voltage_group({{ArgTypeString}} label, {{ArgTypeAny}} voltage)
 
EXAMPLE: ''pec_voltage_group("PEC_1",10)''
 
DESCRIPTION: Creates a fixed-potential PEC object group in the current module. If the PEC group 'label' already exists, the group is activated.
 
====penetrable_surface_group====
 
SYNTAX: penetrable_surface_group({{ArgTypeString}} label, {{ArgTypeAny}} eps, {{ArgTypeAny}} sigma, {{ArgTypeAny}} thickness)
 
EXAMPLE: ''penetrable_surface_group("Penet_1",2.2,0.0001, 1)''
 
DESCRIPTION: Creates a penetrable surface group in [[EM.Terrano]]. If the penetrable surface group 'label' already exists, the group is activated.
 
====penetrable_volume_group====
 
SYNTAX: penetrable_volume_group({{ArgTypeString}} label, {{ArgTypeAny}} eps, {{ArgTypeAny}} sigma)
 
EXAMPLE: ''penetrable_volume_group("Vol_Penet_1",2.2,0.0001)''
 
DESCRIPTION: Creates a penetrable volume group in [[EM.Terrano]]. If the penetrable volume group 'label' already exists, the group is activated.
====pipe_sweep====
DESCRIPTION: Creates a pipe version of a given curve object.
 
====planewave====
 
SYNTAX: planewave({{ArgTypeString}} label, {{ArgTypeAny}} theta, {{ArgTypeAny}} phi, {{ArgTypeAny}} polarization)
 
'EXAMPLE: ''planewave("PW_1",180,0,"tm")''
 
DESCRIPTION: Creates a plane wave source. If the plane wave source 'label' already exists, its properties are modified.
====plot_file====
DESCRIPTION: Plots the contents of a specified data file in EM.Grid.
 
====pmc_group====
 
SYNTAX: pmc_group({{ArgTypeString}} label)
 
EXAMPLE: ''pmc_group("PMC_1")''
 
DESCRIPTION: Creates a PMC material group in the current module. If the PMC group 'label' already exists, the group is activated.
====point====
DESCRIPTION: Creates or modifies a Polystrip object in the project workspace. Each point is represented with a Python tuple type. The poly_strip function is 'self-closing' -- there is no need to supply the first point again at the end of the point list.
 
====port_definition_custom====
 
SYNTAX: port_definition_custom({{ArgTypeString}} label, ({{ArgTypeString}} port_1_src_1, {{ArgTypeString}} port_1_src_2, ..., {{ArgTypeString}} port_1_impedance), ({{ArgTypeString}} port_2_src_1, {{ArgTypeString}} port_2_src_2, ..., {{ArgTypeString}} port_2_impedance), ...)
 
EXAMPLE: ''port_definition_custom("PD_1",("LS_1","LS_2",50),,("LS_3","LS_4",50))''
 
DESCRIPTION: Creates a custom port definition observable. If the observable 'label' already exists, its properties are modified.
 
====port_definition_default====
 
SYNTAX: port_definition_default({{ArgTypeString}} label)
 
EXAMPLE: ''port_definition_default("PD_1")''
 
DESCRIPTION: Creates a default port definition observable. If the observable 'label' already exists, its properties are modified.
 
====probe_gap_src====
 
SYNTAX: probe_gap_src({{ArgTypeString}} label, {{ArgTypeAny}} via_object, {{ArgTypeAny}} polarity[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''probe_gap_src("Probe_1","Via_1",0)''
 
DESCRIPTION: Creates a probe gap circuit source in [[EM.Picasso]]. If the probe gap source 'label' already exists, its properties are modified.
====pyramid====
DESCRIPTION: Rail-sweeps the specified sweep object along the specified curve object.
 
====ramp====
 
SYNTAX: ramp({{ArgTypeReal}} x)
 
EXAMPLE: ''ramp(0.5)''
 
DESCRIPTION: Computes and returns the ramp function: x if x>0, 0 if x<0.
 
====rand====
 
SYNTAX: rand({{ArgTypeReal}} x, {{ArgTypeReal}} y)
 
EXAMPLE: ''rand(0,1)''
 
DESCRIPTION: Computes and returns a random number between x and y using an uniform distribution.
====random_group====
DESCRIPTION: Creates a random group using the specified key object and confines them in the specified container object.
 
====rcs_bistatic====
 
SYNTAX: rcs_bistatic({{ArgTypeString}} label, {{ArgTypeAny}} theta_incr, {{ArgTypeAny}} phi_incr[, {{ArgTypeAny}} frequency])
 
EXAMPLE: ''rcs_bistatic("RCS_1",1,1)''
 
DESCRIPTION: Creates a bistatic RCS observable. The frequency can also be optionally specified for [[EM.Tempo]]. If the observable 'label' already exists, its properties are modified.
 
====rcs_monostatic====
 
SYNTAX: rcs_monostatic({{ArgTypeString}} label, {{ArgTypeAny}} theta_incr, {{ArgTypeAny}} phi_incr[, {{ArgTypeAny}} frequency])
 
EXAMPLE: ''rcs_monostatic("RCS_1",1,1)''
 
DESCRIPTION: Creates a monostatic RCS observable. The frequency can also be optionally specified for [[EM.Tempo]]. If the observable 'label' already exists, its properties are modified.
 
====receiver_set====
 
SYNTAX: receiver_set({{ArgTypeString}} label, {{ArgTypeAny}} base_point_set[, {{ArgTypeAny}} pattern_file, {{ArgTypeAny}} rot_x, {{ArgTypeAny}} rot_y, {{ArgTypeAny}} rot_z)
 
EXAMPLE: ''receiver_set("TX_1","PT_1","DPL_STD.RAD",0,90,0)''
 
DESCRIPTION: Creates a receiver set in [[EM.Terrano]]. If the receiver set 'label' already exists, its properties are modified.
 
====rect====
 
SYNTAX: rect({{ArgTypeReal}} x)
 
EXAMPLE: ''rect(0.1)''
 
DESCRIPTION: Computes and returns the rectangular window function: 1 if x<0.5, 0 elsewhere.
 
====rect_gap_src====
 
SYNTAX: rect_gap_src({{ArgTypeString}} label, {{ArgTypeAny}} rect_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} polarity[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''rect_gap_src("GAP_1","Rect_1",0,0)''
 
DESCRIPTION: Creates a strip gap circuit source in [[EM.Picasso]] or [[EM.Libera]]. If the strip gap source 'label' already exists, its properties are modified.
====rect_strip====
DESCRIPTION: Deletes a node name from the navigation tree. The node can be any geometric object, source, observable or material group.
 
====resistance====
 
SYNTAX: resistance({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2, {{ArgTypeAny}} x3, {{ArgTypeAny}} y3, {{ArgTypeAny}} z3, {{ArgTypeAny}} x4, {{ArgTypeAny}} y4, {{ArgTypeAny}} z4)
 
EXAMPLE: ''resistance("FI_1",0,0,-10,0,0,10,-10,-10,0,10,10,0)''
 
DESCRIPTION: Creates a resistance integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
 
====resistor====
 
SYNTAX: resistor({{ArgTypeString}} label, {{ArgTypeAny}} line_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} resistance)
 
EXAMPLE: ''resistor("Res_1","Line_1",25,50)''
 
DESCRIPTION: Creates a resistor in [[EM.Tempo]]. If the resistor 'label' already exists, its properties are modified.
====revolve====
DESCRIPTION: Creates or modifies a revolution object from a specified object. If modifying an existing revolution object, the pre-existing primitive object is used. (x0,y0,z0) specifies the center of revolution, and (uX,uY,uZ) specifies the revolution axis. The revolution angle "rot_angle" is given in degrees.
 
====rosen====
 
SYNTAX: rosen({{ArgTypeReal}} x, {{ArgTypeReal}} y, {{ArgTypeReal}} a, {{ArgTypeReal}} b)
 
EXAMPLE: ''rosen(0.5,0,1,2)''
 
DESCRIPTION: Computes and returns the Rosenbrock function: (a-x)**2 + b*(y-x**2)**2.
====rotate====
DESCRIPTION: Saves [[EM.Cube]]'s output simulation data files under the specified directory.
 
====sawtooth====
 
SYNTAX: sawtooth({{ArgTypeReal}} x)
 
EXAMPLE: ''sawtooth(0.5)''
 
DESCRIPTION: Computes and returns the ascending periodic sawtooth function of period T = 2, oscillating between two values +1 and -1 and having a zero value of at x = 0.
====scale====
DESCRIPTION: Sets [[EM.Cube]]'s project length units.
 
====sgn====
 
SYNTAX: sgn({{ArgTypeReal}} x)
 
EXAMPLE: ''sgn(-1.0)''
 
DESCRIPTION: Computes and returns the signum function: 1 if x>0, -1 if x<0.
 
====short_dipole====
 
SYNTAX: short_dipole({{ArgTypeString}} label, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} length, {{ArgTypeAny}} uX, {{ArgTypeAny}} uY, {{ArgTypeAny}} uZ, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase)
 
EXAMPLE: ''short_dipole("SD_1",0,0,50,3,0,0,1,1,0)''
 
DESCRIPTION: Creates a Hertzian short dipole source. If the short dipole source 'label' already exists, its properties are modified.
 
====sigmoid====
 
SYNTAX: sigmoidnc({{ArgTypeReal}} x, {{ArgTypeReal}} a)
 
EXAMPLE: ''sigmoid(0.5,1)''
 
DESCRIPTION: Computes and returns the sigmoid function of slope a: 2/(1 + exp(-a*x)) - 1.
 
====sinc====
 
SYNTAX: sinc({{ArgTypeReal}} x)
 
EXAMPLE: ''sinc(0.5)''
 
DESCRIPTION: Computes and returns the sinc function: sin(pi*x)/(pi*x).
====slice====
DESCRIPTION: Slices the specified object into two parts using the specified plane given by the point coordinates and normal vector coordinates.
 
====slot_group====
 
SYNTAX: slot_group({{ArgTypeString}} label)
 
EXAMPLE: ''slot_group("PMC_1")''
 
DESCRIPTION: Creates a slot trace group in the current module. If the slot trace group 'label' already exists, the group is activated.
 
====solution_plane====
 
SYNTAX: solution_plane({{ArgTypeString}} label, {{ArgTypeAny}} field_sensor_label, {{ArgTypeAny}} is_quasi)
 
EXAMPLE: ''solution_plane("FI_1","FS_1",1)''
 
DESCRIPTION: Creates a 2D solution plane observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified.
====sphere====
DESCRIPTION: Applies spline fit transformation on a specified polymesh, polyline or polystrip object.
====strip_sweepspline2====
SYNTAX: strip_sweepspline2({{ArgTypeStringArgTypeReal}} object, {{ArgTypeAny}} widthx)
EXAMPLE: ''strip_sweepspline2("Curve_1",51.0)''
DESCRIPTION: Creates a strip version of a given curve objectComputes and returns the quadratic B-spline function.
====subtractspline3====
SYNTAX: subtractspline3({{ArgTypeStringArgTypeReal}} label, {{ArgTypeString}} object_1, {{ArgTypeString}} object_2x)
EXAMPLE: ''subtractspline3("Subtract_Object","Rect_Strip1","Rect_Strip2"1.0)''
DESCRIPTION: Creates a Boolean object named 'label' by subtracting object_2 from object_1. An error will be thrown if a Boolean object named 'label' already existsComputes and returns the cubic B-spline function.
====superquadsqr_wave====
SYNTAX: superquadsqr_wave({{ArgTypeStringArgTypeReal}} label, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} diam_x, {{ArgTypeAny}} diam_y, {{ArgTypeAny}} orderx)
EXAMPLE: ''superquadsqr_wave("SuperQuad_1",0,0,0,50,20,4.5)''
DESCRIPTION: Draws a super-quadratic curve object in Computes and returns the project workspace under the currently activated material group node, or modifies the super-quadratic curve named 'label' if it already exists. If order periodic square wave function of period T = 2, the curve reduces to an ellipse. Higher order makes the round edges sharper. An infinite order reduces the curve to oscillating between two values +1 and -1 and having a rectanglevalue of +1 at x = 0.
====taper_stripsqr2====
SYNTAX: taper_stripsqr2({{ArgTypeStringArgTypeReal}} labelx, {{ArgTypeAnyArgTypeReal}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} base_width, {{ArgTypeAny}} top_width, {{ArgTypeAny}} length, {{ArgTypeAny}} is_expoy)
EXAMPLE: ''taper_stripsqr2("ts_1",0,0,0,50,100,80,1)''
DESCRIPTION: Draws a taper strip object in Computes and returns the project workspace under the currently activated material group node, or modifies the taper strip object named 'label' if it already exists. If the Boolean parameters "is_expo" is 1, an exponential taper will be drawnsum of squares of x and y: x**2 + y**2.
====torussqr3====
SYNTAX: torussqr2({{ArgTypeStringArgTypeReal}} labelx, {{ArgTypeAnyArgTypeReal}} x0y, {{ArgTypeAnyArgTypeReal}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} radius_major, {{ArgTypeAny}} radius_minor[, {{ArgTypeAny}} start_angle, {{ArgTypeAny}} end_angle]z)
EXAMPLE: ''torussqr2("Torus_1",0,0,0,501,202)''
DESCRIPTION: Draws an torus object in Computes and returns the project workspace under the currently activated material group nodesum of squares of x, or modifies the torus named 'label' if it already exists. The arguments start_angle y and end_angle are in degrees and specify a sweep about the torus's azimuth axisz: x**2 + y**2 + z**2.
====translate_bysqrt2====
SYNTAX: translate_bysqrt2({{ArgTypeString}} object, {{ArgTypeReal}} x_dist, {{ArgTypeReal}} y_distx, {{ArgTypeReal}} z_disty)
EXAMPLE: ''translate_bysqrt2("MyObj"0,10,10,x1)''
DESCRIPTION: Translates an object by Computes and returns the specified distances in each directionradius of the 2D point (x,y): sqrt(x**2 + y**2).
====translate_tosqrt3====
SYNTAX: translate_tosqrt3({{ArgTypeString}} object, {{ArgTypeReal}} x_destx, {{ArgTypeReal}} y_desty, {{ArgTypeReal}} z_destz)
EXAMPLE: ''translate_tosqrt3("MyObj"0,201,20,x22)''
DESCRIPTION: Translates an object to Computes and returns the specified destinationradius of the 3D point (x,y,z): sqrt(x**2 + y**2 + z**2).
====triangle_stripstep====
SYNTAX: triangle_stripstep({{ArgTypeStringArgTypeReal}} label, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} side1, {{ArgTypeAny}} side2, {{ArgTypeAny}} anglex)
EXAMPLE: ''triangle_stripstep("ts_1",1.0,0,0,50,100,90)''
DESCRIPTION: Draws a triangle strip object in Computes and returns the project workspace under the currently activated material group nodeunit step function: 1 if x>0, or modifies the triangle strip object named 'label' 0 if it already existsx<0.
====unionstrip_sweep====
SYNTAX: unionstrip_sweep({{ArgTypeString}} labelobject, {{ArgTypeString}} object_1, {{ArgTypeStringArgTypeAny}} object_2width)
EXAMPLE: ''unionstrip_sweep("Union_ObjectCurve_1","Rect_Strip1","Rect_Strip2"5)''
DESCRIPTION: Creates a Boolean object named 'label' by unioning object_1 and object_2. An error will be thrown if strip version of a Boolean given curve object named 'label' already exists.
====zoom_extentssubtract====
SYNTAX: zoom_extentssubtract({{ArgTypeString}} label, {{ArgTypeString}} object_1, {{ArgTypeString}} object_2)
DESCRIPTIONEXAMPLE: Zooms to fit the extents of the physical structure into the screen.''subtract("Subtract_Object","Rect_Strip1","Rect_Strip2")''
== EMDESCRIPTION: Creates a Boolean object named 'label' by subtracting object_2 from object_1.Cube An error will be thrown if a Boolean object named 's Python Functions for Material or Object Group Creation ==label' already exists.
====pec_groupsuperquad====
SYNTAX: pec_groupsuperquad({{ArgTypeString}} label, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} diam_x, {{ArgTypeAny}} diam_y, {{ArgTypeAny}} order)
EXAMPLE: ''pec_groupsuperquad("PEC_1SuperQuad_1",0,0,0,50,20,4)''
DESCRIPTION: Creates Draws a PEC material group super-quadratic curve object in the current module. If project workspace under the PEC currently activated material group node, or modifies the super-quadratic curve named 'label' if it already exists. If order = 2, the group is activatedcurve reduces to an ellipse. Higher order makes the round edges sharper. An infinite order reduces the curve to a rectangle.
====pec_voltage_grouptaper_strip====
SYNTAX: pec_voltage_grouptaper_strip({{ArgTypeString}} label, {{ArgTypeAny}} voltagex0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} base_width, {{ArgTypeAny}} top_width, {{ArgTypeAny}} length, {{ArgTypeAny}} is_expo)
EXAMPLE: ''pec_voltage_grouptaper_strip("PEC_1ts_1",100,0,0,50,100,80,1)''
DESCRIPTION: Creates Draws a fixed-potential PEC taper strip object group in the current module. If project workspace under the PEC currently activated material group node, or modifies the taper strip object named 'label' if it already exists, . If the group Boolean parameters "is_expo" is activated1, an exponential taper will be drawn.
====pec_via_groupterrain_group====
SYNTAX: pec_via_groupterrain_group({{ArgTypeString}} label, {{ArgTypeAny}} host_layereps, {{ArgTypeAny}} sigma)
EXAMPLE: ''pec_via_groupterrain_group("PEC_1Terrain_1",105.0,0.0001)''
DESCRIPTION: Creates an embedded PEC via set terrain surface group in the current module[[EM.Terrano]]. If the PEC via terrain surface group 'label' already exists, the group is activated.
====thinwire_group====
DESCRIPTION: Creates a Thinwire material group in the current module. If the thin wire group 'label' already exists, the group is activated.
====pmc_grouptorus====
SYNTAX: pmc_grouptorus({{ArgTypeString}} label, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} radius_major, {{ArgTypeAny}} radius_minor[, {{ArgTypeAny}} start_angle, {{ArgTypeAny}} end_angle])
EXAMPLE: ''pmc_grouptorus("PMC_1Torus_1",0,0,0,50,20)''
DESCRIPTION: Creates a PMC material group Draws an torus object in the current module. If project workspace under the PMC currently activated material group node, or modifies the torus named 'label' if it already exists, . The arguments start_angle and end_angle are in degrees and specify a sweep about the group is activatedtorus's azimuth axis.
====slot_grouptranslate_by====
SYNTAX: slot_grouptranslate_by({{ArgTypeString}} labelobject, {{ArgTypeReal}} x_dist, {{ArgTypeReal}} y_dist, {{ArgTypeReal}} z_dist)
EXAMPLE: ''slot_grouptranslate_by("PMC_1MyObj",10,10,x)''
DESCRIPTION: Creates a slot trace group Translates an object by the specified distances in the current module. If the slot trace group 'label' already exists, the group is activatedeach direction.
====dielectric_grouptranslate_to====
SYNTAX: dielectric_grouptranslate_to({{ArgTypeString}} labelobject, {{ArgTypeAnyArgTypeReal}} epsx_dest, {{ArgTypeAnyArgTypeReal}} sigmay_dest, {{ArgTypeAnyArgTypeReal}} mu, {{ArgTypeAny}} rhoz_dest)
EXAMPLE: ''dielectric_grouptranslate_to("Dielectric_1MyObj","my_eps",020,120,0x2)''
DESCRIPTION: Creates a dielectric material group in the current module with Translates an object to the specified material properties. If the dielectric group 'label' already exists, the group is activateddestination.
====impenetrable_surface_grouptransmitter_set====
SYNTAX: impenetrable_surface_grouptransmitter_set({{ArgTypeString}} label, {{ArgTypeAny}} epsbase_point_set[, {{ArgTypeAny}} sigmapattern_file, {{ArgTypeAny}} rot_x, {{ArgTypeAny}} rot_y, {{ArgTypeAny}} rot_z)
EXAMPLE: ''impenetrable_surface_grouptransmitter_set("Impenet_1TX_1",2"PT_1","DPL_STD.2RAD",0,90,0.0001)''
DESCRIPTION: Creates an impenetrable surface group a transmitter set in [[EM.Terrano]]. If the impenetrable surface group transmitter set 'label' already exists, the group is activatedits properties are modified.
====penetrable_surface_grouptri====
SYNTAX: penetrable_surface_grouptri({{ArgTypeStringArgTypeReal}} label, {{ArgTypeAny}} eps, {{ArgTypeAny}} sigma, {{ArgTypeAny}} thicknessx)
EXAMPLE: ''penetrable_surface_grouptri("Penet_1",2.2,0.0001, 1)''
DESCRIPTION: Creates a penetrable surface group in [[EM.Terrano]]. If Computes and returns the penetrable surface group 'label' already existstriangular window function: 1-|x| if x<1, the group is activated0 elsewhere.
====penetrable_volume_grouptri_wave====
SYNTAX: penetrable_volume_grouptri_wave({{ArgTypeStringArgTypeReal}} label, {{ArgTypeAny}} eps, {{ArgTypeAny}} sigmax)
EXAMPLE: ''penetrable_volume_grouptri_wave("Vol_Penet_1",2.2,0.00015)''
DESCRIPTION: Creates a penetrable volume group in [[EM.Terrano]]. If Computes and returns the penetrable volume group 'label' already existsperiodic triangular wave function of period T = 2, the group is activatedoscillating between two values +1 and -1 and having a value of +1 at x = 0.
====terrain_grouptriangle_strip====
SYNTAX: terrain_grouptriangle_strip({{ArgTypeString}} label, {{ArgTypeAny}} epsx0, {{ArgTypeAny}} sigmay0, {{ArgTypeAny}} z0, {{ArgTypeAny}} side1, {{ArgTypeAny}} side2, {{ArgTypeAny}} angle)
EXAMPLE: ''terrain_grouptriangle_strip("Terrain_1ts_1",5.0,0.0001,0,50,100,90)''
DESCRIPTION: Creates an terrain surface group Draws a triangle strip object in [[EM.Terrano]]. If the terrain surface project workspace under the currently activated material group node, or modifies the triangle strip object named 'label' if it already exists, the group is activated.
====base_point_groupunion====
SYNTAX: base_point_groupunion({{ArgTypeString}} label, {{ArgTypeString}} object_1, {{ArgTypeString}} object_2)
EXAMPLE: ''base_point_setunion("BP_Set_1Union_Object","Rect_Strip1","Rect_Strip2")''
DESCRIPTION: Creates a base point set in [[EM.Terrano]]Boolean object named 'label' by unioning object_1 and object_2. If the base point set group An error will be thrown if a Boolean object named 'label' already exists, the group is activated.
====virtual_group====
DESCRIPTION: Creates a virtual object group in [[EM.Terrano]]. If the virtual group 'label' already exists, the group is activated.
====impedance_surface_groupvoltage_integral====
SYNTAX: impedance_surface_groupvoltage_integral({{ArgTypeString}} label, {{ArgTypeAny}} z_realx1, {{ArgTypeAny}} z_imagy1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2)
EXAMPLE: ''impedance_surface_groupvoltage_integral("IMP_1FI_1",1000,0,-10010,0,0,10)''
DESCRIPTION: Creates a impedance_surface group voltage integral observable in [[EM.IlluminaFerma]]. If the impedance surface group observable 'label' already exists, the group is activatedits properties are modified.
====conductive_sheet_groupvolume_current_group====
SYNTAX: conductive_sheet_groupvolume_current_group({{ArgTypeString}} label, {{ArgTypeAny}} sigmaJx, {{ArgTypeAny}} thicknessJy, {{ArgTypeAny}} Jz)
EXAMPLE: ''conductive_sheet_groupvolume_current_group("Cond_1Magnet_1",1000, 0.01,1e6)''
DESCRIPTION: Creates a conductive sheet volume current source group in [[EM.PicassoFerma]]. If the conductive sheet volume current group 'label' already exists, the group is activated.
====charge_groupwave_port====
SYNTAX: charge_groupwave_port({{ArgTypeString}} label, {{ArgTypeAny}} densityrect_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} is_negative[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
EXAMPLE: ''charge_groupwave_port("Charge_1WP_1",-1e-5"Rect_1",0,0)''
DESCRIPTION: Creates a volume charge scattering wave port source group in [[EM.FermaPicasso]] or [[EM.Libera]]. If the charge group wave port 'label' already exists, the group is activatedits properties are modified.
====magnet_groupwaveguide_design====
SYNTAX: magnet_groupwaveguide_design({{ArgTypeStringArgTypeReal}} labeler, {{ArgTypeAnyArgTypeReal}} mu, {{ArgTypeAny}} Mx, {{ArgTypeAny}} My, {{ArgTypeAny}} Mzfreq_hertz)
EXAMPLE: ''magnet_groupwaveguide_design("Magnet_1",1,0,.0,1002e9)''
DESCRIPTION: Creates a permanent magnet source group Computes and returns the minimum larger dimension (in [[EM.Ferma]]. If meters) of the magnet group 'label' already exists, the group is activatedcross section of a hollow rectangular waveguide above cutoff with a material filling of relative permittivity er at an operating frequency of freq_hertz.
====volume_current_groupwaveguide_src====
SYNTAX: volume_current_groupwaveguide_src({{ArgTypeString}} label, {{ArgTypeAny}} Jxbox_object, {{ArgTypeAny}} Jyoffset, {{ArgTypeAny}} Jzis_negative[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
EXAMPLE: ''volume_current_groupwaveguide_src("Magnet_1WG_1",0"Box_1",050,1e60)''
DESCRIPTION: Creates a volume current waveguide port source group in [[EM.FermaTempo]]. If the volume current group waveguide port 'label' already exists, the group is activatedits properties are modified.
====wire_current_group====
DESCRIPTION: Creates a wire current source group in [[EM.Ferma]]. If the wire current group 'label' already exists, the group is activated.
 
== EM.Cube's Python Functions for Source & Lumped Device Definition ==
 
====lumped_src====
 
SYNTAX: lumped_src({{ArgTypeString}} label, {{ArgTypeAny}} line_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} polarity[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''lumped_src("LS_1","Line_1",50,0)''
 
DESCRIPTION: Creates a lumped source in [[EM.Tempo]]. If the lumped source 'label' already exists, its properties are modified.
 
====distributed_src====
 
SYNTAX: distributed_src({{ArgTypeString}} label, {{ArgTypeAny}} rect_object, {{ArgTypeAny}} field_dir, {{ArgTypeAny}} profile[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''distributed_src("DS_1","Rect_1","+y","uniform")''
 
DESCRIPTION: Creates a distributed source in [[EM.Tempo]]. If the distributed source 'label' already exists, its properties are modified.
 
====microstrip_src====
 
SYNTAX: microstrip_src({{ArgTypeString}} label, {{ArgTypeAny}} rect_object, {{ArgTypeAny}} height, {{ArgTypeAny}} edge[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''microstrip_src("MS_1","Rect_1",1.5,"+x")''
 
DESCRIPTION: Creates a microstrip port source in [[EM.Tempo]]. If the microstrip port 'label' already exists, its properties are modified.
 
====cpw_src====
 
SYNTAX: cpw_src({{ArgTypeString}} label, {{ArgTypeAny}} rect_object, {{ArgTypeAny}} spacing, {{ArgTypeAny}} edge[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''cpw_src("CPW_1","Rect_1",1.5,"+x")''
 
DESCRIPTION: Creates a CPW port source in [[EM.Tempo]]. If the CPW port 'label' already exists, its properties are modified.
 
====coaxial_src====
 
SYNTAX: coaxial_src({{ArgTypeString}} label, {{ArgTypeAny}} cylinder_object, {{ArgTypeAny}} outer_radius, {{ArgTypeAny}} edge[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''coaxial_src("COAX_1","Cyl_1",1.5,"+z")''
 
DESCRIPTION: Creates a coaxial port source in [[EM.Tempo]]. If the coaxial port 'label' already exists, its properties are modified.
 
====waveguide_src====
 
SYNTAX: waveguide_src({{ArgTypeString}} label, {{ArgTypeAny}} box_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} is_negative[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance])
 
EXAMPLE: ''waveguide_src("WG_1","Box_1",50,0)''
 
DESCRIPTION: Creates a waveguide port source in [[EM.Tempo]]. If the waveguide port 'label' already exists, its properties are modified.
====wire_gap_src====
DESCRIPTION: Creates a wire gap circuit source in [[EM.Libera]]. If the wire gap source 'label' already exists, its properties are modified.
====rect_gap_srczoom_extents====
SYNTAX: rect_gap_srczoom_extents({{ArgTypeString}} label, {{ArgTypeAny}} rect_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} polarity[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance]) EXAMPLE: ''rect_gap_src("GAP_1","Rect_1",0,0)'' DESCRIPTION: Creates a strip gap circuit source in [[EM.Picasso]] or [[EM.Libera]]. If the strip gap source 'label' already exists, its properties are modified. ====probe_gap_src==== SYNTAX: probe_gap_src({{ArgTypeString}} label, {{ArgTypeAny}} via_object, {{ArgTypeAny}} polarity[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance]) EXAMPLE: ''probe_gap_src("Probe_1","Via_1",0)'' DESCRIPTION: Creates a probe gap circuit source in [[EM.Picasso]]. If the probe gap source 'label' already exists, its properties are modified. ====wave_port==== SYNTAX: wave_port({{ArgTypeString}} label, {{ArgTypeAny}} rect_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} is_negative[, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase, {{ArgTypeAny}} resistance]) EXAMPLE: ''wave_port("WP_1","Rect_1",0,0)'' DESCRIPTION: Creates a scattering wave port source in [[EM.Picasso]] or [[EM.Libera]]. If the wave port 'label' already exists, its properties are modified. ====short_dipole==== SYNTAX: short_dipole({{ArgTypeString}} label, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} length, {{ArgTypeAny}} uX, {{ArgTypeAny}} uY, {{ArgTypeAny}} uZ, {{ArgTypeAny}} amplitude, {{ArgTypeAny}} phase) EXAMPLE: ''short_dipole("SD_1",0,0,50,3,0,0,1,1,0)'' DESCRIPTION: Creates a Hertzian short dipole source. If the short dipole source 'label' already exists, its properties are modified. ====planewave==== SYNTAX: planewave({{ArgTypeString}} label, {{ArgTypeAny}} theta, {{ArgTypeAny}} phi, {{ArgTypeAny}} polarization) 'EXAMPLE: ''planewave("PW_1",180,0,"tm")'' DESCRIPTION: Creates a plane wave source. If the plane wave source 'label' already exists, its properties are modified. ====gauss_beam====
SYNTAX: gauss_beam({{ArgTypeString}} label, {{ArgTypeAny}} theta, {{ArgTypeAny}} phi, {{ArgTypeAny}} polarization, {{ArgTypeAny}} focus_x, {{ArgTypeAny}} focus_y, {{ArgTypeAny}} focus_z, {{ArgTypeAny}} radius, {{ArgTypeAny}} p_mode, {{ArgTypeAny}} q_mode) EXAMPLE: ''gauss_beam("PW_1",180,0,"tm",0,0,0,20,0,0)'' DESCRIPTION: Creates a Gaussian beam source in [[EM.Tempo]]. If Zooms to fit the Gaussian beam source 'label' already exists, its properties are modified. ====huygens_src==== SYNTAX: huygens_src({{ArgTypeString}} label, {{ArgTypeAny}} filename[, {{ArgTypeAny}} set_lcs, {{ArgTypeAny}} polarization, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} x_rot, {{ArgTypeAny}} y_rot, {{ArgTypeAny}} z_rot]) EXAMPLE: ''huygens_src("HS_1","Huygens_1.HUY",1,100,100,0,0,0,0)'' DESCRIPTION: Creates a Huygens source. If extents of the Huygens source 'label' already exists, its properties are modified. ====transmitter_set==== SYNTAX: transmitter_set({{ArgTypeString}} label, {{ArgTypeAny}} base_point_set[, {{ArgTypeAny}} pattern_file, {{ArgTypeAny}} rot_x, {{ArgTypeAny}} rot_y, {{ArgTypeAny}} rot_z) EXAMPLE: ''transmitter_set("TX_1","PT_1","DPL_STD.RAD",0,90,0)'' DESCRIPTION: Creates a transmitter set in [[EM.Terrano]]. If the transmitter set 'label' already exists, its properties are modified. ====resistor==== SYNTAX: resistor({{ArgTypeString}} label, {{ArgTypeAny}} line_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} resistance) EXAMPLE: ''resistor("Res_1","Line_1",25,50)'' DESCRIPTION: Creates a resistor in [[EM.Tempo]]. If the resistor 'label' already exists, its properties are modified. ====capacitor==== SYNTAX: capacitor({{ArgTypeString}} label, {{ArgTypeAny}} line_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} capacitance_pF) EXAMPLE: ''capacitor("Cap_1","Line_1",25,10)'' DESCRIPTION: Creates a capacitor in [[EM.Tempo]]. If the capacitor 'label' already exists, its properties are modified. ====inductor==== SYNTAX: inductor({{ArgTypeString}} label, {{ArgTypeAny}} line_object, {{ArgTypeAny}} offset, {{ArgTypeAny}} inductance_nH) EXAMPLE: ''inductor("Cap_1","Line_1",25,10)'' DESCRIPTION: Creates a inductor in [[EM.Tempo]]. If the inductor 'label' already exists, its properties are modified. ====diode==== SYNTAX: diode({{ArgTypeString}} label, {{ArgTypeAny}} line_object, {{ArgTypeAny}} polarity, {{ArgTypeAny}} is_fA, {{ArgTypeAny}} temperature_K, {{ArgTypeAny}} ideality_factor) EXAMPLE: ''diode("Diode_1","Line_1",25,0,10,300,1)'' DESCRIPTION: Creates a diode in [[EM.Tempo]]. If the diode 'label' already exists, its properties are modified. == EM.Cube's Python Functions for Observable Definition == ====port_definition_default==== SYNTAX: port_definition_default({{ArgTypeString}} label) EXAMPLE: ''port_definition_default("PD_1")'' DESCRIPTION: Creates a default port definition observable. If the observable 'label' already exists, its properties are modified. ====port_definition_custom==== SYNTAX: port_definition_custom({{ArgTypeString}} label, ({{ArgTypeString}} port_1_src_1, {{ArgTypeString}} port_1_src_2, ..., {{ArgTypeString}} port_1_impedance), ({{ArgTypeString}} port_2_src_1, {{ArgTypeString}} port_2_src_2, ..., {{ArgTypeString}} port_2_impedance), ...) EXAMPLE: ''port_definition_custom("PD_1",("LS_1","LS_2",50),,("LS_3","LS_4",50))'' DESCRIPTION: Creates a custom port definition observable. If the observable 'label' already exists, its properties are modified. ====farfield==== SYNTAX: farfield({{ArgTypeString}} label, {{ArgTypeAny}} theta_incr, {{ArgTypeAny}} phi_incr) EXAMPLE: ''farfield("FF_1",1,1)'' DESCRIPTION: Creates a far-field radiation pattern observable. If the observable 'label' already exists, its properties are modified. ====rcs_bistatic==== SYNTAX: rcs_bistatic({{ArgTypeString}} label, {{ArgTypeAny}} theta_incr, {{ArgTypeAny}} phi_incr) EXAMPLE: ''rcs_bistatic("RCS_1",1,1)'' DESCRIPTION: Creates a bistatic RCS observable. If the observable 'label' already exists, its properties are modified. ====current_dist==== SYNTAX: current_dist({{ArgTypeString}} label) EXAMPLE: ''current_dist("CD_1")'' DESCRIPTION: Creates a current distribution observable. If the observable 'label' already exists, its properties are modified. ====field_sensor==== SYNTAX: field_sensor({{ArgTypeString}} label, {{ArgTypeAny}} dir_coordinate, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0, {{ArgTypeAny}} xSize, {{ArgTypeAny}} ySize, {{ArgTypeAny}} zSize, {{ArgTypeAny}} xSamples, {{ArgTypeAny}} ySamples, {{ArgTypeAny}} zSamples) EXAMPLE: ''field_sensor("FS_1","z",0,0,0,100,100,0,25,25,0)'' DESCRIPTION: Creates a near-field sensor observable. If the observable 'label' already exists, its properties are modified. ====field_sensor_grid==== SYNTAX: field_sensor_grid({{ArgTypeString}} label, {{ArgTypeAny}} dir_coordinate, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0) EXAMPLE: ''field_sensor_grid("FS_1","z",0,0,0)'' DESCRIPTION: Creates a near-field sensor observable in [[EM.Tempo]] or [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====field_probe==== SYNTAX: field_probe({{ArgTypeString}} label, {{ArgTypeAny}} x0, {{ArgTypeAny}} y0, {{ArgTypeAny}} z0) EXAMPLE: ''field_probe("FS_1",0,0,50)'' DESCRIPTION: Creates a temporal field probe observable in [[EM.Tempo]] or [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====receiver_set==== SYNTAX: receiver_set({{ArgTypeString}} label, {{ArgTypeAny}} base_point_set[, {{ArgTypeAny}} pattern_file, {{ArgTypeAny}} rot_x, {{ArgTypeAny}} rot_y, {{ArgTypeAny}} rot_z) EXAMPLE: ''receiver_set("TX_1","PT_1","DPL_STD.RAD",0,90,0)'' DESCRIPTION: Creates a receiver set in [[EM.Terrano]]. If the receiver set 'label' already exists, its properties are modified. ====huygens_surface==== SYNTAX: huygens_surface({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2, {{ArgTypeAny}} xSamples, {{ArgTypeAny}} ySamples, {{ArgTypeAny}} zSamples) EXAMPLE: ''huygens_surface("HS_1",-10,-10,-10,10,10,10,40,40,40)'' DESCRIPTION: Creates a Huygens surface observable. If the observable 'label' already exists, its properties are modified. ====huygens_surface_grid==== SYNTAX: huygens_surface_grid({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2) EXAMPLE: ''huygens_surface_grid("HS_1",-10,-10,-10,10,10,10)'' DESCRIPTION: Creates a Huygens surface observable in [[EM.Tempo]]. If the observable 'label' already exists, its properties are modified. ====voltage_integral==== SYNTAX: voltage_integral({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2) EXAMPLE: ''voltage_integral("FI_1",0,0,-10,0,0,10)'' DESCRIPTION: Creates a voltage integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====current_integral==== SYNTAX: current_integral({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2) EXAMPLE: ''current_integral("FI_1",-10,-10,0,10,10,0)'' DESCRIPTION: Creates a current integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====conduction_current_integral==== SYNTAX: conduction_current_integral({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2) EXAMPLE: ''conduction_current_integral("FI_1",-10,-10,0,10,10,0)'' DESCRIPTION: Creates a conduction current integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====capacitance==== SYNTAX: capacitance({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2, {{ArgTypeAny}} x3, {{ArgTypeAny}} y3, {{ArgTypeAny}} z3, {{ArgTypeAny}} x4, {{ArgTypeAny}} y4, {{ArgTypeAny}} z4) EXAMPLE: ''capacitance("FI_1",-10,-10,5,10,10,10,0,0,-10,0,0,10)'' DESCRIPTION: Creates a capacitance integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====inductance==== SYNTAX: inductance({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2, {{ArgTypeAny}} x3, {{ArgTypeAny}} y3, {{ArgTypeAny}} z3, {{ArgTypeAny}} x4, {{ArgTypeAny}} y4, {{ArgTypeAny}} z4) EXAMPLE: ''inductance("FI_1",0,0,-10,10,0,10,2.5,-2.5,0,7.5,2.5,0)'' DESCRIPTION: Creates a inductance integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====resistance==== SYNTAX: resistance({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2, {{ArgTypeAny}} x3, {{ArgTypeAny}} y3, {{ArgTypeAny}} z3, {{ArgTypeAny}} x4, {{ArgTypeAny}} y4, {{ArgTypeAny}} z4) EXAMPLE: ''resistance("FI_1",0,0,-10,0,0,10,-10,-10,0,10,10,0)'' DESCRIPTION: Creates a resistance integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====flux_electric==== SYNTAX: flux_electric({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2) EXAMPLE: ''flux_electric("FI_1",-10,-10,5,10,10,10)'' DESCRIPTION: Creates an electric flux integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====flux_magnetic==== SYNTAX: flux_magnetic({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2) EXAMPLE: ''flux_magnetic("FI_1",0,0,-10,10,0,10)'' DESCRIPTION: Creates a magnetic flux integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====energy_electric==== SYNTAX: energy_electric({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2) EXAMPLE: ''energy_electric("FI_1",-10,-10,-10,10,10,10)'' DESCRIPTION: Creates an electric energy integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====energy_magnetic==== SYNTAX: energy_magnetic({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2) EXAMPLE: ''energy_magnetic("FI_1",-10,-10,-10,10,10,10)'' DESCRIPTION: Creates a magnetic energy integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====ohmic_loss==== SYNTAX: ohmic_loss({{ArgTypeString}} label, {{ArgTypeAny}} x1, {{ArgTypeAny}} y1, {{ArgTypeAny}} z1, {{ArgTypeAny}} x2, {{ArgTypeAny}} y2, {{ArgTypeAny}} z2) EXAMPLE: ''ohmic_loss("FI_1",-10,-10,-10,10,10,10)'' DESCRIPTION: Creates an ohmic loss integral observable in [[EM.Ferma]]. If the observable 'label' already exists, its properties are modified. ====solution_plane==== SYNTAX: solution_plane({{ArgTypeString}} label, {{ArgTypeAny}} field_sensor_label, {{ArgTypeAny}} is_quasi) EXAMPLE: ''solution_plane("FI_1","FS_1",1)'' DESCRIPTION: Creates a 2D solution plane observable in [[EM.Ferma]]. If physical structure into the observable 'label' already exists, its properties are modifiedscreen.
<br />
<hr>
[[Image:Top_icon.png|48px30px]] '''[[#Standard Python Functions Standard_Python_Operators | Back to the Top of the Page]]'''
[[Image:Back_icon.png|40px30px]] '''[[EM.Cube | Back to EM.Cube Main Page]]'''
28,333
edits