#include <LengthConstraintPlugin.h>


Public Types | |
| typedef void(LengthConstraintPlugin::* | field3DChangeFcnPtr_t )(const Point3D &pt, CellG *newCell, CellG *oldCell) |
| typedef double(LengthConstraintPlugin::* | changeEnergyFcnPtr_t )(const Point3D &pt, const CellG *newCell, const CellG *oldCell) |
Public Member Functions | |
| LengthConstraintPlugin () | |
| virtual | ~LengthConstraintPlugin () |
| virtual void | field3DChange (const Point3D &pt, CellG *newCell, CellG *oldCell) |
| CellChangeWatcher interface. | |
| void | field3DChange_xy (const Point3D &pt, CellG *newCell, CellG *oldCell) |
| void | field3DChange_xz (const Point3D &pt, CellG *newCell, CellG *oldCell) |
| void | field3DChange_yz (const Point3D &pt, CellG *newCell, CellG *oldCell) |
| virtual void | init (Simulator *simulator, CC3DXMLElement *_xmlData=0) |
| virtual void | extraInit (Simulator *simulator) |
| virtual std::string | toString () |
| virtual double | changeEnergy (const Point3D &pt, const CellG *newCell, const CellG *oldCell) |
| double | changeEnergy_xz (const Point3D &pt, const CellG *newCell, const CellG *oldCell) |
| double | changeEnergy_xy (const Point3D &pt, const CellG *newCell, const CellG *oldCell) |
| double | changeEnergy_yz (const Point3D &pt, const CellG *newCell, const CellG *oldCell) |
| void | initTypeId (Potts3D *potts) |
| virtual void | update (CC3DXMLElement *_xmlData, bool _fullInitFlag=false) |
| virtual std::string | steerableName () |
Public Attributes | |
| field3DChangeFcnPtr_t | field3DChangeFcnPtr |
| changeEnergyFcnPtr_t | changeEnergyFcnPtr |
Private Attributes | |
| CC3DXMLElement * | xmlData |
| Potts3D * | potts |
| std::vector< LengthEnergyParam > | lengthEnergyParamVector |
| std::vector< std::string > | typeNameVec |
Definition at line 59 of file LengthConstraintPlugin.h.
| typedef void(LengthConstraintPlugin::* CompuCell3D::LengthConstraintPlugin::field3DChangeFcnPtr_t)(const Point3D &pt, CellG *newCell, CellG *oldCell) |
| typedef double(LengthConstraintPlugin::* CompuCell3D::LengthConstraintPlugin::changeEnergyFcnPtr_t)(const Point3D &pt, const CellG *newCell, const CellG *oldCell) |
| LengthConstraintPlugin::LengthConstraintPlugin | ( | ) |
Definition at line 42 of file LengthConstraintPlugin.cpp.
| LengthConstraintPlugin::~LengthConstraintPlugin | ( | ) | [virtual] |
Definition at line 45 of file LengthConstraintPlugin.cpp.
| void LengthConstraintPlugin::field3DChange | ( | const Point3D & | pt, | |
| CellG * | newCell, | |||
| CellG * | oldCell | |||
| ) | [virtual] |
CellChangeWatcher interface.
Definition at line 104 of file LengthConstraintPlugin.cpp.
References field3DChangeFcnPtr.
| void LengthConstraintPlugin::field3DChange_xy | ( | const Point3D & | pt, | |
| CellG * | newCell, | |||
| CellG * | oldCell | |||
| ) |
Definition at line 162 of file LengthConstraintPlugin.cpp.
References CompuCell3D::CellG::iXX, CompuCell3D::CellG::iXY, CompuCell3D::CellG::iYY, CompuCell3D::CellG::volume, CompuCell3D::Point3D::x, CompuCell3D::CellG::xCM, CompuCell3D::Point3D::y, and CompuCell3D::CellG::yCM.
Referenced by init().
| void LengthConstraintPlugin::field3DChange_xz | ( | const Point3D & | pt, | |
| CellG * | newCell, | |||
| CellG * | oldCell | |||
| ) |
Definition at line 112 of file LengthConstraintPlugin.cpp.
References CompuCell3D::CellG::iXX, CompuCell3D::CellG::iXZ, CompuCell3D::CellG::iZZ, CompuCell3D::CellG::volume, CompuCell3D::Point3D::x, CompuCell3D::CellG::xCM, CompuCell3D::Point3D::z, and CompuCell3D::CellG::zCM.
Referenced by init().
| void LengthConstraintPlugin::field3DChange_yz | ( | const Point3D & | pt, | |
| CellG * | newCell, | |||
| CellG * | oldCell | |||
| ) |
Definition at line 212 of file LengthConstraintPlugin.cpp.
References CompuCell3D::CellG::iYY, CompuCell3D::CellG::iYZ, CompuCell3D::CellG::iZZ, CompuCell3D::CellG::volume, CompuCell3D::Point3D::y, CompuCell3D::CellG::yCM, CompuCell3D::Point3D::z, and CompuCell3D::CellG::zCM.
Referenced by init().
| void LengthConstraintPlugin::init | ( | Simulator * | simulator, | |
| CC3DXMLElement * | _xmlData = 0 | |||
| ) | [virtual] |
Reimplemented from CompuCell3D::SimObject.
Definition at line 47 of file LengthConstraintPlugin.cpp.
References ASSERT_OR_THROW, changeEnergy_xy(), changeEnergy_xz(), changeEnergy_yz(), changeEnergyFcnPtr, field3DChange_xy(), field3DChange_xz(), field3DChange_yz(), field3DChangeFcnPtr, CompuCell3D::Potts3D::getCellFieldG(), CompuCell3D::Simulator::getPotts(), potts, CompuCell3D::Potts3D::registerCellGChangeWatcher(), CompuCell3D::Potts3D::registerEnergyFunctionWithName(), CompuCell3D::Simulator::registerSteerableObject(), CompuCell3D::Point3D::x, xmlData, CompuCell3D::Point3D::y, and CompuCell3D::Point3D::z.
| void LengthConstraintPlugin::extraInit | ( | Simulator * | simulator | ) | [virtual] |
Reimplemented from CompuCell3D::SimObject.
Definition at line 99 of file LengthConstraintPlugin.cpp.
| std::string LengthConstraintPlugin::toString | ( | ) | [virtual] |
Reimplemented from CompuCell3D::Plugin.
Definition at line 506 of file LengthConstraintPlugin.cpp.
Referenced by steerableName().
| double LengthConstraintPlugin::changeEnergy | ( | const Point3D & | pt, | |
| const CellG * | newCell, | |||
| const CellG * | oldCell | |||
| ) | [virtual] |
| pt | The point of change. | |
| newCell | The new spin. |
Reimplemented from CompuCell3D::EnergyFunction.
Definition at line 262 of file LengthConstraintPlugin.cpp.
References changeEnergyFcnPtr.
| double LengthConstraintPlugin::changeEnergy_xz | ( | const Point3D & | pt, | |
| const CellG * | newCell, | |||
| const CellG * | oldCell | |||
| ) |
E = lambda * (length - targetLength) ^ 2
Definition at line 275 of file LengthConstraintPlugin.cpp.
References CompuCell3D::CellG::iXX, CompuCell3D::CellG::iXZ, CompuCell3D::CellG::iZZ, lengthEnergyParamVector, CompuCell3D::CellG::type, CompuCell3D::CellG::volume, CompuCell3D::Point3D::x, CompuCell3D::CellG::xCM, CompuCell3D::Point3D::z, and CompuCell3D::CellG::zCM.
Referenced by init().
| double LengthConstraintPlugin::changeEnergy_xy | ( | const Point3D & | pt, | |
| const CellG * | newCell, | |||
| const CellG * | oldCell | |||
| ) |
E = lambda * (length - targetLength) ^ 2
Definition at line 343 of file LengthConstraintPlugin.cpp.
References CompuCell3D::CellG::iXX, CompuCell3D::CellG::iXY, CompuCell3D::CellG::iYY, lengthEnergyParamVector, CompuCell3D::CellG::type, CompuCell3D::CellG::volume, CompuCell3D::Point3D::x, CompuCell3D::CellG::xCM, CompuCell3D::Point3D::y, and CompuCell3D::CellG::yCM.
Referenced by init().
| double LengthConstraintPlugin::changeEnergy_yz | ( | const Point3D & | pt, | |
| const CellG * | newCell, | |||
| const CellG * | oldCell | |||
| ) |
E = lambda * (length - targetLength) ^ 2
Definition at line 411 of file LengthConstraintPlugin.cpp.
References CompuCell3D::CellG::iYY, CompuCell3D::CellG::iYZ, CompuCell3D::CellG::iZZ, lengthEnergyParamVector, CompuCell3D::CellG::type, CompuCell3D::CellG::volume, CompuCell3D::Point3D::y, CompuCell3D::CellG::yCM, CompuCell3D::Point3D::z, and CompuCell3D::CellG::zCM.
Referenced by init().
| void LengthConstraintPlugin::initTypeId | ( | Potts3D * | potts | ) |
Definition at line 480 of file LengthConstraintPlugin.cpp.
References CompuCell3D::Potts3D::getAutomaton(), CompuCell3D::Automaton::getTypeId(), lengthEnergyParamVector, and typeNameVec.
Referenced by update().
| void LengthConstraintPlugin::update | ( | CC3DXMLElement * | _xmlData, | |
| bool | _fullInitFlag = false | |||
| ) | [virtual] |
Reimplemented from CompuCell3D::SteerableObject.
Definition at line 76 of file LengthConstraintPlugin.cpp.
References ASSERT_OR_THROW, CompuCell3D::LengthEnergyParam::cellTypeName, CC3DXMLElement::getElements(), initTypeId(), lengthEnergyParamVector, potts, and typeNameVec.
Referenced by extraInit().
| std::string LengthConstraintPlugin::steerableName | ( | ) | [virtual] |
Reimplemented from CompuCell3D::SteerableObject.
Definition at line 510 of file LengthConstraintPlugin.cpp.
References toString().
std::vector<LengthEnergyParam> CompuCell3D::LengthConstraintPlugin::lengthEnergyParamVector [private] |
Definition at line 65 of file LengthConstraintPlugin.h.
Referenced by changeEnergy_xy(), changeEnergy_xz(), changeEnergy_yz(), initTypeId(), and update().
std::vector<std::string> CompuCell3D::LengthConstraintPlugin::typeNameVec [private] |
1.5.6