15 #if !defined(KRATOS_CONVERGENCE_ACCELERATOR )
16 #define KRATOS_CONVERGENCE_ACCELERATOR
41 template<
class TSparseSpace,
class TDenseSpace>
200 KRATOS_ERROR <<
"Interface Jacobian approximation cannot be computed with this convergence accelerator." << std::endl;
205 KRATOS_ERROR <<
"Interface Jacobian approximation is not available for this convergence accelerator." << std::endl;
210 KRATOS_ERROR <<
"Problem size is not available for this convergence accelerator." << std::endl;
Base class for convergence accelerators This class is intended to be the base of any convergence acce...
Definition: convergence_accelerator.h:43
This class provides to Kratos a data structure for I/O based on the standard of JSON.
Definition: kratos_parameters.h:59
TDenseSpace::VectorType DenseVectorType
Definition: convergence_accelerator.h:56
TSparseSpace::VectorType VectorType
Definition: convergence_accelerator.h:50
virtual DenseMatrixPointerType pGetInverseJacobianApproximation()
Definition: convergence_accelerator.h:203
virtual void Finalize()
Finalize the convergence accelerator Perform all the operations required after the resolution of the ...
Definition: convergence_accelerator.h:142
#define KRATOS_ERROR
Definition: exception.h:161
virtual void FinalizeNonLinearIteration()
Operations after each non-linear iteration Performs all the required operations that should be done a...
Definition: convergence_accelerator.h:126
virtual void FinalizeSolutionStep()
Operations after solving the solution step Performs all the required operations that should be done (...
Definition: convergence_accelerator.h:134
virtual std::size_t GetProblemSize() const
Definition: convergence_accelerator.h:208
TDenseSpace::MatrixPointerType DenseMatrixPointerType
Definition: convergence_accelerator.h:59
int GetEchoLevel()
Get the Echo Level object Get the echo level of the convergence accelerator.
Definition: convergence_accelerator.h:169
TDenseSpace::MatrixType DenseMatrixType
Definition: convergence_accelerator.h:57
virtual void InitializeNonLinearIteration()
Operations before each non-linear iteration Performs all the required operations that should be done ...
Definition: convergence_accelerator.h:105
TSparseSpace::VectorPointerType VectorPointerType
Definition: convergence_accelerator.h:53
KRATOS_CLASS_POINTER_DEFINITION(ConvergenceAccelerator)
ConvergenceAccelerator()=default
TSparseSpace::MatrixPointerType MatrixPointerType
Definition: convergence_accelerator.h:54
virtual void InitializeSolutionStep()
Operations before solving the solution step Performs all the required operations that should be done ...
Definition: convergence_accelerator.h:97
ConvergenceAccelerator(Parameters ThisParameters)
Definition: convergence_accelerator.h:73
virtual void Clear()
Clear the internal storage Clears all the internal data (e.g. previous observation matrices)
Definition: convergence_accelerator.h:150
virtual ~ConvergenceAccelerator()=default
virtual bool IsBlockNewton() const
Checks if the update direction is unique or double For the current convergence accelerator,...
Definition: convergence_accelerator.h:181
virtual void ComputeJacobianApproximation()
Definition: convergence_accelerator.h:198
virtual void UpdateSolution(const VectorType &rResidualVector, VectorType &rIterationGuess)
Corrects the given iteration guess Computes the correction of the iteration guess according to the pr...
Definition: convergence_accelerator.h:116
TDenseSpace::VectorPointerType DenseVectorPointerType
Definition: convergence_accelerator.h:60
virtual void Initialize()
Initialize the convergence accelerator Operations that are required to be done once before the resolu...
Definition: convergence_accelerator.h:89
virtual void SetEchoLevel(int Level)
Set the Echo Level object Set the echo level of the convergence accelerator.
Definition: convergence_accelerator.h:159
ConvergenceAccelerator(const ConvergenceAccelerator &Other)=delete
TSparseSpace::MatrixType MatrixType
Definition: convergence_accelerator.h:51
int mEchoLevel
Definition: convergence_accelerator.h:192
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21