development of a climate-to- fish-to-fishers model: data structures and domain decomposition kate...

34
Development of a climate- Development of a climate- to-fish-to-fishers model: to-fish-to-fishers model: data structures and data structures and domain decomposition domain decomposition Kate Hedstrom, UAF Kate Hedstrom, UAF Jerome Fiechter, UCSC Jerome Fiechter, UCSC Kenny Rose, LSU Kenny Rose, LSU Enrique Curchitser, Rutgers Enrique Curchitser, Rutgers Miguel Bernal, Rutgers Miguel Bernal, Rutgers

Upload: noreen-young

Post on 08-Jan-2018

219 views

Category:

Documents


0 download

DESCRIPTION

Sardine Landings in the Pacific

TRANSCRIPT

Page 1: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Development of a climate-to-Development of a climate-to-fish-to-fishers model:fish-to-fishers model:data structures anddata structures and

domain decompositiondomain decompositionKate Hedstrom, UAFKate Hedstrom, UAF

Jerome Fiechter, UCSCJerome Fiechter, UCSCKenny Rose, LSUKenny Rose, LSU

Enrique Curchitser, RutgersEnrique Curchitser, RutgersMiguel Bernal, RutgersMiguel Bernal, Rutgers

Page 2: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

OutlineOutline• GoalsGoals• MethodsMethods• Results so farResults so far

Page 3: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Sardine Landings in the PacificSardine Landings in the Pacific

Page 4: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Pacific Decadal OscillationPacific Decadal Oscillation

From Nate Mantua

Page 5: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

GoalsGoals• These cycles in small pelagic fish go These cycles in small pelagic fish go

back thousands of years: we’d like to back thousands of years: we’d like to build a model that can reproduce build a model that can reproduce these cyclesthese cycles

• Couple to physical model that can Couple to physical model that can reproduce the PDOreproduce the PDO

• Start with fish and add fishing fleets Start with fish and add fishing fleets laterlater

Page 6: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Sardines and AnchoviesSardines and Anchovies• Both have periods of abundance and Both have periods of abundance and

periods of scarcityperiods of scarcity• Each have life histories that differ Each have life histories that differ

between warm/cold years:between warm/cold years:– Age and size of spawning fishAge and size of spawning fish– Age of oldest fishAge of oldest fish– Location of spawning – migration pattern Location of spawning – migration pattern

changeschanges

Page 7: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Superindividual Models Superindividual Models • Lagrangian tracking of fishLagrangian tracking of fish• Each “fish” represents a group, not Each “fish” represents a group, not

just one individualjust one individual• The superindividual starts with a The superindividual starts with a

large “worth”, which is reduced as large “worth”, which is reduced as individuals dieindividuals die

• Include the “big four” – spawning, Include the “big four” – spawning, growth, behavior, mortalitygrowth, behavior, mortality

Page 8: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Many ChallengesMany Challenges• Behavior should include spawning and Behavior should include spawning and

feeding migrations, predator feeding migrations, predator avoidance, etc.avoidance, etc.

• Growth requires knowledge of Growth requires knowledge of bioenergetics – grow or make eggs?bioenergetics – grow or make eggs?

• Mortality from starvation – don’t all Mortality from starvation – don’t all starve at oncestarve at once

• Spawning new superindividuals in Spawning new superindividuals in bounded memory spacebounded memory space

Page 9: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

MethodsMethods• ““Fish” as modified floatsFish” as modified floats• Fixed number of fish per species per Fixed number of fish per species per

yearclassyearclass• Limit number of yearclasses, killing off Limit number of yearclasses, killing off

too old fishtoo old fish• Feedback to NPZ-type model, NEMURO Feedback to NPZ-type model, NEMURO

for now (PICES)for now (PICES)• Fish-eat-fish and fishing fleets require Fish-eat-fish and fishing fleets require

knowledge of fish in i,j spaceknowledge of fish in i,j space

Page 10: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Floats/Fish in MPIFloats/Fish in MPI• Each process has one tile, but knows Each process has one tile, but knows

about all floatsabout all floats• Checks floats each timestep, zeroes Checks floats each timestep, zeroes

out those not on tileout those not on tile• Update floats on tileUpdate floats on tile• Sum reduction at end ensures all Sum reduction at end ensures all

know about all floatsknow about all floats

Page 11: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Eulerian vs. LagrangianEulerian vs. Lagrangian• Lagrangian information is stored in a Lagrangian information is stored in a

FISHES structure, which is a copy of FISHES structure, which is a copy of the FLOATS structure with extra the FLOATS structure with extra fields:fields:– Logical :: alive, eatfishLogical :: alive, eatfish– Real :: bioenergy with weight, worth, age, Real :: bioenergy with weight, worth, age,

birthday, yield, eggs, etc. componentsbirthday, yield, eggs, etc. components– Real :: feedback with NT componentsReal :: feedback with NT components– Integer :: species, lifestage, swimtypeInteger :: species, lifestage, swimtype

Page 12: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Eulerian SideEulerian Side• Feedback to NPZ model happens in Feedback to NPZ model happens in

pfish array in nemuro.h:pfish array in nemuro.h:– Zero out pfishZero out pfish– Loop through fish (on tile), adding Loop through fish (on tile), adding

contributions to pfishcontributions to pfish– Loop through cells, modifying NEMURO Loop through cells, modifying NEMURO

fields accordinglyfields accordingly– Pass changes to zooplankton and PONPass changes to zooplankton and PON

Page 13: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

More EulerianMore Eulerian• Mod_ocean.F contains fields on the Mod_ocean.F contains fields on the

tiles:tiles:– fish_count: number of fish in each 2-D cellfish_count: number of fish in each 2-D cell– fish_list: pointer to first fishnode object in fish_list: pointer to first fishnode object in

each cell (linked lists)each cell (linked lists)• For spawning (more later):For spawning (more later):

– egg_count or spawn_distegg_count or spawn_dist

Page 14: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

fish_listfish_list

Page 15: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Fish-eat-fishFish-eat-fish• Loop through fish on tile – if I eat fish:Loop through fish on tile – if I eat fish:

– Look for other fish in cellLook for other fish in cell– Are they the kind I eat?Are they the kind I eat?– There is cannibalism of eggs by adultsThere is cannibalism of eggs by adults– Look over whole water column for nowLook over whole water column for now– Worry about order? It’s always going to be Worry about order? It’s always going to be

the same unless randomizedthe same unless randomized

Page 16: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

BehaviorBehavior• Eggs and yolk-sacs are advected like Eggs and yolk-sacs are advected like

floatsfloats• Larger fish swim with size-dependent Larger fish swim with size-dependent

speedspeed• Choice of behavior:Choice of behavior:

– Humston: optimize temperature (kinesis)Humston: optimize temperature (kinesis)– Railsback: maximize growth (fitness)Railsback: maximize growth (fitness)

• No spawning migration yetNo spawning migration yet

Page 17: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

SpawningSpawning• Fixed number of new Fixed number of new

superindividuals available per year superindividuals available per year per speciesper species

• Set up beginning and ending Set up beginning and ending spawning datesspawning dates

• Divide up potential new fish over Divide up potential new fish over spawning daysspawning days

• On each day, gather eggs and split On each day, gather eggs and split into available new fishinto available new fish

Page 18: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

More SpawningMore Spawning• If no spawning, put extras into poolIf no spawning, put extras into pool• Might have a few empties at year endMight have a few empties at year end• Need at least one per spawning day – Need at least one per spawning day –

don’t want to lose any eggsdon’t want to lose any eggs• New superindividual retains position New superindividual retains position

from one of the mothers’ cellsfrom one of the mothers’ cells• Choice of two batching methods…Choice of two batching methods…

Page 19: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Binary TreeBinary Tree• Master process builds a balanced Master process builds a balanced

binary tree from the spawning parents, binary tree from the spawning parents, in sorted orderin sorted order

• One tree node per spawning fishOne tree node per spawning fish• Method depends on a 1-D sorting Method depends on a 1-D sorting

order, such as long-shore distanceorder, such as long-shore distance• Spawn_dist field comes from grid file Spawn_dist field comes from grid file

or could be simply lat, lon, i or jor could be simply lat, lon, i or j

Page 20: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Balanced Binary TreeBalanced Binary Tree

Page 21: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

First Split: Top node added to left First Split: Top node added to left subtree which rebalancessubtree which rebalances

Page 22: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Final Three SubtreesFinal Three Subtrees

Page 23: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Create New SuperindividualsCreate New Superindividuals• Take the top of each subtree, find Take the top of each subtree, find

location of the parent fishlocation of the parent fish• Assign location to new fishAssign location to new fish• Assign all the eggs to new fishAssign all the eggs to new fish• New fish has lifestage of eggNew fish has lifestage of egg

Page 24: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

BisectionBisection• Master node builds an egg array with Master node builds an egg array with

all of the eggs in each cellall of the eggs in each cell• Array is for the entire gridArray is for the entire grid• Successively divide up domain in xi, Successively divide up domain in xi,

eta directions until available eta directions until available superindividuals are filledsuperindividuals are filled

• Toss out empty partitionsToss out empty partitions• Keep a sorted linked list of partitionsKeep a sorted linked list of partitions

Page 25: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

BisectionBisection

Page 26: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Another ExampleAnother Example

Page 27: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Using Humston BehaviorUsing Humston Behavior

Page 28: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Using Railsback BehaviorUsing Railsback Behavior

Page 29: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Sardine BioenergeticsSardine Bioenergetics

Page 30: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Test of SpawningTest of Spawning

Page 31: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique
Page 32: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique
Page 33: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

ConclusionsConclusions• We are well on the way towards We are well on the way towards

having a full lifecycle model of fish in having a full lifecycle model of fish in ROMSROMS

• These fish represent small pelagics, These fish represent small pelagics, up to 5-10 speciesup to 5-10 species

• Depends on bioenergetics dataDepends on bioenergetics data• Need to “prime the pump” with adult Need to “prime the pump” with adult

fish, then run for decadesfish, then run for decades

Page 34: Development of a climate-to- fish-to-fishers model: data structures and domain decomposition Kate Hedstrom, UAF Jerome Fiechter, UCSC Kenny Rose, LSU Enrique

Future PlansFuture Plans• OFFLINE_FISH option [soon]OFFLINE_FISH option [soon]• Fishing fleets and predatorsFishing fleets and predators

– BehaviorsBehaviors– Fixed numbers, no spawningFixed numbers, no spawning

• Tuning of bioenergetics and behaviorTuning of bioenergetics and behavior– Warm/cold behavior switchWarm/cold behavior switch

• Look to neighboring cellsLook to neighboring cells