Class NewtonSolverDense

Inheritance Relationships

Base Type

Class Documentation

class amici::NewtonSolverDense : public amici::NewtonSolver

The NewtonSolverDense provides access to the dense linear solver for the Newton method.

Public Functions

NewtonSolverDense(realtype *t, AmiVector *x, Model *model)

Constructor, initializes all members with the provided objects and initializes temporary storage objects.

Parameters
  • t: pointer to time variable

  • x: pointer to state variables

  • model: pointer to the model object

NewtonSolverDense(const NewtonSolverDense&) = delete
~NewtonSolverDense() override
void solveLinearSystem(AmiVector &rhs) override

Solves the linear system for the Newton step.

Parameters
  • rhs: containing the RHS of the linear system, will be overwritten by solution to the linear system

void prepareLinearSystem(int ntry, int nnewt) override

Writes the Jacobian for the Newton iteration and passes it to the linear solver.

Parameters
  • ntry: integer newton_try integer start number of Newton solver (1 or 2)

  • nnewt: integer number of current Newton step

void prepareLinearSystemB(int ntry, int nnewt) override

Writes the Jacobian (JB) for the Newton iteration and passes it to the linear solver

Parameters
  • ntry: integer newton_try integer start number of Newton solver (1 or 2)

  • nnewt: integer number of current Newton step