hi,
i am a user of ROMS v3.7 and am attempting to add a sediment biology processes module to the CoSiNE15 biology model.
i am posting to the ROMS Sediment board because my question is about the fluxes between the sediment and the water
column, something that appears to be similar in the sediment model.
the sediment biology model computes fluxes of nutrients and oxygen across the sediment-water interface, similar
to how the sediment model computes fluxes of sediments. my question concerns the use of the option ANA_BPFLUX,
which is defined in both of the include files for the sediment test cases (sed_toy.h and sed_test1.h). this option
appears to zero out the fluxes of tracers at the bottom. however, in sed_fluxes.F, the computed erosion flux is used
to modify the sediment concentration at the bottom level. is the zeroing of btflx in subroutine ana_btflux applied so
that the vertical diffusion timestepping is done assuming zero flux at the bottom? this seems inconsistent with the application
of the erosion flux in sed_fluxes.F.
in my coding of the sediment biology module, i have used the sediment module as a template, but i wanted to make
sure that i am doing this correctly. can someone help me to understand the above issue?
thanks,
dave
Fluxes at sediment-water interface
Moderators: arango, robertson, rsignell
Re: Fluxes at sediment-water interface
hi all,
i apologize for the vaguely worded "question" in my last post.
let me follow up to share my newly-acquired understanding of the ANA_BPFLUX option.
at least with the ROMS version i am using (v3.7), undefining the ANA_BPFLUX option causes
the model to attempt to read bottom tracer fluxes from input forcing files. in my case, the
varinfo.dat does not have these fluxes defined and the variable ID idTbot for non-active tracers
is always zero (idTbot(itemp) and idTbot(isalt) are set in mod_ncparam but for the other tracers
the idTbot values are not set), so the model fails when trying to read these fluxes. so, it appears that unless
you need to specify bottom tracer fluxes (non-active tracers) from forcing files, ANA_BPFLUX
needs to be defined.
the use of ANA_BPFLUX sets bottom tracer fluxes to zero for the timestepping of the vertical
diffusion (unless you modify the code in ana_btflux.h to set them to non-zero values).
my concern was that this seemed inconsistent with the non-zero bottom fluxes computed in,
for example, the sediment module or in a biology module that includes sediment diagenesis processes.
in the sediment module (and in my modified Cosine15 model), bottom fluxes are used to update
the near-bed tracer concentration before the vertical diffusion timestepping is done. so it makes
sense that the diffusion step is done with zero bottom fluxes. otherwise the fluxes would be imposed twice.
comments, etc from those who are more knowledgeable about the workings of the model are welcome,
but i think that i am all set now.
many thanks to courtney harris and julia moriarty, who responded privately to my original post
and helped set me straight.
dave
i apologize for the vaguely worded "question" in my last post.
let me follow up to share my newly-acquired understanding of the ANA_BPFLUX option.
at least with the ROMS version i am using (v3.7), undefining the ANA_BPFLUX option causes
the model to attempt to read bottom tracer fluxes from input forcing files. in my case, the
varinfo.dat does not have these fluxes defined and the variable ID idTbot for non-active tracers
is always zero (idTbot(itemp) and idTbot(isalt) are set in mod_ncparam but for the other tracers
the idTbot values are not set), so the model fails when trying to read these fluxes. so, it appears that unless
you need to specify bottom tracer fluxes (non-active tracers) from forcing files, ANA_BPFLUX
needs to be defined.
the use of ANA_BPFLUX sets bottom tracer fluxes to zero for the timestepping of the vertical
diffusion (unless you modify the code in ana_btflux.h to set them to non-zero values).
my concern was that this seemed inconsistent with the non-zero bottom fluxes computed in,
for example, the sediment module or in a biology module that includes sediment diagenesis processes.
in the sediment module (and in my modified Cosine15 model), bottom fluxes are used to update
the near-bed tracer concentration before the vertical diffusion timestepping is done. so it makes
sense that the diffusion step is done with zero bottom fluxes. otherwise the fluxes would be imposed twice.
comments, etc from those who are more knowledgeable about the workings of the model are welcome,
but i think that i am all set now.
many thanks to courtney harris and julia moriarty, who responded privately to my original post
and helped set me straight.
dave