xc
|
Convergence test that uses vector norm value (solution vector,...). More...
#include <ConvergenceTestNorm.h>
Public Member Functions | |
ConvergenceTestNorm (CommandEntity *owr, int classTag) | |
Constructor. More... | |
ConvergenceTestNorm (CommandEntity *owr, int cTag, double tl, int maxNIter, int printFlag, int normType, int sz) | |
Constructor. More... | |
virtual int | start (void) |
Sets an integer indicating the current number of iterations, {currentNumIter} to \(1\). More... | |
![]() | |
ConvergenceTestTol (CommandEntity *owr, int classTag) | |
Constructor. More... | |
ConvergenceTestTol (CommandEntity *owr, int classTag, double tol, int maxNumIter, int printFlag, int normType, int sz_norms=1) | |
Constructor. More... | |
void | setTolerance (double newTol) |
Sets the tolerance used in test() to be newTol . | |
double | getTolerance (void) const |
Gets the tolerance used in test(). | |
int | sendSelf (CommParameters &) |
Send the object. More... | |
int | recvSelf (const CommParameters &) |
Receive the object. More... | |
std::string | getRatioMessage (const std::string &) const |
Display current ratio and tolerance. | |
std::string | getDispIncrMessage (void) const |
Display current displacement increment and tolerance. | |
std::string | getUnbalanceMessage (void) const |
Display current unbalance and tolerance. | |
std::string | getEnergyProductMessage (void) const |
Display current energy product and tolerance. | |
![]() | |
ConvergenceTest (CommandEntity *owr, int classTag) | |
Default constructor. More... | |
ConvergenceTest (CommandEntity *owr, int clasTag, int maxIter, int prtFlg, int normType, int sz_norms=1) | |
Constructor. More... | |
virtual ConvergenceTest * | getCopy (void) const =0 |
virtual ConvergenceTest * | getCopy (int iterations) const |
Virtual constructor. | |
virtual std::string | getStatusMsg (const int &flag=1) const =0 |
virtual int | test (void)=0 |
Return a positive number if convergence is achieved. More... | |
int | getMaxNumIter (void) const |
void | setMaxNumIter (const int &) |
int | getCurrentIter (void) const |
Return the current iteration number. | |
void | setCurrentIter (const int &) |
Set the current iteration number. | |
int | getPrintFlag (void) const |
void | setPrintFlag (const int &) |
int | getNormType (void) const |
void | setNormType (const int &) |
virtual int | getNumTests (void) const |
virtual int | getMaxNumTests (void) const |
virtual double | getRatioNumToMax (void) const |
virtual const Vector & | getNorms (void) const |
std::string | getTestIterationMessage (void) const |
Returns a string with the name of the class and the iteration number. | |
std::string | getFailedToConvergeMessage (void) const |
Returns a string with the proper failed to converge message. | |
std::string | getDeltaXRMessage (void) const |
Returns a string with the values of x and b vectors. | |
std::string | getDeltaXRNormsMessage (void) const |
Returns a string with the values of x and b vector norms. | |
![]() | |
MovableObject (int classTag, int dbTag) | |
Constructor. More... | |
MovableObject (int classTag) | |
Constructor. More... | |
MovableObject (const MovableObject &) | |
Copy constructor. Doesn't copy the dbTag. | |
MovableObject & | operator= (const MovableObject &) |
Assignment operator. Doesn't copy the dbTag. | |
int | getClassTag (void) const |
Return the class identifier. | |
int | getDbTag (void) const |
Return the object identifier in the database. | |
int | getDbTag (CommParameters &) |
Return the object identifier in the database. | |
void | setDbTag (int dbTag) |
Sets the object identifier in the database. | |
void | setDbTag (CommParameters &) |
Sets the object identifier in the database if not already set. More... | |
virtual int | setParameter (const std::vector< std::string > &argv, Parameter ¶m) |
Sets the value param to the parameter argv . | |
virtual int | updateParameter (int parameterID, Information &info) |
Updates the parameter identified by parameterID with info . | |
virtual int | activateParameter (int parameterID) |
Activates the parameter identified by parameterID . | |
virtual int | setVariable (const std::string &variable, Information &) |
Set the value of the variable idenfified by var . | |
virtual int | getVariable (const std::string &variable, Information &) |
Return the value of the variable idenfified by var . | |
![]() | |
DistributedBase (void) | |
Constructor. | |
virtual DbTagData & | getDbTagData (void) const |
Returns a vector to store class dbTags. | |
const int & | getDbTagDataPos (const int &i) const |
Returns the data at the i-th position. | |
void | setDbTagDataPos (const int &i, const int &v) |
Sets the data at the i-th position. | |
void | inicComm (const int &dataSize) const |
Initializes communication. | |
Protected Attributes | |
double | norm0 |
norm at first iteration of each step | |
![]() | |
double | tol |
the tol on the energy used to test for convergence | |
![]() | |
int | currentIter |
number of times test() has been invokes since last start() | |
int | maxNumIter |
max number of iterations | |
int | printFlag |
a flag indicating if to print on test | |
int | nType |
type of norm to use (1-norm, 2-norm, p-norm, max-norm) | |
Vector | norms |
vector to hold the norms | |
double | lastRatio |
Last calculated ratio (if any). | |
double | calculatedNormX |
Last calculated |x|. | |
double | calculatedNormB |
Last calculated |b|. | |
double | calculatedEnergyProduct |
Last calculated |0.5*(x ^ b)|. | |
Additional Inherited Members | |
![]() | |
int | sendData (CommParameters &) |
Send object members through the channel being passed as parameter. | |
int | recvData (const CommParameters &) |
Receives object members through the channel being passed as parameter. | |
![]() | |
bool | hasLinearSOE (void) const |
Returns true ifpuede acceder al system of equations. | |
LinearSOE * | getLinearSOEPtr (void) |
Returns a pointer to the system of equations. | |
const LinearSOE * | getLinearSOEPtr (void) const |
Returns a const pointer to the system of equations. | |
const Vector & | getX (void) const |
Returns the vector of unknowns. | |
double | getNormX (void) const |
Return the norma del vector of unknowns. | |
const Vector & | getB (void) const |
Return the vector at the right hand side of the equation. | |
double | getNormB (void) const |
Return the norm of the vector at the right hand side of the equation. More... | |
double | getEnergyProduct (void) const |
Returns the the energy increment, which is 0.5 times the absolute value of the product of the rhs and the solution vector of the LinearSOE: |0.5*(x ^ b)|. More... | |
int | sendData (CommParameters &) |
Send object members through the channel being passed as parameter. | |
int | recvData (const CommParameters &) |
Receives object members through the channel being passed as parameter. | |
Convergence test that uses vector norm value (solution vector,...).
XC::ConvergenceTestNorm::ConvergenceTestNorm | ( | CommandEntity * | owr, |
int | classTag | ||
) |
Constructor.
owr | object that owns this one. |
classTag | identifier of the object class. |
XC::ConvergenceTestNorm::ConvergenceTestNorm | ( | CommandEntity * | owr, |
int | classTag, | ||
double | theTol, | ||
int | maxIter, | ||
int | printFlag, | ||
int | normType, | ||
int | sz_norms | ||
) |
Constructor.
owr | object that owns this one. |
classTag | identifier of the object class. |
theTol | the tolerance used in test(). |
maxIter | the max number of iterations to be performed. |
printFlag | what, if anything, is printed on each test. |
normType | type of norm to use (1-norm, 2-norm, p-norm, max-norm). |
sz_norms | size of the vector that contains computed norms. |
|
virtual |
Sets an integer indicating the current number of iterations, {currentNumIter} to \(1\).
Returns \(0\) if successfull, an error message and \(-1\) are returned if no LinearSOE object has been set.
Reimplemented from XC::ConvergenceTest.
Reimplemented in XC::CTestRelativeNormUnbalance.