[2027] | 1 | MODULE step_oce |
---|
| 2 | !!====================================================================== |
---|
| 3 | !! *** MODULE step_oce *** |
---|
[2382] | 4 | !! Ocean time-stepping : module used in both initialisation phase and time stepping |
---|
[2104] | 5 | !!====================================================================== |
---|
[2382] | 6 | !! History : 3.3 ! 2010-08 (C. Ethe) Original code - reorganisation of the initial phase |
---|
[2287] | 7 | !!---------------------------------------------------------------------- |
---|
[2104] | 8 | USE oce ! ocean dynamics and tracers variables |
---|
[3764] | 9 | USE dom_oce ! ocean space and time domain variables |
---|
[2104] | 10 | USE zdf_oce ! ocean vertical physics variables |
---|
| 11 | USE ldftra_oce ! ocean tracer - trends |
---|
| 12 | USE ldfdyn_oce ! ocean dynamics - trends |
---|
[4292] | 13 | USE divcur ! hor. divergence and curl (div & cur routines) |
---|
[2104] | 14 | USE in_out_manager ! I/O manager |
---|
| 15 | USE iom ! |
---|
[2027] | 16 | USE lbclnk |
---|
[3769] | 17 | USE restart ! restart |
---|
| 18 | #if defined key_iomput |
---|
| 19 | USE xios |
---|
| 20 | #endif |
---|
[2027] | 21 | |
---|
[2104] | 22 | USE daymod ! calendar (day routine) |
---|
[2027] | 23 | |
---|
[2104] | 24 | USE sbcmod ! surface boundary condition (sbc routine) |
---|
| 25 | USE sbcrnf ! surface boundary condition: runoff variables |
---|
| 26 | USE sbccpl ! surface boundary condition: coupled formulation (call send at end of step) |
---|
[8059] | 27 | USE sbcflx ! surface boundary condition: Fluxes |
---|
[4990] | 28 | USE sbc_oce ! surface boundary condition: ocean |
---|
[3294] | 29 | USE sbctide ! Tide initialisation |
---|
[5501] | 30 | USE sbcapr ! surface boundary condition: ssh_ib required by bdydta |
---|
[11277] | 31 | USE sbcwave ! Wave intialisation |
---|
[2027] | 32 | |
---|
[2104] | 33 | USE traqsr ! solar radiation penetration (tra_qsr routine) |
---|
[8059] | 34 | USE tradwl ! POLCOMS style solar radiation (tra_dwl routine) |
---|
[2104] | 35 | USE trasbc ! surface boundary condition (tra_sbc routine) |
---|
| 36 | USE trabbc ! bottom boundary condition (tra_bbc routine) |
---|
| 37 | USE trabbl ! bottom boundary layer (tra_bbl routine) |
---|
| 38 | USE tradmp ! internal damping (tra_dmp routine) |
---|
| 39 | USE traadv ! advection scheme control (tra_adv_ctl routine) |
---|
| 40 | USE traldf ! lateral mixing (tra_ldf routine) |
---|
| 41 | ! zdfkpp ! KPP non-local tracer fluxes (tra_kpp routine) |
---|
| 42 | USE trazdf ! vertical mixing (tra_zdf routine) |
---|
| 43 | USE tranxt ! time-stepping (tra_nxt routine) |
---|
| 44 | USE tranpc ! non-penetrative convection (tra_npc routine) |
---|
[2027] | 45 | |
---|
[2104] | 46 | USE eosbn2 ! equation of state (eos_bn2 routine) |
---|
[2027] | 47 | |
---|
[2104] | 48 | USE dynadv ! advection (dyn_adv routine) |
---|
| 49 | USE dynbfr ! Bottom friction terms (dyn_bfr routine) |
---|
| 50 | USE dynvor ! vorticity term (dyn_vor routine) |
---|
| 51 | USE dynhpg ! hydrostatic pressure grad. (dyn_hpg routine) |
---|
| 52 | USE dynldf ! lateral momentum diffusion (dyn_ldf routine) |
---|
| 53 | USE dynzdf ! vertical diffusion (dyn_zdf routine) |
---|
| 54 | USE dynspg_oce ! surface pressure gradient (dyn_spg routine) |
---|
| 55 | USE dynspg ! surface pressure gradient (dyn_spg routine) |
---|
[3294] | 56 | USE dynnept ! simp. form of Neptune effect(dyn_nept_cor routine) |
---|
| 57 | |
---|
[2104] | 58 | USE dynnxt ! time-stepping (dyn_nxt routine) |
---|
[2027] | 59 | |
---|
[5329] | 60 | USE stopar ! Stochastic parametrization (sto_par routine) |
---|
| 61 | USE stopts |
---|
| 62 | |
---|
[3294] | 63 | USE bdy_par ! for lk_bdy |
---|
[3651] | 64 | USE bdy_oce ! for dmp logical |
---|
[3294] | 65 | USE bdydta ! open boundary condition data (bdy_dta routine) |
---|
[3651] | 66 | USE bdytra ! bdy cond. for tracers (bdy_tra routine) |
---|
| 67 | USE bdydyn3d ! bdy cond. for baroclinic vel. (bdy_dyn3d routine) |
---|
[2027] | 68 | |
---|
[4292] | 69 | USE sshwzv ! vertical velocity and ssh (ssh_nxt routine) |
---|
| 70 | ! (ssh_swp routine) |
---|
| 71 | ! (wzv routine) |
---|
| 72 | USE domvvl ! variable vertical scale factors (dom_vvl_sf_nxt routine) |
---|
| 73 | ! (dom_vvl_sf_swp routine) |
---|
[2027] | 74 | |
---|
[2104] | 75 | USE ldfslp ! iso-neutral slopes (ldf_slp routine) |
---|
| 76 | USE ldfeiv ! eddy induced velocity coef. (ldf_eiv routine) |
---|
[3634] | 77 | USE ldftra_smag ! Smagirinsky diffusion (ldftra_smag routine) |
---|
| 78 | USE ldfdyn_smag ! Smagorinsky viscosity (ldfdyn_smag routine) |
---|
[2027] | 79 | |
---|
[2104] | 80 | USE zdftmx ! tide-induced vertical mixing (zdf_tmx routine) |
---|
| 81 | USE zdfbfr ! bottom friction (zdf_bfr routine) |
---|
| 82 | USE zdftke ! TKE vertical mixing (zdf_tke routine) |
---|
[2329] | 83 | USE zdfgls ! GLS vertical mixing (zdf_gls routine) |
---|
[2104] | 84 | USE zdfkpp ! KPP vertical mixing (zdf_kpp routine) |
---|
| 85 | USE zdfddm ! double diffusion mixing (zdf_ddm routine) |
---|
| 86 | USE zdfevd ! enhanced vertical diffusion (zdf_evd routine) |
---|
| 87 | USE zdfric ! Richardson vertical mixing (zdf_ric routine) |
---|
| 88 | USE zdfmxl ! Mixed-layer depth (zdf_mxl routine) |
---|
[11277] | 89 | USE zdfqiao !Qiao module wave induced mixing (zdf_qiao routine) |
---|
[2027] | 90 | |
---|
[2104] | 91 | USE zpshde ! partial step: hor. derivative (zps_hde routine) |
---|
[2027] | 92 | |
---|
[2104] | 93 | USE diawri ! Standard run outputs (dia_wri routine) |
---|
| 94 | USE diaptr ! poleward transports (dia_ptr routine) |
---|
[3294] | 95 | USE diadct ! sections transports (dia_dct routine) |
---|
[2104] | 96 | USE diaar5 ! AR5 diagnosics (dia_ar5 routine) |
---|
| 97 | USE diahth ! thermocline depth (dia_hth routine) |
---|
| 98 | USE diafwb ! freshwater budget (dia_fwb routine) |
---|
[2148] | 99 | USE diahsb ! heat, salt and volume budgets (dia_hsb routine) |
---|
[3294] | 100 | USE diaharm |
---|
[2104] | 101 | USE flo_oce ! floats variables |
---|
| 102 | USE floats ! floats computation (flo_stp routine) |
---|
[2027] | 103 | |
---|
[4152] | 104 | USE crsfld ! Standard output on coarse grid (crs_fld routine) |
---|
| 105 | |
---|
[3294] | 106 | USE asminc ! assimilation increments (tra_asm_inc routine) |
---|
| 107 | ! (dyn_asm_inc routine) |
---|
[3764] | 108 | USE asmbkg |
---|
[2104] | 109 | USE stpctl ! time stepping control (stp_ctl routine) |
---|
| 110 | USE prtctl ! Print control (prt_ctl routine) |
---|
[2027] | 111 | |
---|
[8059] | 112 | USE harmonic_analysis ! harmonic analysis of tides (harm_ana routine) |
---|
| 113 | USE bdytides ! harmonic analysis of tides (harm_ana routine) |
---|
[2239] | 114 | USE diaobs ! Observation operator |
---|
| 115 | |
---|
[8561] | 116 | USE diurnal_bulk ! diurnal SST bulk routines (diurnal_sst_takaya routine) |
---|
| 117 | USE cool_skin ! diurnal cool skin correction (diurnal_sst_coolskin routine) |
---|
| 118 | |
---|
[3764] | 119 | USE timing ! Timing |
---|
[3294] | 120 | |
---|
[2027] | 121 | #if defined key_agrif |
---|
| 122 | USE agrif_opa_sponge ! Momemtum and tracers sponges |
---|
[6204] | 123 | USE agrif_opa_update ! Update (2-way nesting) |
---|
[2027] | 124 | #endif |
---|
[3769] | 125 | #if defined key_top |
---|
| 126 | USE trcstp ! passive tracer time-stepping (trc_stp routine) |
---|
| 127 | #endif |
---|
[13576] | 128 | #if defined key_fabm |
---|
| 129 | USE par_fabm, ONLY: & ! FABM parameters |
---|
| 130 | & lk_fabm |
---|
| 131 | USE trcsms_fabm, ONLY: & ! FABM routines |
---|
| 132 | & nemo_fabm_start |
---|
| 133 | #endif |
---|
| 134 | USE diatmb ! Top,middle,bottom output |
---|
| 135 | USE dia25h ! 25h mean output |
---|
| 136 | USE diaopfoam ! FOAM operational output |
---|
[2382] | 137 | !!---------------------------------------------------------------------- |
---|
| 138 | !! NEMO/OPA 3.3 , NEMO Consortium (2010) |
---|
| 139 | !! $Id$ |
---|
| 140 | !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) |
---|
[2027] | 141 | !!====================================================================== |
---|
| 142 | END MODULE step_oce |
---|