Xyce
6.1
|
#include <N_NLS_Manager.h>
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 ¶m) |
Util::OptionBlock & | getHBOptions () |
bool | registerPrecondFactory (const Linear::PrecondFactory *preconditioner_factory) |
void | setReturnCodes (const ReturnCodes &retCodeTmp) |
NonLinearSolver & | getNonlinearSolver () |
ConductanceExtractor & | getConductanceExtractor () |
const ReturnCodes & | getReturnCodes () const |
bool | initializeAll (Analysis::AnalysisManager &analysis_manager, Loader::NonlinearEquationLoader &nonlinear_equation_loader, Linear::System &linear_system, TimeIntg::DataStore &data_store, Parallel::Manager ¶llel_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 ¶llel_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 ¶llel_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 ¶llel_manager, IO::InitialConditionsManager &initial_conditions_manager, IO::OutputMgr &output_manager) |
void | usingNox () |
bool | setupSensitivity (TimeIntg::DataStore &data_store, Parallel::Manager ¶llel_manager, Topo::Topology &topology) |
Private Attributes | |
const IO::CmdParse & | commandLine_ |
NonLinearSolver * | nonlinearSolver_ |
ConductanceExtractor * | conductanceExtractorPtr_ |
Sensitivity * | nlsSensitivityPtr_ |
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... | |
Definition at line 79 of file N_NLS_Manager.h.
typedef std::map<std::string, Util::OptionBlock> Xyce::Nonlinear::Manager::OptionBlockMap |
Definition at line 82 of file N_NLS_Manager.h.
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
private |
Definition at line 485 of file N_NLS_Manager.C.
|
private |
Definition at line 180 of file N_NLS_Manager.h.
|
private |
Definition at line 182 of file N_NLS_Manager.h.
|
private |
Return Codes.
Definition at line 194 of file N_NLS_Manager.h.
|
private |
netlist option blocks until we know which
Definition at line 192 of file N_NLS_Manager.h.
|
private |
Definition at line 184 of file N_NLS_Manager.h.
|
private |
Definition at line 186 of file N_NLS_Manager.h.
|
private |
Definition at line 183 of file N_NLS_Manager.h.
|
private |
Definition at line 181 of file N_NLS_Manager.h.
|
private |
Flag to determine if we are doing 2-level newton or not.
Definition at line 188 of file N_NLS_Manager.h.
|
private |
Flag to determine if NOX is the solver in use.
Definition at line 189 of file N_NLS_Manager.h.
|
private |
For 2-level newton, option for inner loop to use nox.
Definition at line 190 of file N_NLS_Manager.h.
|
private |
Use nox in transient phase of calculation.
Definition at line 191 of file N_NLS_Manager.h.
|
private |
Definition at line 193 of file N_NLS_Manager.h.
|
private |
Definition at line 187 of file N_NLS_Manager.h.