What is a model?

What is a model?

System-level Hypothesis Testing: A Novel Approach to Developing Parsimonious Models of Complex Ecosystem Geoffrey Poole Clem Izurieta Dynamics Robert Payn Ashley Helton Meredith Wright Emily Bernhardt Jack Stanford AN IMPERATIVE SE techniques yield: Model parsimony Code reliability, extensibility, reuse, longevity Grid-based highperformance computing Virtual laboratories Scheller et al. 2009 THE NEED Virtual laboratory; model parsimony Code reliability, extensibility, and reuse Requires: rapid creation, maintenance, management, and execution of multiple competing model variants

Requires: encapsulation and modularization of code High performance computing Requires: A simple means of developing multi-threaded code WHAT IS A MODEL? Uptake Umax k [Solute] Biomas s [Solut e] Tim RETHINKING MODELS... Simulation run Values r = 0.034 u = 6.2 Ks = 1.73 W = 600 U = 17.3 R = 6.5 X = 13.4 S =1800.0 [S] = 3.00 NEO Code Input/ Output/ Initialization Execution

control Calculations Model CREATING A NEO SIMULATION Solution Biomass Uptake Respiration E2 E1 C1 C2 NEO INPUT FILE: Matrix Table EdgeID FromCell ToCell E1 C1 C2 E2 C2 Ks W r

E1 C1 E2 C2 NEO INPUT FILE: Parameter file HolonID Variable Value C1 W 600 E1 Ks 1.73 E1 u 6.2 E2 R 0.034 Solution Uptake

Biomass eq4 S W eq5 [S] C1 Model code hierarchy 4 4 5 5 3 3 1 1 2 2 Respiration eq2 Ks eq1 eq3 U X E1

C2 R r E2 NEO INPUT FILE: Holon Type Holon ID Holon Type Table C1 Solution C2 Biomass E1 Uptake E2 Respiration NEO INPUT FILE: Cell Type Behavior Cell type Carbon Table Solution aqueous Biomass microbial NEO INPUT FILE: Edge Type Behavior Edge type Carbon

Table Uptake michaelis_menten Respiration microbial Solution Uptake Biomass Respiration eq4 Ks S W eq5 [S] C1 eq2 eq1 eq3 U X E1

C2 Biomas s [Solut e] Time R r E2 Solution Uptake Biomass eq4 S W eq5 [S] Ks eq2 eq1 eq3 U X E1 MyEdge

FromCe C1 ll Model code hierarchy 4 4 5 5 3 3 1 1 2 2 Respiration ToCel C2 l R r E2 Pseudo code public public class class Carbon Carbon extends extends Dynam Dynam { { private private StateVal StateVal Ks, Ks, u,

u, conc, conc, X; X; public public double double initialize() initialize() { { Ks Ks = = myEdge.getStateVal(Ks); myEdge.getStateVal(Ks); u u= = myEdge.getStateVal(u); myEdge.getStateVal(u); conc conc = = fromCell.getStateVal([S]); fromCell.getStateVal([S]); X X= = toCell.getStateVal(X); toCell.getStateVal(X); return return 0.0; 0.0; } } public public double double calculate() calculate() { { return return u.v u.v ** (Ks.v (Ks.v // (Ks.v (Ks.v + + conc.v)) conc.v)) ** X.v; X.v; } }}

} MULTIPLE INTERACTIVE CURRENCIES Microbial uptake and respiration HorzGroundwaterFlux Q S Water flux and solute transport W Q W S [S ] Ks S [S ] Ks U X R r Resp Uptake Biomass S

U X U X R r Q S W S [S ] Q S Ks R r CODE REUSE AND RECOMBINATION Biomass Surfac e Wat er Flux Biomass Horizo ntal G W Flu x SurfaceWater

SWFlu x al Ar e a k e t Up GroundWater n t io a r spi Re CO 2 GWSW Exchange H220 DOC SWFlu x al Ar e a k e GWSW pt U H CO2 o r i zonta Exchange on l at i

G r i W Flux Horizo sp nt Re H22O Biomass al GWFlu DOC x OC OC M-M ake t Up SurfaceWater CO2 on at i r i sp Re M-M ke ta Up Advect iv e Solute Flux

PARALLEL PROCESSING Step 1: Perform Step 2: Use parallel NEO multiple independent processing to model model executions (with expedite run-time of spawner different individual model parameters) executions. Model Model simultaneously Speeds execution execution applications of across multiple s processing highly detailed or threads. Speeds complex Processin applications such Processin models. g threads g threads as sensitivity analyses. Model outputs Model output THE BOTTOM LINE As a modeling framework, NEO allows:

Specification of model parameters, structure, and algorithms at run time NEO facilitates: Rapid model development Simple management of code complexity Addition and removal of model dynamics Applications on HPC platforms Maintenance, management and execution of multiple model variants SYSTEM LEVEL HYPOTHESIS TESTING Hypothesis testing requires making predictions At a whole-system level, a model is required Models variants are competing hypotheses Complexity can be added/removed Alternative behaviors can be substituted Empirical data are used to reject models Last model standing (if any) is supported SYNERGY WITH BAYESIAN

APPROACHES? Sources of error in model assessment Empirical data Model parameters Model structure Bayesian approaches presume that model structure is fixed. NEO opens the possibility of Bayesian assessment to determine the probability of alternative model structures. http://www.montana.edu/FLL A) Model B) Illustrative code 4 4 5 5 Behaviors 3 3 Deviant Holons Packages

Model 1 1 2 2 public public class class Carbon Carbon extends extends Dynam Dynam { { private private StateVal StateVal conc, conc, water; water; public public double double initialize() initialize() { { conc conc = = fromCell.getStateVal(CarbonConc); fromCell.getStateVal(CarbonConc); water water = = myEdge.getStateVal(Water); myEdge.getStateVal(Water); return return 0.0; 0.0; } } public public double double calculate()

calculate() { { return conc * water; } } return conc * water; } } public public class class Carbon Carbon extends extends Dynam Dynam { { private StateVal k, u_max, conc, private StateVal k, u_max, conc, biomass; biomass; public public double double initialize() initialize() { { k k= = myholon.getStateVal(K); myholon.getStateVal(K); u_max u_max = = myEdge.getStateVal(u_max); myEdge.getStateVal(u_max); conc conc = = fromCell.getStateVal(CarbonConc); fromCell.getStateVal(CarbonConc);

biomass biomass = = toCell.getStateVal(Carbon); toCell.getStateVal(Carbon); return return 0.0; 0.0; } } public double calculate() public double calculate() {Dynam public class Carbon extends public class Carbon extends{ Dynam { { return u_max * (k / (k + conc)) return u_max * (k / (k + conc)) ** private

private StateVal StateVal r, r, biomass; biomass; biomass; } biomass; }} } public initialize() public double double initialize() { { rr = = myEdge.getStateVal(r); myEdge.getStateVal(r); biomass biomass = = fromCell.getStateVal(Carbon); fromCell.getStateVal(Carbon); return return 0.0; 0.0; } } public double calculate() public double calculate() { { return return -r -r ** biomass; biomass; } }} } 1 2

ECOSYSTEMS AS MULTI-CURRENCY FLUX NETS Model of solute transport/processing (currencies are water, heat, carbon, nitrogen, oxygen) within a linked hydro-biological system (network) Helton et al. Accepted PHYSICAL SYSTEMS AS FLUX NETWORKS Surface and ground water (currency) flux across and through the Nyack Floodplain, Middle Fork Flathead River BIOTIC COMMUNITIES AS FLUX NETWORKS Baxter et al. 2005 od web (network) representing carbon (currency) flux

Recently Viewed Presentations

  • Parole - Weebly

    Parole - Weebly

    The Board contributes to the protection of society by facilitating as appropriate, the timely reintegration of offenders as law-abiding citizens., according to the Corrections and Conditional Release Act (CCRA)
  • Calculus 2.4 - UH

    Calculus 2.4 - UH

    The slope of a line is given by: The slope at (1,1) can be approximated by the slope of the secant through (4,16). We could get a better approximation if we move the point closer to (1,1). ie: (3,9) Even...
  • Présentation PowerPoint - AQICESH

    Présentation PowerPoint - AQICESH

    20th Anniversary Symposium of the AQICESH Experience-innovation-inclusion Background In 1976: Charter of Human Rights and Freedoms Prohibits all forms of discrimination based on a handicap or the use of any means to palliate a handicap.
  • MS Algebra A-REI-1 - helpmeteach.weebly.com

    MS Algebra A-REI-1 - helpmeteach.weebly.com

    MS Algebra A-REI-1 - Ch. 3.2Properties of Equality & Multiple Step Problems. Mr. Deyo. ... Kim has a job where she makes . $8 per hour plus tips. Yesterday, Kim made. $53, including $13 from tips. How many hours did...
  • Canada and Conflict in the Cold War

    Canada and Conflict in the Cold War

    The Cold War was brought home to Canada by the Gouzenko Affair. Igor Gouzenko, a clerk at the Soviet Embassy in Ottawa exposed a Soviet spy ring in Canada in 1945. Newspaper headlines read: "It's War! It's Russia!". 18 people...
  • Slide 0

    Slide 0

    Countermeasures and Emergency Management Considerations Matthew Minson, MD OPSP/ASPR/OS/USDHHS Countermeasure Distribution, Dispensing, and Delivery Current strategies for countermeasure delivery are generally classified by the following: - Post Exposure Prophylaxis PEP (Given to the public after exposure or presumed exposure during...
  • Nutrient Cycles

    Nutrient Cycles

    How are Nutrients Cycled? Three main nutrients cycles: Carbon cycle. Nitrogen cycle. Phosphorous cycle. Nutrient cycles describe the flow of nutrients in and out of stores as a result of biotic and abiotic processes.
  • Community Midwifery Service

    Community Midwifery Service

    Lesley Cookson & Katherine O'Connor. RCGP Clinical Champions . A 1 hour teaching session at your practice, timing to fit around you. We will provide education on Perinatal Mental Health and information regarding local services and resources. Contact us with...