ROMS
Loading...
Searching...
No Matches
mod_biology.F
Go to the documentation of this file.
1#include "cppdefs.h"
2/*
3** git $id$
4*************************************************** hernan g. arango ***
5** copyright(c) 2002-2025 the roms group **
6** licensed under a mit/x style license **
7** see license_roms.md **
8************************************************************************
9** **
10** this module declares ecosystem model internal parameteres. they **
11** are usually read from the appropriate input script. **
12** **
13** the current design allows the user to have a lot of latitude for **
14** customizing or adding any particular ecosystem model. **
15** **
16** each ecosystem model is composed of seven files: **
17** **
18** (1) model source and sink discretized equations: **
19** **
20** ecosim.h ecosim **
21** fennel.h bio_fennel **
22** hypoxia_srm.h hypoxia_srm **
23** nemuro.h nemuro **
24** npzd_franks.h npzd_franks **
25** npzd_iron.h npzd_iron **
26** npzd_powell.h npzd_powell **
27** red_tide.h red_tide **
28** **
29** (2) internal model parameters declaration: **
30** **
31** ecosim_mod.h **
32** fennel_mod.h **
33** hypoxia_srm_mod.h **
34** nemuro_mod.h **
35** npzd_franks_mod.h **
36** npzd_iron_mod.h **
37** npzd_powell_mod.h **
38** red_tide_mod.h **
39** **
40** (3) model parameters standard input script: **
41** **
42** ecosim.in **
43** bio_fennel.in **
44** hypoxia_srm.in **
45** nemuro.in **
46** npzd_franks.in **
47** npzd_iron.in **
48** npzd_powell.in **
49** red_tide.in **
50** **
51** (4) code to read input model parameters: **
52** **
53** ecosim_inp.h **
54** fennel_inp.h **
55** hypoxia_srm_inp.h **
56** nemuro_inp.h **
57** npzd_franks_inp.h **
58** npzd_iron_inp.h **
59** npzd_powell_inp.h **
60** red_tide_inp.h **
61** **
62** (5) code to assign indices to model variables during the **
63** reading of metadata information from "varinfo.yaml": **
64** **
65** ecosim_var.h **
66** fennel_var.h **
67** hypoxia_srm_var.h **
68** nemuro_var.h **
69** npzd_franks_var.h **
70** npzd_iron_var.h **
71** npzd_powell_var.h **
72** red_tide_var.h **
73** **
74** (6) code to define input model parameters in all output **
75** netcdf files: **
76** **
77** ecosim_def.h **
78** fennel_def.h **
79** hypoxia_srm_def.h **
80** nemuro_def.h **
81** npzd_franks_def.h **
82** npzd_iron_def.h **
83** npzd_powell_def.h **
84** red_tide_def.h **
85** **
86** (7) code to write out input model parameters in all output **
87** netcdf files: **
88** **
89** ecosim_wrt.h **
90** fennel_wrt.h **
91** hypoxia_srm_wrt.h **
92** nemuro_wrt.h **
93** npzd_franks_wrt.h **
94** npzd_iron_wrt.h **
95** npzd_powell_wrt.h **
96** red_tide_wrt.h **
97** **
98** **
99** note that all the *.h files are located in roms/nonlinear/biology **
100** and included within <...> to allow the user to customize any of **
101** them in the project directory while keeping the distributed code **
102** intact(check the build script for details). **
103** **
104************************************************************************
105*/
106
107#ifdef BIOLOGY
108# if defined BIO_FENNEL
109# include <fennel_mod.h>
110# elif defined ECOSIM
111# include <ecosim_mod.h>
112# elif defined HYPOXIA_SRM
113# include <hypoxia_srm_mod.h>
114# elif defined NEMURO
115# include <nemuro_mod.h>
116# elif defined NPZD_FRANKS
117# include <npzd_Franks_mod.h>
118# elif defined NPZD_IRON
119# include <npzd_iron_mod.h>
120# elif defined NPZD_POWELL
121# include <npzd_Powell_mod.h>
122# elif defined RED_TIDE
123# include <red_tide_mod.h>
124# else
125 MODULE mod_biology
126 END MODULE mod_biology
127# endif
128#else
129 MODULE mod_biology
130 END MODULE mod_biology
131#endif
subroutine output(ng)
Definition output.F:4