Changeset 2188 for branches/dev_r2174_DCY/NEMO/OPA_SRC/SBC/sbcmod.F90
- Timestamp:
- 2010-10-08T10:32:36+02:00 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/dev_r2174_DCY/NEMO/OPA_SRC/SBC/sbcmod.F90
r2187 r2188 4 4 !! Surface module : provide to the ocean its surface boundary condition 5 5 !!====================================================================== 6 !! History : 3.0 ! 07-2006 (G. Madec) Original code 7 !! - ! 08-2008 (S. Masson, E. .... ) coupled interface 6 !! History : 3.0 ! 2006-07 (G. Madec) Original code 7 !! - ! 2008-08 (S. Masson, E. .... ) coupled interface 8 !! 3.3 ! 2010-10 (S. Masson) add diurnal cycle 8 9 !!---------------------------------------------------------------------- 9 10 … … 12 13 !! sbc : surface ocean momentum, heat and freshwater boundary conditions 13 14 !!---------------------------------------------------------------------- 14 USE oce ! ocean dynamics and tracers 15 USE dom_oce ! ocean space and time domain 16 USE phycst ! physical constants 17 18 USE sbc_oce ! Surface boundary condition: ocean fields 19 USE sbc_ice ! Surface boundary condition: ice fields 20 USE sbcssm ! surface boundary condition: sea-surface mean variables 21 USE sbcana ! surface boundary condition: analytical formulation 22 USE sbcflx ! surface boundary condition: flux formulation 23 USE sbcblk_clio ! surface boundary condition: bulk formulation : CLIO 24 USE sbcblk_core ! surface boundary condition: bulk formulation : CORE 25 USE sbcice_if ! surface boundary condition: ice-if sea-ice model 26 USE sbcice_lim ! surface boundary condition: LIM 3.0 sea-ice model 27 USE sbcice_lim_2 ! surface boundary condition: LIM 2.0 sea-ice model 28 USE sbccpl ! surface boundary condition: coupled florulation 15 USE oce ! ocean dynamics and tracers 16 USE dom_oce ! ocean space and time domain 17 USE phycst ! physical constants 18 USE sbc_oce ! Surface boundary condition: ocean fields 19 USE sbc_ice ! Surface boundary condition: ice fields 20 USE sbcssm ! surface boundary condition: sea-surface mean variables 21 USE sbcana ! surface boundary condition: analytical formulation 22 USE sbcflx ! surface boundary condition: flux formulation 23 USE sbcblk_clio ! surface boundary condition: bulk formulation : CLIO 24 USE sbcblk_core ! surface boundary condition: bulk formulation : CORE 25 USE sbcice_if ! surface boundary condition: ice-if sea-ice model 26 USE sbcice_lim ! surface boundary condition: LIM 3.0 sea-ice model 27 USE sbcice_lim_2 ! surface boundary condition: LIM 2.0 sea-ice model 28 USE sbccpl ! surface boundary condition: coupled florulation 29 29 USE cpl_oasis3, ONLY:lk_cpl ! are we in coupled mode? 30 USE sbcssr ! surface boundary condition: sea surface restoring31 USE sbcrnf ! surface boundary condition: runoffs32 USE sbcfwb ! surface boundary condition: freshwater budget33 USE closea ! closed sea34 35 USE prtctl ! Print control (prt_ctl routine)36 USE restart ! ocean restart37 USE iom 38 USE in_out_manager ! I/O manager30 USE sbcssr ! surface boundary condition: sea surface restoring 31 USE sbcrnf ! surface boundary condition: runoffs 32 USE sbcfwb ! surface boundary condition: freshwater budget 33 USE closea ! closed sea 34 35 USE prtctl ! Print control (prt_ctl routine) 36 USE restart ! ocean restart 37 USE iom ! IOM library 38 USE in_out_manager ! I/O manager 39 39 40 40 IMPLICIT NONE … … 49 49 # include "domzgr_substitute.h90" 50 50 !!---------------------------------------------------------------------- 51 !! NEMO/OPA 3. 0 , LOCEAN-IPSL (2008)51 !! NEMO/OPA 3.3 , NEMO-consortium (2010) 52 52 !! $Id$ 53 53 !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) 54 54 !!---------------------------------------------------------------------- 55 56 55 CONTAINS 57 56 … … 69 68 INTEGER :: icpt ! temporary integer 70 69 !! 71 NAMELIST/namsbc/ nn_fsbc, ln_ana , ln_flx, ln_blk_clio, ln_blk_core, ln_cpl, &72 & nn_ice , ln_dm2dc, ln_rnf, ln_ssr , nn_fwb, nn_ico_cpl70 NAMELIST/namsbc/ nn_fsbc, ln_ana , ln_flx, ln_blk_clio, ln_blk_core, ln_cpl , & 71 & nn_ice , ln_dm2dc, ln_rnf, ln_ssr , nn_fwb , nn_ico_cpl 73 72 !!---------------------------------------------------------------------- 74 73 … … 79 78 ENDIF 80 79 81 REWIND( numnam ) 80 REWIND( numnam ) ! Read Namelist namsbc 82 81 READ ( numnam, namsbc ) 83 82 84 ! overwrite namelist parameter using CPP key information 85 !!gm here no overwrite, test all option via namelist change: require more incore memory 86 !!gm IF( lk_sbc_cpl ) THEN ; ln_cpl = .TRUE. ; ELSE ; ln_cpl = .FALSE. ; ENDIF 87 88 IF ( Agrif_Root() ) THEN 89 IF( lk_lim2 ) nn_ice = 2 90 IF( lk_lim3 ) nn_ice = 3 91 ENDIF 92 ! 93 IF( cp_cfg == 'gyre' ) THEN 83 ! ! overwrite namelist parameter using CPP key information 84 IF( Agrif_Root() ) THEN ! AGRIF zoom 85 IF( lk_lim2 ) nn_ice = 2 86 IF( lk_lim3 ) nn_ice = 3 87 ENDIF 88 IF( cp_cfg == 'gyre' ) THEN ! GYRE configuration 94 89 ln_ana = .TRUE. 95 90 nn_ice = 0 96 91 ENDIF 97 92 98 ! Control print 99 IF(lwp) THEN 93 IF(lwp) THEN ! Control print 100 94 WRITE(numout,*) ' Namelist namsbc (partly overwritten with CPP key setting)' 101 95 WRITE(numout,*) ' frequency update of sbc (and ice) nn_fsbc = ', nn_fsbc … … 116 110 ENDIF 117 111 112 ! ! Checks: 118 113 IF( .NOT. ln_rnf ) THEN ! no specific treatment in vicinity of river mouths 119 114 ln_rnf_mouth = .false. … … 144 139 & CALL ctl_warn( 'diurnal cycle for qsr: the sampling of the diurnal cycle is too small...' ) 145 140 146 ! Choice of the Surface Boudary Condition (set nsbc)141 ! ! Choice of the Surface Boudary Condition (set nsbc) 147 142 icpt = 0 148 143 IF( ln_ana ) THEN ; nsbc = 1 ; icpt = icpt + 1 ; ENDIF ! analytical formulation … … 153 148 IF( cp_cfg == 'gyre') THEN ; nsbc = 0 ; ENDIF ! GYRE analytical formulation 154 149 IF( lk_esopa ) nsbc = -1 ! esopa test, ALL formulations 155 150 ! 156 151 IF( icpt /= 1 .AND. .NOT.lk_esopa ) THEN 157 152 WRITE(numout,*)
Note: See TracChangeset
for help on using the changeset viewer.