Xyce  6.1
Xyce::Nonlinear::Manager Class Reference

#include <N_NLS_Manager.h>

Collaboration diagram for Xyce::Nonlinear::Manager:

Public Types

typedef std::map< std::string, Util::OptionBlock > OptionBlockMap
 

Public Member Functions

 Manager (const IO::CmdParse &command_line)
 
 ~Manager ()
 
bool setOptions (const Util::OptionBlock &option_block)
 
bool setTranOptions (const Util::OptionBlock &option_block)
 
bool setHBOptions (const Util::OptionBlock &option_block)
 
bool setTwoLevelOptions (const Util::OptionBlock &option_block)
 
bool setTwoLevelTranOptions (const Util::OptionBlock &option_block)
 
bool setSensOptions (const Util::OptionBlock &option_block)
 
bool setSensitivityOptions (const Util::OptionBlock &option_block)
 
bool setLinSolOptions (const Util::OptionBlock &option_block)
 
bool setLocaOptions (const Util::OptionBlock &option_block)
 
bool setTwoLevelLocaOptions (const Util::OptionBlock &option_block)
 
bool setDCOPRestartOptions (const Util::OptionBlock &option_block)
 
bool setICOptions (const Util::OptionBlock &option_block)
 
bool setNodeSetOptions (const Util::OptionBlock &option_block)
 
bool setReturnCodeOption (const Util::Param &param)
 
Util::OptionBlock & getHBOptions ()
 
bool registerPrecondFactory (const Linear::PrecondFactory *preconditioner_factory)
 
void setReturnCodes (const ReturnCodes &retCodeTmp)
 
NonLinearSolvergetNonlinearSolver ()
 
ConductanceExtractorgetConductanceExtractor ()
 
const ReturnCodesgetReturnCodes () const
 
bool initializeAll (Analysis::AnalysisManager &analysis_manager, Loader::NonlinearEquationLoader &nonlinear_equation_loader, Linear::System &linear_system, TimeIntg::DataStore &data_store, Parallel::Manager &parallel_manager, IO::InitialConditionsManager &initial_conditions_manager, IO::OutputMgr &output_manager, Topo::Topology &topology)
 
int solve ()
 
void setAnalysisMode (AnalysisMode mode)
 
void resetAll (AnalysisMode mode)
 
NonLinInfo getNonLinInfo () const
 
bool enableSensitivity (TimeIntg::DataStore &data_store, Parallel::Manager &parallel_manager, Topo::Topology &topology)
 
bool icSensitivity (std::vector< double > &objectiveVec, std::vector< double > &dOdpVec, std::vector< double > &dOdpAdjVec, std::vector< double > &scaled_dOdpVec, std::vector< double > &scaled_dOdpAdjVec)
 
bool calcSensitivity (std::vector< double > &objectiveVec, std::vector< double > &dOdpVec, std::vector< double > &dOdpAdjVec, std::vector< double > &scaled_dOdpVec, std::vector< double > &scaled_dOdpAdjVec)
 
void setMatrixFreeFlag (bool matrixFreeFlag)
 
void allocateTranSolver (Analysis::AnalysisManager &analysis_manager, Loader::NonlinearEquationLoader &nonlinear_equation_loader, Linear::System &linear_system, TimeIntg::DataStore &data_store, Parallel::Manager &parallel_manager, IO::OutputMgr &output_manager, Topo::Topology &topology)
 

Private Member Functions

bool allocateSolver (Analysis::AnalysisManager &analysis_manager, Loader::NonlinearEquationLoader &nonlinear_equation_loader, Linear::System &linear_system, TimeIntg::DataStore &data_store, Parallel::Manager &parallel_manager, IO::InitialConditionsManager &initial_conditions_manager, IO::OutputMgr &output_manager)
 
void usingNox ()
 
bool setupSensitivity (TimeIntg::DataStore &data_store, Parallel::Manager &parallel_manager, Topo::Topology &topology)
 

Private Attributes

const IO::CmdParse & commandLine_
 
NonLinearSolvernonlinearSolver_
 
ConductanceExtractorconductanceExtractorPtr_
 
SensitivitynlsSensitivityPtr_
 
const Linear::PrecondFactory * lasPrecPtr_
 
bool matrixFreeFlag_
 
bool twoLevelNewtonFlag_
 
bool noxFlag_
 Flag to determine if we are doing 2-level newton or not. More...
 
bool noxFlagInner_
 Flag to determine if NOX is the solver in use. More...
 
bool noxFlagTransient_
 For 2-level newton, option for inner loop to use nox. More...
 
OptionBlockMap optionBlockMap_
 Use nox in transient phase of calculation. More...
 
bool initializeAllFlag_
 netlist option blocks until we know which More...
 
ReturnCodes retCodes_
 
Util::Expression * exprPtr_
 Return Codes. More...
 

Detailed Description

Definition at line 79 of file N_NLS_Manager.h.

Member Typedef Documentation

typedef std::map<std::string, Util::OptionBlock> Xyce::Nonlinear::Manager::OptionBlockMap

Definition at line 82 of file N_NLS_Manager.h.

Constructor & Destructor Documentation

Xyce::Nonlinear::Manager::Manager ( const IO::CmdParse &  command_line)

Definition at line 280 of file N_NLS_Manager.C.

Xyce::Nonlinear::Manager::~Manager ( )

Definition at line 307 of file N_NLS_Manager.C.

Member Function Documentation

bool Xyce::Nonlinear::Manager::allocateSolver ( Analysis::AnalysisManager analysis_manager,
Loader::NonlinearEquationLoader nonlinear_equation_loader,
Linear::System &  linear_system,
TimeIntg::DataStore data_store,
Parallel::Manager &  parallel_manager,
IO::InitialConditionsManager &  initial_conditions_manager,
IO::OutputMgr &  output_manager 
)
private

Definition at line 573 of file N_NLS_Manager.C.

void Xyce::Nonlinear::Manager::allocateTranSolver ( Analysis::AnalysisManager analysis_manager,
Loader::NonlinearEquationLoader nonlinear_equation_loader,
Linear::System &  linear_system,
TimeIntg::DataStore data_store,
Parallel::Manager &  parallel_manager,
IO::OutputMgr &  output_manager,
Topo::Topology &  topology 
)

Definition at line 772 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::calcSensitivity ( std::vector< double > &  objectiveVec,
std::vector< double > &  dOdpVec,
std::vector< double > &  dOdpAdjVec,
std::vector< double > &  scaled_dOdpVec,
std::vector< double > &  scaled_dOdpAdjVec 
)

Definition at line 992 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::enableSensitivity ( TimeIntg::DataStore data_store,
Parallel::Manager &  parallel_manager,
Topo::Topology &  topology 
)

Definition at line 939 of file N_NLS_Manager.C.

ConductanceExtractor& Xyce::Nonlinear::Manager::getConductanceExtractor ( )
inline

Definition at line 116 of file N_NLS_Manager.h.

Util::OptionBlock & Xyce::Nonlinear::Manager::getHBOptions ( )

Definition at line 366 of file N_NLS_Manager.C.

NonLinearSolver& Xyce::Nonlinear::Manager::getNonlinearSolver ( )
inline

Definition at line 112 of file N_NLS_Manager.h.

NonLinInfo Xyce::Nonlinear::Manager::getNonLinInfo ( ) const

Definition at line 833 of file N_NLS_Manager.C.

const ReturnCodes & Xyce::Nonlinear::Manager::getReturnCodes ( ) const

Definition at line 1083 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::icSensitivity ( std::vector< double > &  objectiveVec,
std::vector< double > &  dOdpVec,
std::vector< double > &  dOdpAdjVec,
std::vector< double > &  scaled_dOdpVec,
std::vector< double > &  scaled_dOdpAdjVec 
)

Definition at line 964 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::initializeAll ( Analysis::AnalysisManager analysis_manager,
Loader::NonlinearEquationLoader nonlinear_equation_loader,
Linear::System &  linear_system,
TimeIntg::DataStore data_store,
Parallel::Manager &  parallel_manager,
IO::InitialConditionsManager &  initial_conditions_manager,
IO::OutputMgr &  output_manager,
Topo::Topology &  topology 
)

Definition at line 730 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::registerPrecondFactory ( const Linear::PrecondFactory *  preconditioner_factory)
inline

Definition at line 104 of file N_NLS_Manager.h.

void Xyce::Nonlinear::Manager::resetAll ( AnalysisMode  mode)

Definition at line 897 of file N_NLS_Manager.C.

void Xyce::Nonlinear::Manager::setAnalysisMode ( AnalysisMode  mode)

Definition at line 883 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setDCOPRestartOptions ( const Util::OptionBlock &  option_block)

Definition at line 1098 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setHBOptions ( const Util::OptionBlock &  option_block)

Definition at line 351 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setICOptions ( const Util::OptionBlock &  option_block)

Definition at line 1112 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setLinSolOptions ( const Util::OptionBlock &  option_block)

Definition at line 379 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setLocaOptions ( const Util::OptionBlock &  option_block)

Definition at line 393 of file N_NLS_Manager.C.

void Xyce::Nonlinear::Manager::setMatrixFreeFlag ( bool  matrixFreeFlag)
inline

Definition at line 152 of file N_NLS_Manager.h.

bool Xyce::Nonlinear::Manager::setNodeSetOptions ( const Util::OptionBlock &  option_block)

Definition at line 1126 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setOptions ( const Util::OptionBlock &  option_block)

Definition at line 323 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setReturnCodeOption ( const Util::Param &  param)

Definition at line 452 of file N_NLS_Manager.C.

void Xyce::Nonlinear::Manager::setReturnCodes ( const ReturnCodes retCodeTmp)

Definition at line 1066 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setSensitivityOptions ( const Util::OptionBlock &  option_block)

Definition at line 924 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setSensOptions ( const Util::OptionBlock &  option_block)

Definition at line 910 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setTranOptions ( const Util::OptionBlock &  option_block)

Definition at line 337 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setTwoLevelLocaOptions ( const Util::OptionBlock &  option_block)

Definition at line 407 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setTwoLevelOptions ( const Util::OptionBlock &  option_block)

Definition at line 421 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setTwoLevelTranOptions ( const Util::OptionBlock &  option_block)

Definition at line 436 of file N_NLS_Manager.C.

bool Xyce::Nonlinear::Manager::setupSensitivity ( TimeIntg::DataStore data_store,
Parallel::Manager &  parallel_manager,
Topo::Topology &  topology 
)
private

Definition at line 1021 of file N_NLS_Manager.C.

int Xyce::Nonlinear::Manager::solve ( )

Definition at line 859 of file N_NLS_Manager.C.

void Xyce::Nonlinear::Manager::usingNox ( )
private

Definition at line 485 of file N_NLS_Manager.C.

Member Data Documentation

const IO::CmdParse& Xyce::Nonlinear::Manager::commandLine_
private

Definition at line 180 of file N_NLS_Manager.h.

ConductanceExtractor* Xyce::Nonlinear::Manager::conductanceExtractorPtr_
private

Definition at line 182 of file N_NLS_Manager.h.

Util::Expression* Xyce::Nonlinear::Manager::exprPtr_
private

Return Codes.

Definition at line 194 of file N_NLS_Manager.h.

bool Xyce::Nonlinear::Manager::initializeAllFlag_
private

netlist option blocks until we know which

Definition at line 192 of file N_NLS_Manager.h.

const Linear::PrecondFactory* Xyce::Nonlinear::Manager::lasPrecPtr_
private

Definition at line 184 of file N_NLS_Manager.h.

bool Xyce::Nonlinear::Manager::matrixFreeFlag_
private

Definition at line 186 of file N_NLS_Manager.h.

Sensitivity* Xyce::Nonlinear::Manager::nlsSensitivityPtr_
private

Definition at line 183 of file N_NLS_Manager.h.

NonLinearSolver* Xyce::Nonlinear::Manager::nonlinearSolver_
private

Definition at line 181 of file N_NLS_Manager.h.

bool Xyce::Nonlinear::Manager::noxFlag_
private

Flag to determine if we are doing 2-level newton or not.

Definition at line 188 of file N_NLS_Manager.h.

bool Xyce::Nonlinear::Manager::noxFlagInner_
private

Flag to determine if NOX is the solver in use.

Definition at line 189 of file N_NLS_Manager.h.

bool Xyce::Nonlinear::Manager::noxFlagTransient_
private

For 2-level newton, option for inner loop to use nox.

Definition at line 190 of file N_NLS_Manager.h.

OptionBlockMap Xyce::Nonlinear::Manager::optionBlockMap_
private

Use nox in transient phase of calculation.

Definition at line 191 of file N_NLS_Manager.h.

ReturnCodes Xyce::Nonlinear::Manager::retCodes_
private

Definition at line 193 of file N_NLS_Manager.h.

bool Xyce::Nonlinear::Manager::twoLevelNewtonFlag_
private

Definition at line 187 of file N_NLS_Manager.h.


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