pyedb 0.37.0__py3-none-any.whl → 0.39.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pyedb might be problematic. Click here for more details.

Files changed (208) hide show
  1. pyedb/__init__.py +1 -1
  2. pyedb/common/nets.py +53 -139
  3. pyedb/configuration/cfg_common.py +1 -1
  4. pyedb/configuration/cfg_components.py +229 -201
  5. pyedb/configuration/cfg_data.py +3 -1
  6. pyedb/configuration/cfg_general.py +4 -2
  7. pyedb/configuration/cfg_modeler.py +7 -7
  8. pyedb/configuration/cfg_package_definition.py +1 -1
  9. pyedb/configuration/cfg_padstacks.py +346 -290
  10. pyedb/configuration/cfg_ports_sources.py +243 -65
  11. pyedb/configuration/configuration.py +23 -3
  12. pyedb/dotnet/{application → database}/Variables.py +21 -21
  13. pyedb/dotnet/{edb_core → database}/cell/connectable.py +5 -5
  14. pyedb/dotnet/{edb_core → database}/cell/hierarchy/component.py +11 -11
  15. pyedb/dotnet/{edb_core → database}/cell/hierarchy/hierarchy_obj.py +1 -1
  16. pyedb/dotnet/{edb_core → database}/cell/hierarchy/model.py +1 -1
  17. pyedb/dotnet/{edb_core → database}/cell/layout.py +19 -19
  18. pyedb/dotnet/{edb_core → database}/cell/layout_obj.py +3 -3
  19. pyedb/dotnet/{edb_core → database}/cell/primitive/bondwire.py +1 -1
  20. pyedb/dotnet/{edb_core → database}/cell/primitive/path.py +4 -4
  21. pyedb/dotnet/{edb_core → database}/cell/primitive/primitive.py +14 -14
  22. pyedb/dotnet/{edb_core → database}/cell/terminal/bundle_terminal.py +2 -2
  23. pyedb/dotnet/{edb_core → database}/cell/terminal/edge_terminal.py +4 -4
  24. pyedb/dotnet/{edb_core → database}/cell/terminal/padstack_instance_terminal.py +2 -2
  25. pyedb/dotnet/{edb_core → database}/cell/terminal/pingroup_terminal.py +2 -2
  26. pyedb/dotnet/{edb_core → database}/cell/terminal/point_terminal.py +2 -2
  27. pyedb/dotnet/{edb_core → database}/cell/terminal/terminal.py +11 -11
  28. pyedb/dotnet/{edb_core → database}/cell/voltage_regulator.py +2 -2
  29. pyedb/dotnet/{edb_core → database}/components.py +101 -124
  30. pyedb/dotnet/{edb_core → database}/definition/component_def.py +5 -5
  31. pyedb/dotnet/{edb_core → database}/definition/component_model.py +1 -1
  32. pyedb/dotnet/{edb_core → database}/definition/definition_obj.py +1 -1
  33. pyedb/dotnet/{edb_core → database}/definition/definitions.py +2 -2
  34. pyedb/dotnet/{edb_core → database}/definition/package_def.py +4 -4
  35. pyedb/dotnet/{edb_core → database}/dotnet/database.py +8 -8
  36. pyedb/dotnet/{edb_core → database}/dotnet/primitive.py +9 -9
  37. pyedb/dotnet/{edb_core → database}/edb_data/control_file.py +12 -12
  38. pyedb/dotnet/{edb_core → database}/edb_data/hfss_extent_info.py +7 -7
  39. pyedb/dotnet/{edb_core → database}/edb_data/nets_data.py +10 -13
  40. pyedb/dotnet/{edb_core → database}/edb_data/padstacks_data.py +60 -73
  41. pyedb/dotnet/{edb_core → database}/edb_data/ports.py +4 -4
  42. pyedb/dotnet/{edb_core → database}/edb_data/primitives_data.py +5 -5
  43. pyedb/dotnet/{edb_core → database}/edb_data/raptor_x_simulation_setup_data.py +4 -4
  44. pyedb/dotnet/{edb_core → database}/edb_data/simulation_configuration.py +10 -10
  45. pyedb/dotnet/{edb_core → database}/edb_data/sources.py +4 -4
  46. pyedb/dotnet/{edb_core → database}/edb_data/variables.py +1 -1
  47. pyedb/dotnet/{edb_core → database}/geometry/polygon_data.py +4 -4
  48. pyedb/dotnet/{edb_core → database}/hfss.py +8 -8
  49. pyedb/dotnet/{edb_core → database}/layout_obj_instance.py +1 -1
  50. pyedb/dotnet/{edb_core → database}/layout_validation.py +2 -2
  51. pyedb/dotnet/{edb_core → database}/materials.py +23 -8
  52. pyedb/dotnet/{edb_core → database}/modeler.py +27 -27
  53. pyedb/dotnet/{edb_core → database}/net_class.py +8 -8
  54. pyedb/dotnet/{edb_core → database}/nets.py +12 -12
  55. pyedb/dotnet/{edb_core → database}/padstack.py +17 -16
  56. pyedb/dotnet/{edb_core → database}/sim_setup_data/data/mesh_operation.py +1 -1
  57. pyedb/dotnet/{edb_core → database}/sim_setup_data/data/settings.py +18 -3
  58. pyedb/dotnet/{edb_core → database}/sim_setup_data/data/sim_setup_info.py +2 -2
  59. pyedb/dotnet/{edb_core → database}/sim_setup_data/data/simulation_settings.py +1 -1
  60. pyedb/dotnet/{edb_core → database}/sim_setup_data/data/siw_dc_ir_settings.py +1 -1
  61. pyedb/dotnet/{edb_core → database}/sim_setup_data/data/sweep_data.py +4 -4
  62. pyedb/dotnet/{edb_core → database}/siwave.py +10 -10
  63. pyedb/dotnet/{edb_core → database}/stackup.py +12 -12
  64. pyedb/dotnet/{edb_core → database}/utilities/hfss_simulation_setup.py +15 -15
  65. pyedb/dotnet/{edb_core → database}/utilities/obj_base.py +1 -1
  66. pyedb/dotnet/{edb_core → database}/utilities/simulation_setup.py +4 -3
  67. pyedb/dotnet/{edb_core → database}/utilities/siwave_simulation_setup.py +6 -6
  68. pyedb/dotnet/edb.py +118 -113
  69. pyedb/extensions/pre_layout_design_toolkit/via_design.py +1151 -0
  70. pyedb/generic/design_types.py +26 -19
  71. pyedb/generic/general_methods.py +1 -1
  72. pyedb/generic/plot.py +0 -2
  73. pyedb/grpc/database/__init__.py +1 -0
  74. pyedb/grpc/database/components.py +2354 -0
  75. pyedb/grpc/database/control_file.py +1277 -0
  76. pyedb/grpc/database/definition/component_def.py +218 -0
  77. pyedb/grpc/database/definition/component_model.py +39 -0
  78. pyedb/grpc/database/definition/component_pin.py +32 -0
  79. pyedb/grpc/database/definition/materials.py +1207 -0
  80. pyedb/grpc/database/definition/n_port_component_model.py +34 -0
  81. pyedb/grpc/database/definition/package_def.py +227 -0
  82. pyedb/grpc/database/definition/padstack_def.py +842 -0
  83. pyedb/grpc/database/definitions.py +70 -0
  84. pyedb/grpc/database/general.py +43 -0
  85. pyedb/grpc/database/geometry/__init__.py +0 -0
  86. pyedb/grpc/database/geometry/arc_data.py +93 -0
  87. pyedb/grpc/database/geometry/point_3d_data.py +79 -0
  88. pyedb/grpc/database/geometry/point_data.py +30 -0
  89. pyedb/grpc/database/geometry/polygon_data.py +133 -0
  90. pyedb/grpc/database/hfss.py +1279 -0
  91. pyedb/grpc/database/hierarchy/__init__.py +0 -0
  92. pyedb/grpc/database/hierarchy/component.py +1301 -0
  93. pyedb/grpc/database/hierarchy/model.py +31 -0
  94. pyedb/grpc/database/hierarchy/netlist_model.py +30 -0
  95. pyedb/grpc/database/hierarchy/pin_pair_model.py +128 -0
  96. pyedb/grpc/database/hierarchy/pingroup.py +245 -0
  97. pyedb/grpc/database/hierarchy/s_parameter_model.py +33 -0
  98. pyedb/grpc/database/hierarchy/spice_model.py +48 -0
  99. pyedb/grpc/database/layers/__init__.py +0 -0
  100. pyedb/grpc/database/layers/layer.py +57 -0
  101. pyedb/grpc/database/layers/stackup_layer.py +410 -0
  102. pyedb/grpc/database/layout/__init__.py +0 -0
  103. pyedb/grpc/database/layout/cell.py +30 -0
  104. pyedb/grpc/database/layout/layout.py +196 -0
  105. pyedb/grpc/database/layout/voltage_regulator.py +149 -0
  106. pyedb/grpc/database/layout_validation.py +319 -0
  107. pyedb/grpc/database/modeler.py +1468 -0
  108. pyedb/grpc/database/net/__init__.py +0 -0
  109. pyedb/grpc/database/net/differential_pair.py +138 -0
  110. pyedb/grpc/database/net/extended_net.py +340 -0
  111. pyedb/grpc/database/net/net.py +198 -0
  112. pyedb/grpc/database/net/net_class.py +93 -0
  113. pyedb/grpc/database/nets.py +633 -0
  114. pyedb/grpc/database/padstacks.py +1500 -0
  115. pyedb/grpc/database/ports/__init__.py +0 -0
  116. pyedb/grpc/database/ports/ports.py +396 -0
  117. pyedb/grpc/database/primitive/__init__.py +3 -0
  118. pyedb/grpc/database/primitive/bondwire.py +181 -0
  119. pyedb/grpc/database/primitive/circle.py +75 -0
  120. pyedb/grpc/database/primitive/padstack_instance.py +1116 -0
  121. pyedb/grpc/database/primitive/path.py +346 -0
  122. pyedb/grpc/database/primitive/polygon.py +276 -0
  123. pyedb/grpc/database/primitive/primitive.py +739 -0
  124. pyedb/grpc/database/primitive/rectangle.py +146 -0
  125. pyedb/grpc/database/simulation_setup/__init__.py +0 -0
  126. pyedb/grpc/database/simulation_setup/adaptive_frequency.py +33 -0
  127. pyedb/grpc/database/simulation_setup/hfss_advanced_meshing_settings.py +32 -0
  128. pyedb/grpc/database/simulation_setup/hfss_advanced_settings.py +59 -0
  129. pyedb/grpc/database/simulation_setup/hfss_dcr_settings.py +35 -0
  130. pyedb/grpc/database/simulation_setup/hfss_general_settings.py +61 -0
  131. pyedb/grpc/database/simulation_setup/hfss_settings_options.py +78 -0
  132. pyedb/grpc/database/simulation_setup/hfss_simulation_settings.py +118 -0
  133. pyedb/grpc/database/simulation_setup/hfss_simulation_setup.py +355 -0
  134. pyedb/grpc/database/simulation_setup/hfss_solver_settings.py +34 -0
  135. pyedb/grpc/database/simulation_setup/mesh_operation.py +34 -0
  136. pyedb/grpc/database/simulation_setup/raptor_x_advanced_settings.py +34 -0
  137. pyedb/grpc/database/simulation_setup/raptor_x_general_settings.py +33 -0
  138. pyedb/grpc/database/simulation_setup/raptor_x_simulation_settings.py +64 -0
  139. pyedb/grpc/database/simulation_setup/raptor_x_simulation_setup.py +125 -0
  140. pyedb/grpc/database/simulation_setup/siwave_dcir_simulation_setup.py +34 -0
  141. pyedb/grpc/database/simulation_setup/siwave_simulation_setup.py +119 -0
  142. pyedb/grpc/database/simulation_setup/sweep_data.py +32 -0
  143. pyedb/grpc/database/siwave.py +1023 -0
  144. pyedb/grpc/database/source_excitations.py +2572 -0
  145. pyedb/grpc/database/stackup.py +2574 -0
  146. pyedb/grpc/database/terminal/__init__.py +0 -0
  147. pyedb/grpc/database/terminal/bundle_terminal.py +218 -0
  148. pyedb/grpc/database/terminal/edge_terminal.py +51 -0
  149. pyedb/grpc/database/terminal/padstack_instance_terminal.py +171 -0
  150. pyedb/grpc/database/terminal/pingroup_terminal.py +162 -0
  151. pyedb/grpc/database/terminal/point_terminal.py +99 -0
  152. pyedb/grpc/database/terminal/terminal.py +470 -0
  153. pyedb/grpc/database/utility/__init__.py +3 -0
  154. pyedb/grpc/database/utility/constants.py +25 -0
  155. pyedb/grpc/database/utility/heat_sink.py +124 -0
  156. pyedb/grpc/database/utility/hfss_extent_info.py +448 -0
  157. pyedb/grpc/database/utility/layout_statistics.py +277 -0
  158. pyedb/grpc/database/utility/rlc.py +80 -0
  159. pyedb/grpc/database/utility/simulation_configuration.py +3305 -0
  160. pyedb/grpc/database/utility/sources.py +388 -0
  161. pyedb/grpc/database/utility/sweep_data_distribution.py +83 -0
  162. pyedb/grpc/database/utility/xml_control_file.py +1277 -0
  163. pyedb/grpc/edb.py +4151 -0
  164. pyedb/grpc/edb_init.py +481 -0
  165. pyedb/grpc/rpc_session.py +177 -0
  166. pyedb/ipc2581/ecad/cad_data/assembly_drawing.py +3 -2
  167. pyedb/ipc2581/ecad/cad_data/feature.py +4 -3
  168. pyedb/ipc2581/ecad/cad_data/layer_feature.py +32 -20
  169. pyedb/ipc2581/ecad/cad_data/outline.py +3 -2
  170. pyedb/ipc2581/ecad/cad_data/package.py +4 -3
  171. pyedb/ipc2581/ecad/cad_data/path.py +82 -31
  172. pyedb/ipc2581/ecad/cad_data/polygon.py +122 -60
  173. pyedb/ipc2581/ecad/cad_data/profile.py +13 -12
  174. pyedb/ipc2581/ecad/cad_data/step.py +52 -20
  175. pyedb/ipc2581/ipc2581.py +47 -49
  176. pyedb/modeler/geometry_operators.py +1 -1
  177. {pyedb-0.37.0.dist-info → pyedb-0.39.0.dist-info}/METADATA +9 -6
  178. pyedb-0.39.0.dist-info/RECORD +288 -0
  179. pyedb-0.37.0.dist-info/RECORD +0 -194
  180. /pyedb/dotnet/{edb_core → database}/__init__.py +0 -0
  181. /pyedb/dotnet/{application → database/cell}/__init__.py +0 -0
  182. /pyedb/dotnet/{edb_core/cell → database/cell/hierarchy}/__init__.py +0 -0
  183. /pyedb/dotnet/{edb_core → database}/cell/hierarchy/netlist_model.py +0 -0
  184. /pyedb/dotnet/{edb_core → database}/cell/hierarchy/pin_pair_model.py +0 -0
  185. /pyedb/dotnet/{edb_core → database}/cell/hierarchy/s_parameter_model.py +0 -0
  186. /pyedb/dotnet/{edb_core → database}/cell/hierarchy/spice_model.py +0 -0
  187. /pyedb/dotnet/{edb_core → database}/cell/primitive/__init__.py +0 -0
  188. /pyedb/dotnet/{edb_core/cell/hierarchy → database/cell/terminal}/__init__.py +0 -0
  189. /pyedb/dotnet/{edb_core/cell/terminal → database/definition}/__init__.py +0 -0
  190. /pyedb/dotnet/{edb_core/definition → database/dotnet}/__init__.py +0 -0
  191. /pyedb/dotnet/{edb_core/dotnet → database/edb_data}/__init__.py +0 -0
  192. /pyedb/dotnet/{edb_core → database}/edb_data/design_options.py +0 -0
  193. /pyedb/dotnet/{edb_core → database}/edb_data/edbvalue.py +0 -0
  194. /pyedb/dotnet/{edb_core → database}/edb_data/layer_data.py +0 -0
  195. /pyedb/dotnet/{edb_core → database}/edb_data/utilities.py +0 -0
  196. /pyedb/dotnet/{edb_core → database}/general.py +0 -0
  197. /pyedb/dotnet/{edb_core/edb_data → database/geometry}/__init__.py +0 -0
  198. /pyedb/dotnet/{edb_core → database}/geometry/point_data.py +0 -0
  199. /pyedb/dotnet/{edb_core → database}/sim_setup_data/__init__.py +0 -0
  200. /pyedb/dotnet/{edb_core → database}/sim_setup_data/data/__init__.py +0 -0
  201. /pyedb/dotnet/{edb_core → database}/sim_setup_data/data/adaptive_frequency_data.py +0 -0
  202. /pyedb/dotnet/{edb_core/geometry → database/sim_setup_data/io}/__init__.py +0 -0
  203. /pyedb/dotnet/{edb_core → database}/sim_setup_data/io/siwave.py +0 -0
  204. /pyedb/dotnet/{edb_core → database}/utilities/__init__.py +0 -0
  205. /pyedb/dotnet/{edb_core → database}/utilities/heatsink.py +0 -0
  206. /pyedb/{dotnet/edb_core/sim_setup_data/io → grpc/database/definition}/__init__.py +0 -0
  207. {pyedb-0.37.0.dist-info → pyedb-0.39.0.dist-info}/LICENSE +0 -0
  208. {pyedb-0.37.0.dist-info → pyedb-0.39.0.dist-info}/WHEEL +0 -0
@@ -279,7 +279,7 @@ class ControlFileStackup:
279
279
 
280
280
  Returns
281
281
  -------
282
- list of :class:`pyedb.dotnet.edb_core.edb_data.control_file.ControlFileVia`
282
+ list of :class:`pyedb.dotnet.database.edb_data.control_file.ControlFileVia`
283
283
 
284
284
  """
285
285
  return self._vias
@@ -290,7 +290,7 @@ class ControlFileStackup:
290
290
 
291
291
  Returns
292
292
  -------
293
- list of :class:`pyedb.dotnet.edb_core.edb_data.control_file.ControlFileMaterial`
293
+ list of :class:`pyedb.dotnet.database.edb_data.control_file.ControlFileMaterial`
294
294
 
295
295
  """
296
296
  return self._materials
@@ -301,7 +301,7 @@ class ControlFileStackup:
301
301
 
302
302
  Returns
303
303
  -------
304
- list of :class:`pyedb.dotnet.edb_core.edb_data.control_file.ControlFileLayer`
304
+ list of :class:`pyedb.dotnet.database.edb_data.control_file.ControlFileLayer`
305
305
 
306
306
  """
307
307
  return self._dielectrics
@@ -312,7 +312,7 @@ class ControlFileStackup:
312
312
 
313
313
  Returns
314
314
  -------
315
- list of :class:`pyedb.dotnet.edb_core.edb_data.control_file.ControlFileLayer`
315
+ list of :class:`pyedb.dotnet.database.edb_data.control_file.ControlFileLayer`
316
316
 
317
317
  """
318
318
  return self._layers
@@ -346,7 +346,7 @@ class ControlFileStackup:
346
346
 
347
347
  Returns
348
348
  -------
349
- :class:`pyedb.dotnet.edb_core.edb_data.control_file.ControlFileMaterial`
349
+ :class:`pyedb.dotnet.database.edb_data.control_file.ControlFileMaterial`
350
350
  """
351
351
  if isinstance(properties, dict):
352
352
  self._materials[material_name] = ControlFileMaterial(material_name, properties)
@@ -400,7 +400,7 @@ class ControlFileStackup:
400
400
 
401
401
  Returns
402
402
  -------
403
- :class:`pyedb.dotnet.edb_core.edb_data.control_file.ControlFileLayer`
403
+ :class:`pyedb.dotnet.database.edb_data.control_file.ControlFileLayer`
404
404
  """
405
405
  if isinstance(properties, dict):
406
406
  self._layers.append(ControlFileLayer(layer_name, properties))
@@ -453,7 +453,7 @@ class ControlFileStackup:
453
453
 
454
454
  Returns
455
455
  -------
456
- :class:`pyedb.dotnet.edb_core.edb_data.control_file.ControlFileDielectric`
456
+ :class:`pyedb.dotnet.database.edb_data.control_file.ControlFileDielectric`
457
457
  """
458
458
  if isinstance(properties, dict):
459
459
  self._dielectrics.append(ControlFileDielectric(layer_name, properties))
@@ -531,7 +531,7 @@ class ControlFileStackup:
531
531
 
532
532
  Returns
533
533
  -------
534
- :class:`pyedb.dotnet.edb_core.edb_data.control_file.ControlFileVia`
534
+ :class:`pyedb.dotnet.database.edb_data.control_file.ControlFileVia`
535
535
  """
536
536
  if isinstance(properties, dict):
537
537
  self._vias.append(ControlFileVia(layer_name, properties))
@@ -817,7 +817,7 @@ class ControlFileBoundaries:
817
817
 
818
818
  Returns
819
819
  -------
820
- :class:`pyedb.dotnet.edb_core.edb_data.control_file.ControlCircuitPt`
820
+ :class:`pyedb.dotnet.database.edb_data.control_file.ControlCircuitPt`
821
821
  """
822
822
  self.ports[name] = ControlCircuitPt(name, str(x1), str(y1), layer1, str(x2), str(y2), layer2, str(z0))
823
823
  return self.ports[name]
@@ -1004,7 +1004,7 @@ class ControlFileSetup:
1004
1004
 
1005
1005
  Returns
1006
1006
  -------
1007
- :class:`pyedb.dotnet.edb_core.edb_data.control_file.ControlFileSweep`
1007
+ :class:`pyedb.dotnet.database.edb_data.control_file.ControlFileSweep`
1008
1008
  """
1009
1009
  self.sweeps.append(ControlFileSweep(name, start, stop, step, sweep_type, step_type, use_q3d))
1010
1010
  return self.sweeps[-1]
@@ -1025,7 +1025,7 @@ class ControlFileSetup:
1025
1025
 
1026
1026
  Returns
1027
1027
  -------
1028
- :class:`pyedb.dotnet.edb_core.edb_data.control_file.ControlFileMeshOp`
1028
+ :class:`pyedb.dotnet.database.edb_data.control_file.ControlFileMeshOp`
1029
1029
 
1030
1030
  """
1031
1031
  mop = ControlFileMeshOp(name, region, type, nets_layers)
@@ -1099,7 +1099,7 @@ class ControlFileSetups:
1099
1099
 
1100
1100
  Returns
1101
1101
  -------
1102
- :class:`pyedb.dotnet.edb_core.edb_data.control_file.ControlFileSetup`
1102
+ :class:`pyedb.dotnet.database.edb_data.control_file.ControlFileSetup`
1103
1103
  """
1104
1104
  setup = ControlFileSetup(name, adapt_freq, maxdelta, maxpasses)
1105
1105
  self.setups.append(setup)
@@ -20,9 +20,9 @@
20
20
  # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  # SOFTWARE.
22
22
 
23
- from pyedb.dotnet.edb_core.edb_data.edbvalue import EdbValue
24
- from pyedb.dotnet.edb_core.edb_data.primitives_data import cast
25
- from pyedb.dotnet.edb_core.general import convert_pytuple_to_nettuple, pascal_to_snake
23
+ from pyedb.dotnet.database.edb_data.edbvalue import EdbValue
24
+ from pyedb.dotnet.database.edb_data.primitives_data import cast
25
+ from pyedb.dotnet.database.general import convert_pytuple_to_nettuple, pascal_to_snake
26
26
 
27
27
 
28
28
  class HfssExtentInfo:
@@ -75,7 +75,7 @@ class HfssExtentInfo:
75
75
  """Size of horizontal extent for the air box.
76
76
 
77
77
  Returns:
78
- dotnet.edb_core.edb_data.edbvalue.EdbValue
78
+ dotnet.database.edb_data.edbvalue.EdbValue
79
79
  """
80
80
  return self._edb_hfss_extent_info.AirBoxHorizontalExtent.Item1
81
81
 
@@ -141,7 +141,7 @@ class HfssExtentInfo:
141
141
 
142
142
  Returns
143
143
  -------
144
- :class:`dotnet.edb_core.edb_data.primitives_data.EDBPrimitive`
144
+ :class:`dotnet.database.edb_data.primitives_data.EDBPrimitive`
145
145
  """
146
146
  return cast(self._edb_hfss_extent_info.BasePolygon, self._pedb)
147
147
 
@@ -157,7 +157,7 @@ class HfssExtentInfo:
157
157
 
158
158
  Returns
159
159
  -------
160
- :class:`dotnet.edb_core.edb_data.primitives_data.EDBPrimitive`
160
+ :class:`dotnet.database.edb_data.primitives_data.EDBPrimitive`
161
161
  """
162
162
  return cast(self._edb_hfss_extent_info.DielectricBasePolygon, self._pedb)
163
163
 
@@ -251,7 +251,7 @@ class HfssExtentInfo:
251
251
 
252
252
  Returns
253
253
  -------
254
- pyedb.dotnet.edb_core.edb_data.edbvalue.EdbValue
254
+ pyedb.dotnet.database.edb_data.edbvalue.EdbValue
255
255
  """
256
256
  return EdbValue(self._edb_hfss_extent_info.OperatingFreq)
257
257
 
@@ -19,13 +19,13 @@
19
19
  # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
20
  # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  # SOFTWARE.
22
- from pyedb.dotnet.edb_core.dotnet.database import (
22
+ from pyedb.dotnet.database.dotnet.database import (
23
23
  DifferentialPairDotNet,
24
24
  ExtendedNetDotNet,
25
25
  NetClassDotNet,
26
26
  NetDotNet,
27
27
  )
28
- from pyedb.dotnet.edb_core.edb_data.padstacks_data import EDBPadstackInstance
28
+ from pyedb.dotnet.database.edb_data.padstacks_data import EDBPadstackInstance
29
29
 
30
30
 
31
31
  class EDBNetsData(NetDotNet):
@@ -55,9 +55,9 @@ class EDBNetsData(NetDotNet):
55
55
 
56
56
  Returns
57
57
  -------
58
- list of :class:`pyedb.dotnet.edb_core.edb_data.primitives_data.EDBPrimitives`
58
+ list of :class:`pyedb.dotnet.database.edb_data.primitives_data.EDBPrimitives`
59
59
  """
60
- from pyedb.dotnet.edb_core.cell.layout import primitive_cast
60
+ from pyedb.dotnet.database.cell.layout import primitive_cast
61
61
 
62
62
  return [primitive_cast(self._app, i) for i in self.net_object.Primitives if i]
63
63
  # return [self._app.layout.find_object_by_id(i.GetId()) for i in self.net_object.Primitives]
@@ -68,7 +68,7 @@ class EDBNetsData(NetDotNet):
68
68
 
69
69
  Returns
70
70
  -------
71
- list of :class:`pyedb.dotnet.edb_core.edb_data.padstacks_data.EDBPadstackInstance`"""
71
+ list of :class:`pyedb.dotnet.database.edb_data.padstacks_data.EDBPadstackInstance`"""
72
72
  # name = self.name
73
73
  # return [
74
74
  # EDBPadstackInstance(i, self._app) for i in self.net_object.PadstackInstances if i.GetNet().GetName() == name
@@ -81,7 +81,7 @@ class EDBNetsData(NetDotNet):
81
81
 
82
82
  Returns
83
83
  -------
84
- dict[str, :class:`pyedb.dotnet.edb_core.cell.hierarchy.component.EDBComponent`]
84
+ dict[str, :class:`pyedb.dotnet.database.cell.hierarchy.component.EDBComponent`]
85
85
  """
86
86
  comps = {}
87
87
  for p in self.padstack_instances:
@@ -113,9 +113,8 @@ class EDBNetsData(NetDotNet):
113
113
  show_legend=True,
114
114
  save_plot=None,
115
115
  outline=None,
116
- size=(6000, 3000),
116
+ size=(2000, 1000),
117
117
  show=True,
118
- plot_vias=True,
119
118
  ):
120
119
  """Plot a net to Matplotlib 2D chart.
121
120
 
@@ -135,9 +134,6 @@ class EDBNetsData(NetDotNet):
135
134
  Image size in pixel (width, height).
136
135
  show : bool, optional
137
136
  Whether to show the plot or not. Default is `True`.
138
- plot_vias : bool, optional
139
- Whether to plot vias or not. It may impact on performances.
140
- Default is `True`.
141
137
  """
142
138
 
143
139
  return self._app.nets.plot(
@@ -148,7 +144,8 @@ class EDBNetsData(NetDotNet):
148
144
  outline=outline,
149
145
  size=size,
150
146
  show=show,
151
- plot_vias=plot_vias,
147
+ plot_vias=True,
148
+ plot_components=True,
152
149
  )
153
150
 
154
151
  def get_smallest_trace_width(self):
@@ -173,7 +170,7 @@ class EDBNetsData(NetDotNet):
173
170
 
174
171
  Returns
175
172
  -------
176
- :class:` :class:`pyedb.dotnet.edb_core.edb_data.nets_data.EDBExtendedNetData`
173
+ :class:` :class:`pyedb.dotnet.database.edb_data.nets_data.EDBExtendedNetData`
177
174
 
178
175
  Examples
179
176
  --------
@@ -24,18 +24,17 @@ from collections import OrderedDict
24
24
  import math
25
25
  import warnings
26
26
 
27
- import numpy as np
28
-
29
27
  from pyedb.dotnet.clr_module import String
30
- from pyedb.dotnet.edb_core.cell.primitive.primitive import Primitive
31
- from pyedb.dotnet.edb_core.dotnet.database import PolygonDataDotNet
32
- from pyedb.dotnet.edb_core.edb_data.edbvalue import EdbValue
33
- from pyedb.dotnet.edb_core.general import (
28
+ from pyedb.dotnet.database.cell.primitive.primitive import Primitive
29
+ from pyedb.dotnet.database.dotnet.database import PolygonDataDotNet
30
+ from pyedb.dotnet.database.edb_data.edbvalue import EdbValue
31
+ from pyedb.dotnet.database.general import (
34
32
  PadGeometryTpe,
35
33
  convert_py_list_to_net_list,
36
34
  pascal_to_snake,
37
35
  snake_to_pascal,
38
36
  )
37
+ from pyedb.dotnet.database.geometry.polygon_data import PolygonData
39
38
  from pyedb.generic.general_methods import generate_unique_name
40
39
  from pyedb.modeler.geometry_operators import GeometryOperators
41
40
 
@@ -157,6 +156,24 @@ class EDBPadProperties(object):
157
156
  def polygon_data(self):
158
157
  """Parameters.
159
158
 
159
+ Returns
160
+ -------
161
+ list
162
+ List of parameters.
163
+ """
164
+
165
+ flag, edb_object, _, _, _ = self._edb_padstack.GetData().GetPolygonalPadParameters(
166
+ self.layer_name, self.int_to_pad_type(self.pad_type)
167
+ )
168
+ if flag:
169
+ return PolygonData(self._edb._app, edb_object)
170
+ else: # pragma no cover
171
+ raise AttributeError("No polygon data.")
172
+
173
+ @property
174
+ def _polygon_data_dotnet(self):
175
+ """Parameters.
176
+
160
177
  Returns
161
178
  -------
162
179
  list
@@ -782,7 +799,7 @@ class EDBPadstack(object):
782
799
  pdef_data.SetHoleRange(getattr(self._edb.definition.PadstackHoleRange, snake_to_pascal(value)))
783
800
  self._padstack_def_data = pdef_data
784
801
 
785
- def convert_to_3d_microvias(self, convert_only_signal_vias=True, hole_wall_angle=15, delete_padstack_def=True):
802
+ def convert_to_3d_microvias(self, convert_only_signal_vias=True, hole_wall_angle=75, delete_padstack_def=True):
786
803
  """Convert actual padstack instance to microvias 3D Objects with a given aspect ratio.
787
804
 
788
805
  Parameters
@@ -814,22 +831,9 @@ class EDBPadstack(object):
814
831
  layer_names = [i for i in list(layers.keys())]
815
832
  if convert_only_signal_vias:
816
833
  signal_nets = [i for i in list(self._ppadstack._pedb.nets.signal_nets.keys())]
817
- topl, topz, bottoml, bottomz = self._ppadstack._pedb.stackup.limits(True)
818
- if self.via_start_layer in layers:
819
- start_elevation = layers[self.via_start_layer].lower_elevation
820
- else:
821
- start_elevation = layers[self.instances[0].start_layer].lower_elevation
822
- if self.via_stop_layer in layers:
823
- stop_elevation = layers[self.via_stop_layer].upper_elevation
824
- else:
825
- stop_elevation = layers[self.instances[0].stop_layer].upper_elevation
826
834
 
827
- diel_thick = abs(start_elevation - stop_elevation)
828
- rad1 = self.hole_properties[0] / 2 - math.tan(hole_wall_angle * diel_thick * math.pi / 180)
829
- rad2 = self.hole_properties[0] / 2
835
+ layer_count = len(self._ppadstack._pedb.stackup.signal_layers)
830
836
 
831
- if start_elevation < (topz + bottomz) / 2:
832
- rad1, rad2 = rad2, rad1
833
837
  i = 0
834
838
  for via in list(self.padstack_instances.values()):
835
839
  if convert_only_signal_vias and via.net_name in signal_nets or not convert_only_signal_vias:
@@ -865,18 +869,33 @@ class EDBPadstack(object):
865
869
  self._get_edb_value(pos[1]),
866
870
  self._get_edb_value(self.pad_by_layer[self.via_stop_layer].parameters_values[0] / 2),
867
871
  )
868
- for layer_name in layer_names:
872
+ for layer_idx, layer_name in enumerate(layer_names):
869
873
  stop = ""
870
874
  if layer_name == via.start_layer or started:
871
875
  start = layer_name
872
876
  stop = layer_names[layer_names.index(layer_name) + 1]
877
+
878
+ start_elevation = layers[start].lower_elevation
879
+ stop_elevation = layers[stop].upper_elevation
880
+ diel_thick = abs(start_elevation - stop_elevation)
881
+
882
+ rad_large = self.hole_diameter / 2
883
+ rad_small = rad_large - diel_thick * 1 / math.tan(math.radians(hole_wall_angle))
884
+
885
+ if layer_idx + 1 < layer_count / 2: # upper half of stack
886
+ rad_u = rad_large
887
+ rad_l = rad_small
888
+ else:
889
+ rad_u = rad_small
890
+ rad_l = rad_large
891
+
873
892
  cloned_circle = self._edb.cell.primitive.circle.create(
874
893
  layout,
875
894
  start,
876
895
  via._edb_padstackinstance.GetNet(),
877
896
  self._get_edb_value(pos[0]),
878
897
  self._get_edb_value(pos[1]),
879
- self._get_edb_value(rad1),
898
+ self._get_edb_value(rad_u),
880
899
  )
881
900
  cloned_circle2 = self._edb.cell.primitive.circle.create(
882
901
  layout,
@@ -884,7 +903,7 @@ class EDBPadstack(object):
884
903
  via._edb_padstackinstance.GetNet(),
885
904
  self._get_edb_value(pos[0]),
886
905
  self._get_edb_value(pos[1]),
887
- self._get_edb_value(rad2),
906
+ self._get_edb_value(rad_l),
888
907
  )
889
908
  s3d = self._edb.cell.hierarchy._hierarchy.Structure3D.Create(
890
909
  layout, generate_unique_name("via3d_" + via.aedt_name.replace("via_", ""), n=3)
@@ -912,7 +931,7 @@ class EDBPadstack(object):
912
931
 
913
932
  Returns
914
933
  -------
915
- List of :class:`pyedb.dotnet.edb_core.padstackEDBPadstack`
934
+ List of :class:`pyedb.dotnet.database.padstackEDBPadstack`
916
935
  """
917
936
  if self.via_start_layer == self.via_stop_layer:
918
937
  self._ppadstack._pedb.logger.error("Microvias cannot be applied when Start and Stop Layers are the same.")
@@ -1181,13 +1200,13 @@ class EDBPadstackInstance(Primitive):
1181
1200
 
1182
1201
  Returns
1183
1202
  -------
1184
- :class:`pyedb.dotnet.edb_core.edb_data.terminals`
1203
+ :class:`pyedb.dotnet.database.edb_data.terminals`
1185
1204
  """
1186
1205
  warnings.warn("Use new property :func:`terminal` instead.", DeprecationWarning)
1187
1206
  if create_new_terminal:
1188
1207
  term = self._create_terminal(name)
1189
1208
  else:
1190
- from pyedb.dotnet.edb_core.cell.terminal.padstack_instance_terminal import (
1209
+ from pyedb.dotnet.database.cell.terminal.padstack_instance_terminal import (
1191
1210
  PadstackInstanceTerminal,
1192
1211
  )
1193
1212
 
@@ -1198,7 +1217,7 @@ class EDBPadstackInstance(Primitive):
1198
1217
  @property
1199
1218
  def terminal(self):
1200
1219
  """Terminal."""
1201
- from pyedb.dotnet.edb_core.cell.terminal.padstack_instance_terminal import (
1220
+ from pyedb.dotnet.database.cell.terminal.padstack_instance_terminal import (
1202
1221
  PadstackInstanceTerminal,
1203
1222
  )
1204
1223
 
@@ -1212,7 +1231,7 @@ class EDBPadstackInstance(Primitive):
1212
1231
 
1213
1232
  def create_terminal(self, name=None):
1214
1233
  """Create a padstack instance terminal"""
1215
- from pyedb.dotnet.edb_core.cell.terminal.padstack_instance_terminal import (
1234
+ from pyedb.dotnet.database.cell.terminal.padstack_instance_terminal import (
1216
1235
  PadstackInstanceTerminal,
1217
1236
  )
1218
1237
 
@@ -1232,9 +1251,9 @@ class EDBPadstackInstance(Primitive):
1232
1251
  ----------
1233
1252
  name : str, optional
1234
1253
  Name of the port. The default is ``None``, in which case a name is automatically assigned.
1235
- reference : class:`pyedb.dotnet.edb_core.edb_data.nets_data.EDBNetsData`, \
1236
- class:`pyedb.dotnet.edb_core.edb_data.padstacks_data.EDBPadstackInstance`, \
1237
- class:`pyedb.dotnet.edb_core.edb_data.sources.PinGroup`, optional
1254
+ reference : class:`pyedb.dotnet.database.edb_data.nets_data.EDBNetsData`, \
1255
+ class:`pyedb.dotnet.database.edb_data.padstacks_data.EDBPadstackInstance`, \
1256
+ class:`pyedb.dotnet.database.edb_data.sources.PinGroup`, optional
1238
1257
  Negative terminal of the port.
1239
1258
  is_circuit_port : bool, optional
1240
1259
  Whether it is a circuit port.
@@ -1249,47 +1268,15 @@ class EDBPadstackInstance(Primitive):
1249
1268
 
1250
1269
  return self._pedb.create_port(terminal, ref_terminal, is_circuit_port)
1251
1270
 
1252
- def _set_equipotential(self, contact_radius=None, inline=False, num_of_contact=1):
1271
+ def _set_equipotential(self, contact_radius=None):
1253
1272
  """Workaround solution. Remove when EDBAPI bug is fixed for dcir_equipotential_region."""
1254
1273
  pad = self.definition.pad_by_layer[self.start_layer]
1255
1274
 
1256
1275
  pos_x, pos_y = self.position
1257
- comp_rotation = self._pedb.edb_value(self.component.rotation).ToDouble() % 3.141592653589793
1258
1276
 
1259
1277
  if contact_radius is not None:
1260
- if num_of_contact == 1:
1261
- prim = self._pedb.modeler.create_circle(pad.layer_name, pos_x, pos_y, contact_radius, self.net_name)
1262
- prim.dcir_equipotential_region = True
1263
- else:
1264
- if pad.shape.lower() in ["rectangle", "oval"]:
1265
- width, height = pad.parameters_values[0:2]
1266
- radius = self._pedb.edb_value(contact_radius).ToDouble()
1267
- else:
1268
- return
1269
-
1270
- if inline is False:
1271
- x_offset = width / 2 - radius if comp_rotation == 0 else height / 2 - radius
1272
- y_offset = height / 2 - radius if comp_rotation == 0 else width / 2 - radius
1273
- positions = []
1274
- for x, y in [[1, 1], [-1, 1], [1, -1], [-1, -1]]:
1275
- positions.append([x_offset * x, y_offset * y])
1276
- else:
1277
- if width > height:
1278
- offset = (width - radius * 2) / (num_of_contact - 1)
1279
- else:
1280
- offset = (height - radius * 2) / (num_of_contact - 1)
1281
-
1282
- start_pos = (num_of_contact - 1) / 2
1283
- offset = [offset * i for i in np.arange(start_pos * -1, start_pos + 1)]
1284
-
1285
- if (width > height and comp_rotation == 0) or (width < height and comp_rotation != 0):
1286
- positions = list(zip(offset, [0] * num_of_contact))
1287
- else:
1288
- positions = list(zip([0] * num_of_contact, offset))
1289
-
1290
- for x, y in positions:
1291
- prim = self._pedb.modeler.create_circle(pad.layer_name, pos_x + x, pos_y + y, radius, self.net_name)
1292
- prim.dcir_equipotential_region = True
1278
+ prim = self._pedb.modeler.create_circle(pad.layer_name, pos_x, pos_y, contact_radius, self.net_name)
1279
+ prim.dcir_equipotential_region = True
1293
1280
  return
1294
1281
 
1295
1282
  elif pad.shape.lower() == "circle":
@@ -1670,7 +1657,7 @@ class EDBPadstackInstance(Primitive):
1670
1657
  @property
1671
1658
  def component(self):
1672
1659
  """Component."""
1673
- from pyedb.dotnet.edb_core.cell.hierarchy.component import EDBComponent
1660
+ from pyedb.dotnet.database.cell.hierarchy.component import EDBComponent
1674
1661
 
1675
1662
  comp = EDBComponent(self._pedb, self._edb_object.GetComponent())
1676
1663
  return comp if not comp.is_null else False
@@ -1940,7 +1927,7 @@ class EDBPadstackInstance(Primitive):
1940
1927
 
1941
1928
  Returns
1942
1929
  -------
1943
- bool, List, :class:`pyedb.dotnet.edb_core.edb_data.primitives.EDBPrimitives`
1930
+ bool, List, :class:`pyedb.dotnet.database.edb_data.primitives.EDBPrimitives`
1944
1931
  Polygon when successful, ``False`` when failed, list of list if `return_points=True`.
1945
1932
 
1946
1933
  Examples
@@ -1970,7 +1957,7 @@ class EDBPadstackInstance(Primitive):
1970
1957
 
1971
1958
  pad_shape = padstack_pad.geometry_type
1972
1959
  params = padstack_pad.parameters_values
1973
- polygon_data = padstack_pad.polygon_data
1960
+ polygon_data = padstack_pad._polygon_data_dotnet
1974
1961
 
1975
1962
  def _rotate(p):
1976
1963
  x = p[0] * math.cos(rotation) - p[1] * math.sin(rotation)
@@ -2087,8 +2074,8 @@ class EDBPadstackInstance(Primitive):
2087
2074
  # Polygon
2088
2075
  points = []
2089
2076
  i = 0
2090
- while i < polygon_data.edb_api.Count:
2091
- point = polygon_data.edb_api.GetPoint(i)
2077
+ while i < polygon_data._edb_object.Count:
2078
+ point = polygon_data._edb_object.GetPoint(i)
2092
2079
  i += 1
2093
2080
  if point.IsArc():
2094
2081
  continue
@@ -2138,7 +2125,7 @@ class EDBPadstackInstance(Primitive):
2138
2125
  Returns
2139
2126
  -------
2140
2127
  list
2141
- List of :class:`dotnet.edb_core.edb_data.padstacks_data.EDBPadstackInstance`.
2128
+ List of :class:`dotnet.database.edb_data.padstacks_data.EDBPadstackInstance`.
2142
2129
 
2143
2130
  Examples
2144
2131
  --------
@@ -20,12 +20,12 @@
20
20
  # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  # SOFTWARE.
22
22
 
23
- from pyedb.dotnet.edb_core.cell.terminal.bundle_terminal import BundleTerminal
24
- from pyedb.dotnet.edb_core.cell.terminal.edge_terminal import EdgeTerminal
25
- from pyedb.dotnet.edb_core.cell.terminal.padstack_instance_terminal import (
23
+ from pyedb.dotnet.database.cell.terminal.bundle_terminal import BundleTerminal
24
+ from pyedb.dotnet.database.cell.terminal.edge_terminal import EdgeTerminal
25
+ from pyedb.dotnet.database.cell.terminal.padstack_instance_terminal import (
26
26
  PadstackInstanceTerminal,
27
27
  )
28
- from pyedb.dotnet.edb_core.cell.terminal.terminal import Terminal
28
+ from pyedb.dotnet.database.cell.terminal.terminal import Terminal
29
29
 
30
30
 
31
31
  class GapPort(EdgeTerminal):
@@ -22,14 +22,14 @@
22
22
 
23
23
  import math
24
24
 
25
- from pyedb.dotnet.edb_core.cell.primitive.primitive import Primitive
26
- from pyedb.dotnet.edb_core.dotnet.primitive import (
25
+ from pyedb.dotnet.database.cell.primitive.primitive import Primitive
26
+ from pyedb.dotnet.database.dotnet.primitive import (
27
27
  BondwireDotNet,
28
28
  CircleDotNet,
29
29
  RectangleDotNet,
30
30
  TextDotNet,
31
31
  )
32
- from pyedb.dotnet.edb_core.geometry.polygon_data import PolygonData
32
+ from pyedb.dotnet.database.geometry.polygon_data import PolygonData
33
33
  from pyedb.modeler.geometry_operators import GeometryOperators
34
34
 
35
35
 
@@ -283,7 +283,7 @@ class EdbPolygon(Primitive):
283
283
  #
284
284
  # Parameters
285
285
  # ----------
286
- # point_list : list or :class:`dotnet.edb_core.edb_data.primitives_data.Primitive` or EDB Primitive Object
286
+ # point_list : list or :class:`dotnet.database.edb_data.primitives_data.Primitive` or EDB Primitive Object
287
287
  # Point list in the format of `[[x1,y1], [x2,y2],..,[xn,yn]]`.
288
288
  #
289
289
  # Returns
@@ -308,7 +308,7 @@ class EdbPolygon(Primitive):
308
308
 
309
309
  @property
310
310
  def polygon_data(self):
311
- """:class:`pyedb.dotnet.edb_core.dotnet.database.PolygonDataDotNet`: Outer contour of the Polygon object."""
311
+ """:class:`pyedb.dotnet.database.dotnet.database.PolygonDataDotNet`: Outer contour of the Polygon object."""
312
312
  return PolygonData(self._pedb, self._edb_object.GetPolygonData())
313
313
 
314
314
  @polygon_data.setter
@@ -19,9 +19,9 @@
19
19
  # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
20
  # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  # SOFTWARE.
22
- from pyedb.dotnet.edb_core.general import convert_py_list_to_net_list
23
- from pyedb.dotnet.edb_core.sim_setup_data.data.sweep_data import SweepData
24
- from pyedb.dotnet.edb_core.utilities.simulation_setup import SimulationSetup
22
+ from pyedb.dotnet.database.general import convert_py_list_to_net_list
23
+ from pyedb.dotnet.database.sim_setup_data.data.sweep_data import SweepData
24
+ from pyedb.dotnet.database.utilities.simulation_setup import SimulationSetup
25
25
  from pyedb.generic.general_methods import generate_unique_name
26
26
 
27
27
 
@@ -80,7 +80,7 @@ class RaptorXSimulationSetup(SimulationSetup):
80
80
 
81
81
  Returns
82
82
  -------
83
- :class:`pyedb.dotnet.edb_core.edb_data.simulation_setup.EdbFrequencySweep`
83
+ :class:`pyedb.dotnet.database.edb_data.simulation_setup.EdbFrequencySweep`
84
84
 
85
85
  Examples
86
86
  --------
@@ -25,8 +25,8 @@ import json
25
25
  import os
26
26
 
27
27
  from pyedb.dotnet.clr_module import Dictionary
28
- from pyedb.dotnet.edb_core.edb_data.sources import Source, SourceType
29
- from pyedb.dotnet.edb_core.utilities.simulation_setup import AdaptiveType
28
+ from pyedb.dotnet.database.edb_data.sources import Source, SourceType
29
+ from pyedb.dotnet.database.utilities.simulation_setup import AdaptiveType
30
30
  from pyedb.generic.constants import (
31
31
  BasisOrder,
32
32
  CutoutSubdesignType,
@@ -513,7 +513,7 @@ class SimulationConfigurationBatch(object):
513
513
 
514
514
  Returns
515
515
  -------
516
- :class:`dotnet.edb_core.edb_data.sources.Source`
516
+ :class:`dotnet.database.edb_data.sources.Source`
517
517
  """
518
518
  return self._sources
519
519
 
@@ -530,7 +530,7 @@ class SimulationConfigurationBatch(object):
530
530
 
531
531
  Parameters
532
532
  ----------
533
- source : :class:`pyedb.dotnet.edb_core.edb_data.sources.Source`
533
+ source : :class:`pyedb.dotnet.database.edb_data.sources.Source`
534
534
 
535
535
  """
536
536
  if isinstance(source, Source):
@@ -1911,7 +1911,7 @@ class SimulationConfigurationAc(object):
1911
1911
 
1912
1912
  Returns
1913
1913
  -------
1914
- class: pyedb.dotnet.edb_core.edb_data.simulation_setup.AdaptiveType
1914
+ class: pyedb.dotnet.database.edb_data.simulation_setup.AdaptiveType
1915
1915
  """
1916
1916
  return self._adaptive_type
1917
1917
 
@@ -2328,7 +2328,7 @@ class SimulationConfiguration(object):
2328
2328
 
2329
2329
  Returns
2330
2330
  -------
2331
- :class:`pyedb.dotnet.edb_core.edb_data.simulation_configuration.SimulationConfigurationDc`
2331
+ :class:`pyedb.dotnet.database.edb_data.simulation_configuration.SimulationConfigurationDc`
2332
2332
  """
2333
2333
  return self._dc_settings
2334
2334
 
@@ -2339,7 +2339,7 @@ class SimulationConfiguration(object):
2339
2339
 
2340
2340
  Returns
2341
2341
  -------
2342
- :class:`pyedb.dotnet.edb_core.edb_data.simulation_configuration.SimulationConfigurationAc`
2342
+ :class:`pyedb.dotnet.database.edb_data.simulation_configuration.SimulationConfigurationAc`
2343
2343
  """
2344
2344
  return self._ac_settings
2345
2345
 
@@ -2350,7 +2350,7 @@ class SimulationConfiguration(object):
2350
2350
 
2351
2351
  Returns
2352
2352
  -------
2353
- :class:`pyedb.dotnet.edb_core.edb_data.simulation_configuration.SimulationConfigurationBatch`
2353
+ :class:`pyedb.dotnet.database.edb_data.simulation_configuration.SimulationConfigurationBatch`
2354
2354
  """
2355
2355
  return self._batch_solve_settings
2356
2356
 
@@ -2699,7 +2699,7 @@ class SimulationConfiguration(object):
2699
2699
  Examples
2700
2700
  --------
2701
2701
 
2702
- >>> from dotnet.edb_core.edb_data.simulation_configuration import SimulationConfiguration
2702
+ >>> from dotnet.database.edb_data.simulation_configuration import SimulationConfiguration
2703
2703
  >>> config = SimulationConfiguration()
2704
2704
  >>> config.export_json(r"C:\Temp\test_json\test.json")
2705
2705
  """
@@ -2727,7 +2727,7 @@ class SimulationConfiguration(object):
2727
2727
 
2728
2728
  Examples
2729
2729
  --------
2730
- >>> from dotnet.edb_core.edb_data.simulation_configuration import SimulationConfiguration
2730
+ >>> from dotnet.database.edb_data.simulation_configuration import SimulationConfiguration
2731
2731
  >>> test = SimulationConfiguration()
2732
2732
  >>> test.import_json(r"C:\Temp\test_json\test.json")
2733
2733
  """