HfssSimulationSetup#
- class pyedb.dotnet.database.utilities.hfss_simulation_setup.HfssSimulationSetup(pedb, edb_object=None, name: str = None)#
Bases:
pyedb.dotnet.database.utilities.simulation_setup.SimulationSetupManages EDB methods for HFSS simulation setup.
Overview#
Add a mesh operation to the setup. |
|
Add a mesh operation to the setup. |
|
Set single-frequency solution. |
|
Set multi-frequency solution. |
|
Set broadband solution. |
|
Automatically create and apply a length-based mesh operation for all nets in the design. |
Solver slider type. |
|
Flag indicating if automatic setup is enabled. |
|
Manages EDB methods for HFSS solver settings. |
|
Adaptive Settings Class. |
|
Defeature settings Class. |
|
Via settings Class. |
|
Advanced mesh settings Class. |
|
Curve approximation settings Class. |
|
Dcr settings Class. |
|
HFSS port settings Class. |
|
Mesh operations settings Class. |
Import detail#
from pyedb.dotnet.database.utilities.hfss_simulation_setup import HfssSimulationSetup
Property detail#
- property HfssSimulationSetup.solver_slider_type#
Solver slider type. Options are: 1 -
Fast. 2 -Medium. 3 -Accurate.- Returns:
- property HfssSimulationSetup.is_auto_setup#
Flag indicating if automatic setup is enabled.
- property HfssSimulationSetup.hfss_solver_settings#
Manages EDB methods for HFSS solver settings.
- Returns:
pyedb.dotnet.database.edb_data.hfss_simulation_setup_data.HfssSolverSettings
- property HfssSimulationSetup.adaptive_settings#
Adaptive Settings Class.
- Returns:
pyedb.dotnet.database.edb_data.hfss_simulation_setup_data.AdaptiveSettings
- property HfssSimulationSetup.defeature_settings#
Defeature settings Class.
- Returns:
pyedb.dotnet.database.edb_data.hfss_simulation_setup_data.DefeatureSettings
- property HfssSimulationSetup.via_settings#
Via settings Class.
- Returns:
pyedb.dotnet.database.edb_data.hfss_simulation_setup_data.ViaSettings
- property HfssSimulationSetup.advanced_mesh_settings#
Advanced mesh settings Class.
- Returns:
pyedb.dotnet.database.edb_data.hfss_simulation_setup_data.AdvancedMeshSettings
- property HfssSimulationSetup.curve_approx_settings#
Curve approximation settings Class.
- Returns:
pyedb.dotnet.database.edb_data.hfss_simulation_setup_data.CurveApproxSettings
- property HfssSimulationSetup.dcr_settings#
Dcr settings Class.
- Returns:
pyedb.dotnet.database.edb_data.hfss_simulation_setup_data.DcrSettings
- property HfssSimulationSetup.hfss_port_settings#
HFSS port settings Class.
- Returns:
pyedb.dotnet.database.edb_data.hfss_simulation_setup_data.HfssPortSettings
- property HfssSimulationSetup.mesh_operations#
Mesh operations settings Class.
- Returns:
Listofdotnet.database.edb_data.hfss_simulation_setup_data.MeshOperation
Method detail#
- HfssSimulationSetup.add_length_mesh_operation(net_layer_list, name=None, max_elements=1000, max_length='1mm', restrict_elements=True, restrict_length=True, refine_inside=False, mesh_region=None)#
Add a mesh operation to the setup.
- Parameters:
- net_layer_list
dict Dictionary containing nets and layers on which enable Mesh operation. Example
{"A0_N": ["TOP", "PWR"]}.- name
str,optional Mesh operation name.
- max_elements
int,optional Maximum number of elements. Default is
1000.- max_length
str,optional Maximum length of elements. Default is
1mm.- restrict_elementsbool,
optional Whether to restrict number of elements. Default is
True.- restrict_lengthbool,
optional Whether to restrict length of elements. Default is
True.- mesh_region
str,optional Mesh region name.
- refine_insidebool,
optional Whether to refine inside or not. Default is
False.
- net_layer_list
- Returns:
dotnet.database.edb_data.hfss_simulation_setup_data.LengthMeshOperation
- HfssSimulationSetup.add_skin_depth_mesh_operation(net_layer_list, name=None, max_elements=1000, skin_depth='1um', restrict_elements=True, surface_triangle_length='1mm', number_of_layers=2, refine_inside=False, mesh_region=None)#
Add a mesh operation to the setup.
- Parameters:
- net_layer_list
dict Dictionary containing nets and layers on which enable Mesh operation. Example
{"A0_N": ["TOP", "PWR"]}.- name
str,optional Mesh operation name.
- max_elements
int,optional Maximum number of elements. Default is
1000.- skin_depth
str,optional Skin Depth. Default is
1um.- restrict_elementsbool,
optional Whether to restrict number of elements. Default is
True.- surface_triangle_lengthbool,
optional Surface Triangle length. Default is
1mm.- number_of_layers
int,str,optional Number of layers. Default is
2.- mesh_region
str,optional Mesh region name.
- refine_insidebool,
optional Whether to refine inside or not. Default is
False.
- net_layer_list
- Returns:
dotnet.database.edb_data.hfss_simulation_setup_data.LengthMeshOperation
- HfssSimulationSetup.set_solution_single_frequency(frequency='5Ghz', max_num_passes=10, max_delta_s=0.02)#
Set single-frequency solution.
- HfssSimulationSetup.set_solution_multi_frequencies(frequencies=('5Ghz', '10Ghz'), max_num_passes=10, max_delta_s='0.02')#
Set multi-frequency solution.
- HfssSimulationSetup.set_solution_broadband(low_frequency='5Ghz', high_frequency='10Ghz', max_num_passes=10, max_delta_s='0.02')#
Set broadband solution.
- HfssSimulationSetup.auto_mesh_operation(trace_ratio_seeding: float = 3, signal_via_side_number: int = 12, power_ground_via_side_number: int = 6) bool#
Automatically create and apply a length-based mesh operation for all nets in the design.
The method inspects every signal net, determines the smallest trace width, and seeds a
LengthMeshOperationwhose maximum element length issmallest_width * trace_ratio_seeding. Signal vias (padstack instances) are configured with the requested number of polygon sides, while power/ground vias are updated through the globalnum_via_sidesadvanced setting.- Parameters:
- trace_ratio_seeding
float,optional Ratio used to compute the maximum allowed element length from the smallest trace width found in the design. The resulting length is
min_width * trace_ratio_seeding. Defaults to3.- signal_via_side_number
int,optional Number of sides (i.e. faceting resolution) assigned to signal padstack instances that belong to the nets being meshed. Defaults to
12.- power_ground_via_side_number
int,optional Number of sides assigned to power/ground vias via the global
advanced.num_via_sidessetting. Defaults to6.
- trace_ratio_seeding
- Returns:
- Raises:
ValueErrorIf the design contains no terminals, making mesh seeding impossible.
Notes
Only primitives of type
"path"are considered when determining the smallest trace width.Every
(net, layer, sheet)tuple required by the mesher is automatically populated; sheet are explicitly marked asFalse.Existing contents of
mesh_operationsare replaced by the single new operation.
Examples
>>> setup = edbapp.setups["my_setup"] >>> setup.auto_mesh_operation(trace_ratio_seeding=4, signal_vias_side_number=16) >>> setup.mesh_operations[0].max_length '2.5um'