36 template <
typename _Type,
typename _Xtype =
double >
81 std::pair< unsigned, unsigned >
adapt(
const double& adapt_tol);
101 void init_arc(_Type*
p,
const double& length,
const double& max_length);
121 return MAX_ITERATIONS;
173 template <
typename _Type,
typename _Xtype>
178 template <
typename _Type,
typename _Xtype>
180 const double& length,
181 const double& max_length) {
183 this -> init_arc(state,
p, length, max_length);
186 template <
typename _Type,
typename _Xtype>
A base class for arclength-capable solvers.
Specification of the linear system class.
Specification of the dense linear eigensystem class.
A matrix class that constructs a DENSE matrix as an STL Vector of DenseVectors.
Specification for a templated DenseVector class – a dense, dynamic, vector object.
A templated class for equations that can be inherited from to allow instantiation of PDE_IBVP objects...
Specification of the linear eigensystem base class.
A specification for a one dimensional mesh object.
A specification of a (double/complex) VECTOR residual class.
A spec for the CppNoddy Timer object.
A spec for a collection of utility functions.
A matrix class that constructs a BANDED matrix.
An DenseVector class – a dense vector object.
An equation object base class used in the IBVP classes (and others).
A templated object for real/complex vector system of first-order ordinary differential equations.
double arclength_solve(const double &step)
Arc-length solve the system.
void adapt_until(const double &adapt_tol)
Adaptively solve the system until no refinements or unrefinements are applied.
void set_monitor_det(bool flag)
Set the flag that determines if the determinant will be monitored The default is to monitor.
double & tolerance()
Access method to the tolerance.
virtual void actions_before_linear_solve(BandedMatrix< _Type > &a, DenseVector< _Type > &b)
A virtual method that is called prior to the linear solve stage of the solve2() method.
virtual ~ODE_BVP()
Destructor.
OneD_Node_Mesh< _Type, _Xtype > & solution()
int & max_itns()
Access method to the maximum number of iterations.
std::pair< unsigned, unsigned > adapt(const double &adapt_tol)
Adapt the computational mesh ONCE.
void solve2()
Formulate and solve the ODE using Newton iteration and a second-order finite difference scheme.
void init_arc(_Type *p, const double &length, const double &max_length)
Initialise the class ready for arc length continuation.
A one dimensional mesh utility object.
A base class to be inherited by objects that define residuals.
A simple CPU-clock-tick timer for timing metods.
A collection of OO numerical routines aimed at simple (typical) applied problems in continuum mechani...