Chaste
Build::
|
#include <AbstractStructuralAdaptationSolver.hpp>
Public Member Functions | |
AbstractStructuralAdaptationSolver () | |
virtual | ~AbstractStructuralAdaptationSolver () |
double | GetTolerance () const |
bool | GetWriteOutput () const |
std::string | GetOutputFileName () const |
units::quantity< unit::time > | GetTimeIncrement () const |
virtual void | Iterate ()=0 |
void | SetTolerance (double tolerance) |
void | SetTimeIncrement (units::quantity< unit::time > timeIncrement) |
void | SetMaxIterations (unsigned iterations) |
void | SetWriteOutput (bool writeFlag) |
void | SetOutputFileName (const std::string &rFilename) |
void | SetVesselNetwork (boost::shared_ptr< VesselNetwork< DIM > > pNetwork) |
void | Solve () |
virtual void | Write () |
Protected Attributes | |
double | mTolerance |
units::quantity< unit::time > | mTimeIncrement |
units::quantity< unit::time > | mReferenceTimeScale |
bool | mWriteOutput |
std::string | mOutputFileName |
unsigned | mMaxIterations |
boost::shared_ptr< VesselNetwork< DIM > > | mpVesselNetwork |
This is an abstract implementation of a structural adaptation solver. It iterates until the vessel radii stop changing. Child classes implement the specific updates of the radii in each iteration.
Definition at line 51 of file AbstractStructuralAdaptationSolver.hpp.
AbstractStructuralAdaptationSolver< DIM >::AbstractStructuralAdaptationSolver | ( | ) |
Constructor
Definition at line 43 of file AbstractStructuralAdaptationSolver.cpp.
|
virtual |
Destructor.
Definition at line 56 of file AbstractStructuralAdaptationSolver.cpp.
std::string AbstractStructuralAdaptationSolver< DIM >::GetOutputFileName | ( | ) | const |
Returns the filename for the file that the progress of the algorithm will be output to.
Definition at line 74 of file AbstractStructuralAdaptationSolver.cpp.
References AbstractStructuralAdaptationSolver< DIM >::mOutputFileName.
units::quantity< unit::time > AbstractStructuralAdaptationSolver< DIM >::GetTimeIncrement | ( | ) | const |
Returns the timeStep (in seconds).
Definition at line 80 of file AbstractStructuralAdaptationSolver.cpp.
References AbstractStructuralAdaptationSolver< DIM >::mTimeIncrement.
Referenced by StructuralAdaptationSolver< DIM >::Iterate().
double AbstractStructuralAdaptationSolver< DIM >::GetTolerance | ( | ) | const |
Return the tolerance for change in radii
Definition at line 62 of file AbstractStructuralAdaptationSolver.cpp.
References AbstractStructuralAdaptationSolver< DIM >::mTolerance.
bool AbstractStructuralAdaptationSolver< DIM >::GetWriteOutput | ( | ) | const |
Return whether the progress of the structural adaptation algorithm will be output to a file.
Definition at line 68 of file AbstractStructuralAdaptationSolver.cpp.
References AbstractStructuralAdaptationSolver< DIM >::mWriteOutput.
|
pure virtual |
This method should contain all of the operations used within a single iteration of a structural adaptation algorithm.
Implemented in StructuralAdaptationSolver< DIM >.
Referenced by AbstractStructuralAdaptationSolver< DIM >::Solve().
void AbstractStructuralAdaptationSolver< DIM >::SetMaxIterations | ( | unsigned | iterations | ) |
Setter for maximum number of iterations.
iterations | the maximum number of iterations. |
Definition at line 98 of file AbstractStructuralAdaptationSolver.cpp.
References AbstractStructuralAdaptationSolver< DIM >::mMaxIterations.
void AbstractStructuralAdaptationSolver< DIM >::SetOutputFileName | ( | const std::string & | rFilename | ) |
Setter for name of output file that progression of structural adaptation algorithm may be output to.
rFilename | the output filename |
Definition at line 110 of file AbstractStructuralAdaptationSolver.cpp.
References AbstractStructuralAdaptationSolver< DIM >::mOutputFileName.
void AbstractStructuralAdaptationSolver< DIM >::SetTimeIncrement | ( | units::quantity< unit::time > | timeIncrement | ) |
Setter for timeStep parameter.
timeIncrement | the time increment |
Definition at line 92 of file AbstractStructuralAdaptationSolver.cpp.
References AbstractStructuralAdaptationSolver< DIM >::mTimeIncrement.
void AbstractStructuralAdaptationSolver< DIM >::SetTolerance | ( | double | tolerance | ) |
Setter for tolerance parameter.
tolerance | the radius convergence tolerance |
Definition at line 86 of file AbstractStructuralAdaptationSolver.cpp.
References AbstractStructuralAdaptationSolver< DIM >::mTolerance.
void AbstractStructuralAdaptationSolver< DIM >::SetVesselNetwork | ( | boost::shared_ptr< VesselNetwork< DIM > > | pNetwork | ) |
Set the vessel network
pNetwork | pointer to the vessel network |
Definition at line 166 of file AbstractStructuralAdaptationSolver.cpp.
References AbstractStructuralAdaptationSolver< DIM >::mpVesselNetwork.
void AbstractStructuralAdaptationSolver< DIM >::SetWriteOutput | ( | bool | writeFlag | ) |
Set whether to output the progress of structural adaptation algorithm to a file.
writeFlag | whether to write output |
Definition at line 104 of file AbstractStructuralAdaptationSolver.cpp.
References AbstractStructuralAdaptationSolver< DIM >::mWriteOutput.
void AbstractStructuralAdaptationSolver< DIM >::Solve | ( | ) |
Method used to implement a structural adaptation algorithm on a vessel network. The skeleton of an algorithm is outlined in this class. An individual iteration of an algorithm should be defined inside the Iterate method within concrete subclasses of this class.
Definition at line 116 of file AbstractStructuralAdaptationSolver.cpp.
References AbstractStructuralAdaptationSolver< DIM >::Iterate(), AbstractStructuralAdaptationSolver< DIM >::mMaxIterations, AbstractStructuralAdaptationSolver< DIM >::mOutputFileName, AbstractStructuralAdaptationSolver< DIM >::mpVesselNetwork, AbstractStructuralAdaptationSolver< DIM >::mReferenceTimeScale, AbstractStructuralAdaptationSolver< DIM >::mTimeIncrement, AbstractStructuralAdaptationSolver< DIM >::mTolerance, and AbstractStructuralAdaptationSolver< DIM >::mWriteOutput.
|
virtual |
Method to output parameters of model to a file. The name of the object and parameter values are appended to the file.
Definition at line 172 of file AbstractStructuralAdaptationSolver.cpp.
References AbstractStructuralAdaptationSolver< DIM >::mOutputFileName.
|
protected |
Maximum number of iterations which we may allow the algorithm to run for, regardless of timestep and SimulationTime::GetTimeStep().
Definition at line 88 of file AbstractStructuralAdaptationSolver.hpp.
Referenced by AbstractStructuralAdaptationSolver< DIM >::SetMaxIterations(), and AbstractStructuralAdaptationSolver< DIM >::Solve().
|
protected |
Name of file to which the progress of the structural adaptation algorithm may be output.
Definition at line 82 of file AbstractStructuralAdaptationSolver.hpp.
Referenced by AbstractStructuralAdaptationSolver< DIM >::GetOutputFileName(), AbstractStructuralAdaptationSolver< DIM >::SetOutputFileName(), AbstractStructuralAdaptationSolver< DIM >::Solve(), and AbstractStructuralAdaptationSolver< DIM >::Write().
|
protected |
The vessel network
Definition at line 93 of file AbstractStructuralAdaptationSolver.hpp.
Referenced by StructuralAdaptationSolver< DIM >::Iterate(), AbstractStructuralAdaptationSolver< DIM >::SetVesselNetwork(), AbstractStructuralAdaptationSolver< DIM >::Solve(), and StructuralAdaptationSolver< DIM >::UpdateFlowSolver().
|
protected |
The reference time scale
Definition at line 71 of file AbstractStructuralAdaptationSolver.hpp.
Referenced by AbstractStructuralAdaptationSolver< DIM >::Solve().
|
protected |
Length of time which the algorithm is incremented on each occasion that the Iterate function is called.
Definition at line 66 of file AbstractStructuralAdaptationSolver.hpp.
Referenced by AbstractStructuralAdaptationSolver< DIM >::GetTimeIncrement(), AbstractStructuralAdaptationSolver< DIM >::SetTimeIncrement(), and AbstractStructuralAdaptationSolver< DIM >::Solve().
|
protected |
Threshold tolerance for the maximum relative change in radii of vessels in a vessel network, below which a structural adaptation algorithm will terminate.
Definition at line 60 of file AbstractStructuralAdaptationSolver.hpp.
Referenced by AbstractStructuralAdaptationSolver< DIM >::GetTolerance(), AbstractStructuralAdaptationSolver< DIM >::SetTolerance(), and AbstractStructuralAdaptationSolver< DIM >::Solve().
|
protected |
Whether to output the progress of the structural adaptation algorithm to a file.
Definition at line 76 of file AbstractStructuralAdaptationSolver.hpp.
Referenced by AbstractStructuralAdaptationSolver< DIM >::GetWriteOutput(), AbstractStructuralAdaptationSolver< DIM >::SetWriteOutput(), and AbstractStructuralAdaptationSolver< DIM >::Solve().