Linear Problems
SciMLBase.LinearProblem
— TypeDefines a linear system problem. Documentation Page: http://linearsolve.sciml.ai/dev/basics/LinearProblem/
Mathematical Specification of a Linear Problem
Concrete LinearProblem
To define a LinearProblem
, you simply need to give the AbstractMatrix
$A$ and an AbstractVector
$b$ which defines the linear system:
\[Au = b\]
Matrix-Free LinearProblem
For matrix-free versions, the specification of the problem is given by an operator A(u,p,t)
which computes A*u
, or in-place as A(du,u,p,t)
. These are specified via the AbstractSciMLOperator
interface. For more details, see the SciMLBase Documentation.
Note that matrix-free versions of LinearProblem definitions are not compatible with all solvers. To check a solver for compatibility, use the function xxxxx.
Problem Type
Constructors
Optionally, an initial guess $u₀$ can be supplied which is used for iterative methods.
LinearProblem{isinplace}(A,x,p=NullParameters();u0=nothing,kwargs...)
LinearProblem(f::AbstractDiffEqOperator,u0,p=NullParameters();u0=nothing,kwargs...)
isinplace
optionally sets whether the function is in-place or not, i.e. whether the solvers are allowed to mutate. By default this is true for AbstractMatrix
, and for AbstractSciMLOperator
s it matches the choice of the operator definition.
Parameters are optional, and if not given, then a NullParameters()
singleton will be used, which will throw nice errors if you try to index non-existent parameters. Any extra keyword arguments are passed on to the solvers.
Fields
A
: The representation of the linear operator.b
: The right-hand side of the linear system.p
: The parameters for the problem. Defaults toNullParameters
. Currently unused.u0
: The initial condition used by iterative solvers.kwargs
: The keyword arguments passed on to the solvers.