Xyce  6.1
Xyce::Loader::NonlinearEquationLoader Class Reference

#include <N_LOA_NonlinearEquationLoader.h>

Collaboration diagram for Xyce::Loader::NonlinearEquationLoader:

Public Member Functions

 NonlinearEquationLoader (TimeIntg::DataStore &ds, Loader &loader, Device::DeviceMgr &device_manager, TimeIntg::WorkingIntegrationMethod &wim, bool daeStateDerivFlag)
 
virtual ~NonlinearEquationLoader ()
 
bool loadJacobian ()
 
bool applyJacobian (const Linear::Vector &input, Linear::Vector &result)
 
bool loadRHS ()
 
bool loadSensitivityResiduals ()
 
bool loadFinalSensitivityDerivatives ()
 
bool isLinearSystem () const
 
int enablePDEContinuation ()
 
bool disablePDEContinuation ()
 
void getNumInterfaceNodes (std::vector< int > &numINodes)
 
bool loadCouplingRHS (int iSubProblem, int iCouple, Linear::Vector *dfdvPtr)
 
bool calcCouplingTerms (int iSubProblem, int iCouple, const Linear::Vector *dxdvPtr)
 
double getResidualTime ()
 
double getJacobianTime ()
 
int getHomotopyBlockSize () const
 
bool allDevicesConverged (Parallel::Machine comm)
 
bool innerDevicesConverged (Parallel::Machine comm)
 
bool analyticSensitivitiesAvailable (std::string &name)
 
void getAnalyticSensitivities (std::string &name, std::vector< double > &dfdpVec, std::vector< double > &dqdpVec, std::vector< double > &dbdpVec, std::vector< int > &FindicesVec, std::vector< int > &QindicesVec, std::vector< int > &BindicesVec) const
 
bool setParam (std::string &name, double val, bool overrideOriginal=false)
 
bool getParamAndReduce (Parallel::Machine comm, const std::string &name, double &val) const
 
const LoadergetLoader () const
 
void homotopyStepSuccess (const std::vector< std::string > &paramNames, const std::vector< double > &paramVals)
 
void homotopyStepFailure ()
 
bool getVoltageLimiterStatus ()
 
void setVoltageLimiterStatus (bool voltageLimterStatus)
 

Private Attributes

Util::Timer * residualTimerPtr_
 
Util::Timer * jacobianTimerPtr_
 
double residualTime_
 
double jacobianTime_
 
bool daeStateDerivFlag_
 
TimeIntg::DataStoreds_
 
Loaderloader_
 
TimeIntg::WorkingIntegrationMethodwim_
 
Device::DeviceMgrdeviceManager_
 Device manager. More...
 

Detailed Description

Definition at line 76 of file N_LOA_NonlinearEquationLoader.h.

Constructor & Destructor Documentation

Xyce::Loader::NonlinearEquationLoader::NonlinearEquationLoader ( TimeIntg::DataStore ds,
Loader loader,
Device::DeviceMgr device_manager,
TimeIntg::WorkingIntegrationMethod wim,
bool  daeStateDerivFlag 
)

Definition at line 75 of file N_LOA_NonlinearEquationLoader.C.

Xyce::Loader::NonlinearEquationLoader::~NonlinearEquationLoader ( )
virtual

Definition at line 101 of file N_LOA_NonlinearEquationLoader.C.

Member Function Documentation

bool Xyce::Loader::NonlinearEquationLoader::allDevicesConverged ( Parallel::Machine  comm)

Definition at line 547 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::analyticSensitivitiesAvailable ( std::string &  name)

Definition at line 108 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::applyJacobian ( const Linear::Vector &  input,
Linear::Vector &  result 
)

Definition at line 327 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::calcCouplingTerms ( int  iSubProblem,
int  iCouple,
const Linear::Vector *  dxdvPtr 
)

Definition at line 477 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::disablePDEContinuation ( )

Definition at line 435 of file N_LOA_NonlinearEquationLoader.C.

int Xyce::Loader::NonlinearEquationLoader::enablePDEContinuation ( )

Definition at line 422 of file N_LOA_NonlinearEquationLoader.C.

void Xyce::Loader::NonlinearEquationLoader::getAnalyticSensitivities ( std::string &  name,
std::vector< double > &  dfdpVec,
std::vector< double > &  dqdpVec,
std::vector< double > &  dbdpVec,
std::vector< int > &  FindicesVec,
std::vector< int > &  QindicesVec,
std::vector< int > &  BindicesVec 
) const

Definition at line 114 of file N_LOA_NonlinearEquationLoader.C.

int Xyce::Loader::NonlinearEquationLoader::getHomotopyBlockSize ( ) const

Definition at line 490 of file N_LOA_NonlinearEquationLoader.C.

double Xyce::Loader::NonlinearEquationLoader::getJacobianTime ( )
inline

Definition at line 117 of file N_LOA_NonlinearEquationLoader.h.

const Loader& Xyce::Loader::NonlinearEquationLoader::getLoader ( ) const
inline

Definition at line 144 of file N_LOA_NonlinearEquationLoader.h.

void Xyce::Loader::NonlinearEquationLoader::getNumInterfaceNodes ( std::vector< int > &  numINodes)

Definition at line 449 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::getParamAndReduce ( Parallel::Machine  comm,
const std::string &  name,
double &  val 
) const

Definition at line 131 of file N_LOA_NonlinearEquationLoader.C.

double Xyce::Loader::NonlinearEquationLoader::getResidualTime ( )
inline

Definition at line 114 of file N_LOA_NonlinearEquationLoader.h.

bool Xyce::Loader::NonlinearEquationLoader::getVoltageLimiterStatus ( )

Definition at line 573 of file N_LOA_NonlinearEquationLoader.C.

void Xyce::Loader::NonlinearEquationLoader::homotopyStepFailure ( )

Definition at line 525 of file N_LOA_NonlinearEquationLoader.C.

void Xyce::Loader::NonlinearEquationLoader::homotopyStepSuccess ( const std::vector< std::string > &  paramNames,
const std::vector< double > &  paramVals 
)

Definition at line 503 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::innerDevicesConverged ( Parallel::Machine  comm)

Definition at line 560 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::isLinearSystem ( ) const

Definition at line 409 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::loadCouplingRHS ( int  iSubProblem,
int  iCouple,
Linear::Vector *  dfdvPtr 
)

Definition at line 463 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::loadFinalSensitivityDerivatives ( )

Definition at line 394 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::loadJacobian ( )

Definition at line 271 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::loadRHS ( )

Definition at line 152 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::loadSensitivityResiduals ( )

Definition at line 374 of file N_LOA_NonlinearEquationLoader.C.

bool Xyce::Loader::NonlinearEquationLoader::setParam ( std::string &  name,
double  val,
bool  overrideOriginal = false 
)

Definition at line 126 of file N_LOA_NonlinearEquationLoader.C.

void Xyce::Loader::NonlinearEquationLoader::setVoltageLimiterStatus ( bool  voltageLimterStatus)

Definition at line 586 of file N_LOA_NonlinearEquationLoader.C.

Member Data Documentation

bool Xyce::Loader::NonlinearEquationLoader::daeStateDerivFlag_
private

Definition at line 161 of file N_LOA_NonlinearEquationLoader.h.

Device::DeviceMgr& Xyce::Loader::NonlinearEquationLoader::deviceManager_
private

Device manager.

Definition at line 165 of file N_LOA_NonlinearEquationLoader.h.

TimeIntg::DataStore& Xyce::Loader::NonlinearEquationLoader::ds_
private

Definition at line 162 of file N_LOA_NonlinearEquationLoader.h.

double Xyce::Loader::NonlinearEquationLoader::jacobianTime_
private

Definition at line 160 of file N_LOA_NonlinearEquationLoader.h.

Util::Timer* Xyce::Loader::NonlinearEquationLoader::jacobianTimerPtr_
private

Definition at line 158 of file N_LOA_NonlinearEquationLoader.h.

Loader& Xyce::Loader::NonlinearEquationLoader::loader_
private

Definition at line 163 of file N_LOA_NonlinearEquationLoader.h.

double Xyce::Loader::NonlinearEquationLoader::residualTime_
private

Definition at line 159 of file N_LOA_NonlinearEquationLoader.h.

Util::Timer* Xyce::Loader::NonlinearEquationLoader::residualTimerPtr_
private

Definition at line 157 of file N_LOA_NonlinearEquationLoader.h.

TimeIntg::WorkingIntegrationMethod& Xyce::Loader::NonlinearEquationLoader::wim_
private

Definition at line 164 of file N_LOA_NonlinearEquationLoader.h.


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