Modeler and Primitives

This section lists the core AEDT Modeler modules:

  • Modeler

  • Primitives

  • Objects

They are accessible through the modeler, modeler.primitives and modeler.primitives.objects property:

from pyaedt import Hfss
app = Hfss(specified_version="2021.1",
             non_graphical=False, new_desktop_session=True,
             close_on_exit=True, student_version=False)

# this call return the Modeler3D Class
modeler = app.modeler

# this call return a Primitives3D Object
primitives = modeler.primitives

# this call return a Object3d Object
my_box = primitives.create_box([0,0,0],[10,10,10])
my_box = primitives.objects[my_box.id]

# this call return a FacePrimitive Object List
my_box.faces
# this call return a EdgePrimitive Object List
my_box.edges
my_box.faces[0].edges

# this call return a VertexPrimitive Object List
my_box.vertices
my_box.faces[0].vertices
my_box.faces[0].edges[0].vertices

...

Modeler

This module contains all properties and methods needed to edit a modeler, including all primitives methods and properties. * Modeler3D for Hfss, Maxwell3d, Q3d and Icepak * Modeler2D for Maxwell2D Q2d * Modeler3DLayout for Hfss3dLayout * ModelerNexxim for Circuit * ModelerSimplorer for Simplorer * ModelerEmit for Emit

Model2D.Modeler2D

Provides the Modeler 2D application interface.

Model3D.Modeler3D

Provides the Modeler 3D application interface.

Model3DLayout.Modeler3DLayout

Manages Modeler 3D layouts.

Circuit.ModelerNexxim

ModelerNexxim class.

Circuit.ModelerSimplorer

ModelerSimplorer class.

Circuit.ModelerEmit

ModelerEmit class.

Primitives

The Primitives module includes these classes: * Primitives3D for Hfss, Maxwell3d, Q3d and Icepak * Primitives2D for Maxwell2D Q2d * Primitives3DLayout for Hfss3dLayout * NexximComponents for Circuit * SimplorerComponents for Simplorer * CircuitComponents for Emit Primives objects are accessible through modeler.primitives property for EM Solver and modeler.components for circuit solvers.

from pyaedt import Circuit
app = Circuit(specified_version="2021.1",
             non_graphical=False, new_desktop_session=True,
             close_on_exit=True, student_version=False)

# this call return the NexximComponents Class
components = app.modeler.components

...

Primitives2D.Primitives2D

Manages primitives in 2D tools.

Primitives3D.Primitives3D

Manages primitives in 3D tools.

Primitives3DLayout.Primitives3DLayout

Manages primitives in HFSS 3D Layout.

PrimitivesNexxim.NexximComponents

Manages circuit components for Nexxim.

PrimitivesSimplorer.SimplorerComponents

SimplorerComponents class.

PrimitivesCircuit.CircuitComponents

CircutComponents class.

Objects

Those classes define the objects properties for 3D and 2D Solvers (excluding Hfss3dLayout). It contains all getter and setter to simplify object manipulation.

from pyaedt import Hfss
app = Hfss(specified_version="2021.1",
           non_graphical=False, new_desktop_session=True,
           close_on_exit=True, student_version=False)

# this call return the Modeler3D Class
modeler = app.modeler

# this call return a Primitives3D Object
primitives = modeler.primitives

# this call return a Object3d Object
my_box = primitives.create_box([0,0,0],[10,10,10])

# Getter and setter
my_box.material_name
my_box.material_name = "copper"

my_box.faces[0].center

...

Object3d.Object3d

Manages object attributes for the AEDT 3D Modeler.

Object3d.FacePrimitive

Contains the face object within the AEDT Desktop Modeler.

Object3d.EdgePrimitive

Contains the edge object within the AEDT Desktop Modeler.

Object3d.VertexPrimitive

Contains the vertex object within the AEDT Desktop Modeler.

Primitives.PolylineSegment

Creates and manipulates a segment of a polyline.

Primitives.Polyline

Creates and manipulates a polyline.

Objects in Circuit

Those classes define the objects properties for circuit tools. It contains all getter and setter to simplify object manipulation.

from pyaedt import Circuit
app = Circuit(specified_version="2021.1",
           non_graphical=False, new_desktop_session=True,
           close_on_exit=True, student_version=False)

# this call return the Modeler Class
modeler = app.modeler

# this call return a Schematic Object
schematic = modeler.schematic

# this call return a Object3d Object
my_res = schematic.create_resistor("R1", 50)

# Getter and setter
my_res.location
my_res.parameters["R"]=100


...

Object3d.CircuitComponent

Manages circuit components.

Object3d.CircuitPins

Class that manages circuit component pins.

Object3d.ComponentParameters

AEDT Circuit Component Internal Parameters.

Objects in Hfss3d Layout

Those classes define the objects properties for Hfss3dLayout. It contains all getter and setter to simplify object manipulation.

from pyaedt import Hfss3dLayout
app = Hfss3dLayout(specified_version="2021.1",
           non_graphical=False, new_desktop_session=True,
           close_on_exit=True, student_version=False)

# this call return the Modeler3DLayout Class
modeler = app.modeler

# this call return a Primitives3D Object
primitives = modeler.primitives

# this call return a Object3d Object
my_rect = primitives.create_rectangle([0,0,0],[10,10])

# Getter and setter
my_rect.material_name

...

Object3d.Objec3DLayout

Manages properties of objects in HFSS 3D Lauout.

Object3d.Components3DLayout

Contains components in HFSS 3D Layout.

Object3d.Nets3DLayout

Contains Nets in HFSS 3D Layout.

Object3d.Pins3DLayout

Contains the pins in HFSS 3D Layout.

Object3d.Geometries3DLayout

Contains geometries in HFSS 3D Layout.

Object3d.Padstack

Manages properties of a padstack.

Coordinate System and Geometry Operators

This module contains all properties and methods needed to edit a Coordinate System and a set of useful Geometry Operators. CoordinateSystem Class is accessible through create_coordinate_system method or coordinate_systems list. GeometryOperators can be imported and used as it is made by static methods.

from pyaedt import Hfss
app = Hfss(specified_version="2021.1",
             non_graphical=False, new_desktop_session=True,
             close_on_exit=True, student_version=False)

# this call returns the CoordinateSystem Object lists
cs = app.modeler.coordinate_systems

# this call returns a CoordinateSystem Object
new_cs = app.modeler.create_coordinate_system()

...

Modeler.CoordinateSystem

Manages coordinate system data and execution.

GeometryOperators