Advanced#
You can use PyAEDT for postprocessing of AEDT results to display graphics object and plot data.
Touchstone#
TouchstoneData class is based on scikit-rf package and allows advanced touchstone post-processing. The following methods allows to read and check touchstone files.
Get all insertion losses. |
|
Plot all insertion losses. |
|
Plot a list of curves. |
|
Plot all return losses. |
|
Transform network from single ended parameters to generalized mixed mode parameters. |
|
Get the list of all the Returnloss from a list of exctitations. |
|
Get the list of all the Insertion Losses from prefix. |
|
Get the list of all the Near End XTalk a list of excitation. |
|
Get the list of all the Far End XTalk from a list of exctitations and a prefix that will be used to retrieve driver and receivers names. |
|
Plot all next crosstalk curves. |
|
Plot all fext crosstalk curves. |
|
Analyze a solution data object with multiple curves and find the worst curve. |
|
Load the contents of a Touchstone file into an NPort. |
|
Check passivity and causality for all Touchstone files included in the folder. |
|
Get all Touchstone files in a directory. |
Here an example on how to use TouchstoneData class.
from ansys.aedt.core.visualization.advanced.touchstone_parser import TouchstoneData
ts1 = TouchstoneData(touchstone_file=os.path.join(test_T44_dir, "port_order_1234.s8p"))
assert ts1.get_mixed_mode_touchstone_data()
ts2 = TouchstoneData(touchstone_file=os.path.join(test_T44_dir, "port_order_1324.s8p"))
assert ts2.get_mixed_mode_touchstone_data(port_ordering="1324")
assert ts1.plot_insertion_losses(plot=False)
assert ts1.get_worst_curve(curve_list=ts1.get_return_loss_index(), plot=False)
Farfield#
PyAEDT offers sophisticated tools for advanced farfield post-processing.
There are two complementary classes: FfdSolutionDataExporter
and FfdSolutionData
.
FfdSolutionDataExporter: Enables efficient export and manipulation of farfield data. It allows users to convert simulation results into a standard metadata format for further analysis, or reporting.
FfdSolutionData: Focuses on the direct access and processing of farfield solution data. It supports a comprehensive set of postprocessing operations, from visualizing radiation patterns to computing key performance metrics.
Provides antenna far-field data. |
This code shows how you can get the farfield data and perform some post-processing:
import ansys.aedt.core
from ansys.aedt.core.generic.farfield_visualization import FfdSolutionDataExporter
app = ansys.aedt.core.Hfss()
ffdata = app.get_antenna_data(frequencies=None,
setup="Setup1 : Sweep",
sphere="3D",
variations=None,
overwrite=False,
link_to_hfss=True,
export_touchstone=True)
incident_power = ffdata.incident_power
ffdata.plot_cut(primary_sweep="Theta", theta=0)
ffdata.plot_contour(polar=True)
ffdata.plot_3d(show_geometry=False)
app.release_desktop(False, False)
If you exported the farfield data previously, you can directly get the farfield data:
from ansys.aedt.core.generic.farfield_visualization import FfdSolutionData
input_file = r"path_to_ffd\pyaedt_antenna_metadata.json"
ffdata = FfdSolutionData(input_file)
incident_power = ffdata.incident_power
ffdata.plot_cut(primary_sweep="Theta", theta=0)
ffdata.plot_contour(polar=True)
ffdata.plot_3d(show_geometry=False)
app.release_desktop(False, False)
The following diagram shows both classes work. You can use them independently or from the get_antenna_data
method.
If you have existing farfield data, or you want to export it manually, you can still use FfdSolutionData class.
Heterogeneous data message#
Heterogeneous data message (HDM) is the file exported from SBR+ solver containing rays information. The following methods allows to read and plot rays information.
Manages Hdm data to be plotted with |
|
Parser class that loads an HDM-format export file from HFSS SBR+, interprets its header and its binary content. |
Miscellaneous#
PyAEDT has additional advanced post-processing features:
Convert a near field data folder to hfss nfd file and link it to and file. |
|
Parse Ansys report '.rdat' file. |
|
Convert Nastran file into stl. |
|
Import and simplify a stl file using pyvista and fast-simplification. |