37 typedef typename Base::Residual_t Residual_t;
38 typedef typename Base::ALResidual_t ALResidual_t;
39 typedef typename Base::Jacobian_t Jacobian_t;
40 typedef typename Base::dJacobian_t dJacobian_t;
56 m_residualFun(nullptr)
71 const Jacobian_t &nonlinear,
72 const Residual_t &residual )
76 m_nonlinear(nonlinear),
77 m_dnonlinear(nullptr),
78 m_residualFun(residual),
79 m_ALresidualFun(nullptr)
83 return m_nonlinear(x,m);
99 const Jacobian_t &nonlinear,
100 const ALResidual_t &ALResidual )
104 m_nonlinear(nonlinear),
105 m_dnonlinear(nullptr),
106 m_residualFun(nullptr),
107 m_ALresidualFun(ALResidual)
112 return m_ALresidualFun(x,m_L,result);
117 return m_nonlinear(x,m);
133 const dJacobian_t &dnonlinear,
134 const Residual_t &residual
139 m_nonlinear(nullptr),
140 m_dnonlinear(dnonlinear),
141 m_residualFun(residual),
142 m_ALresidualFun(nullptr)
184 void reset()
override;
234 const Jacobian_t m_nonlinear;
235 dJacobian_t m_dnonlinear;
236 Residual_t m_residualFun;
237 const ALResidual_t m_ALresidualFun;
242 using Base::m_DeltaU;
243 using Base::m_deltaU;
247 using Base::m_stabilityVec;
249 using Base::m_verbose;
253 using Base::m_options;
260 using Base::m_maxIterations;
261 using Base::m_numIterations;
264 using Base::m_residual;
265 using Base::m_residualIni;
266 using Base::m_residualOld;
269 using Base::m_headstart;
272 using Base::m_solver;
274 using Base::m_stabilityMethod;
277 using Base::m_indicator;
282 using Base::m_status;
289 #ifndef GISMO_BUILD_LIB
290 #include GISMO_HPP_HEADER(gsStaticNewton.hpp)
Base class for static solvers.
void _factorizeMatrix(const gsSparseMatrix< T > &jacMat) const
Factorizes the jacMat.
Definition: gsStaticNewton.hpp:216
void getOptions() override
See gsStaticBase.
Definition: gsStaticNewton.hpp:29
void _start()
Starts the method.
Definition: gsStaticNewton.hpp:274
gsVector< T > _solveLinear()
Perform a linear solve.
Definition: gsStaticNewton.hpp:102
virtual gsVector< T > solution() const
Access the solution.
Definition: gsStaticBase.h:95
T indicator()
See gsStaticBase.
Definition: gsStaticNewton.h:193
Static solver using a newton method.
Definition: gsStaticNewton.h:31
#define index_t
Definition: gsConfig.h:32
gsStatus
Definition: gsStructuralAnalysisTypes.h:20
#define GISMO_ENSURE(cond, message)
Definition: gsDebug.h:102
virtual T indicator(const gsSparseMatrix< T > &jacMat, T shift=-1e-2)
Returns the stability indicator.
Definition: gsStaticBase.h:146
gsStaticNewton(const gsSparseMatrix< T > &linear, const gsVector< T > &force, const Jacobian_t &nonlinear, const ALResidual_t &ALResidual)
Constructor.
Definition: gsStaticNewton.h:97
gsVector< T > _solveSystem(const gsVector< T > &F)
Solves the system with RHS F and LHS the Jacobian.
Definition: gsStaticNewton.hpp:231
gsVector< T > stabilityVec()
See gsStaticBase.
Definition: gsStaticNewton.h:201
gsStaticNewton(const gsSparseMatrix< T > &linear, const gsVector< T > &force, const Jacobian_t &nonlinear, const Residual_t &residual)
Constructor.
Definition: gsStaticNewton.h:69
gsStatus solveNonlinear(gsVector< T > &solution)
Perform a nonlinearg solve.
Definition: gsStaticNewton.h:166
gsStaticNewton(const gsSparseMatrix< T > &linear, const gsVector< T > &force, const dJacobian_t &dnonlinear, const Residual_t &residual)
{ function_description }
Definition: gsStaticNewton.h:131
void initOutput() override
See gsStaticBase.
Definition: gsStaticNewton.hpp:43
void _init()
Initializes the method.
Definition: gsStaticNewton.hpp:252
void reset() override
See gsStaticBase.
Definition: gsStaticNewton.hpp:244
gsStaticNewton(const gsSparseMatrix< T > &linear, const gsVector< T > &force)
Constructor.
Definition: gsStaticNewton.h:50
gsStatus solveLinear()
Perform a linear solve.
Definition: gsStaticNewton.hpp:76
gsVector< T > _solveNonlinear()
Perform a nonlinear solve.
Definition: gsStaticNewton.hpp:143
virtual gsVector< T > stabilityVec(const gsSparseMatrix< T > &jacMat, T shift=-1e-2)
Returns the stability vector.
Definition: gsStaticBase.h:153
gsStatus solve() override
See gsStaticBase.
Definition: gsStaticNewton.h:150
void stepOutput(index_t k) override
See gsStaticBase.
Definition: gsStaticNewton.hpp:59
virtual bool _computeStability(const gsSparseMatrix< T > &jacMat, T shift)
Computes the stability of the Jacobian, optionally applying a shift (if provided) ...
Definition: gsStaticBase.h:220
virtual gsStatus status() const
Returns the status.
Definition: gsStaticBase.h:129
void defaultOptions() override
See gsStaticBase.
Definition: gsStaticNewton.hpp:21
Base class for static solvers.
Definition: gsStaticBase.h:37