47 #ifndef Xyce_N_TIA_NO_TIME_INTEGRATION_H
48 #define Xyce_N_TIA_NO_TIME_INTEGRATION_H
51 #include <N_UTL_Math.h>
58 #define MATRIX_FAILSAFE 1
59 #define NUM_LIMIT 1.0e-20
107 const std::list< IndexPair > & staGIDList)
115 bool interpolateSolution(
double timepoint, Linear::Vector * tmpSolVectorPtr, std::vector<Linear::Vector*> & historyVec )
124 Linear::Vector * solnVecPtr,
125 const bool doNotInterpolate,
126 const std::vector<double> & outputInterpolationTimes,
127 bool skipPrintLineOutput) ;
132 Linear::Vector * solnVecPtr,
133 const double saveTime,
134 const bool doNotInterpolate) ;
170 #ifdef MATRIX_FAILSAFE
197 void applyJacobian(
const Linear::Vector& input, Linear::Vector& result) ;
218 #endif // Xyce_N_TIA_NO_TIME_INTEGRATION_H
int getNumberOfSteps() const
bool interpolateSolution(double timepoint, Linear::Vector *tmpSolVectorPtr, std::vector< Linear::Vector * > &historyVec)
void obtainPredictorDeriv()
void initialize(const TIAParams &tia_params)
void applyJacobian(const Linear::Vector &input, Linear::Vector &result)
StepErrorControl & sec
Reference to step-error control object.
bool usePreviousSolAsPredictor()
Pure virtual class to augment a linear system.
double computeExpoStepAdjust(double stepadjust)
void completeStep(const TIAParams &tia_params)
void loadFinalSensitivityDerivatives()
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)
double partialTimeDeriv() const
int getMaxOrder() const
Return max order of method (this should obey user option maxorder)
double getLeadingCoeff() const
void obtainSensitivityResiduals()
void obtainCorrectorDeriv()
const char * getName() const
double alphas
$$ fixed-leading coefficient of this BDF method
NoTimeIntegration(const TIAParams &tiaP, StepErrorControl &secTmp, DataStore &dsTmp)
double leadingCoeff
Time-integration method leading coefficient value.
double computeErrorEstimate() const
void updateDerivsBlock(const std::list< IndexPair > &solGIDList, const std::list< IndexPair > &staGIDList)
bool saveOutputSolution(Analysis::OutputMgrAdapter &outputManagerAdapter, const TIAParams &tia_params, Linear::Vector *solnVecPtr, const double saveTime, const bool doNotInterpolate)
void rejectStep(const TIAParams &tia_params)
DataStore & ds
Reference to the TIA data-store object.
void setTwoLevelTimeInfo(const TimeIntInfo &tiInfo)
void getTwoLevelError(TwoLevelError &tle) const
void setLeadingCoeff(double &LC)
void getInitialQnorm(TwoLevelError &tle) const
static TimeIntegrationMethod * factory(const TIAParams &tia_params, StepErrorControl &step_error_control, DataStore &data_store)