Difference between revisions of "Cometparams.ini parameter file"
m |
m (Added units) |
||
Line 1: | Line 1: | ||
− | + | These are the core model settings in the cometparams.ini file. The model is currently uncalibrated: and units are specified in nominal microns, seconds, newtons etc., for purposes of understanding the parameters. | |
====Run Time==== | ====Run Time==== | ||
− | + | TOTAL_SIMULATION_TIME 5600.0 # (s) how long to run the simulation for (in simulation-time seconds) | |
− | TOTAL_SIMULATION_TIME 5600.0 | + | TOT_FRAMES 700 # (frames) how many frames in this time |
− | TOT_FRAMES | + | DELTA_T 0.01 # (s) iteration timestep |
+ | |||
TOTAL_SIMULATION_TIME defines the run length in simulation time (uncalibrated, nominally seconds). DELTA_T defines the time step between iterations, i.e. for the given TOTAL_SIMULATION_TIME of 5600 and DELTA_T of 0.01, there will be a total of 560000 iterations. TOT_FRAMES defines the number of snapshots to be taken during the run, i.e. 700 snapshots would mean one snapshot every 800 iterations. | TOTAL_SIMULATION_TIME defines the run length in simulation time (uncalibrated, nominally seconds). DELTA_T defines the time step between iterations, i.e. for the given TOTAL_SIMULATION_TIME of 5600 and DELTA_T of 0.01, there will be a total of 560000 iterations. TOT_FRAMES defines the number of snapshots to be taken during the run, i.e. 700 snapshots would mean one snapshot every 800 iterations. | ||
Line 11: | Line 12: | ||
====Nucleator==== | ====Nucleator==== | ||
− | SHAPE | + | SHAPE SPHERE # (SPHERE, ELLIPSOID or CAPSULE) Nuleator shape |
− | ELLIPSOID_STRETCHFACTOR 1.5 | + | ELLIPSOID_STRETCHFACTOR 1.5 # (unitless) Ratio of major to minor ellipse axes |
− | RADIUS | + | RADIUS 2.5 # (um) Radius of sphere, minor axis of ellipse, radius of capsule |
− | CAPSULE_HALF_LINEAR | + | CAPSULE_HALF_LINEAR 2.75 # (um) Half the length of the linear section for capsule |
SHAPE can be SPHERE, CAPSULE or ELLIPSOID. For SPHERE, only the RADIUS matters. For CAPSULE, RADIUS and CAPSULE_HALF_LINEAR are used, and for ELLIPSOID, RADIUS and ELLIPSOID_STRETCHFACTOR define the shape. (Arbitrary shapes can be defined in the code, given a function that for a supplied point, returns a vector normal to the nearest point on the surface to the given point.) | SHAPE can be SPHERE, CAPSULE or ELLIPSOID. For SPHERE, only the RADIUS matters. For CAPSULE, RADIUS and CAPSULE_HALF_LINEAR are used, and for ELLIPSOID, RADIUS and ELLIPSOID_STRETCHFACTOR define the shape. (Arbitrary shapes can be defined in the code, given a function that for a supplied point, returns a vector normal to the nearest point on the surface to the given point.) | ||
Line 20: | Line 21: | ||
====Nucleator attachments==== | ====Nucleator attachments==== | ||
− | STICK_TO_NUCLEATOR | + | STICK_TO_NUCLEATOR true # (boolean) whether nodes stick to nucleator upon creation |
− | RESTICK_TO_NUCLEATOR | + | RESTICK_TO_NUCLEATOR true # (boolean) whether nodes stick to nucleator upon contact |
− | NUC_LINK_FORCE | + | NUC_LINK_FORCE 2.0 # (pN/um) nucleator-node link force scaling factor |
− | NUC_LINK_BREAKAGE_DIST .237 | + | NUC_LINK_BREAKAGE_DIST 0.237 # (um) maximum nucleator-node link length before it breaks |
− | + | ||
When nodes are created, STICK_TO_NUCLEATOR defines whether they stick to their point of creation on the nucleator surface. Stuck nodes exert a force proportional to NUC_LINK_FORCE multiplied by the distance from the surface stuck point until they are extended beyond NUC_LINK_BREAKAGE_DIST when the link breaks. If RESTICK_TO_NUCLEATOR is true, ''unstuck'' nodes will re-stick if they come into contact with the surface again. | When nodes are created, STICK_TO_NUCLEATOR defines whether they stick to their point of creation on the nucleator surface. Stuck nodes exert a force proportional to NUC_LINK_FORCE multiplied by the distance from the surface stuck point until they are extended beyond NUC_LINK_BREAKAGE_DIST when the link breaks. If RESTICK_TO_NUCLEATOR is true, ''unstuck'' nodes will re-stick if they come into contact with the surface again. | ||
Line 30: | Line 30: | ||
====Node repulsion function==== | ====Node repulsion function==== | ||
− | NODE_REPULSIVE_RANGE | + | NODE_REPULSIVE_RANGE 1.0 # (um) how far to calculate the node-node repulsion function |
− | NODE_REPULSIVE_MAG 2.7 | + | NODE_REPULSIVE_MAG 2.7 # (pN)magnitude scale factor for repulsive force |
− | NODE_REPULSIVE_POWER | + | NODE_REPULSIVE_POWER 2.0 # (unitless) power of repulsion function (see equation) (always set to 2 for the moment) |
[[file:mymodel_forces.png|right|thumb|350px|Figure 1: Forces acting on bead]] | [[file:mymodel_forces.png|right|thumb|350px|Figure 1: Forces acting on bead]] | ||
Line 45: | Line 45: | ||
====Node links==== | ====Node links==== | ||
− | P_NUC | + | P_NUC 0.12 # (nodes.um^2.s^-1) Nucleation rate (probability of forming nodes) |
− | XLINK_NODE_RANGE | + | XLINK_NODE_RANGE 1.0 # (um) maximum distance to link two nodes when they form |
− | MAX_LINKS_PER_NEW_NODE | + | MAX_LINKS_PER_NEW_NODE 10 # (links) cap the max number of links for a new node |
− | LINK_BREAKAGE_FORCE | + | LINK_BREAKAGE_FORCE 3.0 # (pN) maximum node-node link force before it breaks |
− | LINK_FORCE | + | LINK_FORCE 3.0 # (pN) magnitude scale factor for link force |
− | P_XLINK | + | P_XLINK .700 # (unitless) Max probability (at d=0) of forming a crosslink to a neighboring node |
− | VARY_P_XLINK | + | VARY_P_XLINK true # (boolean) whether to reduce probability of crosslinking linearly with distance |
P_NUC defines the rate of nucleation of new nodes per unit area per unit time. i.e. for one iteration, the number of new nodes added over the whole of the nucleator surface is P_NUC * DELTA_T * surf_area, where surf_area is in µm<math>^2</math>. The nodes are added at random positions on the surface, with an even distribution unless the ASYMMETRIC_NUCLEATION variable is set. | P_NUC defines the rate of nucleation of new nodes per unit area per unit time. i.e. for one iteration, the number of new nodes added over the whole of the nucleator surface is P_NUC * DELTA_T * surf_area, where surf_area is in µm<math>^2</math>. The nodes are added at random positions on the surface, with an even distribution unless the ASYMMETRIC_NUCLEATION variable is set. | ||
Line 64: | Line 64: | ||
====Drag==== | ====Drag==== | ||
− | FORCE_SCALE_FACT 0.3 | + | FORCE_SCALE_FACT 0.3 # (um.pN^-1.s^-1) how fast nodes move for a given force |
− | NUCLEATOR_INERTIA | + | VARY_INERT_W_RAD false # (boolean) whether to vary nucleator inertia with radius |
− | MofI | + | NUCLEATOR_INERTIA 80 # (unitless, or um^-1) Scale factor for how much harder it is to move nucleator than nodes |
− | + | MofI 0.5 # (rad.um^1.^pn) How hard it is to rotate the nucleator | |
− | This section relates the forces to the actual movement of the nodes and nucleator. | + | This section relates the forces to the actual movement of the nodes and nucleator. FORCE_SCALE_FACT scales the movement of nodes (i.e. effectively inverse of node drag). If you reduce this, you probably need to reduce DELTA_T as well. NUCLEATOR_INERTIA determines how hard it is to ''displace'' the nucleator and MofI determines how hard it is to rotate it. If VARY_INERT_W_RAD is set, inertia will be scaled by the size of the nucleator. |
Revision as of 14:22, 24 April 2009
These are the core model settings in the cometparams.ini file. The model is currently uncalibrated: and units are specified in nominal microns, seconds, newtons etc., for purposes of understanding the parameters.
Contents
Run Time
TOTAL_SIMULATION_TIME 5600.0 # (s) how long to run the simulation for (in simulation-time seconds) TOT_FRAMES 700 # (frames) how many frames in this time DELTA_T 0.01 # (s) iteration timestep
TOTAL_SIMULATION_TIME defines the run length in simulation time (uncalibrated, nominally seconds). DELTA_T defines the time step between iterations, i.e. for the given TOTAL_SIMULATION_TIME of 5600 and DELTA_T of 0.01, there will be a total of 560000 iterations. TOT_FRAMES defines the number of snapshots to be taken during the run, i.e. 700 snapshots would mean one snapshot every 800 iterations.
Nucleator
SHAPE SPHERE # (SPHERE, ELLIPSOID or CAPSULE) Nuleator shape ELLIPSOID_STRETCHFACTOR 1.5 # (unitless) Ratio of major to minor ellipse axes RADIUS 2.5 # (um) Radius of sphere, minor axis of ellipse, radius of capsule CAPSULE_HALF_LINEAR 2.75 # (um) Half the length of the linear section for capsule
SHAPE can be SPHERE, CAPSULE or ELLIPSOID. For SPHERE, only the RADIUS matters. For CAPSULE, RADIUS and CAPSULE_HALF_LINEAR are used, and for ELLIPSOID, RADIUS and ELLIPSOID_STRETCHFACTOR define the shape. (Arbitrary shapes can be defined in the code, given a function that for a supplied point, returns a vector normal to the nearest point on the surface to the given point.)
Nucleator attachments
STICK_TO_NUCLEATOR true # (boolean) whether nodes stick to nucleator upon creation RESTICK_TO_NUCLEATOR true # (boolean) whether nodes stick to nucleator upon contact NUC_LINK_FORCE 2.0 # (pN/um) nucleator-node link force scaling factor NUC_LINK_BREAKAGE_DIST 0.237 # (um) maximum nucleator-node link length before it breaks
When nodes are created, STICK_TO_NUCLEATOR defines whether they stick to their point of creation on the nucleator surface. Stuck nodes exert a force proportional to NUC_LINK_FORCE multiplied by the distance from the surface stuck point until they are extended beyond NUC_LINK_BREAKAGE_DIST when the link breaks. If RESTICK_TO_NUCLEATOR is true, unstuck nodes will re-stick if they come into contact with the surface again.
Node repulsion function
NODE_REPULSIVE_RANGE 1.0 # (um) how far to calculate the node-node repulsion function NODE_REPULSIVE_MAG 2.7 # (pN)magnitude scale factor for repulsive force NODE_REPULSIVE_POWER 2.0 # (unitless) power of repulsion function (see equation) (always set to 2 for the moment)
The repulsion force between nodes is of the form:
F_R = M_R \left( \left(\frac{d_R}{d}\right)^{P_R} - 1 \right), \quad 0<d<d_R
</math>The power factor <math> P_R </math> (NODE_REPULSIVE_POWER) is 2, so this is a simple inverse square repulsive force.
Node links
P_NUC 0.12 # (nodes.um^2.s^-1) Nucleation rate (probability of forming nodes) XLINK_NODE_RANGE 1.0 # (um) maximum distance to link two nodes when they form MAX_LINKS_PER_NEW_NODE 10 # (links) cap the max number of links for a new node LINK_BREAKAGE_FORCE 3.0 # (pN) maximum node-node link force before it breaks LINK_FORCE 3.0 # (pN) magnitude scale factor for link force P_XLINK .700 # (unitless) Max probability (at d=0) of forming a crosslink to a neighboring node VARY_P_XLINK true # (boolean) whether to reduce probability of crosslinking linearly with distance
P_NUC defines the rate of nucleation of new nodes per unit area per unit time. i.e. for one iteration, the number of new nodes added over the whole of the nucleator surface is P_NUC * DELTA_T * surf_area, where surf_area is in µm<math>^2</math>. The nodes are added at random positions on the surface, with an even distribution unless the ASYMMETRIC_NUCLEATION variable is set.
New nodes are crosslinked to nearby nodes within XLINK_NODE_RANGE. The links then behave as Hookean springs, exerting a restoring forceF_L = -{M_L} \left(\frac{d-d_L}{d_L}\right)
</math>Nodes are added to the surface and fixed there while their repulsive forces are ramped up linearly from 0 to full. This allows time for nodes already at the surface move and make room for the new node before it is crosslinked. The ramp-up occurs over CROSSLINKDELAY iterations. MAX_LINKS_PER_NEW_NODE limits the maximum number of crosslinks for each new node. LINK_FORCE is the spring constant, and when the extension forces reaches LINK_BREAKAGE_FORCE, the link breaks. P_XLINK is the probability of forming a crosslink to a node within range (still restricted by the MAX_LINKS_PER_NEW_NODE limit). The VARY_P_XLINK flag (normally on) also imposes a linear tail-off of this probability with distance.
Drag
FORCE_SCALE_FACT 0.3 # (um.pN^-1.s^-1) how fast nodes move for a given force VARY_INERT_W_RAD false # (boolean) whether to vary nucleator inertia with radius NUCLEATOR_INERTIA 80 # (unitless, or um^-1) Scale factor for how much harder it is to move nucleator than nodes MofI 0.5 # (rad.um^1.^pn) How hard it is to rotate the nucleator
This section relates the forces to the actual movement of the nodes and nucleator. FORCE_SCALE_FACT scales the movement of nodes (i.e. effectively inverse of node drag). If you reduce this, you probably need to reduce DELTA_T as well. NUCLEATOR_INERTIA determines how hard it is to displace the nucleator and MofI determines how hard it is to rotate it. If VARY_INERT_W_RAD is set, inertia will be scaled by the size of the nucleator.