Xyce
6.1
|
#include <N_TIA_StepErrorControl.h>
Public Types | |
typedef std::set< Util::BreakPoint, Util::BreakPointLess > | BreakPointSet |
Public Member Functions | |
StepErrorControl (const std::string &netlist_filename, Analysis::AnalysisManager &analysis_manager, WorkingIntegrationMethod &working_integration_method, const TIAParams &tia_params) | |
virtual | ~StepErrorControl () |
const Util::BreakPointLess & | getBreakPointLess () const |
void | updateStopTime (Parallel::Machine comm, bool breakpoints_enabled, double initial_time, bool min_time_steps_breakpoint_given, double min_time_steps_breakpoint) |
double | findNextStopTimeDeprecated (Parallel::Machine comm, bool breakpoints_enabled) |
bool | updateMaxTimeStep (Parallel::Machine comm, const TIAParams &tia_params, double suggestedMaxTimeStep=0.0) |
void | updateTwoLevelTimeInfo (Parallel::Machine comm, const TimeIntInfo &tiInfo, bool breakpoints_enabled, double initial_time, bool min_time_steps_breakpoint_given, double min_time_steps_breakpoint) |
void | outputTimeInfo (std::ostream &os) |
int | getNumberOfSteps () const |
bool | updateBreakPoints (double initial_time) |
void | setBreakPoint (const Util::BreakPoint &breakpoint, double initial_time) |
void | setBreakPoint (double bp) |
void | simulationPaused (double initial_time) |
bool | isPauseTime () |
bool | updateMinTimeStep () |
bool | isFinished () |
void | evaluateStepError (const TIAParams &tia_params) |
int | getRestartDataSize (bool pack) |
bool | dumpRestartData (char *buf, int bsize, int &pos, N_PDS_Comm *comm, bool pack) |
bool | restoreRestartData (char *buf, int bsize, int &pos, N_PDS_Comm *comm, bool pack, double &initial_time) |
bool | resetAll (const TIAParams &tia_params) |
bool | setFromTIAParams (const TIAParams &tia_params) |
void | printBreakPoints (std::ostream &os) const |
double | getEstOverTol () const |
void | setTimeStep (double newTimeStep) |
Public Attributes | |
double | startingTimeStep |
double | currentTimeStep |
double | lastAttemptedTimeStep |
double | lastTimeStep |
double | minTimeStep |
double | maxTimeStep |
double | maxTimeStepUser |
double | maxTimeStepBP |
double | savedTimeStep |
double | lastTime |
double | currentTime |
double | nextTime |
double | stopTime |
double | initialTime |
double | finalTime |
double | currentTimeStepRatio |
double | currentTimeStepSum |
double | lastTimeStepRatio |
double | lastTimeStepSum |
int | newtonConvergenceStatus |
int | nIterations |
Number of newton iterations. More... | |
int | numberSuccessiveFailures |
bool | stepAttemptStatus |
bool | previousCallStepSuccessful |
double | estOverTol_ |
bool | TimeStepLimitedbyBP |
double | pauseTime |
Time step value at which to "pause" the simulation. More... | |
bool | pauseSetAtZero |
Flag used to indicate that a pause was specifically set at time zero and thus should not be ignored. More... | |
Private Member Functions | |
StepErrorControl (const StepErrorControl &) | |
StepErrorControl & | operator= (const StepErrorControl &) |
bool | initializeBreakPoints (double start_time, double initial_time, double final_time) |
void | updatePauseTime (Util::BreakPoint breakpoint, double initial_time) |
void | integrationStepReport (std::ostream &os, bool step_attempt_status, bool sAStatus, bool testedError, const TIAParams &tia_params) |
void | terseIntegrationStepReport (std::ostream &os, bool step_attempt_status, bool sAStatus, bool testedError, const TIAParams &tia_params) |
Friends | |
class | BackwardDifferentiation15 |
class | Gear12 |
class | OneStep |
Definition at line 91 of file N_TIA_StepErrorControl.h.
typedef std::set<Util::BreakPoint, Util::BreakPointLess> Xyce::TimeIntg::StepErrorControl::BreakPointSet |
Definition at line 98 of file N_TIA_StepErrorControl.h.
Xyce::TimeIntg::StepErrorControl::StepErrorControl | ( | const std::string & | netlist_filename, |
Analysis::AnalysisManager & | analysis_manager, | ||
WorkingIntegrationMethod & | working_integration_method, | ||
const TIAParams & | tia_params | ||
) |
Definition at line 83 of file N_TIA_StepErrorControl.C.
|
virtual |
Definition at line 195 of file N_TIA_StepErrorControl.C.
|
private |
bool Xyce::TimeIntg::StepErrorControl::dumpRestartData | ( | char * | buf, |
int | bsize, | ||
int & | pos, | ||
N_PDS_Comm * | comm, | ||
bool | pack | ||
) |
Definition at line 1287 of file N_TIA_StepErrorControl.C.
void Xyce::TimeIntg::StepErrorControl::evaluateStepError | ( | const TIAParams & | tia_params | ) |
Definition at line 491 of file N_TIA_StepErrorControl.C.
double Xyce::TimeIntg::StepErrorControl::findNextStopTimeDeprecated | ( | Parallel::Machine | comm, |
bool | breakpoints_enabled | ||
) |
Definition at line 456 of file N_TIA_StepErrorControl.C.
|
inline |
Definition at line 113 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::getEstOverTol | ( | ) | const |
Definition at line 327 of file N_TIA_StepErrorControl.C.
|
inline |
Definition at line 142 of file N_TIA_StepErrorControl.h.
int Xyce::TimeIntg::StepErrorControl::getRestartDataSize | ( | bool | pack | ) |
Definition at line 1235 of file N_TIA_StepErrorControl.C.
|
private |
Definition at line 735 of file N_TIA_StepErrorControl.C.
|
private |
Definition at line 634 of file N_TIA_StepErrorControl.C.
|
inline |
Definition at line 311 of file N_TIA_StepErrorControl.h.
bool Xyce::TimeIntg::StepErrorControl::isPauseTime | ( | ) |
Definition at line 2136 of file N_TIA_StepErrorControl.C.
|
private |
void Xyce::TimeIntg::StepErrorControl::outputTimeInfo | ( | std::ostream & | os | ) |
Definition at line 2111 of file N_TIA_StepErrorControl.C.
void Xyce::TimeIntg::StepErrorControl::printBreakPoints | ( | std::ostream & | os | ) | const |
Definition at line 1193 of file N_TIA_StepErrorControl.C.
bool Xyce::TimeIntg::StepErrorControl::resetAll | ( | const TIAParams & | tia_params | ) |
Definition at line 254 of file N_TIA_StepErrorControl.C.
bool Xyce::TimeIntg::StepErrorControl::restoreRestartData | ( | char * | buf, |
int | bsize, | ||
int & | pos, | ||
N_PDS_Comm * | comm, | ||
bool | pack, | ||
double & | initial_time | ||
) |
Definition at line 1667 of file N_TIA_StepErrorControl.C.
void Xyce::TimeIntg::StepErrorControl::setBreakPoint | ( | const Util::BreakPoint & | breakpoint, |
double | initial_time | ||
) |
Definition at line 1072 of file N_TIA_StepErrorControl.C.
void Xyce::TimeIntg::StepErrorControl::setBreakPoint | ( | double | bp | ) |
Definition at line 1107 of file N_TIA_StepErrorControl.C.
bool Xyce::TimeIntg::StepErrorControl::setFromTIAParams | ( | const TIAParams & | tia_params | ) |
Definition at line 208 of file N_TIA_StepErrorControl.C.
void Xyce::TimeIntg::StepErrorControl::setTimeStep | ( | double | newTimeStep | ) |
Definition at line 340 of file N_TIA_StepErrorControl.C.
void Xyce::TimeIntg::StepErrorControl::simulationPaused | ( | double | initial_time | ) |
Definition at line 1177 of file N_TIA_StepErrorControl.C.
|
private |
Definition at line 613 of file N_TIA_StepErrorControl.C.
bool Xyce::TimeIntg::StepErrorControl::updateBreakPoints | ( | double | initial_time | ) |
Definition at line 777 of file N_TIA_StepErrorControl.C.
bool Xyce::TimeIntg::StepErrorControl::updateMaxTimeStep | ( | Parallel::Machine | comm, |
const TIAParams & | tia_params, | ||
double | suggestedMaxTimeStep = 0.0 |
||
) |
Definition at line 970 of file N_TIA_StepErrorControl.C.
bool Xyce::TimeIntg::StepErrorControl::updateMinTimeStep | ( | ) |
Definition at line 1055 of file N_TIA_StepErrorControl.C.
|
private |
Definition at line 1122 of file N_TIA_StepErrorControl.C.
void Xyce::TimeIntg::StepErrorControl::updateStopTime | ( | Parallel::Machine | comm, |
bool | breakpoints_enabled, | ||
double | initial_time, | ||
bool | min_time_steps_breakpoint_given, | ||
double | min_time_steps_breakpoint | ||
) |
Definition at line 372 of file N_TIA_StepErrorControl.C.
void Xyce::TimeIntg::StepErrorControl::updateTwoLevelTimeInfo | ( | Parallel::Machine | comm, |
const TimeIntInfo & | tiInfo, | ||
bool | breakpoints_enabled, | ||
double | initial_time, | ||
bool | min_time_steps_breakpoint_given, | ||
double | min_time_steps_breakpoint | ||
) |
Definition at line 2073 of file N_TIA_StepErrorControl.C.
|
friend |
Definition at line 93 of file N_TIA_StepErrorControl.h.
|
friend |
Definition at line 94 of file N_TIA_StepErrorControl.h.
|
friend |
Definition at line 95 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 266 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 264 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 263 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 200 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 272 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 251 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 253 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 267 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 268 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 258 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 254 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::currentTime |
Definition at line 218 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::currentTimeStep |
Definition at line 207 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::currentTimeStepRatio |
Definition at line 224 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::currentTimeStepSum |
Definition at line 225 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 279 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 279 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 279 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 279 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 280 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::estOverTol_ |
Definition at line 239 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::finalTime |
Definition at line 222 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 270 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 286 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 285 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 288 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 287 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 283 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::initialTime |
Definition at line 221 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::lastAttemptedTimeStep |
Definition at line 208 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::lastTime |
Definition at line 217 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::lastTimeStep |
Definition at line 209 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::lastTimeStepRatio |
Definition at line 227 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::lastTimeStepSum |
Definition at line 228 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 298 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 261 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::maxTimeStep |
Definition at line 211 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::maxTimeStepBP |
Definition at line 213 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::maxTimeStepUser |
Definition at line 212 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 260 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 246 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::minTimeStep |
Definition at line 210 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 276 of file N_TIA_StepErrorControl.h.
|
private |
Working integration method.
Definition at line 202 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 282 of file N_TIA_StepErrorControl.h.
int Xyce::TimeIntg::StepErrorControl::newtonConvergenceStatus |
Definition at line 230 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 247 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::nextTime |
Definition at line 219 of file N_TIA_StepErrorControl.h.
int Xyce::TimeIntg::StepErrorControl::nIterations |
Number of newton iterations.
Definition at line 232 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 278 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 275 of file N_TIA_StepErrorControl.h.
int Xyce::TimeIntg::StepErrorControl::numberSuccessiveFailures |
Definition at line 234 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 259 of file N_TIA_StepErrorControl.h.
bool Xyce::TimeIntg::StepErrorControl::pauseSetAtZero |
Flag used to indicate that a pause was specifically set at time zero and thus should not be ignored.
Definition at line 243 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::pauseTime |
Time step value at which to "pause" the simulation.
Definition at line 242 of file N_TIA_StepErrorControl.h.
bool Xyce::TimeIntg::StepErrorControl::previousCallStepSuccessful |
Definition at line 238 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 273 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 291 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 293 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 297 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 296 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 295 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 294 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 292 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 248 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::savedTimeStep |
Definition at line 215 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 269 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::startingTimeStep |
Definition at line 206 of file N_TIA_StepErrorControl.h.
bool Xyce::TimeIntg::StepErrorControl::stepAttemptStatus |
Definition at line 235 of file N_TIA_StepErrorControl.h.
double Xyce::TimeIntg::StepErrorControl::stopTime |
Definition at line 220 of file N_TIA_StepErrorControl.h.
bool Xyce::TimeIntg::StepErrorControl::TimeStepLimitedbyBP |
Definition at line 240 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 281 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 281 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 289 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 281 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 281 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 290 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 249 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 262 of file N_TIA_StepErrorControl.h.
|
private |
Definition at line 277 of file N_TIA_StepErrorControl.h.
|
private |
Analysis manager.
Definition at line 201 of file N_TIA_StepErrorControl.h.