update_pcb_modeling_props#

Analysis.update_pcb_modeling_props(project: str, cca_names: list[str], analyses: list[tuple[bool | float | str | UpdatePcbModelingPropsRequestAnalysisType | UpdatePcbModelingPropsRequestPcbModelType | UpdatePcbModelingPropsRequestPcbMaterialModel | ElementOrder, ...]]) int#

Update FEA PCB Modeling properties for one or more CCAs.

Available Since: 2023R2

Parameters:
  • project (str) – Name of the Sherlock project.

  • cca_names (list) – Names of the CCAs to be used for the analysis.

  • analyses (list[tuple[bool | float | str | UpdatePcbModelingPropsRequestAnalysisType | UpdatePcbModelingPropsRequestPcbModelType | UpdatePcbModelingPropsRequestPcbMaterialModel | ElementOrder, ...]]) –

    Elements consisting of the following properties:

    • analysis_type: UpdatePcbModelingPropsRequestAnalysisType

      Type of analysis applied.

    • pcb_model_type: UpdatePcbModelingPropsRequestPcbModelType

      The PCB modeling mesh type.

    • modeling_region_enabled: bool

      Indicates if modeling regions are enabled.

    • pcb_material_model: UpdatePcbModelingPropsRequestPcbMaterialModel

      The PCB modeling PCB model type.

    • pcb_max_materials: Optional[int]

      The number of PCB materials for Uniform Elements and Layered Elements PCB model types. Not applicable if PCB model is Uniform or Layered.

    • pcb_elem_order: ElementOrder

      The element order for PCB elements.

    • pcb_max_edge_length: float

      The maximum mesh size for PCB elements.

    • pcb_max_edge_length_units: str

      The length units for the maximum mesh size.

    • pcb_max_vertical: float

      The maximum vertical mesh size for PCB elements.

    • pcb_max_vertical_units: str

      The length units for the maximum vertical mesh size.

    • quads_preferred: bool

      Indicates that the meshing engine should attempt to generate quad-shaped elements when creating the mesh.

Returns:

Status code of the response. 0 for success.

Return type:

int

Examples

>>> from ansys.sherlock.core.launcher import launch_sherlock
>>> sherlock = launch_sherlock()
>>> update_request = SherlockAnalysisService_pb2.UpdatePcbModelingPropsRequest
>>> sherlock.analysis.update_pcb_modeling_props(
    "Tutorial Project",
    ["Main Board"],
    [
        (
            UpdatePcbModelingPropsRequestAnalysisType.HARMONIC_VIBE,
            UpdatePcbModelingPropsRequestPcbModelType.BONDED,
            True,
            UpdatePcbModelingPropsRequestPcbMaterialModel.UNIFORM,
            ElementOrder.SOLID_SHELL,
            6,
            "mm",
            3,
            "mm",
            True,
        )
    ]
)