Xyce  6.1
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, Nonlinear::Manager &nonlinear_manager, Loader::Loader &loader, Topo::Topology &topology, IO::InitialConditionsManager &initial_conditions_manager)
 
 ~MOR ()
 
const TimeIntg::TIAParamsgetTIAParams () const
 
TimeIntg::TIAParamsgetTIAParams ()
 
bool setMOROptions (const Util::OptionBlock &option_block)
 
bool setAnalysisParams (const Util::OptionBlock &paramsBlock)
 
bool reduceSystem ()
 
bool evalOrigTransferFunction ()
 
bool evalRedTransferFunction ()
 
bool processSuccessfulStep (bool origSys)
 
bool getDCOPFlag () const
 
- 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 processSuccessfulStep ()
 
bool processFailedStep ()
 
bool finish ()
 
bool handlePredictor ()
 
virtual void printStepHeader (std::ostream &os)
 
virtual void printProgress (std::ostream &os)
 
virtual bool twoLevelStep ()
 
virtual bool isAnalysis (int analysis_type) const
 
bool getDoubleDCOPEnabled () const
 
void setDoubleDCOPEnabled (bool enable)
 
virtual int getDoubleDCOPStep () const
 
bool firstDoubleDCOPStep () const
 
void nextDCOPStep ()
 
bool setDCOPOption (const Util::Param &param)
 
bool getNOOP () const
 
void setNOOP (bool noop)
 
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
 
const StatCountsgetStatCounts (int index=-1) const
 
const char * getName () const
 
- Public Member Functions inherited from Xyce::Analysis::ProcessorBase
 ProcessorBase ()
 
virtual ~ProcessorBase ()
 

Protected Member Functions

bool doRun ()
 
bool doInit ()
 
virtual bool doProcessSuccessfulStep ()
 
virtual bool doLoopProcess ()
 
virtual bool doProcessFailedStep ()
 
virtual bool doFinish ()
 
virtual bool doHandlePredictor ()
 

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

Parallel::Machine comm_
 
AnalysisManageranalysisManager_
 
Loader::Loaderloader_
 
Nonlinear::ManagernonlinearManager_
 
Topo::Topology & topology_
 
IO::InitialConditionsManager & initialConditionsManager_
 
OutputMgrAdapteroutputManagerAdapter_
 
IO::OutputMOR outputMOR_
 
TimeIntg::TIAParams tiaParams_
 
int ROMsize_
 
std::string morMethod_
 
bool morSaveRedSys_
 
bool morCompOrigTF_
 
bool morCompRedTF_
 
std::string morCompType_
 
int morCompNP_
 
double morCompFStart_
 
bool morAutoSize_
 
int morMaxSize_
 
double morMaxFreq_
 
double morCompFStop_
 
double morExpPoint_
 
double morScaleFactor_
 
int morScaleType_
 
double morScaleFactor1_
 
int morSparsificationType_
 
bool isROMSparse_
 
std::vector< std::string > subcircuitNames_
 
bool isPaused
 
int morEvalSize_
 
int numPorts_
 
std::list< int > morEvalFailures_
 
bool isSingleFreq_
 
std::vector< std::string > portList_
 
double stepMult_
 
double fStep_
 
double currentFreq_
 
double s0_
 
RCP< Linear::Matrix > CPtr_
 
RCP< Linear::Matrix > GPtr_
 
RCP< Linear::Matrix > sCpG_MatrixPtr_
 
RCP< Linear::MultiVector > RPtr_
 
RCP< Linear::MultiVector > BPtr_
 
RCP< Linear::MultiVector > VPtr_
 
std::vector< int > bMatEntriesVec_
 
std::vector< int > bMatPosEntriesVec_
 
RCP< Linear::BlockMatrix > sCpG_REFMatrixPtr_
 
RCP< Linear::BlockVector > REFBPtr_
 
RCP< Linear::BlockVector > REFXPtr_
 
Teuchos::SerialDenseMatrix< int, double > redC_
 
Teuchos::SerialDenseMatrix< int, double > redG_
 
Teuchos::SerialDenseMatrix< int, double > redB_
 
Teuchos::SerialDenseMatrix< int, double > redL_
 
RCP< Linear::Matrix > redCPtr_
 
RCP< Linear::Matrix > redGPtr_
 
RCP< Epetra_Map > redMapPtr_
 
Teuchos::SerialDenseMatrix< int, double > sCpG_redMatrix_
 
Teuchos::SerialDenseMatrix< int, double > sCpG_tmpMatrix_
 
Teuchos::SerialDenseMatrix< int, double > ref_redB_
 
RCP< Linear::BlockMatrix > sCpG_ref_redMatrixPtr_
 
RCP< Linear::BlockVector > ref_redBPtr_
 
RCP< Linear::BlockVector > ref_redXPtr_
 
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_
 
RCP< Amesos_BaseSolver > blockRedSolver_
 
RCP< Epetra_LinearProblem > blockRedProblem_
 

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
 
std::vector< StatCountssaveStatCountsVector_
 

Detailed Description

Definition at line 80 of file N_ANP_MOR.h.

Constructor & Destructor Documentation

Xyce::Analysis::MOR::MOR ( AnalysisManager analysis_manager,
Nonlinear::Manager nonlinear_manager,
Loader::Loader loader,
Topo::Topology &  topology,
IO::InitialConditionsManager &  initial_conditions_manager 
)

Definition at line 134 of file N_ANP_MOR.C.

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

Definition at line 184 of file N_ANP_MOR.C.

Member Function Documentation

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

Definition at line 1153 of file N_ANP_MOR.C.

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

Definition at line 1225 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::doFinish ( )
protectedvirtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1917 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::doHandlePredictor ( )
protectedvirtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1941 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::doInit ( )
protectedvirtual

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 312 of file N_ANP_MOR.C.

virtual bool Xyce::Analysis::MOR::doLoopProcess ( )
inlineprotectedvirtual

Definition at line 117 of file N_ANP_MOR.h.

bool Xyce::Analysis::MOR::doProcessFailedStep ( )
protectedvirtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 1897 of file N_ANP_MOR.C.

virtual bool Xyce::Analysis::MOR::doProcessSuccessfulStep ( )
inlineprotectedvirtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 116 of file N_ANP_MOR.h.

bool Xyce::Analysis::MOR::doRun ( )
protectedvirtual

Implements Xyce::Analysis::AnalysisBase.

Definition at line 278 of file N_ANP_MOR.C.

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

Definition at line 1058 of file N_ANP_MOR.C.

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

Definition at line 1106 of file N_ANP_MOR.C.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 123 of file N_ANP_MOR.h.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 92 of file N_ANP_MOR.h.

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

Implements Xyce::Analysis::AnalysisBase.

Definition at line 97 of file N_ANP_MOR.h.

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

Definition at line 1860 of file N_ANP_MOR.C.

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 544 of file N_ANP_MOR.C.

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

Definition at line 195 of file N_ANP_MOR.C.

bool Xyce::Analysis::MOR::setMOROptions ( const Util::OptionBlock &  option_block)

Definition at line 225 of file N_ANP_MOR.C.

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

Definition at line 1995 of file N_ANP_MOR.C.

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

Definition at line 1391 of file N_ANP_MOR.C.

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

Definition at line 1440 of file N_ANP_MOR.C.

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

Definition at line 1545 of file N_ANP_MOR.C.

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

Definition at line 1967 of file N_ANP_MOR.C.

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

Definition at line 1324 of file N_ANP_MOR.C.

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

Definition at line 1348 of file N_ANP_MOR.C.

Member Data Documentation

AnalysisManager& Xyce::Analysis::MOR::analysisManager_
private

Definition at line 131 of file N_ANP_MOR.h.

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

Definition at line 228 of file N_ANP_MOR.h.

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

Definition at line 232 of file N_ANP_MOR.h.

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

Definition at line 231 of file N_ANP_MOR.h.

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

Definition at line 227 of file N_ANP_MOR.h.

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

Definition at line 196 of file N_ANP_MOR.h.

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

Definition at line 196 of file N_ANP_MOR.h.

RCP<Linear::MultiVector> Xyce::Analysis::MOR::BPtr_
private

Definition at line 195 of file N_ANP_MOR.h.

Parallel::Machine Xyce::Analysis::MOR::comm_
private

Definition at line 129 of file N_ANP_MOR.h.

RCP<Linear::Matrix> Xyce::Analysis::MOR::CPtr_
private

Definition at line 192 of file N_ANP_MOR.h.

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

Definition at line 173 of file N_ANP_MOR.h.

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

Definition at line 172 of file N_ANP_MOR.h.

RCP<Linear::Matrix> Xyce::Analysis::MOR::GPtr_
private

Definition at line 193 of file N_ANP_MOR.h.

IO::InitialConditionsManager& Xyce::Analysis::MOR::initialConditionsManager_
private

Definition at line 135 of file N_ANP_MOR.h.

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

Definition at line 162 of file N_ANP_MOR.h.

bool Xyce::Analysis::MOR::isROMSparse_
private

Definition at line 159 of file N_ANP_MOR.h.

bool Xyce::Analysis::MOR::isSingleFreq_
private

Definition at line 168 of file N_ANP_MOR.h.

Loader::Loader& Xyce::Analysis::MOR::loader_
private

Definition at line 132 of file N_ANP_MOR.h.

bool Xyce::Analysis::MOR::morAutoSize_
private

Definition at line 149 of file N_ANP_MOR.h.

double Xyce::Analysis::MOR::morCompFStart_
private

Definition at line 148 of file N_ANP_MOR.h.

double Xyce::Analysis::MOR::morCompFStop_
private

Definition at line 153 of file N_ANP_MOR.h.

int Xyce::Analysis::MOR::morCompNP_
private

Definition at line 147 of file N_ANP_MOR.h.

bool Xyce::Analysis::MOR::morCompOrigTF_
private

Definition at line 144 of file N_ANP_MOR.h.

bool Xyce::Analysis::MOR::morCompRedTF_
private

Definition at line 145 of file N_ANP_MOR.h.

std::string Xyce::Analysis::MOR::morCompType_
private

Definition at line 146 of file N_ANP_MOR.h.

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

Definition at line 166 of file N_ANP_MOR.h.

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

Definition at line 163 of file N_ANP_MOR.h.

double Xyce::Analysis::MOR::morExpPoint_
private

Definition at line 154 of file N_ANP_MOR.h.

double Xyce::Analysis::MOR::morMaxFreq_
private

Definition at line 151 of file N_ANP_MOR.h.

int Xyce::Analysis::MOR::morMaxSize_
private

Definition at line 150 of file N_ANP_MOR.h.

std::string Xyce::Analysis::MOR::morMethod_
private

Definition at line 142 of file N_ANP_MOR.h.

bool Xyce::Analysis::MOR::morSaveRedSys_
private

Definition at line 143 of file N_ANP_MOR.h.

double Xyce::Analysis::MOR::morScaleFactor1_
private

Definition at line 157 of file N_ANP_MOR.h.

double Xyce::Analysis::MOR::morScaleFactor_
private

Definition at line 155 of file N_ANP_MOR.h.

int Xyce::Analysis::MOR::morScaleType_
private

Definition at line 156 of file N_ANP_MOR.h.

int Xyce::Analysis::MOR::morSparsificationType_
private

Definition at line 158 of file N_ANP_MOR.h.

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

Definition at line 133 of file N_ANP_MOR.h.

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

Definition at line 164 of file N_ANP_MOR.h.

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

Definition at line 223 of file N_ANP_MOR.h.

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

Definition at line 228 of file N_ANP_MOR.h.

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

Definition at line 227 of file N_ANP_MOR.h.

OutputMgrAdapter& Xyce::Analysis::MOR::outputManagerAdapter_
private

Definition at line 136 of file N_ANP_MOR.h.

IO::OutputMOR Xyce::Analysis::MOR::outputMOR_
private

Definition at line 137 of file N_ANP_MOR.h.

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

Definition at line 169 of file N_ANP_MOR.h.

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

Definition at line 206 of file N_ANP_MOR.h.

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

Definition at line 204 of file N_ANP_MOR.h.

RCP<Linear::Matrix> Xyce::Analysis::MOR::redCPtr_
private

Definition at line 210 of file N_ANP_MOR.h.

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

Definition at line 205 of file N_ANP_MOR.h.

RCP<Linear::Matrix> Xyce::Analysis::MOR::redGPtr_
private

Definition at line 210 of file N_ANP_MOR.h.

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

Definition at line 224 of file N_ANP_MOR.h.

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

Definition at line 207 of file N_ANP_MOR.h.

RCP<Epetra_Map> Xyce::Analysis::MOR::redMapPtr_
private

Definition at line 211 of file N_ANP_MOR.h.

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

Definition at line 215 of file N_ANP_MOR.h.

RCP<Linear::BlockVector> Xyce::Analysis::MOR::ref_redBPtr_
private

Definition at line 219 of file N_ANP_MOR.h.

RCP<Linear::BlockVector> Xyce::Analysis::MOR::ref_redXPtr_
private

Definition at line 220 of file N_ANP_MOR.h.

RCP<Linear::BlockVector> Xyce::Analysis::MOR::REFBPtr_
private

Definition at line 200 of file N_ANP_MOR.h.

RCP<Linear::BlockVector> Xyce::Analysis::MOR::REFXPtr_
private

Definition at line 201 of file N_ANP_MOR.h.

int Xyce::Analysis::MOR::ROMsize_
private

Definition at line 141 of file N_ANP_MOR.h.

RCP<Linear::MultiVector> Xyce::Analysis::MOR::RPtr_
private

Definition at line 195 of file N_ANP_MOR.h.

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

Definition at line 174 of file N_ANP_MOR.h.

RCP<Linear::Matrix> Xyce::Analysis::MOR::sCpG_MatrixPtr_
private

Definition at line 194 of file N_ANP_MOR.h.

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

Definition at line 214 of file N_ANP_MOR.h.

RCP<Linear::BlockMatrix> Xyce::Analysis::MOR::sCpG_ref_redMatrixPtr_
private

Definition at line 218 of file N_ANP_MOR.h.

RCP<Linear::BlockMatrix> Xyce::Analysis::MOR::sCpG_REFMatrixPtr_
private

Definition at line 199 of file N_ANP_MOR.h.

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

Definition at line 214 of file N_ANP_MOR.h.

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

Definition at line 171 of file N_ANP_MOR.h.

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

Definition at line 160 of file N_ANP_MOR.h.

TimeIntg::TIAParams Xyce::Analysis::MOR::tiaParams_
private

Definition at line 139 of file N_ANP_MOR.h.

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

Definition at line 134 of file N_ANP_MOR.h.

RCP<Linear::MultiVector> Xyce::Analysis::MOR::VPtr_
private

Definition at line 195 of file N_ANP_MOR.h.


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