53 #define _IFT_NRSolver_Name "nrsolver" 54 #define _IFT_NRSolver_maxiter "maxiter" 55 #define _IFT_NRSolver_miniterations "miniter" 56 #define _IFT_NRSolver_minsteplength "minsteplength" 57 #define _IFT_NRSolver_manrmsteps "manrmsteps" 58 #define _IFT_NRSolver_lstype "lstype" 59 #define _IFT_NRSolver_ddm "ddm" 60 #define _IFT_NRSolver_ddv "ddv" 61 #define _IFT_NRSolver_ddfunc "ddltf" 62 #define _IFT_NRSolver_linesearch "linesearch" 63 #define _IFT_NRSolver_rtolv "rtolv" 64 #define _IFT_NRSolver_rtolf "rtolf" 65 #define _IFT_NRSolver_rtold "rtold" 66 #define _IFT_NRSolver_calcstiffbeforeres "calcstiffbeforeres" 67 #define _IFT_NRSolver_constrainedNRalpha "constrainednralpha" 68 #define _IFT_NRSolver_constrainedNRminiter "constrainednrminiter" 69 #define _IFT_NRSolver_maxinc "maxinc" 70 #define _IFT_NRSolver_forceScale "forcescale" 71 #define _IFT_NRSolver_forceScaleDofs "forcescaledofs" 169 virtual void printState(FILE *outputStream);
178 linSolver->setDomain(d);
180 if ( linesearchSolver ) {
181 linesearchSolver->setDomain(d);
186 linSolver->reinitialize();
197 void initPrescribedEqs();
198 void applyConstraintsToStiffness(
SparseMtrx &k);
207 double RRT,
const FloatArray &internalForcesEBENorm,
int nite,
bool &errorOutOfRange);
LinSystSolverType
The values of this type should be related not to specific solvers, but more to specific packages that...
double constrainedNRalpha
Scale factor for dX, dX_new = alpha * dX.
Base class for all matrices stored in sparse format.
int numberOfPrescribedDofs
number of prescribed displacement
This class implements Newton-Raphson Method, derived from abstract NumericalMethod class for solving ...
IntArray prescribedDofs
Array of pairs identifying prescribed dofs (node, dof)
This base class is an abstraction for all numerical methods solving sparse linear system of equations...
virtual const char * giveClassName() const
virtual void setDomain(Domain *d)
FloatArray rtold
Relative iterative displacement change tolerance for each group.
bool lsFlag
Flag indicating whether to use line-search.
std::unique_ptr< LineSearchNM > linesearchSolver
Line search solver.
std::unique_ptr< SparseLinearSystemNM > linSolver
linear system solver
unsigned long NM_Status
Mask defining NumMetod Status; which can be asked after finishing computation by Numerical Method...
Class implementing an array of integers.
std::map< int, double > dg_forceScale
Optional user supplied scale of forces used in convergence check.
LinSystSolverType solverType
linear system solver ID
int constrainedNRminiter
Minimum number of iterations before constraint is activated.
long SparseMtrxVersionType
FloatArray rtolf
Relative unbalanced force tolerance for each group.
referenceLoadInputModeType
The following parameter allows to specify how the reference load vector is obtained from given totalL...
#define _IFT_NRSolver_Name
FloatArray forceErrVecOld
Class representing vector of real numbers.
bool mCalcStiffBeforeRes
Flag indicating if the stiffness should be evaluated before the residual in the first iteration...
IRResultType
Type defining the return values of InputRecord reading operations.
bool constrainedNRFlag
Flag indicating whether to use constrained Newton.
IntArray prescribedEqs
Array of prescribed equations.
nrsolver_ModeType NR_OldMode
bool prescribedDofsFlag
Flag indicating that some dofs are controlled under displacement control.
Abstract base class representing the "problem" under consideration.
virtual void reinitialize()
Reinitializes the receiver.
SparseMtrx::SparseMtrxVersionType smConstraintVersion
sparse matrix version, used to control constrains application to stiffness
the oofem namespace is to define a context or scope in which all oofem names are defined.
FloatArray lastReactions
Computed reactions. They are stored in order to print them in printState method.
int prescribedDisplacementTF
Load Time Function of prescribed values.
bool prescribedEqsInitFlag
Flag indicating that prescribedEqs were initialized.
Class representing solution step.
This base class is an abstraction for all numerical methods solving sparse nonlinear system of equati...
virtual const char * giveInputRecordName() const
FloatArray prescribedDofsValues
Array of prescribed values.
This base class is an abstraction/implementation for numerical method solving line search optimizatio...