45 #ifndef Xyce_N_ANP_MOR_h
46 #define Xyce_N_ANP_MOR_h
48 #include <Teuchos_RCP.hpp>
51 #include <Teuchos_SerialDenseMatrix.hpp>
55 #include <N_UTL_fwd.h>
56 #include <N_LAS_fwd.h>
57 #include <N_TOP_fwd.h>
61 #include <N_IO_OutputMOR.h>
62 #include <N_UTL_FixedQueue.h>
63 #include <N_UTL_OptionBlock.h>
66 class Amesos_BaseSolver;
67 class Epetra_LinearProblem;
87 Topo::Topology & topology,
88 IO::InitialConditionsManager & initial_conditions_manager);
204 Teuchos::SerialDenseMatrix<int, double>
redC_;
205 Teuchos::SerialDenseMatrix<int, double>
redG_;
206 Teuchos::SerialDenseMatrix<int, double>
redB_;
207 Teuchos::SerialDenseMatrix<int, double>
redL_;
223 Teuchos::SerialDenseMatrix<int, std::complex<double> >
origH_;
224 Teuchos::SerialDenseMatrix<int, std::complex<double> >
redH_;
240 #endif // Xyce_N_ANP_MOR_h
RCP< Linear::MultiVector > RPtr_
Topo::Topology & topology_
Teuchos::SerialDenseMatrix< int, double > redB_
RCP< Epetra_LinearProblem > origProblem_
RCP< Epetra_LinearProblem > blockRedProblem_
RCP< Linear::BlockVector > ref_redBPtr_
virtual bool doProcessSuccessfulStep()
bool evalOrigTransferFunction()
Pure virtual class to augment a linear system.
RCP< Linear::MultiVector > BPtr_
RCP< Linear::BlockMatrix > sCpG_REFMatrixPtr_
RCP< Linear::MultiVector > VPtr_
MOR(AnalysisManager &analysis_manager, Nonlinear::Manager &nonlinear_manager, Loader::Loader &loader, Topo::Topology &topology, IO::InitialConditionsManager &initial_conditions_manager)
unsigned int stepNumber
Time-integration step number counter.
Nonlinear::Manager & nonlinearManager_
const TimeIntg::TIAParams & getTIAParams() const
bool registerMORFactory(FactoryBlock &factory_block)
std::vector< std::string > portList_
bool createOrigLinearSystem_()
Teuchos::SerialDenseMatrix< int, std::complex< double > > origH_
RCP< Linear::BlockMatrix > sCpG_ref_redMatrixPtr_
RCP< Epetra_LinearProblem > blockProblem_
RCP< Amesos_BaseSolver > blockSolver_
Teuchos::SerialDenseMatrix< int, double > sCpG_redMatrix_
bool updateOrigLinearSystemFreq_()
bool setAnalysisParams(const Util::OptionBlock ¶msBlock)
RCP< Linear::BlockVector > REFXPtr_
AnalysisManager & analysisManager_
Teuchos::SerialDenseMatrix< int, double > sCpG_tmpMatrix_
RCP< Amesos_BaseSolver > origSolver_
Teuchos::SerialDenseMatrix< int, double > redG_
std::vector< int > bMatEntriesVec_
RCP< Amesos_BaseSolver > blockRedSolver_
Teuchos::SerialDenseMatrix< int, std::complex< double > > redH_
TimeIntg::TIAParams & getTIAParams()
Teuchos::SerialDenseMatrix< int, double > redL_
The FactoryBlock contains parameters needed by the analysis creation functions.
bool processSuccessfulStep()
bool sparsifyRedSystem_()
bool solveRedLinearSystem_()
RCP< Linear::Matrix > redCPtr_
Teuchos::SerialDenseMatrix< int, double > redC_
RCP< Epetra_Map > redMapPtr_
int morSparsificationType_
virtual bool doLoopProcess()
RCP< Linear::BlockVector > REFBPtr_
RCP< Linear::BlockVector > ref_redXPtr_
bool createRedLinearSystem_()
std::vector< int > bMatPosEntriesVec_
virtual bool doProcessFailedStep()
bool setMOROptions(const Util::OptionBlock &option_block)
RCP< Linear::Matrix > redGPtr_
std::list< int > morEvalFailures_
RCP< Linear::Matrix > GPtr_
std::vector< std::string > subcircuitNames_
bool evalRedTransferFunction()
RCP< Linear::Matrix > sCpG_MatrixPtr_
bool updateCurrentFreq_(int stepNumber)
Teuchos::SerialDenseMatrix< int, double > ref_redB_
RCP< Linear::Matrix > CPtr_
TimeIntg::TIAParams tiaParams_
IO::InitialConditionsManager & initialConditionsManager_
OutputMgrAdapter & outputManagerAdapter_
bool solveOrigLinearSystem_()
virtual bool doHandlePredictor()
bool updateRedLinearSystemFreq_()