Xyce  6.1
Xyce::TimeIntg::TimeIntegrationMethod Class Referenceabstract

#include <N_TIA_TimeIntegrationMethods.h>

Inheritance diagram for Xyce::TimeIntg::TimeIntegrationMethod:

Public Member Functions

virtual ~TimeIntegrationMethod ()
 
virtual const char * getName () const =0
 
virtual void obtainPredictor ()=0
 
virtual void obtainPredictorDeriv ()=0
 
virtual void obtainCorrectorDeriv ()=0
 
virtual void updateDerivsBlock (const std::list< IndexPair > &solGIDList, const std::list< IndexPair > &staGIDList)=0
 
virtual double computeErrorEstimate () const =0
 
virtual bool interpolateSolution (double timepoint, Linear::Vector *tmpSolVectorPtr, std::vector< Linear::Vector * > &historyVec)=0
 
virtual bool printOutputSolution (Analysis::OutputMgrAdapter &outputManagerAdapter, const TIAParams &tia_params, const double time, Linear::Vector *solnVecPtr, const bool doNotInterpolate, const std::vector< double > &outputInterpolationTimes, bool skipPrintLineOutput)=0
 
virtual bool printMPDEOutputSolution (Analysis::OutputMgrAdapter &outputManagerAdapter, const double time, Linear::Vector *solnVecPtr, const std::vector< double > &fastTimes)
 
virtual bool printWaMPDEOutputSolution (Analysis::OutputMgrAdapter &outputManagerAdapter, const double time, Linear::Vector *solnVecPtr, const std::vector< double > &fastTimes, const int phiGID)
 
virtual bool saveOutputSolution (Analysis::OutputMgrAdapter &outputManagerAdapter, const TIAParams &tia_params, Linear::Vector *solnVecPtr, const double saveTime, const bool doNotInterpolate)=0
 
virtual double computeExpoStepAdjust (double stepadjust)=0
 
virtual int getOrder () const =0
 
virtual int getNumberOfSteps () const =0
 
virtual int getUsedOrder () const =0
 
virtual int getNscsco () const =0
 
virtual int getMaxOrder () const =0
 Return max order of method (this should obey user option maxorder) More...
 
virtual void getInitialQnorm (TwoLevelError &tle) const =0
 
virtual void getTwoLevelError (TwoLevelError &tle) const =0
 
virtual void updateStateDeriv ()
 
virtual void updateLeadCurrent ()
 
virtual void updateLeadCurrentVec ()
 
virtual double partialTimeDeriv () const =0
 
virtual double getLeadingCoeff () const =0
 
virtual void setLeadingCoeff (double &LC)=0
 
virtual void obtainResidual ()=0
 
virtual void obtainSensitivityResiduals ()=0
 
virtual void loadFinalSensitivityDerivatives ()=0
 
virtual void obtainJacobian ()
 
virtual void applyJacobian (const Linear::Vector &input, Linear::Vector &result)
 
virtual void updateHistory ()
 
virtual void restoreHistory ()
 
virtual void updateCoeffs ()
 
virtual void initialize (const TIAParams &tia_params)=0
 
virtual void setTwoLevelTimeInfo (const TimeIntInfo &tiInfo)=0
 
virtual void rejectStep (const TIAParams &tia_params)=0
 
virtual void rejectStepForHabanero ()
 
virtual void completeStep (const TIAParams &tia_params)=0
 

Protected Member Functions

 TimeIntegrationMethod ()
 

Detailed Description

Definition at line 77 of file N_TIA_TimeIntegrationMethods.h.

Constructor & Destructor Documentation

Xyce::TimeIntg::TimeIntegrationMethod::TimeIntegrationMethod ( )
inlineprotected

Definition at line 80 of file N_TIA_TimeIntegrationMethods.h.

virtual Xyce::TimeIntg::TimeIntegrationMethod::~TimeIntegrationMethod ( )
inlinevirtual

Definition at line 84 of file N_TIA_TimeIntegrationMethods.h.

Member Function Documentation

virtual void Xyce::TimeIntg::TimeIntegrationMethod::applyJacobian ( const Linear::Vector &  input,
Linear::Vector &  result 
)
inlinevirtual

Reimplemented in Xyce::TimeIntg::NoTimeIntegration.

Definition at line 198 of file N_TIA_TimeIntegrationMethods.h.

virtual void Xyce::TimeIntg::TimeIntegrationMethod::completeStep ( const TIAParams tia_params)
pure virtual
virtual double Xyce::TimeIntg::TimeIntegrationMethod::computeErrorEstimate ( ) const
pure virtual
virtual double Xyce::TimeIntg::TimeIntegrationMethod::computeExpoStepAdjust ( double  stepadjust)
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::getInitialQnorm ( TwoLevelError tle) const
pure virtual
virtual double Xyce::TimeIntg::TimeIntegrationMethod::getLeadingCoeff ( ) const
pure virtual
virtual int Xyce::TimeIntg::TimeIntegrationMethod::getMaxOrder ( ) const
pure virtual

Return max order of method (this should obey user option maxorder)

Implemented in Xyce::TimeIntg::BackwardDifferentiation15, Xyce::TimeIntg::OneStep, Xyce::TimeIntg::Gear12, and Xyce::TimeIntg::NoTimeIntegration.

virtual const char* Xyce::TimeIntg::TimeIntegrationMethod::getName ( ) const
pure virtual
virtual int Xyce::TimeIntg::TimeIntegrationMethod::getNscsco ( ) const
pure virtual
virtual int Xyce::TimeIntg::TimeIntegrationMethod::getNumberOfSteps ( ) const
pure virtual
virtual int Xyce::TimeIntg::TimeIntegrationMethod::getOrder ( ) const
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::getTwoLevelError ( TwoLevelError tle) const
pure virtual
virtual int Xyce::TimeIntg::TimeIntegrationMethod::getUsedOrder ( ) const
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::initialize ( const TIAParams tia_params)
pure virtual
virtual bool Xyce::TimeIntg::TimeIntegrationMethod::interpolateSolution ( double  timepoint,
Linear::Vector *  tmpSolVectorPtr,
std::vector< Linear::Vector * > &  historyVec 
)
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::loadFinalSensitivityDerivatives ( )
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::obtainCorrectorDeriv ( )
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::obtainJacobian ( )
inlinevirtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::obtainPredictor ( )
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::obtainPredictorDeriv ( )
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::obtainResidual ( )
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::obtainSensitivityResiduals ( )
pure virtual
virtual double Xyce::TimeIntg::TimeIntegrationMethod::partialTimeDeriv ( ) const
pure virtual
virtual bool Xyce::TimeIntg::TimeIntegrationMethod::printMPDEOutputSolution ( Analysis::OutputMgrAdapter outputManagerAdapter,
const double  time,
Linear::Vector *  solnVecPtr,
const std::vector< double > &  fastTimes 
)
inlinevirtual
virtual bool Xyce::TimeIntg::TimeIntegrationMethod::printOutputSolution ( Analysis::OutputMgrAdapter outputManagerAdapter,
const TIAParams tia_params,
const double  time,
Linear::Vector *  solnVecPtr,
const bool  doNotInterpolate,
const std::vector< double > &  outputInterpolationTimes,
bool  skipPrintLineOutput 
)
pure virtual
virtual bool Xyce::TimeIntg::TimeIntegrationMethod::printWaMPDEOutputSolution ( Analysis::OutputMgrAdapter outputManagerAdapter,
const double  time,
Linear::Vector *  solnVecPtr,
const std::vector< double > &  fastTimes,
const int  phiGID 
)
inlinevirtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::rejectStep ( const TIAParams tia_params)
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::rejectStepForHabanero ( )
inlinevirtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::restoreHistory ( )
inlinevirtual
virtual bool Xyce::TimeIntg::TimeIntegrationMethod::saveOutputSolution ( Analysis::OutputMgrAdapter outputManagerAdapter,
const TIAParams tia_params,
Linear::Vector *  solnVecPtr,
const double  saveTime,
const bool  doNotInterpolate 
)
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::setLeadingCoeff ( double &  LC)
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::setTwoLevelTimeInfo ( const TimeIntInfo tiInfo)
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::updateCoeffs ( )
inlinevirtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::updateDerivsBlock ( const std::list< IndexPair > &  solGIDList,
const std::list< IndexPair > &  staGIDList 
)
pure virtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::updateHistory ( )
inlinevirtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::updateLeadCurrent ( )
inlinevirtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::updateLeadCurrentVec ( )
inlinevirtual
virtual void Xyce::TimeIntg::TimeIntegrationMethod::updateStateDeriv ( )
inlinevirtual

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