Xyce  6.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Xyce::Nonlinear::DampedNewton Class Reference

#include <N_NLS_DampedNewton.h>

Inheritance diagram for Xyce::Nonlinear::DampedNewton:
Collaboration diagram for Xyce::Nonlinear::DampedNewton:

Public Member Functions

 DampedNewton (N_IO_CmdParse &cp)
 
 ~DampedNewton ()
 
bool setOptions (const N_UTL_OptionBlock &OB)
 
bool setTranOptions (const N_UTL_OptionBlock &OB)
 
bool setHBOptions (const N_UTL_OptionBlock &OB)
 
bool initializeAll ()
 
int solve (NonLinearSolver *nlsTmpPtr=NULL)
 
int takeFirstSolveStep (NonLinearSolver *nlsTmpPtr=NULL)
 
int takeOneSolveStep ()
 
int getNumIterations () const
 
int getContinuationStep () const
 
int getParameterNumber () const
 
bool isFirstContinuationParam () const
 
bool isFirstSolveComplete () const
 
void setAnalysisMode (AnalysisMode mode)
 
double getMaxNormF () const
 
int getMaxNormFindex () const
 
- Public Member Functions inherited from Xyce::Nonlinear::NonLinearSolver
 NonLinearSolver (N_IO_CmdParse &cp)
 
virtual ~NonLinearSolver ()
 
virtual bool setLocaOptions (const N_UTL_OptionBlock &OB)
 
virtual bool setTwoLevelLocaOptions (const N_UTL_OptionBlock &OB)
 
virtual bool setTwoLevelOptions (const N_UTL_OptionBlock &OB)
 
virtual bool setTwoLevelTranOptions (const N_UTL_OptionBlock &OB)
 
virtual bool setPetraOptions (const N_UTL_OptionBlock &OB)
 
virtual bool setDCOPRestartOptions (const N_UTL_OptionBlock &OB)
 
virtual bool setICOptions (const N_UTL_OptionBlock &OB)
 
virtual bool setNodeSetOptions (const N_UTL_OptionBlock &OB)
 
virtual bool registerRHSVector (N_LAS_Vector *ptr)
 
virtual bool registerLoader (N_LOA_Loader *ptr)
 
virtual bool registerLinearSystem (N_LAS_System *ptr)
 
virtual bool registerTwoLevelSolver (TwoLevelNewton *ptr)
 
virtual bool registerParamMgr (ParamMgr *ptr)
 
virtual bool registerTopology (N_TOP_Topology *ptr)
 
virtual bool registerPrecondFactory (const RefCountPtr< N_LAS_PrecondFactory > &ptr)
 
virtual bool registerParallelMgr (N_PDS_Manager *pdsMgrPtr)
 
virtual bool registerAnalysisManager (N_ANP_AnalysisManager *tmp_anaIntPtr)
 
virtual bool registerOutputMgr (N_IO_OutputMgr *outPtr)
 
virtual bool registerTIADataStore (N_TIA_DataStore *tiaDSPtr)
 
virtual bool getLocaFlag ()
 
virtual int getNumResidualLoads ()
 
virtual int getNumJacobianLoads ()
 
virtual int getNumLinearSolves ()
 
virtual int getNumFailedLinearSolves ()
 
virtual int getNumJacobianFactorizations ()
 
virtual unsigned int getTotalNumLinearIters ()
 
virtual double getTotalLinearSolveTime ()
 
virtual double getTotalResidualLoadTime ()
 
virtual double getTotalJacobianLoadTime ()
 
virtual TwoLevelNewtonMode getCouplingMode ()
 
virtual void resetAll (AnalysisMode mode)
 
virtual void setReturnCodes (const ReturnCodes &retCodesTmp)
 
virtual bool enableSensitivity ()
 
virtual bool getMatrixFreeFlag ()
 
virtual void setMatrixFreeFlag (bool matrixFreeFlag)
 
virtual bool applyJacobian (const N_LAS_Vector &input, N_LAS_Vector &result)
 

Private Member Functions

void updateWeights_ ()
 
void printHeader_ (std::ostream &os)
 
void printFooter_ (std::ostream &os)
 
void printStepInfo_ (std::ostream &os, int step)
 
bool rhs_ ()
 
bool newton_ ()
 
void direction_ ()
 
void updateX_ ()
 
bool computeStepLength_ ()
 
bool divide_ ()
 
bool backtrack_ ()
 
bool fullNewton_ ()
 
bool spiceNewton_ ()
 
bool bankRose_ ()
 
bool descent_ ()
 
bool simpleBacktrack_ ()
 
bool simpleBt_ (double gsinit, double finit)
 
double constrain_ ()
 
void setForcing_ (const double)
 
void evalModNewton_ ()
 
int converged_ ()
 
void resetCountersAndTimers_ ()
 

Private Attributes

double resConvRate_
 Convergence Rate. More...
 
double wtUpdateConvRate_
 Weighted convergence Rate. More...
 
ConstraintBTnlConstraintPtr_
 Constraint object pointer. More...
 
double normRHS_
 
double maxNormRHS_
 
int maxNormRHSindex_
 
double normRHS_init_
 
double normDX_
 
double wtNormDX_
 
double normRHS_rel_
 
double normSoln_
 
double stepLength_
 
double BTUpper_
 
double BTLower_
 
double constraintFactor_
 
unsigned nlStep_
 
unsigned newtonStep_
 
unsigned modNewtonStep_
 
unsigned descentStep_
 
unsigned searchStep_
 
N_LAS_Vector * searchDirectionPtr_
 Pointer to direction vector. More...
 
N_LAS_Vector * tmpVectorPtr_
 
int iNumCalls_
 
double delta_
 
bool loadJacobianFlag_
 
bool firstTime
 
double initialDeltaXTol
 
NLParams nlParams
 
double etaOld
 
double nlResNormOld
 
double tmpConvRate
 
int count
 

Additional Inherited Members

- Protected Member Functions inherited from Xyce::Nonlinear::NonLinearSolver
virtual bool setX0_ ()
 
virtual bool jacobian_ ()
 
virtual bool gradient_ ()
 
- Protected Attributes inherited from Xyce::Nonlinear::NonLinearSolver
std::string netlistFileName_
 
N_LAS_Vector ** nextSolVectorPtrPtr_
 
N_LAS_Vector ** currSolVectorPtrPtr_
 
N_LAS_Vector ** tmpSolVectorPtrPtr_
 
N_LAS_Vector * rhsVectorPtr_
 
N_LAS_Matrix * jacobianMatrixPtr_
 
N_LAS_Vector * gradVectorPtr_
 
N_LAS_Vector * NewtonVectorPtr_
 
N_LAS_Vector * solWtVectorPtr_
 
N_LAS_System * lasSysPtr_
 
N_LAS_Solver * lasSolverPtr_
 
RefCountPtr< N_LAS_Problem > lasProblemRCPtr_
 
RefCountPtr< N_LAS_PrecondFactory > lasPrecPtr_
 
N_UTL_OptionBlock * petraOptionBlockPtr_
 
N_LOA_Loader * loaderPtr_
 
N_ANP_AnalysisManageranaIntPtr_
 
TwoLevelNewtontlnPtr_
 
ParamMgrnlpMgrPtr_
 
N_IO_OutputMgr * outMgrPtr_
 
Teuchos::RefCountPtr
< N_TOP_Topology > 
topologyRcp_
 
N_PDS_Manager * pdsMgrPtr_
 
N_TIA_DataStoredsPtr_
 
int numJacobianLoads_
 
int numJacobianFactorizations_
 
int numLinearSolves_
 
int numFailedLinearSolves_
 
int numResidualLoads_
 
unsigned int totalNumLinearIters_
 
double totalLinearSolveTime_
 
double totalResidualLoadTime_
 
double totalJacobianLoadTime_
 
ReturnCodes retCodes_
 
bool matrixFreeFlag_
 
N_IO_CmdParse & commandLine_
 
int outputStepNumber_
 
bool debugTimeFlag_
 
int contStep_
 

Detailed Description

Definition at line 67 of file N_NLS_DampedNewton.h.

Constructor & Destructor Documentation

Xyce::Nonlinear::DampedNewton::DampedNewton ( N_IO_CmdParse &  cp)

Definition at line 103 of file N_NLS_DampedNewton.C.

Xyce::Nonlinear::DampedNewton::~DampedNewton ( )

Definition at line 148 of file N_NLS_DampedNewton.C.

Member Function Documentation

bool Xyce::Nonlinear::DampedNewton::backtrack_ ( )
private

Definition at line 1530 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::bankRose_ ( )
private

Definition at line 2040 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::computeStepLength_ ( )
private

Definition at line 1247 of file N_NLS_DampedNewton.C.

double Xyce::Nonlinear::DampedNewton::constrain_ ( )
private

Definition at line 1925 of file N_NLS_DampedNewton.C.

int Xyce::Nonlinear::DampedNewton::converged_ ( )
private

Definition at line 1792 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::descent_ ( )
private

Definition at line 2055 of file N_NLS_DampedNewton.C.

void Xyce::Nonlinear::DampedNewton::direction_ ( )
private

Definition at line 1105 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::divide_ ( )
private

Definition at line 1305 of file N_NLS_DampedNewton.C.

void Xyce::Nonlinear::DampedNewton::evalModNewton_ ( )
private

Definition at line 1695 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::fullNewton_ ( )
private

Definition at line 1626 of file N_NLS_DampedNewton.C.

int Xyce::Nonlinear::DampedNewton::getContinuationStep ( ) const
virtual

Implements Xyce::Nonlinear::NonLinearSolver.

Definition at line 2072 of file N_NLS_DampedNewton.C.

double Xyce::Nonlinear::DampedNewton::getMaxNormF ( ) const
inlinevirtual

Implements Xyce::Nonlinear::NonLinearSolver.

Definition at line 104 of file N_NLS_DampedNewton.h.

int Xyce::Nonlinear::DampedNewton::getMaxNormFindex ( ) const
inlinevirtual

Implements Xyce::Nonlinear::NonLinearSolver.

Definition at line 107 of file N_NLS_DampedNewton.h.

int Xyce::Nonlinear::DampedNewton::getNumIterations ( ) const
inlinevirtual

Implements Xyce::Nonlinear::NonLinearSolver.

Definition at line 237 of file N_NLS_DampedNewton.h.

int Xyce::Nonlinear::DampedNewton::getParameterNumber ( ) const
virtual

Implements Xyce::Nonlinear::NonLinearSolver.

Definition at line 2080 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::initializeAll ( )
virtual

Reimplemented from Xyce::Nonlinear::NonLinearSolver.

Definition at line 235 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::isFirstContinuationParam ( ) const
virtual

Implements Xyce::Nonlinear::NonLinearSolver.

Definition at line 2064 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::isFirstSolveComplete ( ) const
inlinevirtual

Implements Xyce::Nonlinear::NonLinearSolver.

Definition at line 348 of file N_NLS_DampedNewton.h.

bool Xyce::Nonlinear::DampedNewton::newton_ ( )
privatevirtual

Reimplemented from Xyce::Nonlinear::NonLinearSolver.

Definition at line 1080 of file N_NLS_DampedNewton.C.

void Xyce::Nonlinear::DampedNewton::printFooter_ ( std::ostream &  os)
private

Definition at line 292 of file N_NLS_DampedNewton.C.

void Xyce::Nonlinear::DampedNewton::printHeader_ ( std::ostream &  os)
private

Definition at line 277 of file N_NLS_DampedNewton.C.

void Xyce::Nonlinear::DampedNewton::printStepInfo_ ( std::ostream &  os,
int  step 
)
private

Definition at line 305 of file N_NLS_DampedNewton.C.

void Xyce::Nonlinear::DampedNewton::resetCountersAndTimers_ ( )
inlineprivatevirtual

Reimplemented from Xyce::Nonlinear::NonLinearSolver.

Definition at line 337 of file N_NLS_DampedNewton.h.

bool Xyce::Nonlinear::DampedNewton::rhs_ ( )
privatevirtual

Reimplemented from Xyce::Nonlinear::NonLinearSolver.

Definition at line 1054 of file N_NLS_DampedNewton.C.

void Xyce::Nonlinear::DampedNewton::setAnalysisMode ( AnalysisMode  mode)
inlinevirtual

Implements Xyce::Nonlinear::NonLinearSolver.

Definition at line 328 of file N_NLS_DampedNewton.h.

void Xyce::Nonlinear::DampedNewton::setForcing_ ( const double  nlResNorm)
private

Definition at line 1965 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::setHBOptions ( const N_UTL_OptionBlock &  OB)
virtual

Implements Xyce::Nonlinear::NonLinearSolver.

Definition at line 216 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::setOptions ( const N_UTL_OptionBlock &  OB)
virtual

Implements Xyce::Nonlinear::NonLinearSolver.

Definition at line 181 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::setTranOptions ( const N_UTL_OptionBlock &  OB)
virtual

Implements Xyce::Nonlinear::NonLinearSolver.

Definition at line 199 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::simpleBacktrack_ ( )
private

Definition at line 1389 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::simpleBt_ ( double  gsinit,
double  finit 
)
private

Definition at line 1449 of file N_NLS_DampedNewton.C.

int Xyce::Nonlinear::DampedNewton::solve ( NonLinearSolver nlsTmpPtr = NULL)
virtual

Implements Xyce::Nonlinear::NonLinearSolver.

Definition at line 379 of file N_NLS_DampedNewton.C.

bool Xyce::Nonlinear::DampedNewton::spiceNewton_ ( )
private

Definition at line 1655 of file N_NLS_DampedNewton.C.

int Xyce::Nonlinear::DampedNewton::takeFirstSolveStep ( NonLinearSolver nlsTmpPtr = NULL)
virtual

Reimplemented from Xyce::Nonlinear::NonLinearSolver.

Definition at line 635 of file N_NLS_DampedNewton.C.

int Xyce::Nonlinear::DampedNewton::takeOneSolveStep ( )
virtual

Reimplemented from Xyce::Nonlinear::NonLinearSolver.

Definition at line 874 of file N_NLS_DampedNewton.C.

void Xyce::Nonlinear::DampedNewton::updateWeights_ ( )
private

Definition at line 325 of file N_NLS_DampedNewton.C.

void Xyce::Nonlinear::DampedNewton::updateX_ ( )
private

Definition at line 1037 of file N_NLS_DampedNewton.C.

Member Data Documentation

double Xyce::Nonlinear::DampedNewton::BTLower_
private

Definition at line 181 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::BTUpper_
private

Definition at line 180 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::constraintFactor_
private

Definition at line 184 of file N_NLS_DampedNewton.h.

int Xyce::Nonlinear::DampedNewton::count
private

Definition at line 229 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::delta_
private

Definition at line 210 of file N_NLS_DampedNewton.h.

unsigned Xyce::Nonlinear::DampedNewton::descentStep_
private

Definition at line 196 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::etaOld
private

Definition at line 225 of file N_NLS_DampedNewton.h.

bool Xyce::Nonlinear::DampedNewton::firstTime
private

Definition at line 220 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::initialDeltaXTol
private

Definition at line 221 of file N_NLS_DampedNewton.h.

int Xyce::Nonlinear::DampedNewton::iNumCalls_
private

Definition at line 208 of file N_NLS_DampedNewton.h.

bool Xyce::Nonlinear::DampedNewton::loadJacobianFlag_
private

Definition at line 213 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::maxNormRHS_
private

Definition at line 159 of file N_NLS_DampedNewton.h.

int Xyce::Nonlinear::DampedNewton::maxNormRHSindex_
private

Definition at line 160 of file N_NLS_DampedNewton.h.

unsigned Xyce::Nonlinear::DampedNewton::modNewtonStep_
private

Definition at line 193 of file N_NLS_DampedNewton.h.

unsigned Xyce::Nonlinear::DampedNewton::newtonStep_
private

Definition at line 190 of file N_NLS_DampedNewton.h.

ConstraintBT* Xyce::Nonlinear::DampedNewton::nlConstraintPtr_
private

Constraint object pointer.

Definition at line 155 of file N_NLS_DampedNewton.h.

NLParams Xyce::Nonlinear::DampedNewton::nlParams
private

Definition at line 223 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::nlResNormOld
private

Definition at line 226 of file N_NLS_DampedNewton.h.

unsigned Xyce::Nonlinear::DampedNewton::nlStep_
private

Definition at line 187 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::normDX_
private

Definition at line 165 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::normRHS_
private

Definition at line 158 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::normRHS_init_
private

Definition at line 162 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::normRHS_rel_
private

Definition at line 171 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::normSoln_
private

Definition at line 174 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::resConvRate_
private

Convergence Rate.

Definition at line 149 of file N_NLS_DampedNewton.h.

N_LAS_Vector* Xyce::Nonlinear::DampedNewton::searchDirectionPtr_
private

Pointer to direction vector.

Todo:
Is this vector internal or external?? Is it allocated or just a pointer??

Definition at line 203 of file N_NLS_DampedNewton.h.

unsigned Xyce::Nonlinear::DampedNewton::searchStep_
private

Definition at line 199 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::stepLength_
private

Definition at line 177 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::tmpConvRate
private

Definition at line 227 of file N_NLS_DampedNewton.h.

N_LAS_Vector* Xyce::Nonlinear::DampedNewton::tmpVectorPtr_
private

Definition at line 206 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::wtNormDX_
private

Definition at line 168 of file N_NLS_DampedNewton.h.

double Xyce::Nonlinear::DampedNewton::wtUpdateConvRate_
private

Weighted convergence Rate.

Definition at line 152 of file N_NLS_DampedNewton.h.


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