Functionals: Difference between revisions
No edit summary (change visibility) |
→Include files: fixes pointed out by rsoutelino on the forum. (change visibility) |
||
(7 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
<div class="title">Functionals</div> | |||
== | The directory '''ROMS/Functionals''' contains the source file [[Source#analytical.F | analytical.F]] as well as a number of files of the form '''ana_xxx.h'''. Each of these include files contains the analytic expressions for its respective functionality. For instance, a simple box grid can be represented analytically internal to the model more easily than preparing a grid file with some outside program. Those expressions will be found inside [[Functionals#ana_grid.h | ana_grid.h]]. The version of [[Functionals#ana_grid.h | ana_grid.h]] found in the '''ROMS/Functionals''' directory contains everything for the example problems distributed with ROMS (unless it requires an external grid file). If you choose to build analytic grids for your own applications, it is recommended that you use that in '''User/Functionals''' instead, or provide a version in some third location pointed to by [[makefile#MY_ANALYTICAL_DIR | MY_ANALYTICAL_DIR]]. | ||
==Include files== | |||
<section begin=ana_biology.h />;<span id="ana_biology.h"></span>[[ana_biology.h]] | <section begin=ana_biology.h />;<span id="ana_biology.h"></span>[[ana_biology.h]] | ||
Line 34: | Line 36: | ||
<section begin=ana_hmixcoef.h />;<span id="ana_hmixcoef.h"></span>[[ana_hmixcoef.h]] | <section begin=ana_hmixcoef.h />;<span id="ana_hmixcoef.h"></span>[[ana_hmixcoef.h]] | ||
:For | :For rescaling horizontal mixing coefficients according to the grid size. | ||
:'''cpp flag = '''[[Options#VISC_GRID | VISC_GRID]] | :'''cpp flag = '''[[Options#VISC_GRID | VISC_GRID]] | ||
:'''cpp flag = '''[[Options#DIFF_GRID | DIFF_GRID]] | :'''cpp flag = '''[[Options#DIFF_GRID | DIFF_GRID]] | ||
Line 49: | Line 51: | ||
<section begin=ana_m2clima.h />;<span id="ana_m2clima.h"></span>[[ana_m2clima.h]] | <section begin=ana_m2clima.h />;<span id="ana_m2clima.h"></span>[[ana_m2clima.h]] | ||
:For providing analytic 2-D momentum climatology. | :For providing analytic 2-D momentum climatology. | ||
:'''cpp flag = '''[[Options#ANA_M2CLIMA | | :'''cpp flag = '''[[Options#ANA_M2CLIMA | ANA_M2CLIMA]] | ||
:'''cpp flag = '''[[Options#M2CLIMATOLOGY | M2CLIMATOLOGY]] <section end=ana_m2clima.h /> | :'''cpp flag = '''[[Options#M2CLIMATOLOGY | M2CLIMATOLOGY]] <section end=ana_m2clima.h /> | ||
Line 69: | Line 71: | ||
:'''cpp flag = '''[[Options#MASKING | MASKING]] <section end=ana_mask.h /> | :'''cpp flag = '''[[Options#MASKING | MASKING]] <section end=ana_mask.h /> | ||
<section begin= | <section begin=ana_nudgcoef.h />;<span id="ana_nudgcoef.h"></span>[[ana_nudgcoef.h]] | ||
:For providing analytic atmospheric | :For providing analytic nudging coefficient timescales. | ||
:'''cpp flag = '''[[Options# | :'''cpp flag = '''[[Options#NUDGING_COFF | NUDGING_COFF]] <section end=ana_nudgcoef.h /> | ||
<section begin=ana_pair.h />;<span id="ana_pair.h"></span>[[ana_pair.h]] | |||
:For providing analytic atmospheric pressure. | |||
:'''cpp flag = '''[[Options#ANA_PAIR | ANA_PAIR]] <section end=ana_pair.h /> | |||
<section begin=ana_passive.h />;<span id="ana_passive.h"></span>[[ana_passive.h]] | |||
:For providing analytic passive tracer initial conditions. | |||
:'''cpp flag = '''[[Options#ANA_PASSIVE | ANA_PASSIVE]] | |||
:'''cpp flag = '''[[Options#T_PASSIVE | T_PASSIVE]] <section end=ana_passive.h /> | |||
<section begin=ana_perturb.h />;<span id="ana_perturb.h"></span>[[ana_perturb.h]] | |||
:For providing perturbations to the initial conditions. | |||
:'''cpp flag = '''[[Options#ANA_PERTURB | ANA_PERTURB]] <section end=ana_perturb.h /> | |||
<section begin=ana_psource.h />;<span id="ana_psource.h"></span>[[ana_psource.h]] | |||
:For providing analytic point source parameters. | |||
:'''cpp flag = '''[[Options#ANA_PSOURCE | ANA_PSOURCE]] | |||
:'''cpp flag = '''[[Options#TS_PSOURCE | TS_PSOURCE]] | |||
:'''cpp flag = '''[[Options#UV_PSOURCE | UV_PSOURCE]] <section end=ana_psource.h /> | |||
<section begin=ana_rain.h />;<span id="ana_rain.h"></span>[[ana_rain.h]] | |||
:For providing analytic atmospheric rainfall rates. | |||
:'''cpp flag = '''[[Options#ANA_RAIN | ANA_RAIN]] <section end=ana_rain.h /> | |||
<section begin=ana_scope.h />;<span id="ana_scope.h"></span>[[ana_scope.h]] | |||
:For providing analytic adjoint sensitivity spatial scope masking arrays. | |||
:'''cpp flag = '''[[Options#ANA_GRID | ANA_GRID]] <section end=ana_scope.h /> | |||
<section begin=ana_sediment.h />;<span id="ana_sediment.h"></span>[[ana_sediment.h]] | |||
:For providing analytic initial conditions for the sediments and bed conditions. | |||
:'''cpp flag = '''[[Options#ANA_SEDIMENT | ANA_SEDIMENT]] <section end=ana_sediment.h /> | |||
<section begin=ana_smflux.h />;<span id="ana_smflux.h"></span>[[ana_smflux.h]] | |||
:For providing analytic surface momentum flux (wind stress). | |||
:'''cpp flag = '''[[Options#ANA_SMFLUX | ANA_SMFLUX]] <section end=ana_smflux.h /> | |||
<section begin=ana_specir.h />;<span id="ana_specir.h"></span>[[ana_specir.h]] | |||
:For providing analytic calculation of spectral downwelling irradiance. | |||
:'''cpp flag = '''[[Options#ECOSIM | ECOSIM]] <section end=ana_specir.h /> | |||
<section begin=ana_spinning.h />;<span id="ana_spinning.h"></span>[[ana_spinning.h]] | |||
:For providing analytic time variable rotation forces. | |||
:'''cpp flag = '''[[Options#ANA_SPINNING | ANA_SPINNING]] <section end=ana_spinning.h /> | |||
<section begin=ana_srflux.h />;<span id="ana_srflux.h"></span>[[ana_srflux.h]] | |||
:For providing analytic incoming shortwave radiation. | |||
:'''cpp flag = '''[[Options#ANA_SRFLUX | ANA_SRFLUX]] | |||
:'''cpp flag = '''[[Options#DIURNAL_SRFLUX | DIURNAL_SRFLUX]] <section end=ana_srflux.h /> | |||
<section begin= | <section begin=ana_ssh.h />;<span id="ana_ssh.h"></span>[[ana_ssh.h]] | ||
:For providing analytic | :For providing analytic sea surface height climatology. | ||
:'''cpp flag = '''[[Options# | :'''cpp flag = '''[[Options#ANA_SSH | ANA_SSH]] | ||
:'''cpp flag = '''[[Options#ZCLIMATOLOGY | ZCLIMATOLOGY]] <section end=ana_ssh.h /> | |||
<section begin= | <section begin=ana_sss.h />;<span id="ana_sss.h"></span>[[ana_sss.h]] | ||
:For providing analytic | :For providing analytic sea surface salinity. | ||
:'''cpp flag = '''[[Options# | :'''cpp flag = '''[[Options#ANA_SSS | ANA_SSS]] | ||
:'''cpp flag = '''[[Options#SALINITY | SALINITY]] | |||
:'''cpp flag = '''[[Options#SCORRECTION | SCORRECTION]] | |||
:'''cpp flag = '''[[Options#SRELAXATION | SRELAXATION]] <section end=ana_sss.h /> | |||
<section begin= | <section begin=ana_sst.h />;<span id="ana_sst.h"></span>[[ana_sst.h]] | ||
:For providing analytic atmospheric | :For providing analytic atmospheric rainfall rates. | ||
:'''cpp flag = '''[[Options# | :'''cpp flag = '''[[Options#ANA_SST | ANA_SST]] | ||
:'''cpp flag = '''[[Options#QCORRECTION | QCORRECTION]] <section end=ana_sst.h /> | |||
<section begin= | <section begin=ana_stflux.h />;<span id="ana_stflux.h"></span>[[ana_stflux.h]] | ||
:For providing analytic | :For providing analytic surface tracer fluxes. | ||
:'''cpp flag = '''[[Options# | :'''cpp flag = '''[[Options#ANA_STFLUX | ANA_STFLUX]] | ||
:'''cpp flag = '''[[Options#ANA_SSFLUX | ANA_SSFLUX]] | |||
:'''cpp flag = '''[[Options#ANA_SPFLUX | ANA_SPFLUX]] <section end=ana_stflux.h /> | |||
<section begin= | <section begin=ana_tair.h />;<span id="ana_tair.h"></span>[[ana_tair.h]] | ||
:For providing analytic | :For providing analytic air temperatures. | ||
:'''cpp flag = '''[[Options# | :'''cpp flag = '''[[Options#ANA_TAIR | ANA_TAIR]] <section end=ana_tair.h /> | ||
<section begin= | <section begin=ana_tclima.h />;<span id="ana_tclima.h"></span>[[ana_tclima.h]] | ||
:For providing analytic atmospheric | :For providing analytic atmospheric rainfall rates. | ||
:'''cpp flag = '''[[Options# | :'''cpp flag = '''[[Options#ANA_TCLIMA | ANA_TCLIMA]] | ||
:'''cpp flag = '''[[Options#TCLIMATOLOGY | TCLIMATOLOGY]] <section end=ana_tclima.h /> | |||
<section begin= | <section begin=ana_tobc.h />;<span id="ana_tobc.h"></span>[[ana_tobc.h]] | ||
:For providing analytic | :For providing analytic tracer open boundary conditions. | ||
:'''cpp flag = '''[[Options# | :'''cpp flag = '''[[Options#ANA_TOBC | ANA_TOBC]] <section end=ana_tobc.h /> | ||
<section begin=ana_vmix.h />;<span id="ana_vmix.h"></span>[[ana_vmix.h]] | |||
:For providing analytic vertical mixing coefficients. | |||
:'''cpp flag = '''[[Options#ANA_VMIX | ANA_VMIX]] <section end=ana_vmix.h /> | |||
<section begin=ana_winds.h />;<span id="ana_winds.h"></span>[[ana_winds.h]] | |||
:For providing analytic atmospheric winds. | |||
:'''cpp flag = '''[[Options#ANA_WINDS | ANA_WINDS]] <section end=ana_winds.h /> | |||
<section begin=ana_wwave.h />;<span id="ana_wwave.h"></span>[[ana_wwave.h]] | |||
:For providing analytic wind-induced surface waves (amplitude, direction, and period). | |||
:'''cpp flag = '''[[Options#ANA_WWAVE | ANA_WWAVE]] <section end=ana_wwave.h /> | |||
ana_wwave.h |
Latest revision as of 01:04, 28 November 2010
The directory ROMS/Functionals contains the source file analytical.F as well as a number of files of the form ana_xxx.h. Each of these include files contains the analytic expressions for its respective functionality. For instance, a simple box grid can be represented analytically internal to the model more easily than preparing a grid file with some outside program. Those expressions will be found inside ana_grid.h. The version of ana_grid.h found in the ROMS/Functionals directory contains everything for the example problems distributed with ROMS (unless it requires an external grid file). If you choose to build analytic grids for your own applications, it is recommended that you use that in User/Functionals instead, or provide a version in some third location pointed to by MY_ANALYTICAL_DIR.
Include files
- ana_biology.h
- For providing analytic initial conditions for the biological tracers.
- cpp flag = ANA_BIOLOGY
- ana_bmflux.h
- For providing spacially varying roughness (z0) for bottom momentum stresses.
- cpp flag = ANA_BMFLUX
- ana_btflux.h
- For providing analytic bottom flux on tracers (usually zero).
- cpp flag = ANA_BTFLUX
- cpp flag = SEDIMENT
- ana_cloud.h
- For providing analytic atmospheric cloud fraction.
- cpp flag = ANA_CLOUD
- cpp flag = CLOUDS
- ana_diag.h
- For providing specialized diagnostics during runtime.
- cpp flag = ANA_DIAG
- ana_fsobc.h
- For providing analytic free surface boundary conditions.
- cpp flag = ANA_FSOBC
- ana_grid.h
- For providing analytic grid information.
- cpp flag = ANA_GRID
- ana_hmixcoef.h
- For rescaling horizontal mixing coefficients according to the grid size.
- cpp flag = VISC_GRID
- cpp flag = DIFF_GRID
- cpp flag = SPONGE
- ana_humid.h
- For providing analytic atmospheric humidity.
- cpp flag = ANA_HUMID
- ana_initial.h
- For providing analytic initial conditions.
- cpp flag = ANA_INITIAL
- ana_m2clima.h
- For providing analytic 2-D momentum climatology.
- cpp flag = ANA_M2CLIMA
- cpp flag = M2CLIMATOLOGY
- ana_m2obc.h
- For providing analytic 2-D momentum open boundary conditions.
- cpp flag = ANA_M2OBC
- ana_m3clima.h
- For providing analytic 3-D momentum climatology.
- cpp flag = ANA_M3CLIMA
- ana_m3obc.h
- For providing analytic 3-D momentum open boundary conditions.
- cpp flag = ANA_M3OBC
- ana_mask.h
- For providing analytic land masks.
- cpp flag = ANA_GRID
- cpp flag = MASKING
- ana_nudgcoef.h
- For providing analytic nudging coefficient timescales.
- cpp flag = NUDGING_COFF
- ana_pair.h
- For providing analytic atmospheric pressure.
- cpp flag = ANA_PAIR
- ana_passive.h
- For providing analytic passive tracer initial conditions.
- cpp flag = ANA_PASSIVE
- cpp flag = T_PASSIVE
- ana_perturb.h
- For providing perturbations to the initial conditions.
- cpp flag = ANA_PERTURB
- ana_psource.h
- For providing analytic point source parameters.
- cpp flag = ANA_PSOURCE
- cpp flag = TS_PSOURCE
- cpp flag = UV_PSOURCE
- ana_rain.h
- For providing analytic atmospheric rainfall rates.
- cpp flag = ANA_RAIN
- ana_scope.h
- For providing analytic adjoint sensitivity spatial scope masking arrays.
- cpp flag = ANA_GRID
- ana_sediment.h
- For providing analytic initial conditions for the sediments and bed conditions.
- cpp flag = ANA_SEDIMENT
- ana_smflux.h
- For providing analytic surface momentum flux (wind stress).
- cpp flag = ANA_SMFLUX
- ana_specir.h
- For providing analytic calculation of spectral downwelling irradiance.
- cpp flag = ECOSIM
- ana_spinning.h
- For providing analytic time variable rotation forces.
- cpp flag = ANA_SPINNING
- ana_srflux.h
- For providing analytic incoming shortwave radiation.
- cpp flag = ANA_SRFLUX
- cpp flag = DIURNAL_SRFLUX
- ana_ssh.h
- For providing analytic sea surface height climatology.
- cpp flag = ANA_SSH
- cpp flag = ZCLIMATOLOGY
- ana_sss.h
- For providing analytic sea surface salinity.
- cpp flag = ANA_SSS
- cpp flag = SALINITY
- cpp flag = SCORRECTION
- cpp flag = SRELAXATION
- ana_sst.h
- For providing analytic atmospheric rainfall rates.
- cpp flag = ANA_SST
- cpp flag = QCORRECTION
- ana_stflux.h
- For providing analytic surface tracer fluxes.
- cpp flag = ANA_STFLUX
- cpp flag = ANA_SSFLUX
- cpp flag = ANA_SPFLUX
- ana_tair.h
- For providing analytic air temperatures.
- cpp flag = ANA_TAIR
- ana_tclima.h
- For providing analytic atmospheric rainfall rates.
- cpp flag = ANA_TCLIMA
- cpp flag = TCLIMATOLOGY
- ana_tobc.h
- For providing analytic tracer open boundary conditions.
- cpp flag = ANA_TOBC
- ana_vmix.h
- For providing analytic vertical mixing coefficients.
- cpp flag = ANA_VMIX
- ana_winds.h
- For providing analytic atmospheric winds.
- cpp flag = ANA_WINDS
- ana_wwave.h
- For providing analytic wind-induced surface waves (amplitude, direction, and period).
- cpp flag = ANA_WWAVE