Xyce
6.1
|
#include <N_LOA_HBLoader.h>
Public Member Functions | |
HBLoader (const Teuchos::RCP< const N_MPDE_Discretization > discPtr, Device::DeviceMgr &device_manager, Linear::Builder &builder) | |
~HBLoader () | |
bool | loadDAEMatrices (Linear::Vector *X, Linear::Vector *S, Linear::Vector *dSdt, Linear::Vector *Store, Linear::Matrix *dQdx, Linear::Matrix *dFdx) |
bool | loadTimeDepDAEMatrices (Linear::Vector *X, Linear::Vector *S, Linear::Vector *dSdt, Linear::Vector *Store, Linear::Matrix *dQdx, Linear::Matrix *dFdx) |
bool | applyDAEMatrices (Linear::Vector *X, Linear::Vector *S, Linear::Vector *dSdt, Linear::Vector *Store, const Linear::Vector &V, Linear::Vector *dQdxV, Linear::Vector *dFdxV) |
bool | loadDeviceErrorWeightMask (Linear::Vector *deviceMask) const |
bool | loadDAEVectors (Linear::Vector *X, Linear::Vector *currX, Linear::Vector *lastX, Linear::Vector *S, Linear::Vector *currS, Linear::Vector *lastS, Linear::Vector *dSdt, Linear::Vector *Store, Linear::Vector *currStore, Linear::Vector *lastStore, Linear::Vector *storeLeadCurrQ, Linear::Vector *nextLeadFVectorPtr, Linear::Vector *currLeadFVectorPtr, Linear::Vector *lastLeadFVectorPtr, Linear::Vector *nextLeadQVectorPtr, Linear::Vector *nextJunctionVVectorPtr, Linear::Vector *currJunctionVVectorPtr, Linear::Vector *lastJunctionVVectorPtr, Linear::Vector *Q, Linear::Vector *F, Linear::Vector *B, Linear::Vector *dFdxdVp, Linear::Vector *dQdxdVp) |
bool | updateState (Linear::Vector *nextSolVectorPtr, Linear::Vector *currSolVectorPtr, Linear::Vector *lastSolVectorPtr, Linear::Vector *nextStaVectorPtr, Linear::Vector *currStaVectorPtr, Linear::Vector *lastStaVectorPtr, Linear::Vector *nextStoVectorPtr, Linear::Vector *currStoVectorPtr, Linear::Vector *lastStoVectorPtr) |
virtual bool | initializeProblem (Linear::Vector *nextSolVectorPtr, Linear::Vector *currSolVectorPtr, Linear::Vector *lastSolVectorPtr, Linear::Vector *nextStaVectorPtr, Linear::Vector *currStaVectorPtr, Linear::Vector *lastStaVectorPtr, Linear::Vector *StateDerivVectorPtr, Linear::Vector *nextStoVectorPtr, Linear::Vector *currStoVectorPtr, Linear::Vector *lastStoVectorPtr, Linear::Vector *QVectorPtr, Linear::Vector *FVectorPtr, Linear::Vector *BVectorPtr, Linear::Vector *dFdxdVpVectorPtr, Linear::Vector *dQdxdVpVectorPtr) const |
bool | getLimiterFlag () |
Teuchos::RCP< Linear::Matrix > & | getStoreLindQdx () |
Teuchos::RCP< Linear::Matrix > & | getStoreLindFdx () |
std::vector< Teuchos::RCP< Linear::Matrix > > & | getStoreNLdQdx () |
std::vector< Teuchos::RCP< Linear::Matrix > > & | getStoreNLdFdx () |
bool | applyLinearMatrices (const Linear::BlockVector &bVf, Linear::BlockVector &permlindQdxV, Linear::BlockVector &permlindFdxV) |
void | setFastTimes (const std::vector< double > ×) |
void | setHBFreqs (const std::vector< double > &freqs) |
Teuchos::RCP< Linear::BlockVector > & | getStoreVecFreqPtr () |
Teuchos::RCP< Linear::BlockVector > & | getLeadCurrentVecFreqPtr () |
void | setMatrixFreeFlag (bool matrixFreeFlag) |
void | permutedFFT (const Linear::BlockVector &xt, Linear::BlockVector *xf) |
void | permutedIFT (const Linear::BlockVector &xf, Linear::BlockVector *xt, int numTimePts_=0) |
void | registerAppLoader (Teuchos::RCP< Loader > appLoaderPtr) |
void | registerHBBuilder (Teuchos::RCP< Linear::HBBuilder > hbBuilderPtr) |
void | registerDFTInterface (const Teuchos::RCP< N_UTL_DFTInterfaceDecl< std::vector< double > > > &dftInterface) |
virtual bool | analyticSensitivitiesAvailable (std::string &name) |
virtual 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 |
virtual bool | setParam (std::string &name, double val, bool overrideOriginal=false) |
virtual double | getParamAndReduce (Parallel::Machine comm, const std::string &name) const |
virtual bool | getVoltageLimiterStatus () |
virtual void | setVoltageLimiterStatus (bool voltageLimterStatus) |
![]() | |
CktLoader (Device::DeviceMgr &device_manager) | |
virtual | ~CktLoader () |
bool | loadBVectorsforAC (Linear::Vector *bVecRealPtr, Linear::Vector *bVecImagPtr) |
int | getNumNoiseSources () |
int | getNumNoiseDevices () |
void | setupNoiseSources (std::vector< Xyce::Analysis::NoiseData * > &noiseDataVec) |
void | getNoiseSources (std::vector< Xyce::Analysis::NoiseData * > &noiseDataVec) |
bool | getBMatrixEntriesforMOR (std::vector< int > &bMatEntriesVec, std::vector< int > &bMatPosEntriesVec) |
bool | setInitialGuess (Linear::Vector *solVectorPtr) |
bool | updateSources () |
bool | isPDESystem () const |
bool | outputPlotFiles () const |
bool | finishOutput () 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) |
bool | getBreakPoints (std::vector< Util::BreakPoint > &breakPointTimes) const |
double | getMaxTimeStepSize () |
int | getHomotopyBlockSize () const |
bool | allDevicesConverged (Parallel::Machine comm) |
bool | innerDevicesConverged (Parallel::Machine comm) |
void | stepSuccess (Xyce::Analysis::TwoLevelMode analysis) |
void | stepFailure (Xyce::Analysis::TwoLevelMode analysis) |
void | acceptStep () |
virtual bool | getInitialQnorm (std::vector< TimeIntg::TwoLevelError > &tleVec) |
virtual bool | getInnerLoopErrorSums (std::vector< TimeIntg::TwoLevelError > &tleVec) const |
bool | updateStateArrays () |
bool | startTimeStep (bool beginIntegrationFlag, double nextTimeStep, double nextTime, int currentOrder) |
void | setExternalSolverState (bool external_initJctFlag) |
![]() | |
Loader () | |
virtual | ~Loader () |
Private Attributes | |
Teuchos::RCP< const N_MPDE_Discretization > | fastTimeDiscPtr_ |
std::vector< double > | times_ |
int | periodicTimesOffset_ |
std::vector< double > | periodicTimes_ |
double | period_ |
bool | matrixFreeFlag_ |
std::vector< double > | freqs_ |
Teuchos::RCP< Loader > | appLoaderPtr_ |
Actually a CktLoader. More... | |
Device::DeviceMgr & | deviceManager_ |
Teuchos::RCP< Linear::Vector > | appVecPtr_ |
Teuchos::RCP< Linear::Vector > | appNextStaVecPtr_ |
Teuchos::RCP< Linear::Vector > | appCurrStaVecPtr_ |
Teuchos::RCP< Linear::Vector > | appLastStaVecPtr_ |
Teuchos::RCP< Linear::Matrix > | appdQdxPtr_ |
Teuchos::RCP< Linear::Matrix > | appdFdxPtr_ |
Teuchos::RCP< Linear::Matrix > | linAppdQdxPtr_ |
std::vector< Teuchos::RCP< Linear::Matrix > > | vecNLAppdQdxPtr_ |
Teuchos::RCP< Linear::Matrix > | linAppdFdxPtr_ |
std::vector< Teuchos::RCP< Linear::Matrix > > | vecNLAppdFdxPtr_ |
Teuchos::RCP< Linear::Vector > | appNextStoVecPtr_ |
Teuchos::RCP< Linear::Vector > | appCurrStoVecPtr_ |
Teuchos::RCP< Linear::Vector > | appLastStoVecPtr_ |
Teuchos::RCP< Linear::Vector > | appStoLeadCurrQVecPtr_ |
Teuchos::RCP< Linear::Vector > | appNextLeadFVecPtr_ |
Teuchos::RCP< Linear::Vector > | appCurrLeadFVecPtr_ |
Teuchos::RCP< Linear::Vector > | appLastLeadFVecPtr_ |
Teuchos::RCP< Linear::Vector > | appLeadQVecPtr_ |
Teuchos::RCP< Linear::Vector > | appNextJunctionVVecPtr_ |
Teuchos::RCP< Linear::Vector > | appCurrJunctionVVecPtr_ |
Teuchos::RCP< Linear::Vector > | appLastJunctionVVecPtr_ |
Teuchos::RCP< Linear::BlockMatrix > | bmdQdxPtr_ |
Teuchos::RCP< Linear::BlockMatrix > | bmdFdxPtr_ |
Teuchos::RCP< Linear::HBBuilder > | hbBuilderPtr_ |
Linear::Builder & | builder_ |
Teuchos::RCP< Linear::BlockVector > | bXtPtr_ |
Teuchos::RCP< Linear::BlockVector > | bVtPtr_ |
Teuchos::RCP< Linear::BlockVector > | bStoreVecFreqPtr_ |
Teuchos::RCP< Linear::BlockVector > | bStoreLeadCurrQVecFreqPtr_ |
Teuchos::RCP< Linear::BlockVector > | bLeadCurrentVecFreqPtr_ |
Teuchos::RCP< Linear::BlockVector > | bLeadCurrentQVecFreqPtr_ |
Teuchos::RCP< N_UTL_DFTInterfaceDecl< std::vector< double > > > | dftInterface_ |
Additional Inherited Members | |
![]() | |
Device::DeviceMgr & | deviceManager_ |
Device manager. More... | |
Definition at line 74 of file N_LOA_HBLoader.h.
Xyce::Loader::HBLoader::HBLoader | ( | const Teuchos::RCP< const N_MPDE_Discretization > | discPtr, |
Device::DeviceMgr & | device_manager, | ||
Linear::Builder & | builder | ||
) |
Definition at line 78 of file N_LOA_HBLoader.C.
|
inline |
Definition at line 82 of file N_LOA_HBLoader.h.
|
inlinevirtual |
Reimplemented from Xyce::Loader::CktLoader.
Definition at line 215 of file N_LOA_HBLoader.h.
|
virtual |
Reimplemented from Xyce::Loader::Loader.
Definition at line 360 of file N_LOA_HBLoader.C.
bool Xyce::Loader::HBLoader::applyLinearMatrices | ( | const Linear::BlockVector & | bVf, |
Linear::BlockVector & | permlindQdxV, | ||
Linear::BlockVector & | permlindFdxV | ||
) |
Definition at line 553 of file N_LOA_HBLoader.C.
|
inlinevirtual |
Reimplemented from Xyce::Loader::CktLoader.
Definition at line 216 of file N_LOA_HBLoader.h.
|
inline |
Definition at line 193 of file N_LOA_HBLoader.h.
|
inlinevirtual |
Reimplemented from Xyce::Loader::CktLoader.
Definition at line 170 of file N_LOA_HBLoader.h.
|
inlinevirtual |
Reimplemented from Xyce::Loader::CktLoader.
Definition at line 227 of file N_LOA_HBLoader.h.
|
inline |
Definition at line 174 of file N_LOA_HBLoader.h.
|
inline |
Definition at line 173 of file N_LOA_HBLoader.h.
|
inline |
Definition at line 176 of file N_LOA_HBLoader.h.
|
inline |
Definition at line 175 of file N_LOA_HBLoader.h.
|
inline |
Definition at line 192 of file N_LOA_HBLoader.h.
|
virtual |
Reimplemented from Xyce::Loader::CktLoader.
Definition at line 1169 of file N_LOA_HBLoader.C.
|
inlinevirtual |
Reimplemented from Xyce::Loader::CktLoader.
Definition at line 150 of file N_LOA_HBLoader.h.
|
virtual |
Reimplemented from Xyce::Loader::CktLoader.
Definition at line 175 of file N_LOA_HBLoader.C.
|
virtual |
Reimplemented from Xyce::Loader::CktLoader.
Definition at line 623 of file N_LOA_HBLoader.C.
|
virtual |
Reimplemented from Xyce::Loader::CktLoader.
Definition at line 1084 of file N_LOA_HBLoader.C.
bool Xyce::Loader::HBLoader::loadTimeDepDAEMatrices | ( | Linear::Vector * | X, |
Linear::Vector * | S, | ||
Linear::Vector * | dSdt, | ||
Linear::Vector * | Store, | ||
Linear::Matrix * | dQdx, | ||
Linear::Matrix * | dFdx | ||
) |
Definition at line 220 of file N_LOA_HBLoader.C.
void Xyce::Loader::HBLoader::permutedFFT | ( | const Linear::BlockVector & | xt, |
Linear::BlockVector * | xf | ||
) |
Definition at line 1141 of file N_LOA_HBLoader.C.
void Xyce::Loader::HBLoader::permutedIFT | ( | const Linear::BlockVector & | xf, |
Linear::BlockVector * | xt, | ||
int | numTimePts_ = 0 |
||
) |
Definition at line 1155 of file N_LOA_HBLoader.C.
|
inline |
Definition at line 207 of file N_LOA_HBLoader.h.
|
inline |
Definition at line 212 of file N_LOA_HBLoader.h.
void Xyce::Loader::HBLoader::registerHBBuilder | ( | Teuchos::RCP< Linear::HBBuilder > | hbBuilderPtr | ) |
Definition at line 121 of file N_LOA_HBLoader.C.
void Xyce::Loader::HBLoader::setFastTimes | ( | const std::vector< double > & | times | ) |
Definition at line 162 of file N_LOA_HBLoader.C.
void Xyce::Loader::HBLoader::setHBFreqs | ( | const std::vector< double > & | freqs | ) |
Definition at line 147 of file N_LOA_HBLoader.C.
|
inline |
Definition at line 196 of file N_LOA_HBLoader.h.
|
inlinevirtual |
Reimplemented from Xyce::Loader::CktLoader.
Definition at line 226 of file N_LOA_HBLoader.h.
|
virtual |
Reimplemented from Xyce::Loader::CktLoader.
Definition at line 1182 of file N_LOA_HBLoader.C.
|
virtual |
Reimplemented from Xyce::Loader::CktLoader.
Definition at line 527 of file N_LOA_HBLoader.C.
|
private |
Definition at line 275 of file N_LOA_HBLoader.h.
|
private |
Definition at line 271 of file N_LOA_HBLoader.h.
|
private |
Definition at line 254 of file N_LOA_HBLoader.h.
|
private |
Definition at line 266 of file N_LOA_HBLoader.h.
|
private |
Definition at line 258 of file N_LOA_HBLoader.h.
|
private |
Definition at line 257 of file N_LOA_HBLoader.h.
|
private |
Definition at line 276 of file N_LOA_HBLoader.h.
|
private |
Definition at line 272 of file N_LOA_HBLoader.h.
|
private |
Definition at line 255 of file N_LOA_HBLoader.h.
|
private |
Definition at line 267 of file N_LOA_HBLoader.h.
|
private |
Definition at line 273 of file N_LOA_HBLoader.h.
|
private |
Actually a CktLoader.
Definition at line 248 of file N_LOA_HBLoader.h.
|
private |
Definition at line 274 of file N_LOA_HBLoader.h.
|
private |
Definition at line 270 of file N_LOA_HBLoader.h.
|
private |
Definition at line 253 of file N_LOA_HBLoader.h.
|
private |
Definition at line 265 of file N_LOA_HBLoader.h.
|
private |
Definition at line 268 of file N_LOA_HBLoader.h.
|
private |
Definition at line 252 of file N_LOA_HBLoader.h.
|
private |
Definition at line 294 of file N_LOA_HBLoader.h.
|
private |
Definition at line 293 of file N_LOA_HBLoader.h.
|
private |
Definition at line 280 of file N_LOA_HBLoader.h.
|
private |
Definition at line 279 of file N_LOA_HBLoader.h.
|
private |
Definition at line 292 of file N_LOA_HBLoader.h.
|
private |
Definition at line 291 of file N_LOA_HBLoader.h.
|
private |
Definition at line 286 of file N_LOA_HBLoader.h.
|
private |
Definition at line 289 of file N_LOA_HBLoader.h.
|
private |
Definition at line 288 of file N_LOA_HBLoader.h.
|
private |
Definition at line 249 of file N_LOA_HBLoader.h.
|
private |
Definition at line 297 of file N_LOA_HBLoader.h.
|
private |
Definition at line 235 of file N_LOA_HBLoader.h.
|
private |
Definition at line 246 of file N_LOA_HBLoader.h.
|
private |
Definition at line 283 of file N_LOA_HBLoader.h.
|
private |
Definition at line 262 of file N_LOA_HBLoader.h.
|
private |
Definition at line 260 of file N_LOA_HBLoader.h.
|
private |
Definition at line 244 of file N_LOA_HBLoader.h.
|
private |
Definition at line 241 of file N_LOA_HBLoader.h.
|
private |
Definition at line 240 of file N_LOA_HBLoader.h.
|
private |
Definition at line 239 of file N_LOA_HBLoader.h.
|
private |
Definition at line 238 of file N_LOA_HBLoader.h.
|
private |
Definition at line 263 of file N_LOA_HBLoader.h.
|
private |
Definition at line 261 of file N_LOA_HBLoader.h.