Xyce  6.1
Xyce::Analysis::SecondLevelManager Class Reference

#include <N_ANP_SecondLevelManager.h>

Inheritance diagram for Xyce::Analysis::SecondLevelManager:
Collaboration diagram for Xyce::Analysis::SecondLevelManager:

Public Member Functions

 SecondLevelManager (const IO::CmdParse &command_line, OutputMgrAdapter &output_manager_adapter, Stats::Stat analysis_stat)
 
virtual ~SecondLevelManager ()
 
void setExternalSolverState (Loader::CktLoader &loader, bool external_initJctFlag)
 
bool runSecondLevelStep (TimeIntg::TwoLevelError &tlError)
 
bool startupSecondLevelSolvers (Linear::System &linear_system, Nonlinear::Manager &nonlinear_manager)
 
bool finishSecondLevelSolvers ()
 
void homotopyStepSuccess (const std::vector< std::string > &paramNames, const std::vector< double > &paramVals)
 
void homotopyStepFailure ()
 
void stepSecondLevelSuccess (TwoLevelMode analysisUpper)
 
void stepSecondLevelFailure (TwoLevelMode analysisUpper)
 
bool getSecondLevelInitialQnorm (TimeIntg::TwoLevelError &tle) const
 
bool getSecondLevelBreakPoints (Loader::CktLoader &loader, std::vector< Util::BreakPoint > &breakPointTimes) const
 
bool startSecondLevelTimeStep (const TimeIntg::TIAParams &tia_params, Nonlinear::Manager &nonlinear_manager, bool beginIntegrationFlag, double nextTimeStep, double nextTime, int currentOrder)
 
- Public Member Functions inherited from Xyce::Analysis::AnalysisManager
 AnalysisManager (const IO::CmdParse &command_line, OutputMgrAdapter &output_manager_adapter, Stats::Stat analysis_stat)
 Constructs the analysis manager. More...
 
virtual ~AnalysisManager ()
 
void notify (const StepEvent &step_event)
 Notification that there is a StepEvent. More...
 
void notify (const AnalysisEvent &analysis_event)
 Notification that there is a AnalysisEvent. More...
 
void allocateAnalysisObject (AnalysisCreatorRegistry &analysis_registry)
 Creates the primary analysis and driving analysis (.STEP, dakota). More...
 
bool initializeSolverSystem (const TimeIntg::TIAParams &tia_params, Loader::Loader &loader, Linear::System &linear_system, Nonlinear::Manager &nonlinear_manager, Device::DeviceMgr &device_manager)
 Initializes the solver system. More...
 
void resetSolverSystem ()
 
bool run ()
 Runs the top level analysis. More...
 
double getTime () const
 
double getFinalTime () const
 
double getInitialTime () const
 
bool updateDivDiffs ()
 
bool updateDerivs ()
 
bool completeOPStartStep ()
 
bool completeHomotopyStep (Loader::NonlinearEquationLoader &loader, const std::vector< std::string > &paramNames, const std::vector< double > &paramVals, Linear::Vector *solnVecPtr)
 
bool failHomotopyStep (Loader::NonlinearEquationLoader &loader)
 
bool updateDerivsBlock (const std::list< IndexPair > &solGIDList, const std::list< IndexPair > &staGIDList)
 
bool printLoopInfo (int start, int finish)
 
DCOPType getDCOPSolve () const
 
bool getDCOPFlag () const
 
bool getTranOPFlag () const
 
bool getACOPFlag () const
 
bool getDCSweepFlag () const
 
bool getDotOpSpecified ()
 
bool getSweepSourceResetFlag () const
 
void setSweepSourceResetFlag (bool reset)
 
bool getTransientFlag () const
 
bool getDoubleDCOPEnabled () const
 
void setTwoLevelMode (TwoLevelMode two_level_mode)
 
TwoLevelMode getTwoLevelMode () const
 
bool getBlockAnalysisFlag () const
 Return true if primary analysis is HB or MPDE. More...
 
int getDoubleDCOPStep () const
 
int getStepNumber () const
 
int getTranStepNumber ()
 
void setStepNumber (int step)
 
void setTranStepNumber (int step)
 
bool getInitTranFlag () const
 
const IO::CmdParse & getCommandLine () const
 
const std::string & getNetlistFilename () const
 
bool isSimulationComplete ()
 
int getRestartDataSize (bool pack) const
 
bool setDCAnalysisParams (const Util::OptionBlock &paramsBlock)
 
bool setOPAnalysisParams (const Util::OptionBlock &paramsBlock)
 
bool setACAnalysisParams (const Util::OptionBlock &OB)
 
bool setNOISEAnalysisParams (const Util::OptionBlock &OB)
 
void setPauseTime (double pauseTime, double initial_time)
 
double getPauseTime () const
 
bool isPaused () const
 
bool setSensOptions (const Util::OptionBlock &OB)
 
bool registerParallelServices (Parallel::Manager *pds_tmp)
 
bool registerElapsedTimer (Util::Timer *)
 
bool dumpRestartData (char *buf, int bsize, int &pos, Parallel::Communicator *comm, bool pack)
 
bool restoreRestartData (char *buf, int bsize, int &pos, Parallel::Communicator *comm, bool pack)
 
bool getSolnVarData (const int &gid, std::vector< double > &varData) const
 
bool getStateVarData (const int &gid, std::vector< double > &varData) const
 
bool getStoreVarData (const int &gid, std::vector< double > &varData) const
 
bool setSolnVarData (const int &gid, const std::vector< double > &varData)
 
bool setStateVarData (const int &gid, const std::vector< double > &varData)
 
bool setStoreVarData (const int &gid, const std::vector< double > &varData)
 
void setBeginningIntegrationFlag (bool bif)
 
bool getBeginningIntegrationFlag () const
 
void setIntegrationMethod (int im)
 
int getIntegrationMethod ()
 
double getTotalLinearSolutionTime () const
 
double getTotalResidualLoadTime () const
 
double getTotalJacobianLoadTime () const
 
bool setNextSolVectorPtr (Linear::Vector *solVecPtr)
 
void createTimeIntegratorMethod (const TimeIntg::TIAParams &tia_params, const unsigned int integration_method)
 
const TimeIntg::TIAParamsgetTIAParams () const
 
TimeIntg::TIAParamsgetTIAParams ()
 
bool getSensFlag () const
 
void addAnalysis (Util::Factory< AnalysisBase, void > *factory)
 
void addProcessor (Util::Factory< ProcessorBase, void > *factory)
 
void setDAEStateDerivFlag (bool state)
 
TimeIntg::DataStoregetDataStore ()
 
const AnalysisBasegetAnalysisObject () const
 
AnalysisBasegetAnalysisObject ()
 
void setPrimaryAnalysisObject (AnalysisBase *primary)
 
CreatorVectorgetCreatorVector ()
 
Parallel::Manager * getPDSManager () const
 
Parallel::Machine getComm () const
 
bool getSwitchIntegrator () const
 
void setSwitchIntegrator (bool switch_itegrator)
 
void setNextOutputTime (double next_output_time)
 
double getNextOutputTime () const
 
Util::Timer & getXyceTranTimer ()
 
OutputMgrAdaptergetOutputManagerAdapter () const
 
TimeIntg::WorkingIntegrationMethodgetWorkingIntegrationMethod ()
 
const TimeIntg::WorkingIntegrationMethodgetWorkingIntegrationMethod () const
 
TimeIntg::StepErrorControlgetStepErrorControl ()
 
const TimeIntg::StepErrorControlgetStepErrorControl () const
 
Loader::NonlinearEquationLoadergetNonlinearEquationLoader ()
 
void setAnalysisMode (Mode analysis_mode)
 
Mode getAnalysisMode () const
 
double getSolverStartTime () const
 
void silenceProgress ()
 
bool getProgressFlag () const
 
void pushActiveAnalysis (AnalysisBase *analysis)
 
void popActiveAnalysis ()
 
const AnalysisBasegetActiveAnalysis () const
 
void setResumeSimulation (bool resume)
 
bool getResumingSimulation () const
 
bool getSavedAlready () const
 
void setSavedAlready (bool saved_already)
 

Private Member Functions

 SecondLevelManager (const SecondLevelManager &)
 
SecondLevelManageroperator= (const SecondLevelManager &)
 

Private Attributes

AnalysisBasetwoLevelAnalysisObject_
 
IO::ActiveOutput * activeOutput_
 

Additional Inherited Members

- Public Attributes inherited from Xyce::Analysis::AnalysisManager
unsigned int breakPointRestartStep
 

Detailed Description

Definition at line 54 of file N_ANP_SecondLevelManager.h.

Constructor & Destructor Documentation

Xyce::Analysis::SecondLevelManager::SecondLevelManager ( const IO::CmdParse &  command_line,
OutputMgrAdapter output_manager_adapter,
Stats::Stat  analysis_stat 
)
inline

Definition at line 57 of file N_ANP_SecondLevelManager.h.

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

Definition at line 66 of file N_ANP_SecondLevelManager.h.

Xyce::Analysis::SecondLevelManager::SecondLevelManager ( const SecondLevelManager )
private

Member Function Documentation

bool Xyce::Analysis::SecondLevelManager::finishSecondLevelSolvers ( )

Definition at line 154 of file N_ANP_SecondLevelManager.C.

bool Xyce::Analysis::SecondLevelManager::getSecondLevelBreakPoints ( Loader::CktLoader loader,
std::vector< Util::BreakPoint > &  breakPointTimes 
) const

Definition at line 334 of file N_ANP_SecondLevelManager.C.

bool Xyce::Analysis::SecondLevelManager::getSecondLevelInitialQnorm ( TimeIntg::TwoLevelError tle) const

Definition at line 317 of file N_ANP_SecondLevelManager.C.

void Xyce::Analysis::SecondLevelManager::homotopyStepFailure ( )

Definition at line 207 of file N_ANP_SecondLevelManager.C.

void Xyce::Analysis::SecondLevelManager::homotopyStepSuccess ( const std::vector< std::string > &  paramNames,
const std::vector< double > &  paramVals 
)

Definition at line 177 of file N_ANP_SecondLevelManager.C.

SecondLevelManager& Xyce::Analysis::SecondLevelManager::operator= ( const SecondLevelManager )
private
bool Xyce::Analysis::SecondLevelManager::runSecondLevelStep ( TimeIntg::TwoLevelError tlError)

Definition at line 93 of file N_ANP_SecondLevelManager.C.

void Xyce::Analysis::SecondLevelManager::setExternalSolverState ( Loader::CktLoader loader,
bool  external_initJctFlag 
)

Definition at line 72 of file N_ANP_SecondLevelManager.C.

bool Xyce::Analysis::SecondLevelManager::startSecondLevelTimeStep ( const TimeIntg::TIAParams tia_params,
Nonlinear::Manager nonlinear_manager,
bool  beginIntegrationFlag,
double  nextTimeStep,
double  nextTime,
int  currentOrder 
)

Definition at line 367 of file N_ANP_SecondLevelManager.C.

bool Xyce::Analysis::SecondLevelManager::startupSecondLevelSolvers ( Linear::System &  linear_system,
Nonlinear::Manager nonlinear_manager 
)

Definition at line 112 of file N_ANP_SecondLevelManager.C.

void Xyce::Analysis::SecondLevelManager::stepSecondLevelFailure ( TwoLevelMode  analysisUpper)

Definition at line 277 of file N_ANP_SecondLevelManager.C.

void Xyce::Analysis::SecondLevelManager::stepSecondLevelSuccess ( TwoLevelMode  analysisUpper)

Definition at line 229 of file N_ANP_SecondLevelManager.C.

Member Data Documentation

IO::ActiveOutput* Xyce::Analysis::SecondLevelManager::activeOutput_
private

Definition at line 100 of file N_ANP_SecondLevelManager.h.

AnalysisBase* Xyce::Analysis::SecondLevelManager::twoLevelAnalysisObject_
private

Definition at line 99 of file N_ANP_SecondLevelManager.h.


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