Skip to content

Solid Temperature Solver

The SolidTemperatureSolver configures the linear and nonlinear solution strategy of the SolidTemperatureModel. For the underlying method, see Linear Solvers and Newton Form.

Access it with SolidTemperatureModel.get_solver().

solver: mufem.thermal.SolidTemperatureSolver = model.get_solver()

Methods

set_verbose

solver.set_verbose(verbose: bool)

Enable or disable verbose solver output.

Args:

  • verbose: If True, the solver prints additional information.

set_iteration_number

solver.set_iteration_number(iteration_number: int)

Set the maximum number of iterations of the linear solver.

set_relative_tolerance

solver.set_relative_tolerance(relative_tolerance: float)

Set the relative tolerance of the linear solver.

set_absolute_tolerance

solver.set_absolute_tolerance(absolute_tolerance: float)

Set the absolute tolerance of the linear solver.

set_under_relaxation_factor

solver.set_under_relaxation_factor(under_relaxation_factor: float)

Set the under-relaxation factor (URF) used for nonlinear iterations.

Args:

  • under_relaxation_factor: Value in \((0, 1]\). Smaller values add damping and can improve robustness for strongly nonlinear cases.

set_frozen

solver.set_frozen(is_frozen: bool)

Freeze the solver and model state (no updates during solves).

Args:

  • is_frozen: If True, the solver state is not updated during a solve.

Example

solver = model.get_solver()
solver.set_verbose(True)
solver.set_under_relaxation_factor(0.7)