src/filament/functions.jl
MEDYAN.num_fila_types
MEDYAN.fila_type_name
MEDYAN.fila_typeid
MEDYAN.num_fila
MEDYAN.fila_mono_ids
MEDYAN.fila_mono_states
MEDYAN.fila_num_nodes
Return the number of node positions of a filament, length(fila_chem_positions(c, f)), see fila_chem_positions.
This is one more than the number of chem cylinders. During mechanics, short end chem cylinders can be merged into their neighbors, so there can be fewer mechanical nodes, see min_monomers_per_cylinder in FilamentMechParams.
MEDYAN.fila_node_mids
Return the node_mids of the filament.
The node_mids are the monomer ids at (slightly plus side of) the node_positions
The first monomer id is the first monomer id on the filament. The last monomer id is the last monomer id on the filament + 1
MEDYAN.fila_node_positions
Return the node positions of the filament, in the format of the node_positions keyword of make_fila!.
The interior nodes are at the chem cylinder boundaries. The first node is at the minus end of the first monomer, and the last node is at the plus end of the last monomer.
These are NOT adjusted for tip extension. Use get_position(c, FilaTipIdx(...)) to get the tip position with extension applied.
During mechanics, the end nodes are moved to the tips, and short end chem cylinders can be merged into their neighbors, see min_monomers_per_cylinder in FilamentMechParams.
MEDYAN.fila_chem_positions
Return a view of the chemistry cylinder endpoint positions for the filament.
These are the raw positions used for chemistry calculations, at the boundaries between cylinders. Unlike fila_node_positions, the first and last positions are NOT adjusted for partial cylinders or tip extension. Use get_position(c, FilaTipIdx(...)) for the actual tip positions. This can be invalid after any mutations to context, so copy if needed.
MEDYAN.fila_tip_tags
MEDYAN.fila_num_unmin_ends
Return a pair (minus => plus) of the number of unminimized monomers on the minus and plus end of a filament.
This will be reset to (0 => 0) by minimize_energy!
When an end is depolymerized this will decrease, but saturate at 0. When an end is polymerized this will increase.
For example if after minimization a filament has a plus end depolymerization, this function will return (0 => 0). Then if a plus end polymerization happens, this function will return (0 => 1), even though the net change in filament length is zero.
MEDYAN.fila_load_force
Return the end load force for the given filament tip in pN.
Values are always ≥ 0: the compressive force component pushing inward on the tip projected along the filament axis.
Load forces are computed during minimize_energy! and baoab!. They are zero before the first mechanics cycle and after filament creation.
These load forces slow polymerization/depolymerization rates via a Boltzmann factor exp(-β × spacing × load_force).
MEDYAN.fila_tip_snapshot
Return the snapshotted tip position for the given filament tip.
Tip positions are set from the actual tip position at the end of minimize_energy! and baoab! (whenever load forces are updated). Before the first mechanics cycle, positions are NaN.
These snapshotted positions are used by fila_tip_cutoff reactions to count nearby tips.
MEDYAN.fila_tip_extension
Return the tip extension for the given filament tip in monomer spacings.
The extension controls how far the tip position extends outward from the last monomer center. It affects both the chemistry tip position ([get_position] for FilaTipIdx) and the mechanical endpoint used in energy minimization (volume exclusion, equilibrium length):
0.0: tip at the monomer center> 0.0: tip extends further outward (e.g. bulky end-binding protein)< 0.0: tip moves inward past the monomer center
The node positions (fila_node_positions) are not affected by the extension.
See also set_fila_tip_extension!.