EMIT#
This section describes the classes used for building and querying EMIT designs through the emit_core module.
The module provides tools for constructing RF system schematics, defining coupling between antennas, and
analyzing electromagnetic interference.
Node tree overview#
An EMIT design organizes its data into three main trees. Each tree is rooted at a well-known node class and contains typed child nodes that the user can create, inspect, and modify through the PyAEDT API.
EMIT Design
│
├── Scene (EmitSceneNode)
│ ├── Antenna / Emitter (AntennaNode)
│ │ └── AntennaPassband [0..*]
│ ├── SceneGroupNode [0..*]
│ │ └── (any Scene child: Antenna, CAD, nested Group)
│ └── CADNode [0..*]
│
├── Coupling Data (CouplingsNode)
│ ├── TouchstoneCouplingNode [0..*]
│ ├── CustomCouplingNode [0..*]
│ ├── ErcegCouplingNode [0..*]
│ ├── FiveGChannelModel [0..*]
│ ├── HataCouplingNode [0..*]
│ ├── IndoorPropagationCouplingNode[0..*]
│ ├── LogDistanceCouplingNode [0..*]
│ ├── PropagationLossCouplingNode [0..*]
│ ├── WalfischCouplingNode [0..*]
│ ├── TwoRayPathLossCouplingNode [0..*]
│ └── CouplingLinkNode [0..*]
│ └── SolutionCouplingNode
│ └── SolutionsNode
│
└── Components (via EmitSchematic)
├── Amplifier
├── Cable
├── Circulator
├── Filter
├── Isolator
├── Multiplexer
│ └── MultiplexerBand [2..*] (one per port minus one)
├── PowerDivider
├── RadioNode
│ ├── SamplingNode [1]
│ ├── BandFolder [0..*]
│ │ └── Band [0..*]
│ └── Band [0..*]
│ ├── TxSpectralProfNode [1]
│ │ ├── TxSpurNode [0..1]
│ │ ├── TxNbEmissionNode [0..1]
│ │ ├── TxBbEmissionNode [0..1]
│ │ └── TxHarmonicNode [0..1]
│ ├── RxSusceptibilityProfNode [1]
│ │ ├── RxMixerProductNode [0..1]
│ │ ├── RxSaturationNode [0..1]
│ │ ├── RxSelectivityNode [0..1]
│ │ └── RxSpurNode [0..1]
│ ├── TxMeasNode [0..*]
│ └── RxMeasNode [0..*]
├── Terminator
└── TR_Switch
Scene#
The scene tree organizes the physical layout of an EMIT design: antennas, emitters, 3-D geometry (CAD), and grouping nodes.
EmitSceneNodeis the root of the scene tree. It is obtained from aRevisionafter analysis.AntennaNodedefines the position, orientation, and 3-D radiation pattern of an antenna or emitter. Antennas may containAntennaPassbandchildren that add frequency-dependent behavior to parametric antenna models.SceneGroupNodegroups antennas, CAD nodes, or other groups so they can be repositioned and reoriented together. Any node type that can be a child of the scene can also be a child of a group.CADNoderepresents imported 3-D platform geometry.
They are accessible through:
Provide EMIT scene node. |
|
Provide antenna node. |
|
Provide antenna passband. |
|
Provide scene group node. |
|
Provide cad node. |
Coupling data#
The coupling data tree organizes the coupling models that connect pairs of antennas
in the design. The CouplingsNode can have any number of children, and their
order matters: children lower in the tree have higher priority. When an
antenna pair is covered by overlapping coupling definitions, the highest-priority
(lowest in tree) coupling is used.
CouplingLinkNodeprovides a link to an HFSS design. It has aSolutionCouplingNodechild and aSolutionsNodegrandchild.
All other coupling children are standalone propagation or data-driven models.
They are accessible through:
Provide couplings node. |
|
Provide touchstone coupling node. |
|
Provide custom coupling node. |
|
Provide erceg coupling node. |
|
Provide five g channel model. |
|
Provide hata coupling node. |
|
|
Provide indoor propagation coupling node. |
Provide log distance coupling node. |
|
Provide propagation loss coupling node. |
|
Provide walfisch coupling node. |
|
Provide two ray path loss coupling node. |
|
Provide coupling link node. |
|
Provide solution coupling node. |
|
Provide solutions node. |
Components#
Components form the RF signal chain in an EMIT schematic. Although they are stored
internally under an RF System Group node, that node is hidden from users.
Components appear at the top level of the EmitSchematic and are created
through its create_component method.
Most components are leaf nodes, but two can have children:
Multiplexerhas 2 or moreMultiplexerBandchildren (num_ports - 1).RadioNodecontains a rich subtree:Exactly one
SamplingNode.Zero or more
Bandnodes (directly or insideBandFoldernodes).Each
Bandhas exactly oneTxSpectralProfNodeand oneRxSusceptibilityProfNode, plus optional measurement nodes.TxSpectralProfNodemay have up to one each ofTxSpurNode,TxNbEmissionNode,TxBbEmissionNode, andTxHarmonicNode.RxSusceptibilityProfNodemay have up to one each ofRxMixerProductNode,RxSaturationNode,RxSelectivityNode, andRxSpurNode.
They are accessible through:
Provide amplifier. |
|
Provide cable. |
|
Provide circulator. |
|
Provide filter. |
|
Provide isolator. |
|
Provide multiplexer. |
|
Provide multiplexer band. |
|
Provide power divider. |
|
Provide radio node. |
|
Provide terminator. |
|
Provide tr switch. |
|
Provide band. |
|
Provide band folder. |
|
Provide waveform. |
|
Provide sampling node. |
|
Provide tx spectral prof node. |
|
Provide tx spectral prof emitter node. |
|
Provide tx spur node. |
|
Provide tx nb emission node. |
|
Provide tx bb emission node. |
|
Provide tx harmonic node. |
|
Provide rx susceptibility prof node. |
|
Provide rx mixer product node. |
|
Provide rx saturation node. |
|
Provide rx selectivity node. |
|
Provide rx spur node. |
|
Provide tx meas node. |
|
Provide rx meas node. |
Results and analysis#
After building the schematic and coupling definitions, results are obtained by
analyzing a Revision. The results module provides classes for querying
interference metrics, interaction details, and result plots.
They are accessible through:
Provides the |
|
Represents an interaction domain for EMIT analysis. |
Provide result plot node. |
|
Provide emi plot marker node. |
Schematic#
The EmitSchematic class provides methods for creating and connecting RF
components in the EMIT design.
Represents the EMIT schematic and provides methods to interact with it. |
Base node#
All generated node classes inherit from EmitNode, which provides common
tree-navigation methods (parent, children), property access, and
serialization utilities.
Emit node class for managing and interacting with EMIT nodes. |
EMIT Design example:
from ansys.aedt.core import Emit
app = Emit()
# Create an emitter (radio + antenna pair)
emitter, antenna = app.schematic.create_radio_antenna("Bluetooth")
# Access the radio and add a band
radio = emitter.get_radio()
band = radio.add_band()
# Add an amplifier to the signal chain
amp = app.schematic.create_component("Amplifier")
amp.gain = 30.0
# Analyze and inspect results
rev = app.results.analyze()
scene = rev.get_scene_node()
couplings = rev.get_coupling_data_node()