1.
The initial introduction cell and parameter weight/ranges are determined based on a template.
2.
An algorithm cycles through all records in the parameter dataset (containing salinity, temperature, depth, and current values and coordinates) and calculates the score for that particular latitude/longitude based on the parameter weights and ranges as defined in the template. Example: Cell 6 (Fig. 3) has salinity and depth within range, its score is the sum of the weight of salinity (.02) and depth (.02) for a total of .04.
3.
The initial cell denoted in the template is marked colonized.
4.
The following process then repeats for each colonized cell and each cycle as defined in the template:
a.
Normalized velocity factor is obtained by dividing 1 by the mean of all velocity values in the parameter dataset.
b.
Current direction is obtained for the colonized cell.
c.
Records for all 8 cells surrounding the colonized cell are identified.
d.
A weighted current score factor is calculated by multiplying the velocity of the current for the colonized cell by the velocity factor. This number is then multiplied by the current weight factor from the template giving a standardized score for ocean current. The score of down-current cell (from the colonized cell) is increased by the weighted current score.
e.
The scores of all 8 surrounding cells are standardized to a value of between 0 and 1 and assigned number ranges from 0 to 1 based on their number. (Example: cell 1 in Fig. 3 was given a value range of 0.0001 to .0148 based on calculations in Table 1).
f.
A random number between 0 and 1 is generated. The corresponding cell whose range contains that number is marked colonized.
5.
Step 4 is repeated for the number of cycles as defined in the template.
6.
The output of the model is a list of latitude/longitude data points and the cycle in which they were colonized. This data is then imported into ArcGIS and the data points plotted and animated based on the order of colonization.