linear_runonce.py#

Define the LinearRunOnce class.

class openmdao.solvers.linear.linear_runonce.LinearRunOnce(**kwargs)[source]

Bases: LinearBlockGS

Simple linear solver that performs a single iteration of Guass-Seidel.

This is done without iteration or norm calculation.

Parameters:
**kwargsdict

Options dictionary.

SOLVER = 'LN: RUNONCE'
__init__(**kwargs)

Initialize all attributes.

add_recorder(recorder)

Add a recorder to the solver’s RecordingManager.

Parameters:
recorder<CaseRecorder>

A recorder instance to be added to RecManager.

cleanup()

Clean up resources prior to exit.

does_recursive_applies()

Return True.

Block linear solvers make recursive apply_linear calls.

Returns:
bool

True if solver makes recursive apply_linear calls on its subsystems.

get_reports_dir()

Get the path to the directory where the report files should go.

If it doesn’t exist, it will be created.

Returns:
str

The path to the directory where reports should be written.

property msginfo

Return info to prepend to messages.

Returns:
str

Info to prepend to messages.

record_iteration(**kwargs)

Record an iteration of the current Solver.

Parameters:
**kwargsdict

Keyword arguments (used for abs and rel error).

solve(mode, rel_systems=None)[source]

Run the solver.

Parameters:
modestr

‘fwd’ or ‘rev’.

rel_systemsset of str

Set of names of relevant systems based on the current linear solve.