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 *anaManagerPtr)
 
 ~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 *anaManagerPtr)
 
virtual ~AnalysisBase ()
 
virtual bool outputFailureStats ()
 
virtual void setParamsWithOutputMgrAdapter (RefCountPtr< OutputMgrAdapter > &outputMgrAdapterRCPtr)
 
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 resetForStepAnalysis ()
 
int setupSweepLoop_ (std::vector< SweepParam > &sweepParamVec)
 
bool updateSweepParams_ (int loopIter, std::vector< SweepParam > &sweepParamVec)
 
virtual bool isAnalysis (int analysis_type)
 
void resetAll ()
 
int saveLoopInfo ()
 
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 ()
 
void gatherStepStatistics_ ()
 
double getTotalLinearSolutionTime () const
 
double getTotalResidualLoadTime () const
 
double getTotalJacobianLoadTime () const
 
bool getDoubleDCOPEnabled ()
 
int getDoubleDCOPStep ()
 
bool firstDoubleDCOPStep_ ()
 

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
RefCountPtr< AnalysisManageranaManagerRCPtr_
 
RefCountPtr< N_TIA_AssemblerassemblerRCPtr_
 
RefCountPtr< N_LAS_System > lasSystemRCPtr_
 
RefCountPtr< N_LOA_Loader > loaderRCPtr_
 
RefCountPtr< N_NLS_ManagernlsMgrRCPtr_
 
RefCountPtr< OutputMgrAdapteroutputMgrAdapterRCPtr_
 
RefCountPtr
< N_TIA_StepErrorControl
secRCPtr_
 
RefCountPtr
< N_TIA_WorkingIntegrationMethod
wimRCPtr_
 
N_TIA_TIAParamstiaParams
 
bool beginningIntegration
 
unsigned int integrationMethod_
 
unsigned int stepNumber
 
unsigned int tranStepNumber
 
unsigned int totalNumberSuccessfulStepsTaken_
 
unsigned int totalNumberSuccessStepsThisParameter_
 
unsigned int totalNumberFailedStepsAttempted_
 
unsigned int totalNumberJacobiansEvaluated_
 
unsigned int totalNumberIterationMatrixFactorizations_
 
unsigned int totalNumberLinearSolves_
 
unsigned int totalNumberFailedLinearSolves_
 
unsigned int totalNumberLinearIters_
 
unsigned int totalNumberResidualEvaluations_
 
unsigned int totalNonlinearConvergenceFailures_
 
double totalLinearSolutionTime_
 
double totalResidualLoadTime_
 
double totalJacobianLoadTime_
 
bool doubleDCOPFlag_
 
int doubleDCOPStep_
 
bool sensFlag_
 
bool inputOPFlag_
 
std::vector< std::vector< int > > saveTimeI
 
std::vector< std::vector
< double > > 
saveTimeD
 
- Protected Attributes inherited from Xyce::Analysis::AnalysisBase
const N_IO_CmdParse & commandLine_
 

Detailed Description

Definition at line 79 of file N_ANP_MOR.h.

Constructor & Destructor Documentation

Xyce::Analysis::MOR::MOR ( AnalysisManager anaManagerPtr)

Definition at line 112 of file N_ANP_MOR.C.

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

Definition at line 132 of file N_ANP_MOR.C.

Member Function Documentation

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

Definition at line 969 of file N_ANP_MOR.C.

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

Definition at line 1049 of file N_ANP_MOR.C.

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

Definition at line 884 of file N_ANP_MOR.C.

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

Definition at line 927 of file N_ANP_MOR.C.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1614 of file N_ANP_MOR.C.

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

Definition at line 109 of file N_ANP_MOR.h.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1639 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 224 of file N_ANP_MOR.C.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 100 of file N_ANP_MOR.h.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1594 of file N_ANP_MOR.C.

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

Definition at line 1561 of file N_ANP_MOR.C.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 96 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 453 of file N_ANP_MOR.C.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 183 of file N_ANP_MOR.C.

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

Reimplemented from Xyce::Analysis::AnalysisBase.

Definition at line 144 of file N_ANP_MOR.C.

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

Definition at line 108 of file N_ANP_MOR.h.

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

Definition at line 1690 of file N_ANP_MOR.C.

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

Definition at line 1138 of file N_ANP_MOR.C.

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

Definition at line 1187 of file N_ANP_MOR.C.

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

Definition at line 1249 of file N_ANP_MOR.C.

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

Definition at line 1660 of file N_ANP_MOR.C.

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

Definition at line 1084 of file N_ANP_MOR.C.

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

Definition at line 1108 of file N_ANP_MOR.C.

Member Data Documentation

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

Definition at line 171 of file N_ANP_MOR.h.

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

Definition at line 170 of file N_ANP_MOR.h.

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

Definition at line 147 of file N_ANP_MOR.h.

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

Definition at line 147 of file N_ANP_MOR.h.

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

Definition at line 146 of file N_ANP_MOR.h.

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

Definition at line 142 of file N_ANP_MOR.h.

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

Definition at line 123 of file N_ANP_MOR.h.

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

Definition at line 114 of file N_ANP_MOR.h.

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

Definition at line 122 of file N_ANP_MOR.h.

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

Definition at line 143 of file N_ANP_MOR.h.

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

Definition at line 113 of file N_ANP_MOR.h.

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

Definition at line 118 of file N_ANP_MOR.h.

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

Definition at line 115 of file N_ANP_MOR.h.

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

Definition at line 116 of file N_ANP_MOR.h.

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

Definition at line 166 of file N_ANP_MOR.h.

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

Definition at line 171 of file N_ANP_MOR.h.

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

Definition at line 170 of file N_ANP_MOR.h.

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

Definition at line 119 of file N_ANP_MOR.h.

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

Definition at line 158 of file N_ANP_MOR.h.

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

Definition at line 156 of file N_ANP_MOR.h.

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

Definition at line 145 of file N_ANP_MOR.h.

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

Definition at line 157 of file N_ANP_MOR.h.

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

Definition at line 145 of file N_ANP_MOR.h.

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

Definition at line 167 of file N_ANP_MOR.h.

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

Definition at line 159 of file N_ANP_MOR.h.

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

Definition at line 163 of file N_ANP_MOR.h.

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

Definition at line 151 of file N_ANP_MOR.h.

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

Definition at line 152 of file N_ANP_MOR.h.

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

Definition at line 146 of file N_ANP_MOR.h.

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

Definition at line 124 of file N_ANP_MOR.h.

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

Definition at line 144 of file N_ANP_MOR.h.

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

Definition at line 162 of file N_ANP_MOR.h.

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

Definition at line 150 of file N_ANP_MOR.h.

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

Definition at line 162 of file N_ANP_MOR.h.

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

Definition at line 121 of file N_ANP_MOR.h.

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

Definition at line 146 of file N_ANP_MOR.h.


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