Xyce  6.1
Xyce::Analysis::Transient Class Reference

#include <N_ANP_Transient.h>

Inheritance diagram for Xyce::Analysis::Transient:
Collaboration diagram for Xyce::Analysis::Transient:

Public Member Functions

 Transient (AnalysisManager &analysis_manager, Linear::System &linear_system, Nonlinear::Manager &nonlinear_manager, Topo::Topology &topology, OutputAdapter *output_adapter=0, HB *hb_analysis=0, N_MPDE_Manager *mpde_manager=0)
 
virtual ~Transient ()
 
void notify (const StepEvent &event)
 
void setTIAParams (const TimeIntg::TIAParams &tia_params)
 
const TimeIntg::TIAParamsgetTIAParams () const
 
TimeIntg::TIAParamsgetTIAParams ()
 
bool setAnalysisParams (const Util::OptionBlock &paramsBlock)
 
bool setTimeIntegratorOptions (const Util::OptionBlock &option_block)
 
bool doRun ()
 
bool doInit ()
 
bool doLoopProcess ()
 
bool doProcessSuccessfulStep ()
 
bool doProcessFailedStep ()
 
bool doFinish ()
 
bool doHandlePredictor ()
 
bool processSuccessfulDCOP ()
 
bool processFailedDCOP ()
 
bool resetForHB ()
 
bool finalVerboseOutput ()
 
void printStepHeader (std::ostream &os)
 
void printProgress (std::ostream &os)
 
bool mixedSignalStep (double maxTimeStepFromHabanero)
 
bool finalizeMixedSignalStep ()
 
bool twoLevelStep ()
 
bool getDCOPFlag () const
 
int getDCStats ()
 
int getTranStats ()
 
void setSaveTimeSteps (bool save_time_steps)
 
- Public Member Functions inherited from Xyce::Analysis::AnalysisBase
 AnalysisBase (AnalysisManager &analysis_manager, const char *name)
 
virtual ~AnalysisBase ()
 
void setTranStepNumber (int step)
 
int getTranStepNumber ()
 
int getStepNumber ()
 
void setStepNumber (int step)
 
virtual bool outputFailureStats (std::ostream &os)
 
bool run ()
 
bool init ()
 
bool loopProcess ()
 
bool processSuccessfulStep ()
 
bool processFailedStep ()
 
bool finish ()
 
bool handlePredictor ()
 
virtual bool isAnalysis (int analysis_type) const
 
virtual int getDoubleDCOPStep () const
 
virtual bool printLoopInfo (int start, int finish)
 
void setBeginningIntegrationFlag (bool bif)
 
bool getBeginningIntegrationFlag () const
 
void setIntegrationMethod (int im)
 
int getIntegrationMethod () const
 
void setInputOPFlag (bool initial_conditions_loaded)
 
bool getInputOPFlag () const
 
bool resetForStepAnalysis ()
 
void resetAll ()
 
int saveLoopInfo ()
 
double getTotalLinearSolutionTime () const
 
double getTotalResidualLoadTime () const
 
double getTotalJacobianLoadTime () const
 
bool getDoubleDCOPEnabled () const
 
bool firstDoubleDCOPStep ()
 
const StatCountsgetStatCounts (int index=-1) const
 
bool setDCOPOption (const Util::Param &param)
 
int getLastDCOPStep () const
 
int getFirstDCOPStep () const
 
bool getNOOP () const
 
void setNOOP (bool noop)
 
const char * getName () const
 

Private Member Functions

void preMixedSignalStepDetails (double maxTimeStepFromHabanero)
 
void noopOutputs ()
 
void tranopOutputs ()
 
void tranStepOutputs ()
 
void takeAnIntegrationStep_ ()
 
bool retakeAndAcceptTimeStep (double aTimeStep)
 
void logQueuedData ()
 

Private Attributes

Parallel::Machine comm_
 
AnalysisManageranalysisManager_
 
Loader::Loaderloader_
 
Linear::System & linearSystem_
 
Nonlinear::ManagernonlinearManager_
 
Topo::Topology & topology_
 
OutputMgrAdapteroutputManagerAdapter_
 
OutputAdapteroutputAdapter_
 
TimeIntg::TIAParams tiaParams_
 
bool sensFlag_
 
unsigned int initialIntegrationMethod_
 
bool firstTranOutput_
 
bool isPaused
 
bool dcopFlag_
 
double startDCOPtime
 
double startTRANtime_
 
double endTRANtime_
 
bool gui_
 
bool historyTrackingOn_
 
double minEstErrorOverTol
 
int stepNumberAtMinEstErrorOverTol
 
double timeStepAtMinEstErrorOverTol
 
std::string maxTimeStepExpressionString_
 
Util::ExpressionData * maxTimeStepExpression_
 
Util::FixedQueue< double > timeQueue_
 
Util::FixedQueue< double > timeStepQueue_
 
Util::FixedQueue< int > stepStatusQueue_
 
Util::FixedQueue< double > estErrorOverTolQueue_
 
Util::FixedQueue< int > nonlinearSolverStatusQueue_
 
Util::FixedQueue< int > nonlinearSolverNumIterationsQueue_
 
Util::FixedQueue< double > nonlinearSolverMaxNormQueue_
 
Util::FixedQueue< double > nonlinearSolverMaxNormIndexQueue_
 
bool firstTime
 
double oldPercentComplete
 
double startSimTime
 
int dcStats
 
int tranStats
 
double exitTime
 Exit when it exceeds this time. More...
 
int exitStep
 Exit after taking this many steps. More...
 
unsigned int integrationMethod
 Time-integration method. More...
 
int historyTrackingDepth
 
bool passNLStall
 option to pass some non-linear solver failures More...
 
bool saveTimeStepsFlag
 flag to save timestpes in data store for later use More...
 
bool condTestFlag
 flag for conductance test More...
 
std::vector< std::string > condTestDeviceNames
 names for conductance test More...
 
bool outputInterpMPDE
 flag for interpolating the MPDE output. Sometimes, the interpolation is the hard part. More...
 
HBhbAnalysis_
 
N_MPDE_Manager * mpdeManager_
 
std::vector< double > objectiveVec_
 
std::vector< double > dOdpVec_
 
std::vector< double > dOdpAdjVec_
 
std::vector< double > scaled_dOdpVec_
 
std::vector< double > scaled_dOdpAdjVec_
 

Additional Inherited Members

- Public Attributes inherited from Xyce::Analysis::AnalysisBase
StatCounts stats_
 
- Protected Attributes inherited from Xyce::Analysis::AnalysisBase
bool beginningIntegration
 
unsigned int baseIntegrationMethod_
 Current time-integration method flag. More...
 
unsigned int stepNumber
 Time-integration step number counter. More...
 
unsigned int tranStepNumber
 
bool NOOP_
 
bool doubleDCOPFlag_
 true if doing a double-DCOP is possible. More...
 
int doubleDCOPStep_
 current step in the DCOP loop. More...
 
int firstDCOPStep_
 
int lastDCOPStep_
 
std::vector< StatCountssaveStatCountsVector_
 

Detailed Description

Definition at line 74 of file N_ANP_Transient.h.

Constructor & Destructor Documentation

Xyce::Analysis::Transient::Transient ( AnalysisManager analysis_manager,
Linear::System &  linear_system,
Nonlinear::Manager nonlinear_manager,
Topo::Topology &  topology,
OutputAdapter output_adapter = 0,
HB hb_analysis = 0,
N_MPDE_Manager *  mpde_manager = 0 
)

Definition at line 89 of file N_ANP_Transient.C.

virtual Xyce::Analysis::Transient::~Transient ( )
inlinevirtual

Definition at line 86 of file N_ANP_Transient.h.

Member Function Documentation

bool Xyce::Analysis::Transient::doFinish ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1484 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::doHandlePredictor ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1530 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::doInit ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 365 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::doLoopProcess ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 577 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::doProcessFailedStep ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1331 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::doProcessSuccessfulStep ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1137 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::doRun ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 345 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::finalizeMixedSignalStep ( )

Definition at line 929 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::finalVerboseOutput ( )

Definition at line 1588 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::getDCOPFlag ( ) const
inlinevirtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 130 of file N_ANP_Transient.h.

int Xyce::Analysis::Transient::getDCStats ( )
inline

Definition at line 135 of file N_ANP_Transient.h.

const TimeIntg::TIAParams& Xyce::Analysis::Transient::getTIAParams ( ) const
inlinevirtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 95 of file N_ANP_Transient.h.

TimeIntg::TIAParams& Xyce::Analysis::Transient::getTIAParams ( )
inlinevirtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 99 of file N_ANP_Transient.h.

int Xyce::Analysis::Transient::getTranStats ( )
inline

Definition at line 136 of file N_ANP_Transient.h.

void Xyce::Analysis::Transient::logQueuedData ( )
private

Definition at line 1628 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::mixedSignalStep ( double  maxTimeStepFromHabanero)

Definition at line 817 of file N_ANP_Transient.C.

void Xyce::Analysis::Transient::noopOutputs ( )
private

Definition at line 2056 of file N_ANP_Transient.C.

void Xyce::Analysis::Transient::notify ( const StepEvent event)

Definition at line 137 of file N_ANP_Transient.C.

void Xyce::Analysis::Transient::preMixedSignalStepDetails ( double  maxTimeStepFromHabanero)
private

Definition at line 835 of file N_ANP_Transient.C.

void Xyce::Analysis::Transient::printProgress ( std::ostream &  os)
virtual

Reimplemented from Xyce::Analysis::AnalysisBase.

Definition at line 1920 of file N_ANP_Transient.C.

void Xyce::Analysis::Transient::printStepHeader ( std::ostream &  os)
virtual

Reimplemented from Xyce::Analysis::AnalysisBase.

Definition at line 1870 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::processFailedDCOP ( )

Definition at line 1458 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::processSuccessfulDCOP ( )

Definition at line 1053 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::resetForHB ( )

Definition at line 1560 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::retakeAndAcceptTimeStep ( double  aTimeStep)
private

Definition at line 1824 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::setAnalysisParams ( const Util::OptionBlock &  paramsBlock)

Definition at line 171 of file N_ANP_Transient.C.

void Xyce::Analysis::Transient::setSaveTimeSteps ( bool  save_time_steps)
inline

Definition at line 138 of file N_ANP_Transient.h.

void Xyce::Analysis::Transient::setTIAParams ( const TimeIntg::TIAParams tia_params)
inline

Definition at line 91 of file N_ANP_Transient.h.

bool Xyce::Analysis::Transient::setTimeIntegratorOptions ( const Util::OptionBlock &  option_block)

Definition at line 277 of file N_ANP_Transient.C.

void Xyce::Analysis::Transient::takeAnIntegrationStep_ ( )
private

Definition at line 1744 of file N_ANP_Transient.C.

void Xyce::Analysis::Transient::tranopOutputs ( )
private

Definition at line 2099 of file N_ANP_Transient.C.

void Xyce::Analysis::Transient::tranStepOutputs ( )
private

Definition at line 2150 of file N_ANP_Transient.C.

bool Xyce::Analysis::Transient::twoLevelStep ( )
virtual

Reimplemented from Xyce::Analysis::AnalysisBase.

Definition at line 1801 of file N_ANP_Transient.C.

Member Data Documentation

AnalysisManager& Xyce::Analysis::Transient::analysisManager_
private

Definition at line 157 of file N_ANP_Transient.h.

Parallel::Machine Xyce::Analysis::Transient::comm_
private

Definition at line 156 of file N_ANP_Transient.h.

std::vector<std::string> Xyce::Analysis::Transient::condTestDeviceNames
private

names for conductance test

Definition at line 226 of file N_ANP_Transient.h.

bool Xyce::Analysis::Transient::condTestFlag
private

flag for conductance test

Definition at line 225 of file N_ANP_Transient.h.

bool Xyce::Analysis::Transient::dcopFlag_
private

Definition at line 174 of file N_ANP_Transient.h.

int Xyce::Analysis::Transient::dcStats
private

Definition at line 210 of file N_ANP_Transient.h.

std::vector<double> Xyce::Analysis::Transient::dOdpAdjVec_
private

Definition at line 236 of file N_ANP_Transient.h.

std::vector<double> Xyce::Analysis::Transient::dOdpVec_
private

Definition at line 235 of file N_ANP_Transient.h.

double Xyce::Analysis::Transient::endTRANtime_
private

Definition at line 178 of file N_ANP_Transient.h.

Util::FixedQueue<double> Xyce::Analysis::Transient::estErrorOverTolQueue_
private

Definition at line 200 of file N_ANP_Transient.h.

int Xyce::Analysis::Transient::exitStep
private

Exit after taking this many steps.

Definition at line 213 of file N_ANP_Transient.h.

double Xyce::Analysis::Transient::exitTime
private

Exit when it exceeds this time.

Definition at line 212 of file N_ANP_Transient.h.

bool Xyce::Analysis::Transient::firstTime
private

Definition at line 207 of file N_ANP_Transient.h.

bool Xyce::Analysis::Transient::firstTranOutput_
private

Definition at line 170 of file N_ANP_Transient.h.

bool Xyce::Analysis::Transient::gui_
private

Definition at line 179 of file N_ANP_Transient.h.

HB* Xyce::Analysis::Transient::hbAnalysis_
private

Definition at line 229 of file N_ANP_Transient.h.

int Xyce::Analysis::Transient::historyTrackingDepth
private

Definition at line 221 of file N_ANP_Transient.h.

bool Xyce::Analysis::Transient::historyTrackingOn_
private

Definition at line 181 of file N_ANP_Transient.h.

unsigned int Xyce::Analysis::Transient::initialIntegrationMethod_
private

Definition at line 169 of file N_ANP_Transient.h.

unsigned int Xyce::Analysis::Transient::integrationMethod
private

Time-integration method.

Definition at line 214 of file N_ANP_Transient.h.

bool Xyce::Analysis::Transient::isPaused
private

Definition at line 173 of file N_ANP_Transient.h.

Linear::System& Xyce::Analysis::Transient::linearSystem_
private

Definition at line 159 of file N_ANP_Transient.h.

Loader::Loader& Xyce::Analysis::Transient::loader_
private

Definition at line 158 of file N_ANP_Transient.h.

Util::ExpressionData* Xyce::Analysis::Transient::maxTimeStepExpression_
private

Definition at line 191 of file N_ANP_Transient.h.

std::string Xyce::Analysis::Transient::maxTimeStepExpressionString_
private

Definition at line 190 of file N_ANP_Transient.h.

double Xyce::Analysis::Transient::minEstErrorOverTol
private

Definition at line 186 of file N_ANP_Transient.h.

N_MPDE_Manager* Xyce::Analysis::Transient::mpdeManager_
private

Definition at line 230 of file N_ANP_Transient.h.

Nonlinear::Manager& Xyce::Analysis::Transient::nonlinearManager_
private

Definition at line 160 of file N_ANP_Transient.h.

Util::FixedQueue<double> Xyce::Analysis::Transient::nonlinearSolverMaxNormIndexQueue_
private

Definition at line 204 of file N_ANP_Transient.h.

Util::FixedQueue<double> Xyce::Analysis::Transient::nonlinearSolverMaxNormQueue_
private

Definition at line 203 of file N_ANP_Transient.h.

Util::FixedQueue<int> Xyce::Analysis::Transient::nonlinearSolverNumIterationsQueue_
private

Definition at line 202 of file N_ANP_Transient.h.

Util::FixedQueue<int> Xyce::Analysis::Transient::nonlinearSolverStatusQueue_
private

Definition at line 201 of file N_ANP_Transient.h.

std::vector<double> Xyce::Analysis::Transient::objectiveVec_
private

Definition at line 234 of file N_ANP_Transient.h.

double Xyce::Analysis::Transient::oldPercentComplete
private

Definition at line 208 of file N_ANP_Transient.h.

OutputAdapter* Xyce::Analysis::Transient::outputAdapter_
private

Definition at line 163 of file N_ANP_Transient.h.

bool Xyce::Analysis::Transient::outputInterpMPDE
private

flag for interpolating the MPDE output. Sometimes, the interpolation is the hard part.

Definition at line 227 of file N_ANP_Transient.h.

OutputMgrAdapter& Xyce::Analysis::Transient::outputManagerAdapter_
private

Definition at line 162 of file N_ANP_Transient.h.

bool Xyce::Analysis::Transient::passNLStall
private

option to pass some non-linear solver failures

Definition at line 223 of file N_ANP_Transient.h.

bool Xyce::Analysis::Transient::saveTimeStepsFlag
private

flag to save timestpes in data store for later use

Definition at line 224 of file N_ANP_Transient.h.

std::vector<double> Xyce::Analysis::Transient::scaled_dOdpAdjVec_
private

Definition at line 238 of file N_ANP_Transient.h.

std::vector<double> Xyce::Analysis::Transient::scaled_dOdpVec_
private

Definition at line 237 of file N_ANP_Transient.h.

bool Xyce::Analysis::Transient::sensFlag_
private

Definition at line 167 of file N_ANP_Transient.h.

double Xyce::Analysis::Transient::startDCOPtime
private

Definition at line 176 of file N_ANP_Transient.h.

double Xyce::Analysis::Transient::startSimTime
private

Definition at line 209 of file N_ANP_Transient.h.

double Xyce::Analysis::Transient::startTRANtime_
private

Definition at line 177 of file N_ANP_Transient.h.

int Xyce::Analysis::Transient::stepNumberAtMinEstErrorOverTol
private

Definition at line 187 of file N_ANP_Transient.h.

Util::FixedQueue<int> Xyce::Analysis::Transient::stepStatusQueue_
private

Definition at line 199 of file N_ANP_Transient.h.

TimeIntg::TIAParams Xyce::Analysis::Transient::tiaParams_
private

Definition at line 165 of file N_ANP_Transient.h.

Util::FixedQueue<double> Xyce::Analysis::Transient::timeQueue_
private

Definition at line 197 of file N_ANP_Transient.h.

double Xyce::Analysis::Transient::timeStepAtMinEstErrorOverTol
private

Definition at line 188 of file N_ANP_Transient.h.

Util::FixedQueue<double> Xyce::Analysis::Transient::timeStepQueue_
private

Definition at line 198 of file N_ANP_Transient.h.

Topo::Topology& Xyce::Analysis::Transient::topology_
private

Definition at line 161 of file N_ANP_Transient.h.

int Xyce::Analysis::Transient::tranStats
private

Definition at line 211 of file N_ANP_Transient.h.


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