liblaf.peach.linalg.fallback
¶
Fallback linear-solver orchestration.
Classes:
-
FallbackSolver– -
FallbackState–State collected while trying multiple linear solvers.
-
FallbackStats–Stats placeholder for fallback linear solves.
FallbackSolver
¶
Bases: LinearSolver[FallbackState, FallbackStats]
flowchart TD
liblaf.peach.linalg.fallback.FallbackSolver[FallbackSolver]
liblaf.peach.linalg.base._solver.LinearSolver[LinearSolver]
liblaf.peach.linalg.base._solver.LinearSolver --> liblaf.peach.linalg.fallback.FallbackSolver
click liblaf.peach.linalg.fallback.FallbackSolver href "" "liblaf.peach.linalg.fallback.FallbackSolver"
click liblaf.peach.linalg.base._solver.LinearSolver href "" "liblaf.peach.linalg.base._solver.LinearSolver"
Parameters:
-
solvers(list[LinearSolver], default:[CupyCG(maxiter=None, rtol=1e-05, atol=0.0), CupyMinRes(maxiter=None, shift=0.0, tol=1e-05)]) –
Type Aliases:
-
Solution–Linear-solver output bundle.
Methods:
-
compute–Run one complete solve from an initialized state.
-
init–Create solver state from an initial parameter vector.
-
postprocess–Wrap final state and result metadata in a solution object.
-
solve–Initialize, compute, and postprocess a linear solve.
Attributes:
-
solvers(list[LinearSolver]) –
solvers
class-attribute
instance-attribute
¶
solvers: list[LinearSolver] = field(
factory=_default_solvers
)
Solution
¶
Solution = Solution[FallbackState, FallbackStats]
compute
¶
compute(
problem: BaseProblem, state: FallbackState
) -> Result
Run one complete solve from an initialized state.
Source code in src/liblaf/peach/linalg/fallback/_fallback.py
init
¶
init(problem: BaseProblem, params: Vector) -> FallbackState
postprocess
¶
postprocess(
problem: BaseProblem, state: S, result: Result
) -> Solution[S, T]
Wrap final state and result metadata in a solution object.
Source code in src/liblaf/peach/linalg/base/_solver.py
solve
¶
solve(
problem: BaseProblem, params: Vector
) -> Solution[S, T]
Initialize, compute, and postprocess a linear solve.
Source code in src/liblaf/peach/linalg/base/_solver.py
FallbackState
¶
Bases: State
flowchart TD
liblaf.peach.linalg.fallback.FallbackState[FallbackState]
liblaf.peach.linalg.base._types.State[State]
liblaf.peach.linalg.base._types.State --> liblaf.peach.linalg.fallback.FallbackState
click liblaf.peach.linalg.fallback.FallbackState href "" "liblaf.peach.linalg.fallback.FallbackState"
click liblaf.peach.linalg.base._types.State href "" "liblaf.peach.linalg.base._types.State"
State collected while trying multiple linear solvers.
Parameters:
-
init_params(Vector) – -
solutions(list[Solution], default:<dynamic>) –Built-in mutable sequence.
If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.
-
absolute_residuals(Float[Tensor, S], default:<dynamic>) –Built-in mutable sequence.
If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.
-
relative_residuals(Float[Tensor, S], default:<dynamic>) –Built-in mutable sequence.
If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.
-
best_index(Integer[Tensor, ''], default:tensor(0, dtype=torch.int32)) –
Attributes:
-
absolute_residuals(Float[Tensor, ' S']) – -
best_index(Integer[Tensor, '']) – -
best_solution(Solution) – -
init_params(Vector) – -
params(Vector) –Current solution estimate.
-
relative_residuals(Float[Tensor, ' S']) – -
result(Result) – -
solutions(list[Solution]) –
FallbackStats
¶
Bases: Stats
flowchart TD
liblaf.peach.linalg.fallback.FallbackStats[FallbackStats]
liblaf.peach.linalg.base._types.Stats[Stats]
liblaf.peach.linalg.base._types.Stats --> liblaf.peach.linalg.fallback.FallbackStats
click liblaf.peach.linalg.fallback.FallbackStats href "" "liblaf.peach.linalg.fallback.FallbackStats"
click liblaf.peach.linalg.base._types.Stats href "" "liblaf.peach.linalg.base._types.Stats"
Stats placeholder for fallback linear solves.