Chaste  Release::2017.1
NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM > Class Template Reference

#include <NodeVelocityWriter.hpp>

+ Inheritance diagram for NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >:
+ Collaboration diagram for NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >:

Public Member Functions

 NodeVelocityWriter ()
 
virtual void Visit (MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM > *pCellPopulation)
 
virtual void Visit (CaBasedCellPopulation< SPACE_DIM > *pCellPopulation)
 
virtual void Visit (NodeBasedCellPopulation< SPACE_DIM > *pCellPopulation)
 
virtual void Visit (PottsBasedCellPopulation< SPACE_DIM > *pCellPopulation)
 
virtual void Visit (VertexBasedCellPopulation< SPACE_DIM > *pCellPopulation)
 
- Public Member Functions inherited from AbstractCellPopulationWriter< ELEMENT_DIM, SPACE_DIM >
 AbstractCellPopulationWriter (const std::string &rFileName)
 
virtual void WriteHeader (AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > *pCellPopulation)
 
- Public Member Functions inherited from AbstractCellBasedWriter< ELEMENT_DIM, SPACE_DIM >
 AbstractCellBasedWriter (const std::string &rFileName)
 
virtual ~AbstractCellBasedWriter ()
 
void CloseFile ()
 
virtual void OpenOutputFile (OutputFileHandler &rOutputFileHandler)
 
void OpenOutputFileForAppend (OutputFileHandler &rOutputFileHandler)
 
virtual void WriteTimeStamp ()
 
virtual void WriteNewline ()
 
void SetFileName (std::string fileName)
 
std::string GetFileName ()
 
- Public Member Functions inherited from Identifiable
virtual ~Identifiable ()
 
std::string GetIdentifier () const
 

Private Member Functions

template<class Archive >
void serialize (Archive &archive, const unsigned int version)
 

Friends

class boost::serialization::access
 

Additional Inherited Members

- Protected Attributes inherited from AbstractCellBasedWriter< ELEMENT_DIM, SPACE_DIM >
std::string mFileName
 
out_stream mpOutStream
 

Detailed Description

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
class NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >

A class written using the visitor pattern for writing the velocities of the nodes associated with a cell population to file.

The output file is called nodevelocities.dat by default.

Todo:
some code duplication in methods; potential for refactoring (#2404)

Definition at line 52 of file NodeVelocityWriter.hpp.

Constructor & Destructor Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::NodeVelocityWriter ( )

Default constructor.

Definition at line 45 of file NodeVelocityWriter.cpp.

Referenced by NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::serialize().

Member Function Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
template<class Archive >
void NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::serialize ( Archive &  archive,
const unsigned int  version 
)
inlineprivate

Serialize the object and its member variables.

Parameters
archivethe archive
versionthe current version of this class

Definition at line 64 of file NodeVelocityWriter.hpp.

References EXPORT_TEMPLATE_CLASS_ALL_DIMS, NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::NodeVelocityWriter(), and NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::Visit().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::Visit ( MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM > *  pCellPopulation)
virtual

Visit the population and write the location of each Node.

Outputs a line of space-separated values of the form: ... [node index] [node x-pos] [node y-pos] [node z-pos] [node x-vel] [node y-vel] [node z-vel]...

where z-pos and z-vel are used in 3 dimensions. Here the indexing of nodes is as given by the NodeIterator.

This line is appended to the output written by AbstractCellBasedWriter, which is a single value [present simulation time], followed by a tab.

Parameters
pCellPopulationa pointer to the MeshBasedCellPopulation to visit.
Todo:
correct time step? (#2404)

Implements AbstractCellPopulationWriter< ELEMENT_DIM, SPACE_DIM >.

Definition at line 51 of file NodeVelocityWriter.cpp.

References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetCellUsingLocationIndex(), MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetDampingConstant(), SimulationTime::GetTimeStep(), SimulationTime::Instance(), AbstractCentreBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::IsGhostNode(), AbstractCellBasedWriter< ELEMENT_DIM, SPACE_DIM >::mpOutStream, and MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::rGetMesh().

Referenced by NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::serialize().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::Visit ( CaBasedCellPopulation< SPACE_DIM > *  pCellPopulation)
virtual

Visit the population and write the data.

This is an empty dummy function, since this class is not defined for use with a CaBasedCellPopulation.

Parameters
pCellPopulationa pointer to the CaBasedCellPopulation to visit.

Implements AbstractCellPopulationWriter< ELEMENT_DIM, SPACE_DIM >.

Definition at line 96 of file NodeVelocityWriter.cpp.

References EXCEPTION.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::Visit ( NodeBasedCellPopulation< SPACE_DIM > *  pCellPopulation)
virtual

Visit the population and write the location of each Node.

Outputs a line of space-separated values of the form: ... [node index] [node x-pos] [node y-pos] [node z-pos] [node x-vel] [node y-vel] [node z-vel]...

where z-pos and z-vel are used in 3 dimensions. Here the indexing of nodes is as given by the NodeIterator.

This line is appended to the output written by AbstractCellBasedWriter, which is a single value [present simulation time], followed by a tab.

Parameters
pCellPopulationa pointer to the NodeBasedCellPopulation to visit.
Todo:
correct time step? (#2404)

Implements AbstractCellPopulationWriter< ELEMENT_DIM, SPACE_DIM >.

Definition at line 102 of file NodeVelocityWriter.cpp.

References NodeBasedCellPopulation< DIM >::GetCellUsingLocationIndex(), AbstractCentreBasedCellPopulation< DIM >::GetDampingConstant(), AbstractMesh< ELEMENT_DIM, SPACE_DIM >::GetNodeIteratorBegin(), AbstractMesh< ELEMENT_DIM, SPACE_DIM >::GetNodeIteratorEnd(), SimulationTime::GetTimeStep(), SimulationTime::Instance(), AbstractCentreBasedCellPopulation< DIM >::IsGhostNode(), AbstractCellBasedWriter< ELEMENT_DIM, SPACE_DIM >::mpOutStream, and NodeBasedCellPopulation< DIM >::rGetMesh().

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::Visit ( PottsBasedCellPopulation< SPACE_DIM > *  pCellPopulation)
virtual

Visit the population and write the data.

This is an empty dummy function, since this class is not defined for use with a PottsBasedCellPopulation.

Parameters
pCellPopulationa pointer to the PottsBasedCellPopulation to visit.

Implements AbstractCellPopulationWriter< ELEMENT_DIM, SPACE_DIM >.

Definition at line 147 of file NodeVelocityWriter.cpp.

References EXCEPTION.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
void NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::Visit ( VertexBasedCellPopulation< SPACE_DIM > *  pCellPopulation)
virtual

Visit the population and write the location of each Node.

Outputs a line of space-separated values of the form: ... [node index] [node x-pos] [node y-pos] [node z-pos] [node x-vel] [node y-vel] [node z-vel]...

where z-pos and z-vel are used in 3 dimensions. Here the indexing of nodes is as given by the NodeIterator.

This line is appended to the output written by AbstractCellBasedWriter, which is a single value [present simulation time], followed by a tab.

Parameters
pCellPopulationa pointer to the VertexBasedCellPopulation to visit.
Todo:
correct time step? (#2404)

Implements AbstractCellPopulationWriter< ELEMENT_DIM, SPACE_DIM >.

Definition at line 153 of file NodeVelocityWriter.cpp.

References EXPORT_TEMPLATE_CLASS_ALL_DIMS, VertexBasedCellPopulation< DIM >::GetDampingConstant(), AbstractMesh< ELEMENT_DIM, SPACE_DIM >::GetNodeIteratorBegin(), AbstractMesh< ELEMENT_DIM, SPACE_DIM >::GetNodeIteratorEnd(), SimulationTime::GetTimeStep(), SimulationTime::Instance(), AbstractCellBasedWriter< ELEMENT_DIM, SPACE_DIM >::mpOutStream, and VertexBasedCellPopulation< DIM >::rGetMesh().

Friends And Related Function Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
friend class boost::serialization::access
friend

Needed for serialization.

Definition at line 56 of file NodeVelocityWriter.hpp.


The documentation for this class was generated from the following files: