Chaste Commit::baa90ac2819b962188b7562f2326be23c47859a7
DeltaNotchSrnModel Class Reference

#include <DeltaNotchSrnModel.hpp>

+ Inheritance diagram for DeltaNotchSrnModel:
+ Collaboration diagram for DeltaNotchSrnModel:

Public Member Functions

 DeltaNotchSrnModel (boost::shared_ptr< AbstractCellCycleModelOdeSolver > pOdeSolver=boost::shared_ptr< AbstractCellCycleModelOdeSolver >())
 
AbstractSrnModelCreateSrnModel ()
 
void Initialise ()
 
void SimulateToCurrentTime ()
 
void UpdateDeltaNotch ()
 
double GetNotch ()
 
double GetDelta ()
 
double GetMeanNeighbouringDelta ()
 
void OutputSrnModelParameters (out_stream &rParamsFile)
 
- Public Member Functions inherited from AbstractOdeSrnModel
 AbstractOdeSrnModel (unsigned stateSize, boost::shared_ptr< AbstractCellCycleModelOdeSolver > pOdeSolver=boost::shared_ptr< AbstractCellCycleModelOdeSolver >())
 
virtual ~AbstractOdeSrnModel ()
 
virtual void ResetForDivision ()
 
void SetInitialConditions (std::vector< double > initialConditions)
 
virtual void ScaleSrnVariables (const double theta)
 
- Public Member Functions inherited from AbstractSrnModel
 AbstractSrnModel ()
 
virtual ~AbstractSrnModel ()
 
virtual void SetCell (CellPtr pCell)
 
virtual void InitialiseDaughterCell ()
 
CellPtr GetCell ()
 
void SetSimulatedToTime (double simulatedToTime)
 
double GetSimulatedToTime () const
 
void OutputSrnModelInfo (out_stream &rParamsFile)
 
void SetEdgeLocalIndex (unsigned index)
 
unsigned GetEdgeLocalIndex ()
 
bool HasEdgeModel () const
 
void SetEdgeModelIndicator (const bool isEdgeModel)
 
virtual void AddSrnQuantities (AbstractSrnModel *pOtherSrn, const double scale=1.0)
 
virtual void AddShrunkEdgeSrn (AbstractSrnModel *pShrunkEdgeSrn)
 
virtual void AddMergedEdgeSrn (AbstractSrnModel *pMergedEdgeSrn)
 
virtual void AddShrunkEdgeToInterior (AbstractSrnModel *pShrunkEdgeSrn)
 
virtual void SplitEdgeSrn (const double relativePosition)
 
- Public Member Functions inherited from Identifiable
virtual ~Identifiable ()
 
std::string GetIdentifier () const
 
- Public Member Functions inherited from CellCycleModelOdeHandler
 CellCycleModelOdeHandler (double lastTime=SimulationTime::Instance() ->GetTime(), boost::shared_ptr< AbstractCellCycleModelOdeSolver > pOdeSolver=boost::shared_ptr< AbstractCellCycleModelOdeSolver >())
 
virtual ~CellCycleModelOdeHandler ()
 
AbstractOdeSystemGetOdeSystem () const
 
void SetOdeSystem (AbstractOdeSystem *pOdeSystem)
 
const boost::shared_ptr< AbstractCellCycleModelOdeSolverGetOdeSolver () const
 
void SetLastTime (double lastTime)
 
double GetDt ()
 
void SetDt (double timeStep)
 
void SetStateVariables (const std::vector< double > &rStateVariables)
 
std::vector< doubleGetProteinConcentrations () const
 
void SetProteinConcentrationsForTestsOnly (double lastTime, std::vector< double > proteinConcentrations)
 

Protected Member Functions

 DeltaNotchSrnModel (const DeltaNotchSrnModel &rModel)
 
- Protected Member Functions inherited from AbstractOdeSrnModel
void Initialise (AbstractOdeSystem *pOdeSystem)
 
 AbstractOdeSrnModel (const AbstractOdeSrnModel &rModel)
 
- Protected Member Functions inherited from AbstractSrnModel
 AbstractSrnModel (const AbstractSrnModel &rModel)
 
- Protected Member Functions inherited from CellCycleModelOdeHandler
 CellCycleModelOdeHandler (const CellCycleModelOdeHandler &rHandler)
 
bool SolveOdeToTime (double currentTime)
 
virtual void AdjustOdeParameters (double currentTime)
 

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 AbstractOdeSrnModel
std::vector< doublemInitialConditions
 
unsigned mStateSize
 
- Protected Attributes inherited from AbstractSrnModel
CellPtr mpCell
 
double mSimulatedToTime
 
unsigned mEdgeLocalIndex = UNSIGNED_UNSET
 
bool mIsEdgeBasedModel = false
 
- Protected Attributes inherited from CellCycleModelOdeHandler
double mDt
 
AbstractOdeSystemmpOdeSystem
 
boost::shared_ptr< AbstractCellCycleModelOdeSolvermpOdeSolver
 
double mLastTime
 
bool mFinishedRunningOdes
 

Detailed Description

A subclass of AbstractOdeSrnModel that includes a Delta-Notch ODE system in the sub-cellular reaction network.

Definition at line 49 of file DeltaNotchSrnModel.hpp.

Constructor & Destructor Documentation

◆ DeltaNotchSrnModel() [1/2]

DeltaNotchSrnModel::DeltaNotchSrnModel ( const DeltaNotchSrnModel rModel)
protected

Protected copy-constructor for use by CreateSrnModel(). The only way for external code to create a copy of a SRN model is by calling that method, to ensure that a model of the correct subclass is created.

This copy-constructor helps subclasses to ensure that all member variables are correctly copied when this happens.

This method is called by child classes to set member variables for a daughter cell upon cell division. Note that the parent SRN model will have had ResetForDivision() called just before CreateSrnModel() is called, so performing an exact copy of the parent is suitable behaviour. Any daughter-cell-specific initialisation can be done in InitialiseDaughterCell().

Parameters
rModelthe SRN model to copy.

Definition at line 56 of file DeltaNotchSrnModel.cpp.

References CellCycleModelOdeHandler::GetOdeSystem(), AbstractParameterisedSystem< VECTOR >::rGetStateVariables(), and CellCycleModelOdeHandler::SetOdeSystem().

◆ DeltaNotchSrnModel() [2/2]

DeltaNotchSrnModel::DeltaNotchSrnModel ( boost::shared_ptr< AbstractCellCycleModelOdeSolver pOdeSolver = boost::shared_ptr<AbstractCellCycleModelOdeSolver>())

Default constructor calls base class.

Parameters
pOdeSolverAn optional pointer to a cell-cycle model ODE solver object (allows the use of different ODE solvers)

Definition at line 38 of file DeltaNotchSrnModel.cpp.

References CellCycleModelOdeSolver< CELL_CYCLE_MODEL, ODE_SOLVER >::Instance(), CellCycleModelOdeHandler::mpOdeSolver, and CellCycleModelOdeHandler::SetDt().

Member Function Documentation

◆ CreateSrnModel()

AbstractSrnModel * DeltaNotchSrnModel::CreateSrnModel ( )
virtual

Overridden builder method to create new copies of this SRN model.

Returns
a copy of the current SRN model.

Implements AbstractSrnModel.

Definition at line 78 of file DeltaNotchSrnModel.cpp.

◆ GetDelta()

double DeltaNotchSrnModel::GetDelta ( )

◆ GetMeanNeighbouringDelta()

double DeltaNotchSrnModel::GetMeanNeighbouringDelta ( )
Returns
the current level of mean Delta in the neighbouring cells.

N.B. This doesn't calculate anything, it just returns the parameter from the DeltaNotchOdeSystem.

Definition at line 120 of file DeltaNotchSrnModel.cpp.

References AbstractParameterisedSystem< VECTOR >::GetParameter(), and CellCycleModelOdeHandler::mpOdeSystem.

◆ GetNotch()

double DeltaNotchSrnModel::GetNotch ( )

◆ Initialise()

void DeltaNotchSrnModel::Initialise ( )
virtual

Initialise the SRN model at the start of a simulation.

This overridden method sets up a new Delta-Notch ODE system.

Reimplemented from AbstractOdeSrnModel.

Definition at line 92 of file DeltaNotchSrnModel.cpp.

References AbstractOdeSrnModel::Initialise().

◆ OutputSrnModelParameters()

void DeltaNotchSrnModel::OutputSrnModelParameters ( out_stream &  rParamsFile)
virtual

Output SRN model parameters to file.

Parameters
rParamsFilethe file stream to which the parameters are output

Reimplemented from AbstractOdeSrnModel.

Definition at line 127 of file DeltaNotchSrnModel.cpp.

References AbstractOdeSrnModel::OutputSrnModelParameters().

◆ serialize()

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

Archive the SRN model and member variables.

Parameters
archivethe archive
versionthe current version of this class

Definition at line 62 of file DeltaNotchSrnModel.hpp.

◆ SimulateToCurrentTime()

void DeltaNotchSrnModel::SimulateToCurrentTime ( )
virtual

Overridden SimulateToTime() method for custom behaviour.

Todo:
#2752 say what it does in this class

Reimplemented from AbstractOdeSrnModel.

Definition at line 83 of file DeltaNotchSrnModel.cpp.

References AbstractOdeSrnModel::SimulateToCurrentTime(), and UpdateDeltaNotch().

◆ UpdateDeltaNotch()

void DeltaNotchSrnModel::UpdateDeltaNotch ( )

Update the current levels of Delta and Notch in the cell.

N.B. Despite the name, this doesn't update the levels of delta or notch, or compute mean levels. It just copies the current mean delta from the CellData (set by DeltaNotchTrackingModifier) to the DeltaNotchOdeSystem.

Todo:
#2752 Improve the name of this method!

Definition at line 97 of file DeltaNotchSrnModel.cpp.

References AbstractSrnModel::mpCell, CellCycleModelOdeHandler::mpOdeSystem, and AbstractParameterisedSystem< VECTOR >::SetParameter().

Referenced by SimulateToCurrentTime().

Friends And Related Symbol Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Needed for serialization.

Definition at line 54 of file DeltaNotchSrnModel.hpp.


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