37#ifndef _ODESOLUTION_HPP_
38#define _ODESOLUTION_HPP_
43#include <boost/shared_ptr.hpp>
45#include "AbstractOdeSystemInformation.hpp"
46#include "AbstractParameterisedSystem.hpp"
49#include <nvector/nvector_serial.h>
127 std::vector<double>
GetAnyVariable(
const std::string& rName)
const;
141 const std::vector<double>&
rGetTimes()
const;
155 const std::vector<std::vector<double> >&
rGetSolutions()
const;
177 template<
typename VECTOR>
203 template<
typename VECTOR>
221 std::string baseResultsFilename,
222 std::string timeUnits,
223 unsigned stepsPerRow=1,
224 bool cleanDirectory=
true,
225 unsigned precision=8,
226 bool includeDerivedQuantities=
false);
std::vector< double > mParameters
boost::shared_ptr< const AbstractOdeSystemInformation > mpOdeSystemInformation
std::vector< double > GetAnyVariable(const std::string &rName) const
std::vector< double > & rGetParameters(AbstractParameterisedSystem< VECTOR > *pOdeSystem)
void SetNumberOfTimeSteps(unsigned numTimeSteps)
std::vector< double > mTimes
void CalculateDerivedQuantitiesAndParameters(AbstractParameterisedSystem< VECTOR > *pOdeSystem)
unsigned GetNumberOfTimeSteps() const
std::vector< std::vector< double > > & rGetSolutions()
unsigned mNumberOfTimeSteps
std::vector< double > GetVariableAtIndex(unsigned index) const
void WriteToFile(std::string directoryName, std::string baseResultsFilename, std::string timeUnits, unsigned stepsPerRow=1, bool cleanDirectory=true, unsigned precision=8, bool includeDerivedQuantities=false)
std::vector< double > & rGetTimes()
void SetSolverName(std::string solverName)
void SetOdeSystemInformation(boost::shared_ptr< const AbstractOdeSystemInformation > pOdeSystemInfo)
std::vector< std::vector< double > > & rGetDerivedQuantities(AbstractParameterisedSystem< std::vector< double > > *pOdeSystem)
std::string GetSolverName()
std::vector< std::vector< double > > mSolutions
std::vector< std::vector< double > > mDerivedQuantities