Node Tracks

From CometWiki
Jump to: navigation, search

Following the network motion

You can use node tracks to see where the network goes. Turn on network tracks with the BMP_TRACKS setting in cometparams.ini. e.g.

BMP_TRACKS true        # turns on node tracking
TRACK_MIN_RANGE 300.0  # select nodes created between this time...
TRACK_MAX_RANGE 305.0  # ...and this time (in frames)
TRACKFRAMESTEP  5      # number of frames between each point in the track when plotted
MAX_NODES_TO_TRACK 30  # how many nodes to track

Set BMP_TRACKS to true, and set TRACK_MIN_RANGE and TRACK_MAX_RANGE to bracket the time range for the creation of nodes you want tracked. The program will look for a set of MAX_NODES_TO_TRACK nodes within those created in this time bracket. If you want 2D tracks on the bitmaps, you probably also want to set BMP_FIX_BEAD_MOVEMENT to true so that the bitmap tracks aren't upset by the translation of the image.


Measuring stretching and compression

In addition, node tracks can be used to measure stretching of the shell or tail:

TRACKS_LENGTHS  true   # if false then tracks node movement, if true then tracks pairs and measures the distances between them
TRACK_TARGET_DIST 2.5  # tells code to select node pairs aiming for about this distance between them
SECOND_SHELL    false  # if SECOND_SHELL is false, tracks circumferential lengths in one shell
                       # if SECOND_SHELL is true, tracks radial lengths between two shells
TRACK_MIN_RANGE2 10    # select nodes created between this time...
TRACK_MAX_RANGE2 30    # ...and this time for the second shell


Node tracks are added separately after the initial calculation run, e.g. running

comet post 300:500

would track nodes up to frame 500. This creates new node tracks in a file nodetracks.txt, but only if this file doesn't already exist otherwise it just loads the existing tracks, so make sure to delete or rename this file if you want to calculate new tracks. The node range given to the comet post command must include TRACK_MIN_RANGE, TRACK_MAX_RANGE (and TRACK_MIN_RANGE2 and TRACK_MAX_RANGE2 if they are being used). Note: the program will automatically try to select nodes distributed evenly across the bead, but needs enough nodes within the frame range given.

Processing the data

Once this is done the tracks will be rendered onto the bitmaps, and can be viewed in 3d by setting

VIS_TRACKS     true

then running

comet view 400:400

Measures will be shown as lines, with associated numbers. Depending on the purpose, you may want to exclude certain lines (e.g. if measuring the expansion and contraction of the shell, you probably want to remove any pairs that span the crack. To remove particular measures, find the numbers using the 3D view, then set the track numbers to remove in the 'comet_remove_nodetracks' script. This will edit the nodetracks.txt and nodedistances.txt files and remove those measurements. Note the numbering changes when you do this, so re-check with comet view nnn:nnn and re-run with the new numbers if you need to remove more. Running the script 'comet_process_distances' processes these into comma delimited (csv) files for raw, normalized and averaged summaries which can be loaded into Gnuplot, Excel etc. to easily plot the distances as they change over time.

Other Parameters

If you want to restrict the choice of nodes to the symmetry breaking plane, set

NODE_TRACK_SELECT_Z_RANGE   1.5

which restricts the nodes selected to +/- this distance from the bead center in the z direction

TRACK_TARGET_DIST           2.5   # aim for this initial length when picking node pairs to track