MEDYAN  3.1
Software for simulating active matter dynamics
MCylinder.h
Go to the documentation of this file.
1 
2 //------------------------------------------------------------------
3 // **MEDYAN** - Simulation Package for the Mechanochemical
4 // Dynamics of Active Networks, v3.1
5 //
6 // Copyright (2015-2016) Papoian Lab, University of Maryland
7 //
8 // ALL RIGHTS RESERVED
9 //
10 // See the MEDYAN web page for more information:
11 // http://www.medyan.org
12 //------------------------------------------------------------------
13 
14 #ifndef MEDYAN_MCylinder_h
15 #define MEDYAN_MCylinder_h
16 
17 #include <vector>
18 
19 #include "common.h"
20 
21 //FORWARD DECLARATIONS
22 class Cylinder;
23 
25 
29 class MCylinder {
30 
31 private:
33 
34  double _eqLength;
35  double _eqTheta;
36  double _eqPhi;
38  double _kStretch;
39  double _kBend;
41  double _kTwist;
43  double _kExVol;
45 
47  double _currentLength;
48 
49 public:
52  MCylinder(short filamentType, double eqLength);
53  ~MCylinder() {};
54 
56  void setCylinder(Cylinder* c) {_pCylinder = c;}
58 
60  void setEqLength(short filamentType, double l);
62  double getEqLength() {return _eqLength;}
63 
65  void setEqTheta(double theta) {_eqTheta = theta;}
67  double getEqTheta() {return _eqTheta;}
68 
69  void setEqPhi(double phi) {_eqPhi = phi;}
70  double getEqPhi() {return _eqPhi;}
71 
72  void setStretchingConst(double k) {_kStretch = k;}
73  double getStretchingConst() {return _kStretch;}
74 
75  void setBendingConst(double k) {_kBend = k;}
76  double getBendingConst() {return _kBend;}
77 
78  void setTwistingConst(double k) {_kTwist = k;}
79  double getTwistingConst() {return _kTwist;}
80 
81  void setExVolConst(double k) {_kExVol = k;}
82  double getExVolConst() {return _kExVol;}
83 
84  void setLength(double l){_currentLength = l;}
85  double getLength() {return _currentLength;}
87 
88 };
89 
90 #endif
double getEqTheta()
Mechanical parameter management function.
Definition: MCylinder.h:67
double getTwistingConst()
Mechanical parameter management function.
Definition: MCylinder.h:79
~MCylinder()
Definition: MCylinder.h:53
double _eqTheta
Equilibrium value for angle in bending potential.
Definition: MCylinder.h:35
double _eqLength
Length of unstretched cylinder.
Definition: MCylinder.h:34
void setEqTheta(double theta)
Mechanical parameter management function.
Definition: MCylinder.h:66
void setBendingConst(double k)
Mechanical parameter management function.
Definition: MCylinder.h:75
Cylinder * _pCylinder
parent cylinder
Definition: MCylinder.h:32
void setCylinder(Cylinder *c)
Set parent.
Definition: MCylinder.h:56
double getStretchingConst()
Mechanical parameter management function.
Definition: MCylinder.h:73
double getLength()
Mechanical parameter management function.
Definition: MCylinder.h:85
void setExVolConst(double k)
Mechanical parameter management function.
Definition: MCylinder.h:81
double _kBend
Local bending constant, which describes bending interaction between current and PREVIOUS cylinders...
Definition: MCylinder.h:40
A container to store a MCylinder and CCylinder.
Definition: Cylinder.h:50
void setLength(double l)
Mechanical parameter management function.
Definition: MCylinder.h:84
void setEqLength(short filamentType, double l)
Set the equlilibrium length, which changes mechanical constants accordingly.
Definition: MCylinder.cpp:35
double _currentLength
The current length of the cylinder.
Definition: MCylinder.h:47
Cylinder * getCylinder()
Definition: MCylinder.h:57
double _eqPhi
Equilibrium value of twisiting potential.
Definition: MCylinder.h:37
double getBendingConst()
Mechanical parameter management function.
Definition: MCylinder.h:76
Used to hold mechanical properties of a Cylinder.
Definition: MCylinder.h:29
void setEqPhi(double phi)
Mechanical parameter management function.
Definition: MCylinder.h:69
double _kStretch
Local stretching constant, describes axial stretching of a single cylinder.
Definition: MCylinder.h:38
double getEqLength()
Get the current equlibrium length of this MCylinder.
Definition: MCylinder.h:62
void setStretchingConst(double k)
Mechanical parameter management function.
Definition: MCylinder.h:72
double _kTwist
Local twisting constant, which describes stretching interaction between current and PREVIOUS cylinder...
Definition: MCylinder.h:42
void setTwistingConst(double k)
Mechanical parameter management function.
Definition: MCylinder.h:78
double _kExVol
Local excluded volume constant, which describes excluded volume interactions between cylinders...
Definition: MCylinder.h:44
double getExVolConst()
Mechanical parameter management function.
Definition: MCylinder.h:82
MCylinder(short filamentType, double eqLength)
Constructor sets equlilibrium length, and also adjusts other parameters according to this length...
Definition: MCylinder.cpp:21
double getEqPhi()
Mechanical parameter management function.
Definition: MCylinder.h:70