/* ** git $Id$ ** svn $Id: fennel_def.h 1151 2023-02-09 03:08:53Z arango $ *************************************************** Hernan G. Arango *** ** Copyright (c) 2002-2023 The ROMS/TOMS Group ** ** Licensed under a MIT/X style license ** ** See License_ROMS.md ** ************************************************************************ ** ** ** Defines Fennel et al. (2006) ecosystem model input parameters in ** ** output NetCDF files. It is included in routine "def_info.F". ** ** ** ************************************************************************ */ ! ! Define Fennel et al. (2006) ecosystem model parameters. ! Vinfo( 1)='BioIter' Vinfo( 2)='number of iterations to achieve convergence' status=def_var(ng, model, ncid, varid, nf90_int, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='AttSW' Vinfo( 2)='light attenuation by seawater' Vinfo( 3)='meter-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='AttChl' Vinfo( 2)='light attenuation by chlorophyll' Vinfo( 3)='meter-2 milligram_Chl-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='PARfrac' Vinfo( 2)='photosynthetically available radiation fraction' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='Vp0' Vinfo( 2)='Eppley temperature-limited growth parameter' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='I_thNH4' Vinfo( 2)='radiation threshold for nitrification' Vinfo( 3)='watt meter-2' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='D_p5NH4' Vinfo( 2)='half-saturation radiation for nitrification' Vinfo( 3)='watt meter-2' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='NitriR' Vinfo( 2)='nitrification rate' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='K_NO3' Vinfo( 2)='inverse half-saturation for phytoplankton NO3 uptake' Vinfo( 3)='meter3 millimole_N-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='K_NH4' Vinfo( 2)='inverse half-saturation for phytoplankton NH4 uptake' Vinfo( 3)='meter3 millimole_N-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='K_PO4' Vinfo( 2)='inverse half-saturation for phytoplankton PO4 uptake' Vinfo( 3)='meter3 millimole_P-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='K_Phy' Vinfo( 2)='zooplankton half-saturation constant for ingestion' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='Chl2C_m' Vinfo( 2)='maximum chlorophyll to carbon ratio' Vinfo( 3)='milligram_chl milligram_carbon-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='ChlMin' Vinfo( 2)='minimum chlorophyll threshold' Vinfo( 3)='milligram_chl meter-3' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='PhyCN' Vinfo( 2)='phytoplankton Carbon:Nitrogen ratio' Vinfo( 3)='mole_C mole_N-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='R_P2N' Vinfo( 2)='phytoplankton Phosphate:Nitrogen ratio' Vinfo( 3)='mole_P mole_N-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='PhyIP' Vinfo( 2)='phytoplankton, NH4 inhibition parameter' Vinfo( 3)='millimole_N-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='PhyIS' Vinfo( 2)='phytoplankton, initial slope of P-I curve' Vinfo( 3)='milligram_C milligram_Chl-1 watt-1 meter2 day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='PhyMin' Vinfo( 2)='minimum phytoplankton threshold' Vinfo( 3)='millimole_N meter-3' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='PhyMR' Vinfo( 2)='phytoplankton mortality rate' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='ZooAE_N' Vinfo( 2)='zooplankton mitrogen assimilation efficiency' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='ZooBM' Vinfo( 2)='rate for zooplankton basal metabolism' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='ZooCN' Vinfo( 2)='zooplankton Carbon:Nitrogen ratio' Vinfo( 3)='mole_C mole_N-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='ZooER' Vinfo( 2)='zooplankton specific excretion rate' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='ZooGR' Vinfo( 2)='zooplankton maximum growth rate' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='ZooMin' Vinfo( 2)='minimum zooplankton threshold' Vinfo( 3)='millimole_N meter-3' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='ZooMR' Vinfo( 2)='zooplankton mortality rate' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='LDeRRN' Vinfo( 2)='rate of large detritus nitrogen re-mineralization' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='LDeRRC' Vinfo( 2)='rate of large detritus carbon re-mineralization' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='CoagR' Vinfo( 2)='coagulation rate' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='SDeRRN' Vinfo( 2)='remineralization rate for small detritus nitrogen' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='SDeRRC' Vinfo( 2)='remineralization rate for small detritus carbon' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='RDeRRN' Vinfo( 2)='remineralization rate for river detritus nitrogen' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='RDeRRC' Vinfo( 2)='remineralization rate for river detritus carbon' Vinfo( 3)='day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='wPhy' Vinfo( 2)='vertical sinking velocity for phytoplankton' Vinfo( 3)='meter day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='wLDet' Vinfo( 2)='vertical sinking velocity for large detritus' Vinfo( 3)='meter day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='wSDet' Vinfo( 2)='vertical sinking velocity for small detritus' Vinfo( 3)='meter day-1' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN Vinfo( 1)='pCO2air' Vinfo( 2)='partial pressure of CO2 in the air' Vinfo( 3)='parts per million by volume' status=def_var(ng, model, ncid, varid, NF_TYPE, & & 1, (/0/), Aval, Vinfo, ncname, & & SetParAccess = .FALSE.) IF (FoundError(exit_flag, NoError, __LINE__, MyFile)) RETURN