gemseo / problems / topo_opt

Show inherited members

material_model_interpolation_disc module

A discipline for topology optimization material model interpolation.

class gemseo.problems.topo_opt.material_model_interpolation_disc.MaterialModelInterpolation(e0, penalty, n_x, n_y, empty_elements, full_elements, contrast=1000000000.0)[source]

Bases: MDODiscipline

Material Model Interpolation class for topology optimization problems.

Compute the Young’s modulus (E) and the material local density (rho) from filtered design variables xPhys with the SIMP (Solid Isotropic Material with Penalization) exponential method.

Initialize self. See help(type(self)) for accurate signature.

  • e0 (float) – The full material Young modulus.

  • penalty (float) – The SIMP penalty coefficient.

  • n_x (int) – The number of elements in the x-direction.

  • n_y (int) – The number of elements in the y-direction.

  • empty_elements (Sequence[int]) – The index of an empty element ids that are not part of the design space.

  • full_elements (Sequence[int]) – The index of full element ids that are not part of the design space.

  • contrast (float) –

    The ratio between the full material Young’s modulus and void material Young’s modulus.

    By default it is set to 1000000000.0.

cache: AbstractCache | None

The cache containing one or several executions of the discipline according to the cache policy.

data_processor: DataProcessor

A tool to pre- and post-process discipline data.

exec_for_lin: bool

Whether the last execution was due to a linearization.

input_grammar: BaseGrammar

The input grammar.

jac: dict[str, dict[str, ndarray]]

The Jacobians of the outputs wrt inputs.

The structure is {output: {input: matrix}}.

name: str

The name of the discipline.

output_grammar: BaseGrammar

The output grammar.

re_exec_policy: ReExecutionPolicy

The policy to re-execute the same discipline.

residual_variables: Mapping[str, str]

The output variables mapping to their inputs, to be considered as residuals; they shall be equal to zero.

run_solves_residuals: bool

Whether the run method shall solve the residuals.