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

#include <N_ANP_MOR.h>

Inheritance diagram for Xyce::Analysis::MOR:
Collaboration diagram for Xyce::Analysis::MOR:

Public Member Functions

 MOR (AnalysisManager &analysis_manager)
 
 ~MOR ()
 
bool setAnalysisParams (const N_UTL_OptionBlock &paramsBlock)
 
bool run ()
 
bool init ()
 
bool reduceSystem ()
 
bool evalOrigTransferFunction ()
 
bool evalRedTransferFunction ()
 
bool processSuccessfulStep (bool origSys)
 
virtual bool processSuccessfulStep ()
 
virtual bool loopProcess ()
 
virtual bool processFailedStep ()
 
virtual bool finish ()
 
virtual bool handlePredictor ()
 
void setDCOPFlag (bool flag)
 
bool getDCOPFlag ()
 
- 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 int getStepNumber ()
 
virtual void setStepNumber (int step)
 
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 isAnalysis (int analysis_type)
 
virtual bool printLoopInfo (int start, int finish)
 
virtual void setBeginningIntegrationFlag (bool bif)
 
virtual bool getBeginningIntegrationFlag ()
 
virtual void setIntegrationMethod (int im)
 
virtual unsigned int getIntegrationMethod ()
 
virtual bool getInputOPFlag ()
 
bool resetForStepAnalysis ()
 
void resetAll ()
 
int saveLoopInfo ()
 
void gatherStepStatistics_ ()
 
double getTotalLinearSolutionTime () const
 
double getTotalResidualLoadTime () const
 
double getTotalJacobianLoadTime () const
 
bool getDoubleDCOPEnabled ()
 
virtual int getDoubleDCOPStep ()
 
bool firstDoubleDCOPStep_ ()
 
const StatCountsgetStatCounts (int index=-1) const
 

Private Member Functions

int setupSweepParam_ ()
 
bool updateCurrentFreq_ (int stepNumber)
 
bool createOrigLinearSystem_ ()
 
bool createRedLinearSystem_ ()
 
bool updateOrigLinearSystemFreq_ ()
 
bool updateRedLinearSystemFreq_ ()
 
bool solveOrigLinearSystem_ ()
 
bool solveRedLinearSystem_ ()
 
bool sparsifyRedSystem_ ()
 

Private Attributes

bool isPaused
 
bool dcopFlag_
 
int morEvalSize_
 
int numPorts_
 
std::list< int > morEvalFailures_
 
std::vector< std::string > portList_
 
double stepMult_
 
double fStep_
 
double currentFreq_
 
double s0_
 
RCP< N_LAS_Matrix > CPtr_
 
RCP< N_LAS_Matrix > GPtr_
 
RCP< N_LAS_Matrix > sCpG_MatrixPtr_
 
RCP< N_LAS_Matrix > redCPtr_
 
RCP< N_LAS_Matrix > redGPtr_
 
RCP< N_LAS_MultiVector > RPtr_
 
RCP< N_LAS_MultiVector > BPtr_
 
RCP< N_LAS_MultiVector > VPtr_
 
std::vector< int > bMatEntriesVec_
 
std::vector< int > bMatPosEntriesVec_
 
RCP< N_LAS_BlockMatrix > sCpG_REFMatrixPtr_
 
RCP< N_LAS_BlockVector > REFBPtr_
 
RCP< N_LAS_BlockVector > REFXPtr_
 
Teuchos::SerialDenseMatrix
< int, double > 
redC_
 
Teuchos::SerialDenseMatrix
< int, double > 
redG_
 
Teuchos::SerialDenseMatrix
< int, double > 
redB_
 
Teuchos::SerialDenseMatrix
< int, double > 
redL_
 
Teuchos::SerialDenseMatrix
< int, double > 
sCpG_redMatrix_
 
Teuchos::SerialDenseMatrix
< int, double > 
sCpG_tmpMatrix_
 
Teuchos::SerialDenseMatrix
< int, double > 
ref_redB_
 
Teuchos::SerialDenseMatrix
< int, std::complex< double > > 
origH_
 
Teuchos::SerialDenseMatrix
< int, std::complex< double > > 
redH_
 
RCP< Amesos_BaseSolver > blockSolver_
 
RCP< Amesos_BaseSolver > origSolver_
 
RCP< Epetra_LinearProblem > blockProblem_
 
RCP< Epetra_LinearProblem > origProblem_
 

Additional Inherited Members

- Public Attributes inherited from Xyce::Analysis::AnalysisBase
StatCounts stats_
 
- 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 76 of file N_ANP_MOR.h.

Constructor & Destructor Documentation

Xyce::Analysis::MOR::MOR ( AnalysisManager analysis_manager)

Definition at line 111 of file N_ANP_MOR.C.

Xyce::Analysis::MOR::~MOR ( )

Definition at line 130 of file N_ANP_MOR.C.

Member Function Documentation

bool Xyce::Analysis::MOR::createOrigLinearSystem_ ( )
private

Definition at line 909 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::createRedLinearSystem_ ( )
private

Definition at line 985 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::evalOrigTransferFunction ( )

Definition at line 824 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::evalRedTransferFunction ( )

Definition at line 867 of file N_ANP_MOR.C.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1550 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::getDCOPFlag ( )
inlinevirtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 102 of file N_ANP_MOR.h.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1575 of file N_ANP_MOR.C.

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

Xyce::dout() << "Branch nodes: " << std::endl; for (unsigned int i=0; i < bMatEntriesVec_.size(); ++i) { Xyce::dout() << "Node " << i << " : " << bMatEntriesVec_[i] << std::endl; }

Xyce::dout() << "Printing GPtr: " << std::endl; GPtr_->printPetraObject(); Xyce::dout() << "Printing CPtr: " << std::endl; CPtr_->printPetraObject();

Xyce::dout() << "Printing GPtr (after scaling): " << std::endl; GPtr_->printPetraObject();

Implements Xyce::Analysis::AnalysisBase.

Definition at line 222 of file N_ANP_MOR.C.

virtual bool Xyce::Analysis::MOR::loopProcess ( )
inlinevirtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 95 of file N_ANP_MOR.h.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1530 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::processSuccessfulStep ( bool  origSys)

Definition at line 1497 of file N_ANP_MOR.C.

virtual bool Xyce::Analysis::MOR::processSuccessfulStep ( )
inlinevirtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 93 of file N_ANP_MOR.h.

bool Xyce::Analysis::MOR::reduceSystem ( )

Xyce::dout() << "Printing out BPtr" << std::endl; BPtr_->epetraObj().Print(Xyce::dout());

Xyce::dout() << "Printing out sCpG" << std::endl; (sCpG_MatrixPtr_->epetraObj()).Print(Xyce::dout());

Xyce::dout() << "Printing out R" << std::endl; (RPtr_->epetraObj()).Print(Xyce::dout());

Definition at line 447 of file N_ANP_MOR.C.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 181 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::setAnalysisParams ( const N_UTL_OptionBlock &  paramsBlock)

Definition at line 142 of file N_ANP_MOR.C.

void Xyce::Analysis::MOR::setDCOPFlag ( bool  flag)
inline

Definition at line 101 of file N_ANP_MOR.h.

int Xyce::Analysis::MOR::setupSweepParam_ ( )
private

Definition at line 1624 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::solveOrigLinearSystem_ ( )
private

Definition at line 1074 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::solveRedLinearSystem_ ( )
private

Definition at line 1123 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::sparsifyRedSystem_ ( )
private

Definition at line 1185 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::updateCurrentFreq_ ( int  stepNumber)
private

Definition at line 1596 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::updateOrigLinearSystemFreq_ ( )
private

Definition at line 1020 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::updateRedLinearSystemFreq_ ( )
private

Definition at line 1044 of file N_ANP_MOR.C.

Member Data Documentation

RCP<Epetra_LinearProblem> Xyce::Analysis::MOR::blockProblem_
private

Definition at line 164 of file N_ANP_MOR.h.

RCP<Amesos_BaseSolver> Xyce::Analysis::MOR::blockSolver_
private

Definition at line 163 of file N_ANP_MOR.h.

std::vector<int> Xyce::Analysis::MOR::bMatEntriesVec_
private

Definition at line 140 of file N_ANP_MOR.h.

std::vector<int> Xyce::Analysis::MOR::bMatPosEntriesVec_
private

Definition at line 140 of file N_ANP_MOR.h.

RCP<N_LAS_MultiVector> Xyce::Analysis::MOR::BPtr_
private

Definition at line 139 of file N_ANP_MOR.h.

RCP<N_LAS_Matrix> Xyce::Analysis::MOR::CPtr_
private

Definition at line 135 of file N_ANP_MOR.h.

double Xyce::Analysis::MOR::currentFreq_
private

Definition at line 116 of file N_ANP_MOR.h.

bool Xyce::Analysis::MOR::dcopFlag_
private

Definition at line 107 of file N_ANP_MOR.h.

double Xyce::Analysis::MOR::fStep_
private

Definition at line 115 of file N_ANP_MOR.h.

RCP<N_LAS_Matrix> Xyce::Analysis::MOR::GPtr_
private

Definition at line 136 of file N_ANP_MOR.h.

bool Xyce::Analysis::MOR::isPaused
private

Definition at line 106 of file N_ANP_MOR.h.

std::list< int > Xyce::Analysis::MOR::morEvalFailures_
private

Definition at line 111 of file N_ANP_MOR.h.

int Xyce::Analysis::MOR::morEvalSize_
private

Definition at line 108 of file N_ANP_MOR.h.

int Xyce::Analysis::MOR::numPorts_
private

Definition at line 109 of file N_ANP_MOR.h.

Teuchos::SerialDenseMatrix<int, std::complex<double> > Xyce::Analysis::MOR::origH_
private

Definition at line 159 of file N_ANP_MOR.h.

RCP<Epetra_LinearProblem> Xyce::Analysis::MOR::origProblem_
private

Definition at line 164 of file N_ANP_MOR.h.

RCP<Amesos_BaseSolver> Xyce::Analysis::MOR::origSolver_
private

Definition at line 163 of file N_ANP_MOR.h.

std::vector<std::string> Xyce::Analysis::MOR::portList_
private

Definition at line 112 of file N_ANP_MOR.h.

Teuchos::SerialDenseMatrix<int, double> Xyce::Analysis::MOR::redB_
private

Definition at line 151 of file N_ANP_MOR.h.

Teuchos::SerialDenseMatrix<int, double> Xyce::Analysis::MOR::redC_
private

Definition at line 149 of file N_ANP_MOR.h.

RCP<N_LAS_Matrix> Xyce::Analysis::MOR::redCPtr_
private

Definition at line 138 of file N_ANP_MOR.h.

Teuchos::SerialDenseMatrix<int, double> Xyce::Analysis::MOR::redG_
private

Definition at line 150 of file N_ANP_MOR.h.

RCP<N_LAS_Matrix> Xyce::Analysis::MOR::redGPtr_
private

Definition at line 138 of file N_ANP_MOR.h.

Teuchos::SerialDenseMatrix<int, std::complex<double> > Xyce::Analysis::MOR::redH_
private

Definition at line 160 of file N_ANP_MOR.h.

Teuchos::SerialDenseMatrix<int, double> Xyce::Analysis::MOR::redL_
private

Definition at line 152 of file N_ANP_MOR.h.

Teuchos::SerialDenseMatrix<int, double> Xyce::Analysis::MOR::ref_redB_
private

Definition at line 156 of file N_ANP_MOR.h.

RCP<N_LAS_BlockVector> Xyce::Analysis::MOR::REFBPtr_
private

Definition at line 144 of file N_ANP_MOR.h.

RCP<N_LAS_BlockVector> Xyce::Analysis::MOR::REFXPtr_
private

Definition at line 145 of file N_ANP_MOR.h.

RCP<N_LAS_MultiVector> Xyce::Analysis::MOR::RPtr_
private

Definition at line 139 of file N_ANP_MOR.h.

double Xyce::Analysis::MOR::s0_
private

Definition at line 117 of file N_ANP_MOR.h.

RCP<N_LAS_Matrix> Xyce::Analysis::MOR::sCpG_MatrixPtr_
private

Definition at line 137 of file N_ANP_MOR.h.

Teuchos::SerialDenseMatrix<int, double> Xyce::Analysis::MOR::sCpG_redMatrix_
private

Definition at line 155 of file N_ANP_MOR.h.

RCP<N_LAS_BlockMatrix> Xyce::Analysis::MOR::sCpG_REFMatrixPtr_
private

Definition at line 143 of file N_ANP_MOR.h.

Teuchos::SerialDenseMatrix<int, double> Xyce::Analysis::MOR::sCpG_tmpMatrix_
private

Definition at line 155 of file N_ANP_MOR.h.

double Xyce::Analysis::MOR::stepMult_
private

Definition at line 114 of file N_ANP_MOR.h.

RCP<N_LAS_MultiVector> Xyce::Analysis::MOR::VPtr_
private

Definition at line 139 of file N_ANP_MOR.h.


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