Chaste
Release::3.4
|
#include <cassert>
#include <vector>
#include <nvector/nvector_serial.h>
Go to the source code of this file.
Functions | |
template<typename VECTOR > | |
double | GetVectorComponent (const VECTOR &rVec, unsigned index) |
template<typename VECTOR > | |
void | SetVectorComponent (VECTOR &rVec, unsigned index, double value) |
template<typename VECTOR > | |
unsigned | GetVectorSize (const VECTOR &rVec) |
template<typename VECTOR > | |
void | InitialiseEmptyVector (VECTOR &rVec) |
template<typename VECTOR > | |
void | CreateVectorIfEmpty (VECTOR &rVec, unsigned size) |
template<typename VECTOR > | |
VECTOR | CreateEmptyVector () |
template<typename VECTOR > | |
bool | IsEmptyVector (VECTOR &rVec) |
template<typename VECTOR > | |
void | DeleteVector (VECTOR &rVec) |
template<typename VECTOR > | |
VECTOR | CopyVector (VECTOR &rVec) |
template<typename VECTOR > | |
void | CopyToStdVector (const VECTOR &rSrc, std::vector< double > &rDest) |
template<typename VECTOR > | |
void | CopyFromStdVector (const std::vector< double > &rSrc, VECTOR &rDest) |
template<> | |
double | GetVectorComponent (const std::vector< double > &rVec, unsigned index) |
template<> | |
void | SetVectorComponent (std::vector< double > &rVec, unsigned index, double value) |
template<> | |
unsigned | GetVectorSize (const std::vector< double > &rVec) |
template<> | |
void | InitialiseEmptyVector (std::vector< double > &rVec) |
template<> | |
void | CreateVectorIfEmpty (std::vector< double > &rVec, unsigned size) |
template<> | |
std::vector< double > | CreateEmptyVector () |
template<> | |
bool | IsEmptyVector (std::vector< double > &rVec) |
template<> | |
void | DeleteVector (std::vector< double > &rVec) |
template<> | |
std::vector< double > | CopyVector (std::vector< double > &rVec) |
template<> | |
void | CopyToStdVector (const std::vector< double > &rSrc, std::vector< double > &rDest) |
template<> | |
void | CopyFromStdVector (const std::vector< double > &rSrc, std::vector< double > &rDest) |
template<> | |
double | GetVectorComponent (const N_Vector &rVec, unsigned index) |
template<> | |
void | SetVectorComponent (N_Vector &rVec, unsigned index, double value) |
template<> | |
unsigned | GetVectorSize (const N_Vector &rVec) |
template<> | |
void | InitialiseEmptyVector (N_Vector &rVec) |
template<> | |
void | CreateVectorIfEmpty (N_Vector &rVec, unsigned size) |
template<> | |
N_Vector | CreateEmptyVector () |
template<> | |
bool | IsEmptyVector (N_Vector &rVec) |
template<> | |
void | DeleteVector (N_Vector &rVec) |
template<> | |
N_Vector | CopyVector (N_Vector &rVec) |
template<> | |
void | CopyToStdVector (const N_Vector &rSrc, std::vector< double > &rDest) |
template<> | |
void | CopyFromStdVector (const std::vector< double > &rSrc, N_Vector &rDest) |
std::vector< double > | MakeStdVec (N_Vector v) |
N_Vector | MakeNVector (const std::vector< double > &rSrc) |
A selection of helper functions to be able to access std::vector<double> and CVODE's N_Vector types using the same interface. These are used by AbstractParameterisedSystem and some tests.
Definition in file VectorHelperFunctions.hpp.
|
inline |
A helper function to copy a std::vector<double> into a VECTOR.
This isn't a member so that we can specialise it without having to specialise the whole class.
rSrc | source vector |
rDest | destination vector; must exist and be the correct size |
Referenced by AbstractParameterisedSystem< VECTOR >::GetInitialConditions(), AbstractCvodeSystem::load(), MakeNVector(), and OdeSolution::rGetDerivedQuantities().
|
inline |
Specialisation for std::vector<double>.
rSrc | |
rDest |
Definition at line 301 of file VectorHelperFunctions.hpp.
A helper function to copy a std::vector<double> into an N_Vector.
rSrc | source vector |
rDest | destination vector; must exist and be the correct size |
Definition at line 457 of file VectorHelperFunctions.hpp.
|
inline |
A helper function to copy a VECTOR into a std::vector<double>.
This isn't a member so that we can specialise it without having to specialise the whole class.
rSrc | source vector |
rDest | destination vector; will be resized and filled |
Referenced by AbstractCvodeCell::GetStdVecStateVariables(), MakeStdVec(), OdeSolution::rGetDerivedQuantities(), SteadyStateRunner::RunToSteadyStateImplementation(), and AbstractParameterisedSystem< VECTOR >::SetDefaultInitialConditions().
|
inline |
Specialisation for std::vector<double>.
rSrc | |
rDest |
Definition at line 290 of file VectorHelperFunctions.hpp.
A helper function to copy an N_Vector into a std::vector<double>.
rSrc | source vector |
rDest | destination vector; will be resized and filled |
Definition at line 435 of file VectorHelperFunctions.hpp.
|
inline |
Helper function to create a fresh copy of a vector.
This isn't a member so that we can specialise it without having to specialise the whole class.
rVec | the vector to copy |
Referenced by AbstractParameterisedSystem< VECTOR >::GetStateVariables().
Specialisation for std::vector<double>.
rVec |
Definition at line 279 of file VectorHelperFunctions.hpp.
Specialisation for CVODE's N_Vector type.
rVec |
Definition at line 413 of file VectorHelperFunctions.hpp.
|
inline |
Helper function to create a new empty/unset vector, useful for defining a default parameter value.
Specialisation for std::vector<double>.
Specialisation for CVODE's N_Vector type.
Definition at line 248 of file VectorHelperFunctions.hpp.
|
inline |
Specialisation for std::vector<double>.
Definition at line 248 of file VectorHelperFunctions.hpp.
|
inline |
Specialisation for CVODE's N_Vector type.
Definition at line 377 of file VectorHelperFunctions.hpp.
|
inline |
If the given vector is empty, set it to have a particular size, allocating memory if necessary. It is a no-op if the vector is non-empty.
This isn't a member so that we can specialise it without having to specialise the whole class.
rVec | the empty vector |
size | the size to create it as |
Referenced by AbstractParameterisedSystem< VECTOR >::CheckParametersOnLoad(), AbstractParameterisedSystem< VECTOR >::GetInitialConditions(), MakeNVector(), CvodeAdaptor::RecordStoppingPoint(), AbstractCvodeSystem::RecordStoppingPoint(), and AbstractParameterisedSystem< VECTOR >::SetStateVariables().
Specialisation for std::vector<double>.
rVec | |
size |
Definition at line 235 of file VectorHelperFunctions.hpp.
Specialisation for CVODE's N_Vector type.
rVec | |
size |
Definition at line 364 of file VectorHelperFunctions.hpp.
|
inline |
Helper function to delete a vector.
This isn't a member so that we can specialise it without having to specialise the whole class.
rVec | the vector |
Referenced by AbstractParameterisedSystem< VECTOR >::GetAnyVariable(), AbstractCvodeSystem::Init(), CvodeAdaptor::ResetSolver(), AbstractCvodeSystem::ResetSolver(), AbstractParameterisedSystem< VECTOR >::ResetToInitialConditions(), OdeSolution::rGetDerivedQuantities(), AbstractCvodeCell::SetStateVariables(), CvodeAdaptor::SetupCvode(), CvodeAdaptor::Solve(), AbstractCvodeSystem::~AbstractCvodeSystem(), and CvodeAdaptor::~CvodeAdaptor().
|
inline |
Specialisation for std::vector<double>.
rVec |
Definition at line 269 of file VectorHelperFunctions.hpp.
|
inline |
Specialisation for CVODE's N_Vector type.
rVec |
Definition at line 398 of file VectorHelperFunctions.hpp.
This isn't a member so that we can specialise it without having to specialise the whole class.
rVec | the vector to access |
index | the index of the component to get |
Referenced by AbstractParameterisedSystem< VECTOR >::GetAnyVariable(), AbstractParameterisedSystem< VECTOR >::GetParameter(), AbstractParameterisedSystem< VECTOR >::GetStateMessage(), AbstractParameterisedSystem< VECTOR >::GetStateVariable(), CvodeAdaptor::RecordStoppingPoint(), AbstractCvodeSystem::RecordStoppingPoint(), AbstractParameterisedSystem< VECTOR >::SetStateVariables(), CvodeAdaptor::SetupCvode(), and AbstractCvodeSystem::SetupCvode().
Specialisation for std::vector<double>.
rVec | |
index |
Definition at line 190 of file VectorHelperFunctions.hpp.
Specialisation for CVODE's N_Vector type.
rVec | |
index |
Definition at line 317 of file VectorHelperFunctions.hpp.
|
inline |
Helper function to determine a vector's size.
This isn't a member so that we can specialise it without having to specialise the whole class.
rVec | the vector |
Referenced by AbstractParameterisedSystem< VECTOR >::CheckParametersOnLoad(), AbstractParameterisedSystem< VECTOR >::GetAnyVariable(), AbstractParameterisedSystem< VECTOR >::GetParameter(), AbstractParameterisedSystem< VECTOR >::GetStateMessage(), CvodeAdaptor::RecordStoppingPoint(), AbstractParameterisedSystem< VECTOR >::SetAnyVariable(), AbstractParameterisedSystem< VECTOR >::SetDefaultInitialConditions(), AbstractParameterisedSystem< VECTOR >::SetParameter(), AbstractParameterisedSystem< VECTOR >::SetStateVariables(), and CvodeAdaptor::SetupCvode().
Specialisation for std::vector<double>.
rVec |
Definition at line 215 of file VectorHelperFunctions.hpp.
Specialisation for CVODE's N_Vector type.
rVec |
Definition at line 342 of file VectorHelperFunctions.hpp.
|
inline |
Helper function to initialise a vector to be empty/unset.
This isn't a member so that we can specialise it without having to specialise the whole class.
rVec | the vector |
Referenced by AbstractParameterisedSystem< VECTOR >::AbstractParameterisedSystem(), and AbstractParameterisedSystem< VECTOR >::GetInitialConditions().
|
inline |
Specialisation for std::vector<double>.
rVec |
Definition at line 225 of file VectorHelperFunctions.hpp.
|
inline |
Specialisation for CVODE's N_Vector type.
rVec |
Definition at line 353 of file VectorHelperFunctions.hpp.
|
inline |
Helper function to test whether a vector is empty/unset.
rVec | the vector |
Specialisation for std::vector<double>.
rVec |
Definition at line 259 of file VectorHelperFunctions.hpp.
Specialisation for CVODE's N_Vector type.
rVec |
Definition at line 388 of file VectorHelperFunctions.hpp.
Make an N_Vector from a standard vector
rSrc | a std::vector to copy the entries from |
Definition at line 493 of file VectorHelperFunctions.hpp.
References CopyFromStdVector(), and CreateVectorIfEmpty().
Referenced by AbstractCvodeCell::SetStateVariables().
Make a standard vector from an N_Vector
v | A CVODE N_Vector to copy the entries from |
Definition at line 480 of file VectorHelperFunctions.hpp.
References CopyToStdVector().
Referenced by AbstractCvodeSystem::CvodeError(), AbstractCvodeSystem::save(), and AbstractCvodeSystem::Solve().
|
inline |
Helper function to set a vector component.
This isn't a member so that we can specialise it without having to specialise the whole class.
rVec | the vector to modify |
index | the index of the component to set |
value | the new value |
Referenced by AbstractParameterisedSystem< VECTOR >::CheckParametersOnLoad(), CvodeAdaptor::RecordStoppingPoint(), AbstractCvodeSystem::RecordStoppingPoint(), AbstractParameterisedSystem< VECTOR >::SetAnyVariable(), AbstractParameterisedSystem< VECTOR >::SetParameter(), AbstractParameterisedSystem< VECTOR >::SetStateVariable(), and AbstractParameterisedSystem< VECTOR >::SetStateVariables().
|
inline |
Specialisation for std::vector<double>.
rVec | |
index | |
value |
Definition at line 203 of file VectorHelperFunctions.hpp.
Specialisation for CVODE's N_Vector type.
rVec | |
index | |
value |
Definition at line 330 of file VectorHelperFunctions.hpp.