43 #define XXXX_Reporting
69 #endif // COPASI_DEBUG
75 mTimeSeriesRequested(true),
77 mpTrajectoryProblem(NULL),
78 mpTrajectoryMethod(NULL),
79 mUpdateMoieties(false),
82 mOutputStartTime(0.0),
92 if (pParameter != NULL)
101 mTimeSeriesRequested(src.mTimeSeriesRequested),
103 mpTrajectoryProblem(NULL),
104 mpTrajectoryMethod(NULL),
105 mUpdateMoieties(false),
106 mpCurrentState(NULL),
108 mOutputStartTime(0.0),
109 mpLessOrEqual(src.mpLessOrEqual),
120 this->
add(mpMethod,
true);
122 CCopasiParameter * pParameter = mpMethod->getParameter(
"Integrate Reduced Model");
124 if (pParameter != NULL)
155 if (pParameter != NULL)
163 std::ostream * pOstream)
179 if (pParameter != NULL)
193 if ((pOutputHandler != NULL) &&
224 C_FLOAT64 StepNumber = fabs(Duration) / StepSize;
226 if (isnan(StepNumber) || StepNumber < 1.0)
230 if (useInitialValues)
258 unsigned C_INT32 StepCounter = 1;
260 if (StepSize == 0.0 && Duration != 0.0)
268 bool flagProceed =
true;
269 C_FLOAT64 handlerFactor = 100.0 / Duration;
292 StartTime + (EndTime - StartTime) * StepCounter++ / StepNumber;
353 if (useInitialValues)
367 bool StateChanged =
false;
388 StateChanged =
false;
416 StateChanged =
false;
432 StateChanged =
false;
462 StateChanged =
false;
479 StateChanged =
false;
528 if (pParameter != NULL)
virtual bool elevateChildren()
virtual bool initialize(const OutputFlag &of, COutputHandler *pOutputHandler, std::ostream *pOstream)
static const unsigned int ValidMethods[]
void setProblem(CTrajectoryProblem *problem)
virtual bool initialize(const OutputFlag &of, COutputHandler *pOutputHandler, std::ostream *pOstream)
const unsigned C_INT32 & getStepNumber() const
virtual void stateChanged()
const CCopasiMessage & getMessage() const
virtual bool setName(const std::string &name)
void setInitialState(const CState &state)
bool processStep(const C_FLOAT64 &nextTime)
void updateSimulatedValues(const bool &updateMoieties)
CProcessReport * mpCallBack
CTrajectoryProblem * mpTrajectoryProblem
void allocate(const size_t &steps)
virtual bool process(const bool &useInitialValues)
const CMathModel * getMathModel() const
virtual void output(const COutputInterface::Activity &activity)
void setCurrentState(CState *currentState)
const CCopasiMethod::SubType & getSubType() const
void processStart(const bool &useInitialValues)
void applyInitialValues()
virtual bool progressItem(const size_t &handle)
virtual bool isValidProblem(const CCopasiProblem *pProblem)
const C_FLOAT64 * mpCurrentTime
CCopasiProblem * mpProblem
const CVector< C_INT > & getRoots() const
virtual void addInterface(COutputInterface *pInterface)
#define MCTrajectoryMethod
const C_FLOAT64 & getStepSize() const
bool fle(const C_FLOAT64 &d1, const C_FLOAT64 &d2)
#define MCTrajectoryProblem
bool ble(const C_FLOAT64 &d1, const C_FLOAT64 &d2)
void setState(const CState &state)
size_t addItem(const std::string &name, const std::string &value, const std::string *pEndValue=NULL)
const C_FLOAT64 & getDuration() const
void setContinueSimultaneousEvents(const bool &continueSimultaneousEvents)
C_FLOAT64 mOutputStartTime
void processRoots(const C_FLOAT64 &time, const bool &equality, const bool &correct, const CVector< C_INT > &roots)
bool(* mpLessOrEqual)(const C_FLOAT64 &, const C_FLOAT64 &)
const Value & getValue() const
virtual void start(const CState *initialState)
virtual bool finishItem(const size_t &handle)
CCopasiParameter * getParameter(const std::string &name)
const CTimeSeries & getTimeSeries() const
bool processQueue(const C_FLOAT64 &time, const bool &equality, CProcessQueue::resolveSimultaneousAssignments pResolveSimultaneousAssignments)
static CTrajectoryMethod * createMethod(CCopasiMethod::SubType subType=CCopasiMethod::deterministic)
void load(CReadConfig &configBuffer)
const C_FLOAT64 & getTime() const
bool(* mpLess)(const C_FLOAT64 &, const C_FLOAT64 &)
const C_FLOAT64 & getOutputStartTime() const
bool timeSeriesRequested() const
bool bl(const C_FLOAT64 &d1, const C_FLOAT64 &d2)
bool fl(const C_FLOAT64 &d1, const C_FLOAT64 &d2)
static bool isValidMethod(const unsigned int &method, const unsigned int *validMethods)
virtual bool add(CCopasiObject *pObject, const bool &adopt=true)
const C_FLOAT64 & getProcessQueueExecutionTime() const
bool updateInitialValues()
C_INT32 getVariable(const std::string &name, const std::string &type, void *pout, CReadConfig::Mode mode=CReadConfig::NEXT)
const CState & getState() const
virtual CCopasiMethod * createMethod(const int &type) const
const CProcessQueue & getProcessQueue() const
virtual Status step(const double &deltaT)
bool mTimeSeriesRequested
const bool & getContinueSimultaneousEvents() const
virtual bool setMethodType(const int &type)
CTrajectoryMethod * mpTrajectoryMethod
CModel * getModel() const
CTrajectoryTask(const CCopasiContainer *pParent=NULL)
const bool & getOutputEvent() const