Chaste Commit::f2ff7ee04e70ac9d06c57344df8d017dbb12b97b
Todo List
Member AbstractCardiacMechanicsSolver< ELASTICITY_SOLVER, DIM >::SetCalciumAndVoltage (std::vector< double > &rCalciumConcentrations, std::vector< double > &rVoltages)
#1828 / #1211 don't pass in entire vector
Member AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::CreateInitialCondition ()
Perhaps this should be a method of AbstractCardiacTissue??
Member AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::load (Archive &archive, const unsigned int version)

#1317 code for saving/loading mSolution is PROBLEM_DIM specific, move it into the save/load methods for Mono and BidomainProblem. (ExtendedBidomain has its own already.)

#1317 is there a reason we can't use PETSc's load/save vector functionality?

Member AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::PreSolveChecks ()
remove magic number? (#1884)
Member AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::save (Archive &archive, const unsigned int version) const
#1317 code for saving/loading mSolution is PROBLEM_DIM specific, move it into the save/load methods for Mono and BidomainProblem. Note that extended_bidomain has its own version of this code.
Member AbstractCardiacProblem< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::SetUseTimeAdaptivityController (bool useAdaptivity, AbstractTimeAdaptivityController *pController=NULL)
#1704 add default adaptivity controller and allow the user just to call with true
Member AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::CreateIntracellularConductivityTensor ()

#1316 Create a class defining constant tensors to be used when no fibre orientation is provided.

#1316 Create a class defining constant tensors to be used when no fibre orientation is provided.

Member AbstractCardiacTissue< ELEMENT_DIM, SPACE_DIM >::SolveCellSystems (Vec existingSolution, double time, double nextTime, bool updateVoltage=false)

This may want to go to std::cerr ??

#2017 This code will be needed in the future, not being covered now. Add a test which covers this, e.g. by doing a simulation with a bad stimulus for one of the Purkinje cells - stimulating with the wrong choice of sign say.

Member AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetCellUsingLocationIndex (unsigned index)
should be an exception?
Member AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::OutputCellPopulationInfo (out_stream &rParamsFile)

this currently ignores different parameter regimes (#1453)

this currently ignores different parameter regimes (#1453)

Member AbstractChasteRegion< SPACE_DIM >::Destroy ()
Proper memory management Cleans any data which the concrete class may have created (archiving)
Member AbstractConvergenceTester< CELL, CARDIAC_PROBLEM, DIM, PROBLEM_DIM >::Converge (std::string nameOfTest)

consider reducing all stimuli to match this one.

remove magic number? (#1884)

This is a scarily long method; could do with some parts extracted?

Member AbstractDynamicallyLoadableEntity::~AbstractDynamicallyLoadableEntity ()
#1957
Member AbstractFeCableIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX, INTERPOLATION_LEVEL >::AssembleOnCableElement (Element< CABLE_ELEMENT_DIM, SPACE_DIM > &rElement, c_matrix< double, PROBLEM_DIM *NUM_CABLE_ELEMENT_NODES, PROBLEM_DIM *NUM_CABLE_ELEMENT_NODES > &rAElem, c_vector< double, PROBLEM_DIM *NUM_CABLE_ELEMENT_NODES > &rBElem)
#1320 This assumes that the Jacobian is constant on an element. This is true for linear basis functions, but not for any other type of basis function.
Member AbstractFeSurfaceIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::AssembleOnSurfaceElement (const BoundaryElement< ELEMENT_DIM-1, SPACE_DIM > &rSurfaceElement, c_vector< double, PROBLEM_DIM *ELEMENT_DIM > &rBSurfElem)
#1321 Improve efficiency of Neumann BC implementation
Member AbstractFeVolumeIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX, INTERPOLATION_LEVEL >::AssembleOnElement (Element< ELEMENT_DIM, SPACE_DIM > &rElement, c_matrix< double, PROBLEM_DIM *(ELEMENT_DIM+1), PROBLEM_DIM *(ELEMENT_DIM+1) > &rAElem, c_vector< double, PROBLEM_DIM *(ELEMENT_DIM+1)> &rBElem)
#1320 This assumes that the Jacobian is constant on an element. This is true for linear basis functions, but not for any other type of basis function.
Member AbstractFeVolumeIntegralAssembler< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM, CAN_ASSEMBLE_VECTOR, CAN_ASSEMBLE_MATRIX, INTERPOLATION_LEVEL >::ComputeTransformedBasisFunctionDerivatives (const ChastePoint< ELEMENT_DIM > &rPoint, const c_matrix< double, ELEMENT_DIM, SPACE_DIM > &rInverseJacobian, c_matrix< double, SPACE_DIM, ELEMENT_DIM+1 > &rReturnValue)
#1319 Template LinearBasisFunction over SPACE_DIM and remove this method?
Member AbstractGrowingDomainPdeModifier< DIM >::GenerateFeMesh (AbstractCellPopulation< DIM, DIM > &rCellPopulation)
We should only set mDeleteFeMesh once, not every time step (#2687, #2863)
Member AbstractGrowingDomainPdeModifier< DIM >::UpdateCellData (AbstractCellPopulation< DIM, DIM > &rCellPopulation)
Consider how to remove dynamic_casts here
Class AbstractHdf5Access
: magic number
Member AbstractIsotropicIncompressibleMaterialLaw< DIM >::Get_d2W_dI1 (double I1, double I2)=0
The name of this method should not include underscores.
Member AbstractIsotropicIncompressibleMaterialLaw< DIM >::Get_d2W_dI1I2 (double I1, double I2)=0
The name of this method should not include underscores.
Member AbstractIsotropicIncompressibleMaterialLaw< DIM >::Get_d2W_dI2 (double I1, double I2)=0
The name of this method should not include underscores.
Member AbstractIsotropicIncompressibleMaterialLaw< DIM >::Get_dW_dI1 (double I1, double I2)=0
The name of this method should not include underscores.
Member AbstractIsotropicIncompressibleMaterialLaw< DIM >::Get_dW_dI2 (double I1, double I2)=0
The name of this method should not include underscores.
Member AbstractLookupTableCollection::SetTableProperties (const std::string &rKeyingVariableName, double min, double step, double max)
remove magic number? (#1884)
Member AbstractMesh< ELEMENT_DIM, SPACE_DIM >::CalculateBoundingBox (const std::vector< Node< SPACE_DIM > * > &rNodes) const
#1322 use a const version of NodeIterator here
Class AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >::NodeIterator
#1930. We could roll most iterator functionality into a base class here
Member AbstractNonlinearAssemblerSolverHybrid< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::ComputeJacobianNumerically (const Vec currentGuess, Mat *pJacobian)
This loop is setting the column "global_index_outer" of the Jacobian matrix to the result vector in a non-sparse way.
Member AbstractNonlinearElasticitySolver< DIM >::SetKspSolverAndPcType (KSP solver)

#2057 Make better choices here...

#2057 Make better choices..

Member AbstractNumericalMethod< ELEMENT_DIM, SPACE_DIM >::ComputeForcesIncludingDamping ()
#2087 Consider removing dynamic_cast and instead adding a virtual method ApplyForcesToNonCellNodes()
Member AbstractNumericalMethod< ELEMENT_DIM, SPACE_DIM >::mUseUpdateNodeLocation
#2087 Consider replacing this with static_casts
Member AbstractOdeSystem::rGetConstStateVariables () const
move to AbstractParameterisedSystem? (1540)
Member AbstractPdeModifier< DIM >::mIsNeumannBoundaryCondition
Generalize to allow mixed boundary conditions
Member AbstractPerElementWriter< ELEMENT_DIM, SPACE_DIM, DATA_SIZE >::WriteData (OutputFileHandler &rHandler, const std::string &rFileName)
See if this can be speeded up with #2351.
Member AbstractTetrahedralElement< 0, SPACE_DIM >::CalculateNormal ()
should throw?
Member AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::CalculateMinMaxEdgeLengths ()
Should be const
Member AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::CalculateNodeExchange (std::vector< std::vector< unsigned > > &rNodesToSendPerProcess, std::vector< std::vector< unsigned > > &rNodesToReceivePerProcess)
#2426 This is where we should check that we DO HAVE a Tetrahedral (not Distributed mesh)
Member AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMesh (AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > &rOtherMesh)
Can we make this const?
Member AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::load (Archive &archive, const unsigned int version)
#1199 make this work for everything else...
Member AbstractTetrahedralMeshWriter< ELEMENT_DIM, SPACE_DIM >::WriteFilesUsingMesh (AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > &rMesh, bool keepOriginalElementIndexing=true)

#1322 Mesh should really be const!

#1322, This should be const too

#1322 This should be const too

#1322 Mesh should be const

Member AbstractTetrahedralMeshWriter< ELEMENT_DIM, SPACE_DIM >::WriteFilesUsingParallelMesh (bool keepOriginalElementIndexing=true)
#2351 Also exclude VTK writer
Member AbstractTwoBodyInteractionForce< ELEMENT_DIM, SPACE_DIM >::AddForceContribution (AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > &rCellPopulation)
this could be tidied by using the rGetNodePairs for all populations and moving the below calculation into the MutableMesh.
Member ActivationOutputModifier::ProcessSolutionAtTimeStep (double time, Vec solution, unsigned problemDim)
#2570 Add to a longer running test
Member AdhesionPottsUpdateRule< DIM >::mCellBoundaryAdhesionEnergyParameter
provide units
Member AdhesionPottsUpdateRule< DIM >::mCellCellAdhesionEnergyParameter
provide units
Class AveragedSourceEllipticPde< DIM >
make member names and methods consistent with those of AveragedSourceParabolicPde (#2876)
Member AveragedSourceParabolicPde< DIM >::SetupSourceTerms (TetrahedralMesh< DIM, DIM > &rCoarseMesh, std::map< CellPtr, unsigned > *pCellPdeElementMap=nullptr)
this is identical to the one in AveragedSourceEllipticPde so refactor.
Member BidomainProblem< DIM >::AtBeginningOfTimestep (double time)
#1159 #1324 heart/src/problem/AbstractCardiacProblem.hpp:657 expects both pointing at the same place when unarchiving
Member BidomainProblem< DIM >::LoadExtraArchiveForBidomain (Archive &archive, unsigned version)
#1159 sanity check that the contents of p_bcc and mpElectrodes->GetBoundaryConditionsContainer() match.
Class BoundaryConditionsContainer< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >
#1321 Various operations are currently very inefficient - there is certainly scope for optimisation here!
Member BoundaryConditionsContainer< ELEMENT_DIM, SPACE_DIM, PROBLEM_DIM >::HasNeumannBoundaryCondition (const BoundaryElement< ELEMENT_DIM-1, SPACE_DIM > *pSurfaceElement, unsigned indexOfUnknown=0)
#1321 This is a horrendously inefficient fix. Perhaps have flag in element object?
Member Box< DIM >::rGetElementsContained ()
#2308 there are no methods to remove or clear elements
Class BuskeAdhesiveForce< DIM >
does this mean natural radius of a cell? If so at what age? (#1764) Time is in hours.
Class BuskeCompressionForce< DIM >
does this mean natural radius of a cell? If so at what age? (#1764) Time is in hours.
Member BuskeCompressionForce< DIM >::AddForceContribution (AbstractCellPopulation< DIM > &rCellPopulation)
Doesn't say in the Buske paper how they calculate this, so we need to look at this to be sure it's what we want (#1764)
Class BuskeElasticForce< DIM >
does this mean natural radius of a cell? If so at what age? (#1764) Time is in hours.
Member CaBasedCellPopulation< DIM >::EvaluateDivisionPropensity (unsigned currentNodeIndex, unsigned targetNodeIndex, CellPtr pCell)
This functionality should be moved into the CA-based division rule hierarchy
Member CaBasedCellPopulation< DIM >::IsSiteAvailable (unsigned index, CellPtr pCell)

this is where to deal with carrying capacity

Which subclasses? Why is the second input argument needed?

Member CaBasedCellPopulation< DIM >::UpdateCellLocations (double dt)
make this sweep random
Member CardiacElectroMechanicsProblem< DIM, ELEC_PROB_DIM >::Initialise ()
This is fragile: check how the TimeStepper does it, and possibly refactor the behaviour there into a static helper method if it isn't already.
Member CardiacElectroMechanicsProblem< DIM, ELEC_PROB_DIM >::WriteWatchedLocationData (double time, Vec voltage)
Improve efficiency of this method?
Member CellCycleModelOdeSolver< CELL_CYCLE_MODEL, ODE_SOLVER >::Reset ()
Consider whether Reset() could be moved to the abstract class
Member CellMutationStatesWriter< ELEMENT_DIM, SPACE_DIM >::VisitCell (CellPtr pCell, AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > *pCellPopulation)
split these all off as cell label not mutation states (see #2534)
Member CellPopulationAdjacencyMatrixWriter< ELEMENT_DIM, SPACE_DIM >::Visit (MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM > *pCellPopulation)
#2645 - if efficiency is an issue, check if this is really needed
Member CellPopulationAdjacencyMatrixWriter< ELEMENT_DIM, SPACE_DIM >::VisitAnyPopulation (AbstractCellPopulation< SPACE_DIM, SPACE_DIM > *pCellPopulation)
#2645 - if efficiency is an issue, check if this is really needed
Member CellProperties::CalculateProperties ()
#1495 a horrible magic number but seems to work OK.
Class CellwiseSourceEllipticPde< DIM >
make member names and methods consistent with those of CellwiseSourceParabolicPde
Member CHASTE_CAN_CHECKPOINT_DLLS
#2417 Mac OS X doesn't appear to be able to checkpoint dynamically loaded models, so that functionality is switched off here.
Member CmguiMeshWriter< ELEMENT_DIM, SPACE_DIM >::WriteFiles ()
: EXCEPTION maybe...
Member ColumnDataReader::mVariablesToColumns
Change int to unsigned? (#991)
Member CompressibleExponentialLaw< DIM >::ComputeStressAndStressDerivative (c_matrix< double, DIM, DIM > &rC, c_matrix< double, DIM, DIM > &rInvC, double pressure, c_matrix< double, DIM, DIM > &rT, FourthOrderTensor< DIM, DIM, DIM, DIM > &rDTdE, bool computeDTdE)
#2193 This line is to trap for large deformations which lead to blow up in the exponential Uysk model
Member CryptSimulationBoundaryCondition< DIM >::OutputCellPopulationBoundaryConditionParameters (out_stream &rParamsFile)
Can we abstract these XML out methods and do automatic indentation?
Member CylindricalHoneycombVertexMeshGenerator::CylindricalHoneycombVertexMeshGenerator (unsigned numElementsAcross, unsigned numElementsUp, bool isFlatBottom=false, double cellRearrangementThreshold=0.01, double t2Threshold=0.001)
This should be an exception (#2401)
Member DeltaNotchInteriorOdeSystem::DeltaNotchInteriorOdeSystem (std::vector< double > stateVariables=std::vector< double >())
extract model parameters as member variables
Member DeltaNotchOdeSystem::DeltaNotchOdeSystem (std::vector< double > stateVariables=std::vector< double >())
extract model parameters as member variables
Member DeltaNotchSrnModel::SimulateToCurrentTime ()
#2752 say what it does in this class
Member DeltaNotchSrnModel::UpdateDeltaNotch ()
#2752 Improve the name of this method!
Class DifferentialAdhesionGeneralisedLinearSpringForce< ELEMENT_DIM, SPACE_DIM >

#2266 - throw exceptions if using other cell population objects?

#2266 - override CalculateForceBetweenNodes() to use a default rest length of 1.0 for all springs?

Member DifferentialAdhesionPottsUpdateRule< DIM >::mLabelledCellBoundaryAdhesionEnergyParameter
provide units
Member DifferentialAdhesionPottsUpdateRule< DIM >::mLabelledCellCellAdhesionEnergyParameter
provide units
Member DifferentialAdhesionPottsUpdateRule< DIM >::mLabelledCellLabelledCellAdhesionEnergyParameter
provide units
Member DiffusionCaUpdateRule< DIM >::mDiffusionParameter
provide units
Member DistanceMapCalculator< ELEMENT_DIM, SPACE_DIM >::SingleDistance (unsigned sourceNodeIndex, unsigned destinationNodeIndex)
#1414 premature termination when we find the correct one (parallel)
Member DistributedBoxCollection< DIM >::CalculateGlobalIndex (c_vector< unsigned, DIM > gridIndices)
#2308 etc. We need to make allowance for periodicity here...
Member DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::CalculateMinMaxEdgeLengths ()
Should be const
Member DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ComputeMeshPartitioning (AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > &rMeshReader, std::set< unsigned > &rNodesOwned, std::set< unsigned > &rHaloNodesOwned, std::set< unsigned > &rElementsOwned, std::vector< unsigned > &rProcessorsOffset)
#1293 add a timing event for the partitioning
Member DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructCuboid (unsigned width, unsigned height, unsigned depth)
probably faster to make mesh from scratch.
Member DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader (AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > &rMeshReader)

#1289 assert the node is not considered both owned and halo-owned.

#1930 We should use a reader set iterator for this bit now.

#1730 and we should be able to combine ASCII branch

#1930 We should use a reader set iterator for this bit now.

Member DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructLinearMesh (unsigned width)
probably faster to make mesh from scratch.
Member DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructRectangularMesh (unsigned width, unsigned height, bool stagger=true)
probably faster to make mesh from scratch.
Member DistributedTetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::HaloNodeIterator
#1494, this iterator needs to be dereferenced twice because it is an STL iterator to a pointer.
Member DivisionBiasTrackingModifier< DIM >::UpdateCellData (AbstractCellPopulation< DIM, DIM > &rCellPopulation)
work out how to properly fix this (#1986)
Member DynamicModelLoaderRegistry::GetLoader (const std::string &rPath)

#1957 remove when unloading working

#1957 causes segfaults

Member Electrodes< DIM >::SwitchOff (double time)
remove magic number? (#1884)
Member Electrodes< DIM >::SwitchOn (double time)
remove magic number? (#1884)
Member Element< ELEMENT_DIM, SPACE_DIM >::CalculateXi (const ChastePoint< SPACE_DIM > &rTestPoint)

#1326 This method shouldn't need a new Jacobian inverse for every Xi

: #1361 ComputeContainingElements and related methods, and methods called by that down to here, should really take in const c_vector& rather than ChastePoints.

Member ElementAttributes< ELEMENT_DIM, SPACE_DIM >::GetFirstAttribute ()

#2739 This should throw an exception if there are no attributes

#2739 This should throw: EXCEPTION("Attempting to get element attribute when there are none defined");

Member EllipticBoxDomainPdeModifier< DIM >::ConstructBoundaryConditionsContainer (AbstractCellPopulation< DIM, DIM > &rCellPopulation)
Replace this assertion with an exception in the constructor
Member EllipticBoxDomainPdeModifier< DIM >::UpdateAtEndOfTimeStep (AbstractCellPopulation< DIM, DIM > &rCellPopulation)

Use solution at previous time step as an initial guess for Solve()

allow other PDE classes to be used with this modifier

Member ExponentialMaterialLaw< DIM >::Get_d2W_dI1 (double I1, double I2)
The name of this method should not include underscores.
Member ExponentialMaterialLaw< DIM >::Get_d2W_dI1I2 (double I1, double I2)
The name of this method should not include underscores.
Member ExponentialMaterialLaw< DIM >::Get_d2W_dI2 (double I1, double I2)
The name of this method should not include underscores.
Member ExponentialMaterialLaw< DIM >::Get_dW_dI1 (double I1, double I2)
The name of this method should not include underscores.
Member ExponentialMaterialLaw< DIM >::Get_dW_dI2 (double I1, double I2)
The name of this method should not include underscores.
Member ExtendedBidomainProblem< DIM >::SetFixedExtracellularPotentialNodes (std::vector< unsigned > nodes)
turn this into an exception if the user calls this twice...
Member ExtendedBidomainProblem< DIM >::WriteOneStep (double time, Vec voltageVec)

write a specific method for this class

write a specific method for extended problems that looks in both cell factories

Member ExtendedBidomainSolver< ELEM_DIM, SPACE_DIM >::SetupLinearSystem (Vec currentSolution, bool computeMatrix)
turn these into exceptions somewhere else
Member FarhadifarForce< DIM >::AddForceContribution (AbstractCellPopulation< DIM > &rCellPopulation)
: check whether this line influences profiling tests - if so, we should remove it.
Member FineCoarseMeshPair< DIM >::ComputeCoarseElementForGivenPoint (ChastePoint< DIM > &rPoint, bool safeMode, unsigned boxForThisPoint)
: could possibly merge with ComputeFineElementAndWeightForGivenPoint(). Differences between the methods are: the other method uses fine mesh and fine mesh box, computes weights as well (and sets the element and weight in the vec), rather than returning the element, and that method saves information in mStatisticsCounters.
Member FineCoarseMeshPair< DIM >::ComputeFineElementAndWeightForGivenPoint (ChastePoint< DIM > &rPoint, bool safeMode, unsigned boxForThisPoint, unsigned index)
: could possibly merge with ComputeCoarseElementForGivenPoint(). Difference between the methods are: this uses fine mesh and fine mesh box, computes weights as well (and sets the element and weight in the vec), rather than returning the element, and this method saves information in mStatisticsCounters.
Member for (i=STARTINDEX;i< argc;i++)

Store orientations? (#1076/#1377)

Horrible hack! (#1076/#1377)

Member Goldbeter1991OdeSystem::Goldbeter1991OdeSystem (std::vector< double > stateVariables=std::vector< double >())
extract model parameters as member variables
Class Goldbeter1991SrnModel
#2752 give reference for this ODE system
Member Goldbeter1991SrnModel::SimulateToCurrentTime ()
#2752 say what it does in this class
Class Hdf5DataReader
Add to documentation whether we can call this in serial/parallel, whether we can call it when file is open already etc...
Member Hdf5DataWriter::Hdf5DataWriter (DistributedVectorFactory &rVectorFactory, const std::string &rDirectory, const std::string &rBaseName, bool cleanDirectory=true, bool extendData=false, std::string datasetName="Data", bool useCache=false)
1300 We can't set mDataFixedDimensionSize, because the information isn't in the input file. This means that checking the size of input vectors in PutVector and PutStripedVector is impossible.
Member Hdf5ToCmguiConverter< ELEMENT_DIM, SPACE_DIM >::Hdf5ToCmguiConverter (const FileFinder &rInputDirectory, const std::string &rFileBaseName, AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > *pMesh, bool hasBath=false, unsigned precision=0u)

#1660 at present this converter is hardcoded to work with "Data" using the below statement

What if the mesh has been scaled, translated or rotated?

Member Hdf5ToMeshalyzerConverter< ELEMENT_DIM, SPACE_DIM >::Hdf5ToMeshalyzerConverter (const FileFinder &rInputDirectory, const std::string &rFileBaseName, AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > *pMesh, bool usingOriginalNodeOrdering, unsigned precision=0)
What if the mesh has been scaled, translated or rotated?
Member Hdf5ToVtkConverter< ELEMENT_DIM, SPACE_DIM >::Hdf5ToVtkConverter (const FileFinder &rInputDirectory, const std::string &rFileBaseName, AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > *pMesh, bool parallelVtk, bool usingOriginalNodeOrdering)
What if the mesh has been scaled, translated or rotated?
Member Hdf5ToXdmfConverter< ELEMENT_DIM, SPACE_DIM >::AddDataOnNodes (XERCES_CPP_NAMESPACE_QUALIFIER DOMElement *pGridElement, XERCES_CPP_NAMESPACE_QUALIFIER DOMDocument *pDomDocument, unsigned timeStep)
#1157 Make this work in parallel
Member HeartConfig::GetCellHeterogeneities (std::vector< boost::shared_ptr< AbstractChasteRegion< DIM > > > &rCellHeterogeneityRegions, std::vector< double > &rScaleFactorGks, std::vector< double > &rScaleFactorIto, std::vector< double > &rScaleFactorGkr, std::vector< std::map< std::string, double > > *pParameterSettings)

- do we assume the vectors are initially empty?

There is no set method

Member HeartConfig::GetConductivityHeterogeneities (std::vector< boost::shared_ptr< AbstractChasteRegion< DIM > > > &conductivitiesHeterogeneityAreas, std::vector< c_vector< double, 3 > > &intraConductivities, std::vector< c_vector< double, 3 > > &extraConductivities) const

- do we assume the vectors are initially empty?

When this is implemented, then we require an example in ChasteParametersFullFormat.xml

Member HeartConfig::GetIonicModelRegions (std::vector< boost::shared_ptr< AbstractChasteRegion< DIM > > > &rDefinedRegions, std::vector< cp::ionic_model_selection_type > &rIonicModels) const
When this is implemented, then we require an example in ChasteParametersFullFormat.xml
Member HeartConfig::GetStimuli (std::vector< boost::shared_ptr< AbstractStimulusFunction > > &rStimuliApplied, std::vector< boost::shared_ptr< AbstractChasteRegion< DIM > > > &rStimulatedAreas) const

There is no set method

- do we assume the vectors are initially empty?

Member HeartConfig::HeartConfig ()
#1703 This defaults should be set in HeartConfigDefaults.hpp
Member HeartConfig::SetBathConductivity (double bathConductivity)
Is this used anywhere?
Member HeartConfig::SetBathMultipleConductivities (std::map< unsigned, double > bathConductivities)
: This implementation is temporary until we incorporate the bath heterogeneities to the XML schema
Member HeartConfig::SetMeshFileName (std::string meshPrefix, cp::media_type fibreDefinition=cp::media_type::NoFibreOrientation)
There is no Get method
Member HeartConfig::SetSurfaceAreaToVolumeRatio (double ratio)
#1703 Think about adding this convenience method either copying the existing BathIds, resetting them out of the way, or making them empty...
Member HeartGeometryInformation< SPACE_DIM >::LEFT_VENTRICLE_WALL
#1703 Perhaps add these constants to HeartConfig...
Member HeterotypicBoundaryLengthWriter< ELEMENT_DIM, SPACE_DIM >::Visit (MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM > *pCellPopulation)
#2273 - check if this call is needed
Member HeterotypicBoundaryLengthWriter< ELEMENT_DIM, SPACE_DIM >::Visit (VertexBasedCellPopulation< SPACE_DIM > *pCellPopulation)
#2273 - check if this call to Update() is needed
Member HeterotypicBoundaryLengthWriter< ELEMENT_DIM, SPACE_DIM >::Visit (MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM > *pCellPopulation)
#2273 - check we have correctly dealt with ghost nodes
Member HeterotypicBoundaryLengthWriter< ELEMENT_DIM, SPACE_DIM >::Visit (NodeBasedCellPopulation< SPACE_DIM > *pCellPopulation)
#2273 - check if this call to Update() is needed
Member HeterotypicBoundaryLengthWriter< ELEMENT_DIM, SPACE_DIM >::Visit (PottsBasedCellPopulation< SPACE_DIM > *pCellPopulation)
#2273 - investigate whether there is a hard-coded assumption that neighbouring nodes in Potts simulations are unit distance apart
Member ImmersedBoundaryCellPopulation< DIM >::GetCellDataItemAtPdeNode (unsigned pdeNodeIndex, std::string &rVariableName, bool dirichletBoundaryConditionApplies=false, double dirichletBoundaryValue=0.0)
Work out a better way to do the nodes not associated with cells
Member ImmersedBoundaryMeshWriter< ELEMENT_DIM, SPACE_DIM >::mpVtkUnstructedMesh
Merge into VtkMeshWriter (#1076)
Member IncompressibleNonlinearElasticitySolver< DIM >::FormInitialGuess ()
#2223 This is unlikely to work using DistributedQuadraticMesh with Non-homogeneous material laws
Member LegacyCellProliferativeTypesWriter< ELEMENT_DIM, SPACE_DIM >::GetCellDataForVtkOutput (CellPtr pCell, AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > *pCellPopulation)
: replace this hard-coded 6 with the ApoptoticCellProperty member mColour?
Member LegacyCellProliferativeTypesWriter< ELEMENT_DIM, SPACE_DIM >::VisitCell (CellPtr pCell, AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM > *pCellPopulation)
: replace this hard-coded 6 with the ApoptoticCellProperty member mColour? (#2512)
Member LinearSystem::LinearSystem (Vec residualVector, Mat jacobianMatrix)
: if we create a linear system object outside a cardiac solver, these are gonna be the default solver and preconditioner. Not consitent with ChasteDefaults.xml though...
Member LinearSystem::LinearSystem (Vec templateVector, unsigned rowPreallocation, bool newAllocationError=true)
: if we create a linear system object outside a cardiac solver, these are gonna be the default solver and preconditioner. Not consistent with ChasteDefaults.xml though...
Member LinearSystem::LinearSystem (PetscInt lhsVectorSize, unsigned rowPreallocation=UINT_MAX)
: if we create a linear system object outside a cardiac solver, these are gonna be the default solver and preconditioner. Not consitent with ChasteDefaults.xml though...
Member LinearSystem::mOwnershipRangeLo
Verify claim that ownership range for Vec and Mat is same. This should only matter for efficiency if the claim is false.
Member LinearSystem::mpBlockDiagonalPC
: #1082 Create an abstract class for the preconditioners and use a single pointer
Member LinearSystem::ResetKspSolver ()
#1695 Store this number in a member variable.
Member LinearSystem::SetMatrixIsSymmetric (bool isSymmetric=true)
: shall we allow modifying the symmetry flag anytime?
Member LinearSystem::SetPcType (const char *pcType, boost::shared_ptr< std::vector< PetscInt > > pBathNodes=boost::shared_ptr< std::vector< PetscInt > >())

: #1082 is this the way of defining a null pointer as the default value of pBathNodes?

: #1082 use a single pointer to abstract class

: #1082 use a single pointer to abstract class

: #1082 use a single pointer to abstract class

Member LinearSystem::Solve (Vec lhsGuess=nullptr)

#1695 Store this number in a member variable.

Should it be compulsory for the caller to supply this and manage the memory?

This is a magic number. Do we want a warning here?

Member LinearSystem::~LinearSystem ()
Never tested in linalg component
Member MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetVolumeOfVoronoiElement (unsigned index)
This method is somewhat redundant following the introduction of the method GetVolumeOfCell() (see #1985).
Member MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM >::Update (bool hasHadBirthsOrDeaths=true)

There may be a better way of checking if node radii are set (#2694)

check if there is a more efficient way of keeping track of node velocity information (#2404)

Member MeshBasedCellPopulationWithGhostNodes< DIM >::WriteVtkResultsToFile (const std::string &rDirectory)

#1975 - deal with possibility of information stored in CellData

#1975 - deal with possibility of information stored in CellData

Class MeshEventHandler
Temporary for #2351
Member MonodomainPurkinjeProblem< ELEMENT_DIM, SPACE_DIM >::CreateSolver ()
#2017 give a nice error
Member MonodomainPurkinjeProblem< ELEMENT_DIM, SPACE_DIM >::serialize (Archive &archive, const unsigned int version)
Serialization of Purkinje problems is untested
Member MooneyRivlinMaterialLaw< DIM >::Get_d2W_dI1 (double I1, double I2)
The name of this method should not include underscores.
Member MooneyRivlinMaterialLaw< DIM >::Get_d2W_dI1I2 (double I1, double I2)
The name of this method should not include underscores.
Member MooneyRivlinMaterialLaw< DIM >::Get_d2W_dI2 (double I1, double I2)
The name of this method should not include underscores.
Member MooneyRivlinMaterialLaw< DIM >::Get_dW_dI1 (double I1, double I2)
The name of this method should not include underscores.
Member MooneyRivlinMaterialLaw< DIM >::Get_dW_dI2 (double I1, double I2)
The name of this method should not include underscores.
Member MutableMesh< ELEMENT_DIM, SPACE_DIM >::CheckIsVoronoi (double maxPenetration=0.0)
use ElementIterator here?
Member MutableMesh< ELEMENT_DIM, SPACE_DIM >::RescaleMeshFromBoundaryNode (ChastePoint< 1 > updatedPoint, unsigned boundaryNodeIndex)
should unsigned GetNumBoundaryNodes() be overloaded too??
Member MutableMesh< ELEMENT_DIM, SPACE_DIM >::SplitLongEdges (double cutoffLength)
use iterators to tidy this up
Member MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::CheckForSwapsFromShortEdges ()

Could we search more efficiently by just iterating over edges? (see #2401)

Use iterators to tidy this up (see #2401)

Member MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::CheckForT2Swaps (VertexElementMap &rElementMap)
: cover this line in a test
Member MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::DivideElement (VertexElement< ELEMENT_DIM, SPACE_DIM > *pElement, unsigned nodeAIndex, unsigned nodeBIndex, bool placeOriginalElementBelow=false)

this could be more efficient (see #2401)

This method currently assumes SPACE_DIM = 2 (see #866)

Member MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::DivideElementAlongGivenAxis (VertexElement< ELEMENT_DIM, SPACE_DIM > *pElement, c_vector< double, SPACE_DIM > axisOfDivision, bool placeOriginalElementBelow=false)
or should we move a and b apart, it may interfere with neighbouring edges? (see #1399 and #2401)
Member MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::IdentifySwapType (Node< SPACE_DIM > *pNodeA, Node< SPACE_DIM > *pNodeB)
: consider removing the checking for this exception (see #2401)
Member MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT1Swap (Node< SPACE_DIM > *pNodeA, Node< SPACE_DIM > *pNodeB, std::set< unsigned > &rElementsContainingNodes)
remove magic number? (see #1884 and #2401)
Member MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::PerformT3Swap (Node< SPACE_DIM > *pNode, unsigned elementIndex)
the intersection location is sometimes overwritten when WidenEdgeOrCorrectIntersectionLocationIfNecessary
Member MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::ReMesh ()
This method seems to be redundant; remove it? (#2401)
Member MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::ReMesh (VertexElementMap &rElementMap)
Implement ReMesh() in 3D (see #1422)
Member MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::serialize (Archive &archive, const unsigned int version)
: maybe we should archive the mLocationsOfT1Swaps and mDeletedNodeIndices etc. as well?
Member MutableVertexMesh< ELEMENT_DIM, SPACE_DIM >::WidenEdgeOrCorrectIntersectionLocationIfNecessary (unsigned indexA, unsigned indexB, c_vector< double, 2 > intersection)

investigate if moving A and B causes other issues with nearby nodes (see #2401)

currently this assumes a worst case scenario of 3 nodes between A and B could be less movement for other cases (see #1399 and #2401)

currently this assumes a worst case scenario of 3 nodes between A and B; could be less movement for other cases (see #2401)

Member NodeBasedCellPopulation< DIM >::UpdateMapsAfterRemesh (NodeMap &map)
we want to make mCellLocationMap private - we need to find a better way of doing this
Member NodePartitioner< ELEMENT_DIM, SPACE_DIM >::PetscMatrixPartitioning (AbstractMeshReader< ELEMENT_DIM, SPACE_DIM > &rMeshReader, std::vector< unsigned > &rNodePermutation, std::set< unsigned > &rNodesOwned, std::vector< unsigned > &rProcessorsOffset)

#1216 change the number 54 below (row nonzero allocation) to be nonmagic

: This assembly is likely to generate many communications. Try to interleave other operations by executing them between Begin() and End().

Class NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >
some code duplication in methods; potential for refactoring (#2404)
Member NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::Visit (VertexBasedCellPopulation< SPACE_DIM > *pCellPopulation)
correct time step? (#2404)
Member NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::Visit (NodeBasedCellPopulation< SPACE_DIM > *pCellPopulation)
correct time step? (#2404)
Member NodeVelocityWriter< ELEMENT_DIM, SPACE_DIM >::Visit (MeshBasedCellPopulation< ELEMENT_DIM, SPACE_DIM > *pCellPopulation)
correct time step? (#2404)
Member NormallyDistributedTargetAreaModifier< DIM >::UpdateTargetAreaOfCell (const CellPtr pCell)
This is a little hack that we might want to clean up in the future.
Member ObsoleteBoxCollection< DIM >::ObsoleteBoxCollection (double boxWidth, c_vector< double, 2 *DIM > domainSize, bool isPeriodicInX=false, bool isPeriodicInY=false, bool isPeriodicInZ=false)
#2725 example: domain width of 1.0 and box width of 0.25, the following line will create 5 boxes not 4
Member OdeSystemInformation< ODE_SYSTEM >::mpInstance
see if using weak_ptr would work and give funkier semantics (automatically destroy the singleton when no ODE systems were using it)
Member OffLatticeRandomFieldGenerator< SPACE_DIM >::OffLatticeRandomFieldGenerator (std::array< double, SPACE_DIM > lowerCorner, std::array< double, SPACE_DIM > upperCorner, std::array< bool, SPACE_DIM > periodicity, double lengthScale, double boxWidth=DOUBLE_UNSET)
: Obsolete box collection should take a std::array<bool, DIM>
Member OffLatticeSimulation< ELEMENT_DIM, SPACE_DIM >::UpdateCellLocationsAndTopology ()
#2087 Make this a settable member variable
Struct pack< void(T)>
Check if we need this on Boost>=1.38. Even if it's not needed there, we might still need it to load earlier archives.
Member ParabolicBoxDomainPdeModifier< DIM >::UpdateAtEndOfTimeStep (AbstractCellPopulation< DIM, DIM > &rCellPopulation)
Investigate more than one PDE time step per spatial step
Member ParabolicGrowingDomainPdeModifier< DIM >::UpdateAtEndOfTimeStep (AbstractCellPopulation< DIM, DIM > &rCellPopulation)
Investigate more than one PDE time step per spatial step
Member ParallelColumnDataWriter::PutVectorStripe (int variableId, DistributedVector::Stripe &rStripe)
allow this to be a const-reference
Member PCLDUFactorisation::PCLDUFactorisationContext::PC_amg_A11
- don't create this every iteration but save it first time is needed.
Member PCLDUFactorisation::PCLDUFactorisationContext::PC_amg_A22
- don't create this every iteration but save it first time is needed.
Class PCTwoLevelsBlockDiagonal
: #1082 update this description
Member PCTwoLevelsBlockDiagonal::PCTwoLevelsBlockDiagonalCreate (KSP &rKspObject, std::vector< PetscInt > &rBathNodes)

: #1082 assert size(x1) = size(x21) + size(x22)

: #1082 OK in parallel. Use as an example for the other two blocks

: #1082 won't work in parallel

: #1082 legacy, no need to use the references

: #1082 won't work in parallel

Class PdeSimulationTime
Integrate with other time stepping classes or remove? A small convenience class providing a consistent global time to the PDE solver classes.
Member PetscTools::ReadPetscObject (Mat &rMat, const std::string &rOutputFileFullPath, Vec rParallelLayout=nullptr)
: #1082 work out appropriate nz allocation.
Member PlaneBoundaryCondition< ELEMENT_DIM, SPACE_DIM >::ImposeBoundaryCondition (const std::map< Node< SPACE_DIM > *, c_vector< double, SPACE_DIM > > &rOldLocations)
Move this to constructor. If this is in the constructor then Exception always throws.
Member PlaneStimulusCellFactory< CELL, ELEMENT_DIM, SPACE_DIM >::CreateCardiacCellForTissueNode (Node< SPACE_DIM > *pNode)
remove magic number? (#1884)
Member PolynomialMaterialLaw3d::Get_d2W_dI1 (double I1, double I2)
The name of this method should not include underscores.
Member PolynomialMaterialLaw3d::Get_d2W_dI1I2 (double I1, double I2)
The name of this method should not include underscores.
Member PolynomialMaterialLaw3d::Get_d2W_dI2 (double I1, double I2)
The name of this method should not include underscores.
Member PolynomialMaterialLaw3d::Get_dW_dI1 (double I1, double I2)
The name of this method should not include underscores.
Member PolynomialMaterialLaw3d::Get_dW_dI2 (double I1, double I2)
The name of this method should not include underscores.
Member PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WriteAboveThresholdDepolarisationFile (double threshold)
This method ought to be private and called by the WritePostProcessingFiles method if the user requests for it. This will be possible after modifying the schema and specifying Get and Set methods in HeartConfig to check whether the user wants this file or not
Member PostProcessingWriter< ELEMENT_DIM, SPACE_DIM >::WritePostProcessingFiles ()

#2359 work out how to get rid of this line needed because PseudoEcgCalculator makes its own Hdf5DataReader.

#2359 work out how to get rid of these lines

Member PottsBasedCellPopulation< DIM >::CreateElementTessellation ()
implement this method (#1666)
Member PottsBasedCellPopulation< DIM >::UpdateCellLocations (double dt)
If this causes the element to have no nodes then flag the element and cell to be deleted
Member PottsMesh< DIM >::DivideElement (PottsElement< DIM > *pElement, bool placeOriginalElementBelow=false)
this could be more efficient
Member PottsMesh< DIM >::GetCentroidOfElement (unsigned index)
This should probably be returning the nearest node
Member PottsMesh< DIM >::GetSurfaceAreaOfElement (unsigned index)
not implemented in 3d yet
Class PottsMesh< DIM >::PottsElementIterator
This is the same as in AbstractTetrahedralMesh and VertexMesh- merge? (#1379)
Member PottsMeshReader< SPACE_DIM >::GetNextFaceData ()
Implement this method (#1663, #1377)
Member PottsMeshReader< SPACE_DIM >::GetNumFaces () const
Implement this method (#1663)
Member PottsMeshWriter< SPACE_DIM >::WriteFilesUsingMesh (PottsMesh< SPACE_DIM > &rMesh)

Mesh should be const (#1076)

Mesh should be const (#1663)

Member PropagationPropertiesCalculator::CalculateAllConductionVelocities (unsigned globalNearNodeIndex, unsigned globalFarNodeIndex, const double euclideanDistance)
remove magic number? (#1884)
Member PropagationPropertiesCalculator::CalculateConductionVelocity (unsigned globalNearNodeIndex, unsigned globalFarNodeIndex, const double euclideanDistance)
remove magic number? (#1884)
Member QuadraticMeshHelper< DIM >::AddNodesToBoundaryElements (AbstractTetrahedralMesh< DIM, DIM > *pMesh, AbstractMeshReader< DIM, DIM > *pMeshReader)

#1930 Once there is an interator_facade then we can do: elem_index = pMeshReader->GetFaceData(face_index).ContainingElement;

#1930 Until there is an interator_facade over boundary elements,

Member QuadraticMeshHelper< DIM >::HelperMethod1 (unsigned boundaryElemNode0, unsigned boundaryElemNode1, Element< DIM, DIM > *pElement, unsigned node0, unsigned node1, unsigned node2, unsigned &rOffset, bool &rReverse)
document these parameters
Member QuadraticMeshHelper< DIM >::HelperMethod2 (AbstractTetrahedralMesh< DIM, DIM > *pMesh, BoundaryElement< DIM-1, DIM > *pBoundaryElement, Element< DIM, DIM > *pElement, unsigned internalNode0, unsigned internalNode1, unsigned internalNode2, unsigned offset, bool reverse)
document these parameters
Member RandomCaSwitchingUpdateRule< DIM >::mSwitchingParameter
provide units
Member SimpleTargetAreaModifier< DIM >::UpdateTargetAreaOfCell (const CellPtr pCell)
This is a little hack that we might want to clean up in the future.
Member SlidingBoundaryCondition< DIM >::ImposeBoundaryCondition (const std::map< Node< DIM > *, c_vector< double, DIM > > &rOldLocations)
Move this to constructor. If this is in the constructor then Exception always throws.
Member StressPerElementWriter< DIM >::Visit (Element< DIM, DIM > *pElement, unsigned localIndex, c_vector< double, DIM *DIM > &rData)
#2223 Note that the localIndex is intended for DistributedQuadraticMesh, but we might need a map instead. For now, make sure that it's not a distributed mesh i.e. GetNumLocalElements == GetNumElements and the indexing is always global
Member SurfaceAreaConstraintPottsUpdateRule< DIM >::mDeformationEnergyParameter
provide units
Member SurfaceAreaConstraintPottsUpdateRule< DIM >::mMatureCellTargetSurfaceArea
provide units #1829 Non-dimensional target surface area of a mature (fully-grown) cell, given in units of area of lattice site. Set to the default value 16 in the constructor.
Member SurfaceAreaConstraintPottsUpdateRule< DIM >::SurfaceAreaConstraintPottsUpdateRule ()
Default values don't apply in 3D.
Member TargetAreaLinearGrowthModifier< DIM >::UpdateTargetAreaOfCell (const CellPtr pCell)

This is a little hack that we might want to clean up in the future.

: which cells are apoptotic? if they get apoptotic during G2-phase then this line has to be changed

Member TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ImportFromMesher (MESHER_IO &mesherOutput, unsigned numberOfElements, int *elementList, unsigned numberOfFaces, int *faceList, int *edgeMarkerList)
#1545: (or add arguments ...)
Member ToroidalHoneycombVertexMeshGenerator::ToroidalHoneycombVertexMeshGenerator (unsigned numElementsAcross, unsigned numElementsUp, double cellRearrangementThreshold=0.01, double t2Threshold=0.001)

This should be an exception

This should be an exception

Member TrapezoidEdgeVertexMeshWriter< ELEMENT_DIM, SPACE_DIM >::mpVtkUnstructedMesh
Merge into VtkMeshWriter (#1076)
Member TrianglesMeshReader< ELEMENT_DIM, SPACE_DIM >::OpenNodeFile ()
Change name to OpenNodesFile for consistency with OpenElementsFile and OpenFacesFile? (#991)
Member TrianglesMeshReader< ELEMENT_DIM, SPACE_DIM >::SetNodePermutation (std::vector< unsigned > &rPermutationVector)
#2452 We need a way of propagating this back to the mesh (and insuring that the mesh is NOT being re-partitioned)
Member TrianglesMeshWriter< ELEMENT_DIM, SPACE_DIM >::WriteFiles ()

#1949 Will deadlock on GetNode(global ID) in parallel since this code is run on the master process

#1949

#1949

#1949 Readers do not currently support reading of node attributes, so we cannot yet write them from a reader

#1949

#1949 Readers do not currently support reading of node attributes, so we cannot yet write them from a reader

Member VertexBasedCellPopulation< DIM >::GetCellDataItemAtPdeNode (unsigned pdeNodeIndex, std::string &rVariableName, bool dirichletBoundaryConditionApplies=false, double dirichletBoundaryValue=0.0)
Work out a better way to do the nodes not associated with cells
Member VertexBasedCellPopulation< DIM >::GetTetrahedralMeshForPdeModifier ()
will the nodes in mpMutableVertexMesh always have indices 0,1,2,...? (#2221)
Member VertexBasedCellPopulation< DIM >::RemoveDeadCells ()
(#2489) this should cause an error - we should fix this!
Member VertexBasedCellPopulation< DIM >::Update (bool hasHadBirthsOrDeaths=true)
We want to make these maps private, so we need a better way of doing the code below.
Member VertexMesh< ELEMENT_DIM, SPACE_DIM >::ElementIncludesPoint (const c_vector< double, SPACE_DIM > &rTestPoint, unsigned elementIndex)
(see #2387 and #2401) Investigate why the commented implementation causes Test2DVertexBasedCryptRepresentativeSimulation to fail
Member VertexMesh< ELEMENT_DIM, SPACE_DIM >::GetCentroidOfElement (unsigned index)
compute centroid rather than centre of mass (see #1422)
Member VertexMesh< ELEMENT_DIM, SPACE_DIM >::SolveBoundaryElementMapping (unsigned index) const
sort out boundary elements in a vertex mesh (#1263)
Class VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexElementIterator
This is the same as in AbstractTetrahedralMesh and PottsMesh - merge? (#1379)
Member VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexMesh (TetrahedralMesh< 3, 3 > &rMesh)
Merge with 2D Voronoi constructor? (see #1075)
Member VertexMesh< ELEMENT_DIM, SPACE_DIM >::VertexMesh (TetrahedralMesh< 2, 2 > &rMesh, bool isPeriodic=false, bool isBounded=false)
Merge with 3D Voronoi constructor? (see #1075)
Member VertexMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextElementDataWithFaces ()
Store face orientations? (#1076/#1377)
Member VertexMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextFaceData ()
Implement this method (#1076, #1377)
Member VertexMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumEdges () const
Implement this method (#1076)
Member VertexMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumFaces () const
Implement this method (#1076)
Member VertexMeshWriter< ELEMENT_DIM, SPACE_DIM >::GetNextElement ()
Assert this method should only be called in 2D? (#1076/#1377)
Member VertexMeshWriter< ELEMENT_DIM, SPACE_DIM >::GetNextElementWithFaces ()
Store face orientations? (#1076/#1377)
Member VertexMeshWriter< ELEMENT_DIM, SPACE_DIM >::mpVtkUnstructedMesh
Merge into VtkMeshWriter (#1076)
Member VertexMeshWriter< ELEMENT_DIM, SPACE_DIM >::WriteFiles ()
Store face orientations? (#1076/#1377)
Member VertexMeshWriter< ELEMENT_DIM, SPACE_DIM >::WriteFilesUsingMesh (VertexMesh< ELEMENT_DIM, SPACE_DIM > &rMesh)

Mesh should be const (#1076)

Mesh should be const (#1076)

Member VolumeConstraintPottsUpdateRule< DIM >::mDeformationEnergyParameter
provide units
Member VolumeConstraintPottsUpdateRule< DIM >::VolumeConstraintPottsUpdateRule ()
Default values don't apply in 3D.
Class VolumeDependentAveragedSourceEllipticPde< DIM >
Consider creating a VolumeDependentAveragedSourceParabolicPde class
Member VolumeTrackingModifier< DIM >::UpdateCellData (AbstractCellPopulation< DIM, DIM > &rCellPopulation)
work out how to properly fix this (#1986)
Member VtkMeshWriter< ELEMENT_DIM, SPACE_DIM >::MakeVtkMesh ()
#2351 Temporary workaround for parallel writer
Member VtkMeshWriter< ELEMENT_DIM, SPACE_DIM >::WriteFilesUsingMesh (AbstractTetrahedralMesh< ELEMENT_DIM, SPACE_DIM > &rMesh, bool keepOriginalElementIndexing=true)

#1322 Mesh should really be const!

#1494 Do we need a barrier?

This ought to look exactly like the other MakeVtkMesh

#1322 Mesh should be const