Cometparams.ini parameter file: Difference between revisions
mNo edit summary |
mNo edit summary |
||
| Line 1: | Line 1: | ||
Here are the core settings in the cometparams.ini file (explained below): | Here are the core settings in the cometparams.ini file (explained below): | ||
====Run Time==== | |||
DELTA_T 0.01 | DELTA_T 0.01 | ||
TOTAL_SIMULATION_TIME 5600.0 | TOTAL_SIMULATION_TIME 5600.0 | ||
TOT_FRAMES 700 | TOT_FRAMES 700 | ||
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 | SHAPE SPHERE | ||
ELLIPSOID_STRETCHFACTOR 1.5 | ELLIPSOID_STRETCHFACTOR 1.5 | ||
RADIUS 2.5 | RADIUS 2.5 | ||
CAPSULE_HALF_LINEAR 2.75 | CAPSULE_HALF_LINEAR 2.75 | ||
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 | STICK_TO_NUCLEATOR true | ||
RESTICK_TO_NUCLEATOR true | RESTICK_TO_NUCLEATOR true | ||
NUC_LINK_FORCE 2.0 | NUC_LINK_FORCE 2.0 | ||
NUC_LINK_BREAKAGE_DIST .237 | NUC_LINK_BREAKAGE_DIST .237 | ||
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. | ||
====Node repulsion function==== | ====Node repulsion function==== | ||
NODE_REPULSIVE_RANGE 1.0 | |||
NODE_REPULSIVE_MAG 2.7 | |||
NODE_REPULSIVE_POWER 2.0 | |||
The repulsion force between nodes is of the form: | The repulsion force between nodes is of the form: | ||
| Line 63: | Line 42: | ||
====Node links==== | ====Node links==== | ||
P_NUC 0.12 | |||
XLINK_NODE_RANGE 1.0 | |||
MAX_LINKS_PER_NEW_NODE 10 | |||
LINK_BREAKAGE_FORCE 3.0 | |||
LINK_FORCE 3.0 | |||
P_XLINK .700 | |||
VARY_P_XLINK true | |||
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 {\micro}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 {\micro}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 75: | Line 61: | ||
====Drag==== | ====Drag==== | ||
FORCE_SCALE_FACT 0.3 | |||
NUCLEATOR_INERTIA 80 | |||
MofI 0.5 | |||
VARY_INERT_W_RAD false | |||
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 (see \fref{sec:parameterinfo} for more info). | 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 (see \fref{sec:parameterinfo} for more info). | ||
Revision as of 00:47, 17 April 2009
Here are the core settings in the cometparams.ini file (explained below):
Run Time
DELTA_T 0.01 TOTAL_SIMULATION_TIME 5600.0 TOT_FRAMES 700
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 ELLIPSOID_STRETCHFACTOR 1.5 RADIUS 2.5 CAPSULE_HALF_LINEAR 2.75
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 RESTICK_TO_NUCLEATOR true NUC_LINK_FORCE 2.0 NUC_LINK_BREAKAGE_DIST .237
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 NODE_REPULSIVE_MAG 2.7 NODE_REPULSIVE_POWER 2.0
The repulsion force between nodes is of the form:
where
is the distance between nodes,
(NODE_REPULSIVE_MAG) is a magnitude scale factor, and
(NODE_REPULSIVE_MAG) is maximum range of the repulsive force.
The power factor (NODE_REPULSIVE_POWER) is 2, so this is a simple inverse square repulsive force and is plotted in \fref{fig:repulsiveforces}.
Node links
P_NUC 0.12 XLINK_NODE_RANGE 1.0 MAX_LINKS_PER_NEW_NODE 10 LINK_BREAKAGE_FORCE 3.0 LINK_FORCE 3.0 P_XLINK .700 VARY_P_XLINK true
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 {\micro}m. 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 force
where
is the distance between nodes,
is a magnitude scale factor, and
is the original length of the link when it was formed (\fref{fig:simulationdetails}). If the link is extended so that its force goes beyond a certain limit, the link breaks. (optionally this can be strain rather than stress, i.e.~a break occurs when
exceeds a certain limit rather than when
does)
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. (see \fref{sec:parameterinfo} for more info).
Drag
FORCE_SCALE_FACT 0.3 NUCLEATOR_INERTIA 80 MofI 0.5 VARY_INERT_W_RAD false
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 (see \fref{sec:parameterinfo} for more info).