MBDyn-1.7.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups
NonlinearSolverTestNorm Class Reference

#include <nonlin.h>

Inheritance diagram for NonlinearSolverTestNorm:
Collaboration diagram for NonlinearSolverTestNorm:

Public Member Functions

virtual void TestOne (doublereal &dRes, const VectorHandler &Vec, const integer &iIndex, doublereal dCoef) const
 
virtual void TestMerge (doublereal &dResCurr, const doublereal &dResNew) const
 
virtual doublereal TestPost (const doublereal &dRes) const
 
- Public Member Functions inherited from NonlinearSolverTest
virtual ~NonlinearSolverTest (void)
 
virtual doublereal MakeTest (Solver *pS, const integer &Size, const VectorHandler &Vec, bool bResidual=false, doublereal dScaleAlgEqu=1., doublereal *pTestDiff=0)
 
virtual const doublerealdScaleCoef (const integer &iIndex) const
 

Additional Inherited Members

- Public Types inherited from NonlinearSolverTest
enum  Type { NONE, NORM, MINMAX, LASTNONLINEARSOLVERTEST }
 

Detailed Description

Definition at line 118 of file nonlin.h.

Member Function Documentation

void NonlinearSolverTestNorm::TestMerge ( doublereal dResCurr,
const doublereal dResNew 
) const
virtual

Implements NonlinearSolverTest.

Reimplemented in NonlinearSolverTestScaleNorm.

Definition at line 218 of file nonlin.cc.

Referenced by NonlinearSolverTestScaleNorm::TestMerge().

220 {
221  dResCurr += dResNew;
222 }
void NonlinearSolverTestNorm::TestOne ( doublereal dRes,
const VectorHandler Vec,
const integer iIndex,
doublereal  dCoef 
) const
virtual

Implements NonlinearSolverTest.

Reimplemented in NonlinearSolverTestScaleNorm.

Definition at line 209 of file nonlin.cc.

211 {
212  doublereal d = Vec(iIndex) * dCoef;
213 
214  dRes += d*d;
215 }
double doublereal
Definition: colamd.c:52
doublereal NonlinearSolverTestNorm::TestPost ( const doublereal dRes) const
virtual

Reimplemented from NonlinearSolverTest.

Definition at line 225 of file nonlin.cc.

References MBDYN_EXCEPT_ARGS, and grad::sqrt().

226 {
227  /* va qui perche' non posso fare sqrt() su !isfinite() */
228  if (!std::isfinite(dRes)) {
230  }
231 
232  return sqrt(dRes);
233 }
#define MBDYN_EXCEPT_ARGS
Definition: except.h:63
GradientExpression< UnaryExpr< FuncSqrt, Expr > > sqrt(const GradientExpression< Expr > &u)
Definition: gradient.h:2974

Here is the call graph for this function:


The documentation for this class was generated from the following files: