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

#include <N_ANP_HB.h>

Inheritance diagram for Xyce::Analysis::HB:
Collaboration diagram for Xyce::Analysis::HB:

Public Member Functions

 HB (AnalysisManager &anaManagerPtr)
 
virtual ~HB ()
 
void notify (const StepEvent &event)
 
bool setHBOptions (const N_UTL_OptionBlock &OB)
 
bool setHBLinSol (const N_UTL_OptionBlock &OB)
 
bool setLinSol (const N_UTL_OptionBlock &OB)
 
int getStepNumber ()
 
void setStepNumber (int step)
 
void setBeginningIntegrationFlag (bool bif)
 
bool getBeginningIntegrationFlag ()
 
void setIntegrationMethod (int im)
 
unsigned int getIntegrationMethod ()
 
int getDoubleDCOPStep ()
 
bool getDCOPFlag ()
 
bool run ()
 
bool init ()
 
bool loopProcess ()
 
bool processSuccessfulDCOP ()
 
bool processFailedDCOP ()
 
bool processSuccessfulStep ()
 
bool processFailedStep ()
 
bool finish ()
 
bool handlePredictor ()
 
bool finalVerboseOutput ()
 
bool isAnalysis (int analysis_type)
 
void prepareHBOutput (N_LAS_Vector &solnVecPtr, std::vector< double > &timePoints, std::vector< double > &freqPoints, Teuchos::RCP< N_LAS_BlockVector > &timeDomainSolnVec, Teuchos::RCP< N_LAS_BlockVector > &freqDomainSolnVecReal, Teuchos::RCP< N_LAS_BlockVector > &freqDomainSolnVecImaginary, Teuchos::RCP< N_LAS_BlockVector > &timeDomainStoreVec, Teuchos::RCP< N_LAS_BlockVector > &freqDomainStoreVecReal, Teuchos::RCP< N_LAS_BlockVector > &freqDomainStoreVecImaginary) const
 
- Public Member Functions inherited from Xyce::Analysis::AnalysisBase
 AnalysisBase (AnalysisManager &analysis_manager)
 
virtual ~AnalysisBase ()
 
virtual bool setAnalysisParams (const Util::OptionBlock &paramsBlock)
 
virtual bool outputFailureStats ()
 
virtual void setParamsWithOutputMgrAdapter (OutputMgrAdapter &outputManagerAdapter)
 
virtual int getStepIter ()
 
virtual void setTranStepNumber (int step)
 
virtual int getTranStepNumber ()
 
virtual void setSensFlag ()
 
virtual void printStepHeader (std::ostream &os)
 
virtual void printProgress (std::ostream &os)
 
virtual void preStepDetails (double maxTimeStepFromHabanero)
 
virtual bool mixedSignalStep ()
 
virtual bool finalizeStep ()
 
virtual bool twoLevelStep ()
 
virtual bool printLoopInfo (int start, int finish)
 
virtual bool getInputOPFlag ()
 
bool resetForStepAnalysis ()
 
void resetAll ()
 
int saveLoopInfo ()
 
void gatherStepStatistics_ ()
 
double getTotalLinearSolutionTime () const
 
double getTotalResidualLoadTime () const
 
double getTotalJacobianLoadTime () const
 
bool getDoubleDCOPEnabled ()
 
bool firstDoubleDCOPStep_ ()
 
const StatCountsgetStatCounts (int index=-1) const
 

Public Attributes

int debugLevel
 
- Public Attributes inherited from Xyce::Analysis::AnalysisBase
StatCounts stats_
 

Private Member Functions

void accumulateStatistics_ ()
 
bool runTol_ ()
 
bool runStartupPeriods_ ()
 
bool runTransientIC_ ()
 
bool interpolateIC_ ()
 
bool setFreqPoints_ ()
 
bool setInitialGuess_ ()
 
bool setTimePoints_ ()
 
bool createFT_ ()
 

Private Attributes

bool isPaused
 
double startDCOPtime
 
double endTRANtime
 
Device::DeviceInterfacedevInterfacePtr_
 
N_LOA_NonlinearEquationLoader * nonlinearEquationLoaderPtr_
 
N_LAS_Builder * appBuilderPtr_
 
N_PDS_Manager * pdsMgrPtr_
 
Teuchos::RCP< AnalysisBaseanalysisObject_
 
bool isTransient_
 
bool isDCSweep_
 
bool test_
 
int size_
 
std::vector< int > numPosFreqs
 
std::vector< int > numFreqs_
 
double period_
 
int startUpPeriods_
 
bool startUpPeriodsGiven_
 
bool startUpPeriodsFinished_
 
bool saveIcData_
 
N_TIA_TIAParams transTiaParams_
 
int taHB_
 
bool voltLimFlag_
 
int intmodMax_
 
std::string method_
 
bool intmodMaxGiven_
 
N_LOA_HBLoader * hbLoaderPtr_
 
Teuchos::RCP< N_LAS_HBBuilder > hbBuilderPtr_
 
Teuchos::RCP< N_LAS_System > lasHBSysPtr_
 
Teuchos::RCP
< N_UTL_FFTInterface
< std::vector< double > > > 
ftInterface_
 
std::vector< double > ftInData_
 
std::vector< double > ftOutData_
 
std::vector< double > iftInData_
 
std::vector< double > iftOutData_
 
int fastTimeDisc_
 
int fastTimeDiscOrder_
 
std::vector< double > fastTimes_
 
std::vector< double > timeSteps_
 
std::vector< double > freqPoints_
 
Teuchos::RCP
< N_MPDE_Discretization > 
mpdeDiscPtr_
 
N_MPDE_State mpdeState_
 
Teuchos::RCP
< N_UTL_DFTInterfaceDecl
< std::vector< double > > > 
dftInterface_
 
Teuchos::SerialDenseMatrix
< int, double > 
idftMatrix_
 
Teuchos::SerialDenseMatrix
< int, double > 
dftMatrix_
 
N_UTL_OptionBlock saved_lsHBOB_
 
N_UTL_OptionBlock saved_lsOB_
 
N_UTL_OptionBlock saved_nlHBOB_
 
Teuchos::RCP
< N_LAS_PrecondFactory > 
precFactory_
 
Teuchos::RCP< N_LAS_Vector > dcOpSolVecPtr_
 
Teuchos::RCP< N_LAS_Vector > dcOpStateVecPtr_
 
Teuchos::RCP< N_LAS_Vector > dcOpQVecPtr_
 
Teuchos::RCP< N_LAS_Vector > dcOpStoreVecPtr_
 
std::vector< double > goodTimePoints_
 
std::vector< Teuchos::RCP
< N_LAS_Vector > > 
goodSolutionVec_
 
std::vector< Teuchos::RCP
< N_LAS_Vector > > 
goodStateVec_
 
std::vector< Teuchos::RCP
< N_LAS_Vector > > 
goodQVec_
 
std::vector< Teuchos::RCP
< N_LAS_Vector > > 
goodStoreVec_
 
Teuchos::RCP< N_LAS_BlockVector > HBICVectorPtr_
 
Teuchos::RCP< N_LAS_BlockVector > HBICVectorFreqPtr_
 
Teuchos::RCP< N_LAS_BlockVector > HBICStateVectorPtr_
 
Teuchos::RCP< N_LAS_BlockVector > HBICQVectorPtr_
 
Teuchos::RCP< N_LAS_BlockVector > HBICStoreVectorPtr_
 
StatCounts hbStatCounts_
 
bool resetForStepCalledBefore_
 

Additional Inherited Members

- Protected Attributes inherited from Xyce::Analysis::AnalysisBase
AnalysisManageranalysisManager_
 
N_LAS_System & linearSystem_
 
N_LOA_Loader & loader_
 
N_LOA_Loader & nonlinearEquationLoader_
 
Nonlinear::ManagernonlinearSolverManager_
 
OutputMgrAdapteroutputManagerAdapter_
 
N_TIA_StepErrorControl *& stepErrorControl_
 Ref to pointer since AnalysisManager will change pointer. More...
 
N_TIA_WorkingIntegrationMethod *& workingIntgMethod_
 Ref to pointer since AnalysisManager will change pointer. More...
 
N_TIA_TIAParamstiaParams_
 
bool beginningIntegration
 
unsigned int integrationMethod_
 Current time-integration method flag. More...
 
unsigned int stepNumber
 Time-integration step number counter. More...
 
unsigned int tranStepNumber
 
bool doubleDCOPFlag_
 true if doing a double-DCOP is possible. More...
 
int doubleDCOPStep_
 current step in the DCOP loop. More...
 
bool sensFlag_
 
bool inputOPFlag_
 true if starting from an initial condition. More...
 
std::vector< StatCountssaveStatCountsVector_
 

Detailed Description

Definition at line 73 of file N_ANP_HB.h.

Constructor & Destructor Documentation

Xyce::Analysis::HB::HB ( AnalysisManager anaManagerPtr)

Definition at line 93 of file N_ANP_HB.C.

Xyce::Analysis::HB::~HB ( )
virtual

Definition at line 126 of file N_ANP_HB.C.

Member Function Documentation

void Xyce::Analysis::HB::accumulateStatistics_ ( )
private

Definition at line 1060 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::createFT_ ( )
private

Definition at line 1628 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::finalVerboseOutput ( )

Definition at line 752 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::finish ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 732 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::getBeginningIntegrationFlag ( )
virtual

Reimplemented from Xyce::Analysis::AnalysisBase.

Definition at line 235 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::getDCOPFlag ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 306 of file N_ANP_HB.C.

int Xyce::Analysis::HB::getDoubleDCOPStep ( )
virtual

Reimplemented from Xyce::Analysis::AnalysisBase.

Definition at line 286 of file N_ANP_HB.C.

unsigned int Xyce::Analysis::HB::getIntegrationMethod ( )
virtual

Reimplemented from Xyce::Analysis::AnalysisBase.

Definition at line 268 of file N_ANP_HB.C.

int Xyce::Analysis::HB::getStepNumber ( )
virtual

Reimplemented from Xyce::Analysis::AnalysisBase.

Definition at line 186 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::handlePredictor ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 739 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::init ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 391 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::interpolateIC_ ( )
private

Definition at line 1817 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::isAnalysis ( int  analysis_type)
virtual

Reimplemented from Xyce::Analysis::AnalysisBase.

Definition at line 892 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::loopProcess ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 637 of file N_ANP_HB.C.

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

Definition at line 131 of file N_ANP_HB.C.

void Xyce::Analysis::HB::prepareHBOutput ( N_LAS_Vector &  solnVecPtr,
std::vector< double > &  timePoints,
std::vector< double > &  freqPoints,
Teuchos::RCP< N_LAS_BlockVector > &  timeDomainSolnVec,
Teuchos::RCP< N_LAS_BlockVector > &  freqDomainSolnVecReal,
Teuchos::RCP< N_LAS_BlockVector > &  freqDomainSolnVecImaginary,
Teuchos::RCP< N_LAS_BlockVector > &  timeDomainStoreVec,
Teuchos::RCP< N_LAS_BlockVector > &  freqDomainStoreVecReal,
Teuchos::RCP< N_LAS_BlockVector > &  freqDomainStoreVecImaginary 
) const

Definition at line 915 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::processFailedDCOP ( )

Definition at line 719 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::processFailedStep ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 706 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::processSuccessfulDCOP ( )

Definition at line 680 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::processSuccessfulStep ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 693 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::run ( )
virtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 342 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::runStartupPeriods_ ( )
private

Definition at line 1169 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::runTol_ ( )
private

Definition at line 1075 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::runTransientIC_ ( )
private

Definition at line 1736 of file N_ANP_HB.C.

void Xyce::Analysis::HB::setBeginningIntegrationFlag ( bool  bif)
virtual

Reimplemented from Xyce::Analysis::AnalysisBase.

Definition at line 219 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::setFreqPoints_ ( )
private

Definition at line 1254 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::setHBLinSol ( const N_UTL_OptionBlock &  OB)

Definition at line 871 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::setHBOptions ( const N_UTL_OptionBlock &  OB)

Definition at line 765 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::setInitialGuess_ ( )
private

Definition at line 1676 of file N_ANP_HB.C.

void Xyce::Analysis::HB::setIntegrationMethod ( int  im)
virtual

Reimplemented from Xyce::Analysis::AnalysisBase.

Definition at line 252 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::setLinSol ( const N_UTL_OptionBlock &  OB)

Definition at line 855 of file N_ANP_HB.C.

void Xyce::Analysis::HB::setStepNumber ( int  step)
virtual

Reimplemented from Xyce::Analysis::AnalysisBase.

Definition at line 203 of file N_ANP_HB.C.

bool Xyce::Analysis::HB::setTimePoints_ ( )
private

Definition at line 1512 of file N_ANP_HB.C.

Member Data Documentation

Teuchos::RCP<AnalysisBase> Xyce::Analysis::HB::analysisObject_
private

Definition at line 161 of file N_ANP_HB.h.

N_LAS_Builder* Xyce::Analysis::HB::appBuilderPtr_
private

Definition at line 159 of file N_ANP_HB.h.

Teuchos::RCP<N_LAS_Vector> Xyce::Analysis::HB::dcOpQVecPtr_
private

Definition at line 230 of file N_ANP_HB.h.

Teuchos::RCP<N_LAS_Vector> Xyce::Analysis::HB::dcOpSolVecPtr_
private

Definition at line 228 of file N_ANP_HB.h.

Teuchos::RCP<N_LAS_Vector> Xyce::Analysis::HB::dcOpStateVecPtr_
private

Definition at line 229 of file N_ANP_HB.h.

Teuchos::RCP<N_LAS_Vector> Xyce::Analysis::HB::dcOpStoreVecPtr_
private

Definition at line 231 of file N_ANP_HB.h.

int Xyce::Analysis::HB::debugLevel

Definition at line 131 of file N_ANP_HB.h.

Device::DeviceInterface* Xyce::Analysis::HB::devInterfacePtr_
private

Definition at line 157 of file N_ANP_HB.h.

Teuchos::RCP<N_UTL_DFTInterfaceDecl<std::vector<double> > > Xyce::Analysis::HB::dftInterface_
private

Definition at line 216 of file N_ANP_HB.h.

Teuchos::SerialDenseMatrix<int,double> Xyce::Analysis::HB::dftMatrix_
private

Definition at line 217 of file N_ANP_HB.h.

double Xyce::Analysis::HB::endTRANtime
private

Definition at line 155 of file N_ANP_HB.h.

int Xyce::Analysis::HB::fastTimeDisc_
private

Definition at line 206 of file N_ANP_HB.h.

int Xyce::Analysis::HB::fastTimeDiscOrder_
private

Definition at line 207 of file N_ANP_HB.h.

std::vector<double> Xyce::Analysis::HB::fastTimes_
private

Definition at line 208 of file N_ANP_HB.h.

std::vector<double> Xyce::Analysis::HB::freqPoints_
private

Definition at line 210 of file N_ANP_HB.h.

std::vector<double> Xyce::Analysis::HB::ftInData_
private

Definition at line 203 of file N_ANP_HB.h.

Teuchos::RCP<N_UTL_FFTInterface<std::vector<double> > > Xyce::Analysis::HB::ftInterface_
private

Definition at line 202 of file N_ANP_HB.h.

std::vector<double> Xyce::Analysis::HB::ftOutData_
private

Definition at line 203 of file N_ANP_HB.h.

std::vector<Teuchos::RCP<N_LAS_Vector> > Xyce::Analysis::HB::goodQVec_
private

Definition at line 236 of file N_ANP_HB.h.

std::vector<Teuchos::RCP<N_LAS_Vector> > Xyce::Analysis::HB::goodSolutionVec_
private

Definition at line 234 of file N_ANP_HB.h.

std::vector<Teuchos::RCP<N_LAS_Vector> > Xyce::Analysis::HB::goodStateVec_
private

Definition at line 235 of file N_ANP_HB.h.

std::vector<Teuchos::RCP<N_LAS_Vector> > Xyce::Analysis::HB::goodStoreVec_
private

Definition at line 237 of file N_ANP_HB.h.

std::vector<double> Xyce::Analysis::HB::goodTimePoints_
private

Definition at line 233 of file N_ANP_HB.h.

Teuchos::RCP<N_LAS_HBBuilder> Xyce::Analysis::HB::hbBuilderPtr_
private

Definition at line 200 of file N_ANP_HB.h.

Teuchos::RCP<N_LAS_BlockVector> Xyce::Analysis::HB::HBICQVectorPtr_
private

Definition at line 248 of file N_ANP_HB.h.

Teuchos::RCP<N_LAS_BlockVector> Xyce::Analysis::HB::HBICStateVectorPtr_
private

Definition at line 244 of file N_ANP_HB.h.

Teuchos::RCP<N_LAS_BlockVector> Xyce::Analysis::HB::HBICStoreVectorPtr_
private

Definition at line 252 of file N_ANP_HB.h.

Teuchos::RCP<N_LAS_BlockVector> Xyce::Analysis::HB::HBICVectorFreqPtr_
private

Definition at line 241 of file N_ANP_HB.h.

Teuchos::RCP<N_LAS_BlockVector> Xyce::Analysis::HB::HBICVectorPtr_
private

Definition at line 240 of file N_ANP_HB.h.

N_LOA_HBLoader* Xyce::Analysis::HB::hbLoaderPtr_
private

Definition at line 199 of file N_ANP_HB.h.

StatCounts Xyce::Analysis::HB::hbStatCounts_
private

Definition at line 255 of file N_ANP_HB.h.

Teuchos::SerialDenseMatrix<int,double> Xyce::Analysis::HB::idftMatrix_
private

Definition at line 217 of file N_ANP_HB.h.

std::vector<double> Xyce::Analysis::HB::iftInData_
private

Definition at line 203 of file N_ANP_HB.h.

std::vector<double> Xyce::Analysis::HB::iftOutData_
private

Definition at line 203 of file N_ANP_HB.h.

int Xyce::Analysis::HB::intmodMax_
private

Definition at line 193 of file N_ANP_HB.h.

bool Xyce::Analysis::HB::intmodMaxGiven_
private

Definition at line 196 of file N_ANP_HB.h.

bool Xyce::Analysis::HB::isDCSweep_
private

Definition at line 164 of file N_ANP_HB.h.

bool Xyce::Analysis::HB::isPaused
private

Definition at line 152 of file N_ANP_HB.h.

bool Xyce::Analysis::HB::isTransient_
private

Definition at line 164 of file N_ANP_HB.h.

Teuchos::RCP<N_LAS_System> Xyce::Analysis::HB::lasHBSysPtr_
private

Definition at line 201 of file N_ANP_HB.h.

std::string Xyce::Analysis::HB::method_
private

Definition at line 194 of file N_ANP_HB.h.

Teuchos::RCP<N_MPDE_Discretization> Xyce::Analysis::HB::mpdeDiscPtr_
private

Definition at line 211 of file N_ANP_HB.h.

N_MPDE_State Xyce::Analysis::HB::mpdeState_
private

Definition at line 212 of file N_ANP_HB.h.

N_LOA_NonlinearEquationLoader* Xyce::Analysis::HB::nonlinearEquationLoaderPtr_
private

Definition at line 158 of file N_ANP_HB.h.

std::vector<int> Xyce::Analysis::HB::numFreqs_
private

Definition at line 173 of file N_ANP_HB.h.

std::vector<int> Xyce::Analysis::HB::numPosFreqs
private

Definition at line 172 of file N_ANP_HB.h.

N_PDS_Manager* Xyce::Analysis::HB::pdsMgrPtr_
private

Definition at line 160 of file N_ANP_HB.h.

double Xyce::Analysis::HB::period_
private

Definition at line 176 of file N_ANP_HB.h.

Teuchos::RCP<N_LAS_PrecondFactory> Xyce::Analysis::HB::precFactory_
private

Definition at line 225 of file N_ANP_HB.h.

bool Xyce::Analysis::HB::resetForStepCalledBefore_
private

Definition at line 270 of file N_ANP_HB.h.

N_UTL_OptionBlock Xyce::Analysis::HB::saved_lsHBOB_
private

Definition at line 220 of file N_ANP_HB.h.

N_UTL_OptionBlock Xyce::Analysis::HB::saved_lsOB_
private

Definition at line 221 of file N_ANP_HB.h.

N_UTL_OptionBlock Xyce::Analysis::HB::saved_nlHBOB_
private

Definition at line 222 of file N_ANP_HB.h.

bool Xyce::Analysis::HB::saveIcData_
private

Definition at line 184 of file N_ANP_HB.h.

int Xyce::Analysis::HB::size_
private

Definition at line 170 of file N_ANP_HB.h.

double Xyce::Analysis::HB::startDCOPtime
private

Definition at line 155 of file N_ANP_HB.h.

int Xyce::Analysis::HB::startUpPeriods_
private

Definition at line 180 of file N_ANP_HB.h.

bool Xyce::Analysis::HB::startUpPeriodsFinished_
private

Definition at line 183 of file N_ANP_HB.h.

bool Xyce::Analysis::HB::startUpPeriodsGiven_
private

Definition at line 181 of file N_ANP_HB.h.

int Xyce::Analysis::HB::taHB_
private

Definition at line 190 of file N_ANP_HB.h.

bool Xyce::Analysis::HB::test_
private

Definition at line 167 of file N_ANP_HB.h.

std::vector<double> Xyce::Analysis::HB::timeSteps_
private

Definition at line 209 of file N_ANP_HB.h.

N_TIA_TIAParams Xyce::Analysis::HB::transTiaParams_
private

Definition at line 187 of file N_ANP_HB.h.

bool Xyce::Analysis::HB::voltLimFlag_
private

Definition at line 192 of file N_ANP_HB.h.


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