45 #ifndef Xyce_N_ANP_Transient_h
46 #define Xyce_N_ANP_Transient_h
50 #include <N_LAS_fwd.h>
51 #include <N_TOP_fwd.h>
52 #include <N_UTL_fwd.h>
58 #include <N_UTL_FixedQueue.h>
59 #include <N_UTL_Listener.h>
60 #include <N_UTL_OptionBlock.h>
81 Linear::System & linear_system,
84 Topo::Topology & topology,
85 IO::InitialConditionsManager & initial_conditions_manager,
86 IO::RestartMgr & restart_manager,
89 N_MPDE_Manager * mpde_manager = 0);
257 double next_output_time,
258 double final_output_time,
259 double initial_output_interval,
260 const IO::IntervalVector & output_intervals);
265 double next_output_time,
266 double final_output_time,
267 double initial_output_interval,
268 const IO::IntervalVector & output_intervals);
273 double next_output_time,
279 IO::InitialConditionsManager & initial_conditions_manager);
285 IO::RestartMgr & restart_manager,
287 double & next_restart_save_time);
295 #endif // Xyce_N_ANP_Transient_h
Util::FixedQueue< double > timeQueue_
TimeIntg::TIAParams tiaParams_
void takeAnIntegrationStep_()
IO::InitialConditionsManager & initialConditionsManager_
void notify(const StepEvent &event)
bool testRestartSaveTime(AnalysisManager &analysis_manager, IO::RestartMgr &restart_manager, double current_time, double &next_restart_save_time)
const TimeIntg::TIAParams & getTIAParams() const
bool testSaveOutputTime(Analysis::AnalysisManager &analysis_manager, IO::InitialConditionsManager &initial_conditions_manager)
Pure virtual class to augment a linear system.
std::vector< std::string > condTestDeviceNames
names for conductance test
std::vector< double > objectiveVec_
Topo::Topology & topology_
double minEstErrorOverTol
IO::RestartMgr & restartManager_
void setTIAParams(const TimeIntg::TIAParams &tia_params)
Util::FixedQueue< int > nonlinearSolverStatusQueue_
std::vector< double > dOdpAdjVec_
double timeStepAtMinEstErrorOverTol
Util::ExpressionData * maxTimeStepExpression_
Linear::System & linearSystem_
int exitStep
Exit after taking this many steps.
OutputMgrAdapter & outputManagerAdapter_
Util::FixedQueue< int > nonlinearSolverNumIterationsQueue_
bool processSuccessfulDCOP()
Util::ListenerAutoSubscribe< StepEvent > StepEventListener
std::vector< double > dOdpVec_
double nextRestartSaveTime_
void setSaveTimeSteps(bool save_time_steps)
bool saveTimeStepsFlag
flag to save timestpes in data store for later use
bool registerTransientFactory(FactoryBlock &factory_block)
bool finalizeMixedSignalStep()
bool mixedSignalStep(double maxTimeStepFromHabanero)
Nonlinear::Manager & nonlinearManager_
The FactoryBlock contains parameters needed by the analysis creation functions.
OutputAdapter * outputAdapter_
Util::FixedQueue< double > nonlinearSolverMaxNormQueue_
void printProgress(std::ostream &os)
void preMixedSignalStepDetails(double maxTimeStepFromHabanero)
AnalysisManager & analysisManager_
bool retakeAndAcceptTimeStep(double aTimeStep)
N_MPDE_Manager * mpdeManager_
bool doProcessFailedStep()
bool setTimeIntegratorOptions(const Util::OptionBlock &option_block)
unsigned int initialIntegrationMethod_
unsigned int integrationMethod
Time-integration method.
bool setAnalysisParams(const Util::OptionBlock ¶msBlock)
int stepNumberAtMinEstErrorOverTol
double oldPercentComplete
std::vector< double > scaled_dOdpAdjVec_
std::string maxTimeStepExpressionString_
void outputFailedStepData()
bool finalVerboseOutput()
double updateOutputTime(double current_time, double next_output_time, double final_output_time, double initial_output_interval, const IO::IntervalVector &output_intervals)
Util::FixedQueue< double > timeStepQueue_
std::vector< double > scaled_dOdpVec_
Util::FixedQueue< int > stepStatusQueue_
bool condTestFlag
flag for conductance test
TimeIntg::TIAParams & getTIAParams()
double exitTime
Exit when it exceeds this time.
Util::FixedQueue< double > nonlinearSolverMaxNormIndexQueue_
void printStepHeader(std::ostream &os)
bool doProcessSuccessfulStep()
bool passNLStall
option to pass some non-linear solver failures
Transient(AnalysisManager &analysis_manager, Linear::System &linear_system, Nonlinear::Manager &nonlinear_manager, Loader::Loader &loader, Topo::Topology &topology, IO::InitialConditionsManager &initial_conditions_manager, IO::RestartMgr &restart_manager, OutputAdapter *output_adapter=0, HB *hb_analysis=0, N_MPDE_Manager *mpde_manager=0)
Util::FixedQueue< double > estErrorOverTolQueue_
std::vector< double > computeOutputInterpolationTimes(double current_time, double next_output_time, double final_output_time, double initial_output_interval, const IO::IntervalVector &output_intervals)
bool testOutputTime(double current_time, double next_output_time, double start_time)