35 typedef typename Base::Residual_t Residual_t;
36 typedef typename Base::ALResidual_t ALResidual_t;
37 typedef typename Base::Jacobian_t Jacobian_t;
38 typedef typename Base::dJacobian_t dJacobian_t;
54 m_residualFun(nullptr)
69 const Jacobian_t &nonlinear,
70 const Residual_t &residual )
74 m_nonlinear(nonlinear),
75 m_dnonlinear(nullptr),
76 m_residualFun(residual),
77 m_ALresidualFun(nullptr)
81 return m_nonlinear(x,m);
97 const Jacobian_t &nonlinear,
98 const ALResidual_t &ALResidual )
102 m_nonlinear(nonlinear),
103 m_dnonlinear(nullptr),
104 m_residualFun(nullptr),
105 m_ALresidualFun(ALResidual)
110 return m_ALresidualFun(x,m_L,result);
115 return m_nonlinear(x,m);
131 const dJacobian_t &dnonlinear,
132 const Residual_t &residual
137 m_nonlinear(nullptr),
138 m_dnonlinear(dnonlinear),
139 m_residualFun(residual),
140 m_ALresidualFun(nullptr)
182 void reset()
override;
232 const Jacobian_t m_nonlinear;
233 dJacobian_t m_dnonlinear;
234 Residual_t m_residualFun;
235 const ALResidual_t m_ALresidualFun;
240 using Base::m_DeltaU;
241 using Base::m_deltaU;
245 using Base::m_stabilityVec;
247 using Base::m_verbose;
251 using Base::m_options;
258 using Base::m_maxIterations;
259 using Base::m_numIterations;
262 using Base::m_residual;
263 using Base::m_residualIni;
264 using Base::m_residualOld;
267 using Base::m_headstart;
270 using Base::m_solver;
272 using Base::m_stabilityMethod;
275 using Base::m_indicator;
280 using Base::m_status;
287#ifndef GISMO_BUILD_LIB
288#include GISMO_HPP_HEADER(gsStaticNewton.hpp)
Sparse matrix class, based on gsEigen::SparseMatrix.
Definition gsSparseMatrix.h:139
Base class for static solvers.
Definition gsStaticBase.h:38
virtual gsStatus status() const
Returns the status.
Definition gsStaticBase.h:129
virtual bool _computeStability(const gsSparseMatrix< T > &jacMat, T shift)
Computes the stability of the Jacobian, optionally applying a shift (if provided)
Definition gsStaticBase.h:221
virtual T indicator(const gsSparseMatrix< T > &jacMat, T shift=-1e-2)
Returns the stability indicator.
Definition gsStaticBase.h:146
virtual gsVector< T > solution() const
Access the solution.
Definition gsStaticBase.h:95
virtual gsVector< T > stabilityVec(const gsSparseMatrix< T > &jacMat, T shift=-1e-2)
Returns the stability vector.
Definition gsStaticBase.h:153
Static solver using a newton method.
Definition gsStaticNewton.h:30
gsVector< T > _solveLinear()
Perform a linear solve.
Definition gsStaticNewton.hpp:101
void _start()
Starts the method.
Definition gsStaticNewton.hpp:273
gsStaticNewton(const gsSparseMatrix< T > &linear, const gsVector< T > &force)
Constructor.
Definition gsStaticNewton.h:48
void stepOutput(index_t k) override
See gsStaticBase.
Definition gsStaticNewton.hpp:58
gsVector< T > _solveNonlinear()
Perform a nonlinear solve.
Definition gsStaticNewton.hpp:142
gsStatus solveNonlinear(gsVector< T > &solution)
Perform a nonlinearg solve.
Definition gsStaticNewton.h:164
gsVector< T > stabilityVec()
See gsStaticBase.
Definition gsStaticNewton.h:199
T indicator()
See gsStaticBase.
Definition gsStaticNewton.h:191
gsStaticNewton(const gsSparseMatrix< T > &linear, const gsVector< T > &force, const dJacobian_t &dnonlinear, const Residual_t &residual)
{ function_description }
Definition gsStaticNewton.h:129
gsStaticNewton(const gsSparseMatrix< T > &linear, const gsVector< T > &force, const Jacobian_t &nonlinear, const Residual_t &residual)
Constructor.
Definition gsStaticNewton.h:67
void _init()
Initializes the method.
Definition gsStaticNewton.hpp:251
void initOutput() override
See gsStaticBase.
Definition gsStaticNewton.hpp:42
gsVector< T > _solveSystem(const gsVector< T > &F)
Solves the system with RHS F and LHS the Jacobian.
Definition gsStaticNewton.hpp:230
void defaultOptions() override
See gsStaticBase.
Definition gsStaticNewton.hpp:20
void getOptions() override
See gsStaticBase.
Definition gsStaticNewton.hpp:28
gsStatus solve() override
See gsStaticBase.
Definition gsStaticNewton.h:148
void _factorizeMatrix(const gsSparseMatrix< T > &jacMat) const
Factorizes the jacMat.
Definition gsStaticNewton.hpp:215
gsStaticNewton(const gsSparseMatrix< T > &linear, const gsVector< T > &force, const Jacobian_t &nonlinear, const ALResidual_t &ALResidual)
Constructor.
Definition gsStaticNewton.h:95
void reset() override
See gsStaticBase.
Definition gsStaticNewton.hpp:243
gsStatus solveLinear()
Perform a linear solve.
Definition gsStaticNewton.hpp:75
A vector with arbitrary coefficient type and fixed or dynamic size.
Definition gsVector.h:37
#define index_t
Definition gsConfig.h:32
#define GISMO_ENSURE(cond, message)
Definition gsDebug.h:102
Base class for static solvers.
The G+Smo namespace, containing all definitions for the library.
gsStatus
Definition gsStructuralAnalysisTypes.h:21