class SIMP[source]

SIMP(criterion:dl4to.criteria.Criterion, p:float=3.0, n_iterations:int=50, verbose:bool=True, lr:float=0.03, binarizer_steepening_factor:float=1.0, density_representer:dl4to.density_representers.DensityRepresenter=FilteringDensityRepresenter(), return_intermediate_solutions:bool=False) :: TopoSolver

A topo solver that performs topology optimization with the "Solid Isotropic Material with Penalization" (SIMP) method.

Type Default Details
criterion dl4to.criteria.Criterion The objective function that should be optimized for in the optimization process.
p float 3.0 The SIMP exponent to discourage non-binary densities. The default value is p=3, which is the standard value in the literature.
n_iterations int 50 The number of SIMP iterations that should be performed.
verbose bool True Whether to give the user feedback on the current status of the optimization.
lr float 0.03 The learning rate of the torch.optim.Adam optimizer.
binarizer_steepening_factor float 1.0 The factor at which the binarizer should be steepened in each iteration. E.g.,a value of 1.1 corresponds to a steepening of 10% per iteration.
density_representer dl4to.density_representers.DensityRepresenter FilteringDensityRepresenter() The density representer that is used for the latent density representation. The density representer also performs the projection, smoothing and filtering.
return_intermediate_solutions bool False Whether intermediate SIMP solutions should be returned or only the final solution of the optimization process.