Changeset 2189 for CONFIG/UNIFORM/v6
- Timestamp:
- 01/31/14 15:34:39 (11 years ago)
- Location:
- CONFIG/UNIFORM/v6/IPSLCM6/SOURCES/NEMO
- Files:
-
- 2 added
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
CONFIG/UNIFORM/v6/IPSLCM6/SOURCES/NEMO/sbccpl.F90
r2132 r2189 169 169 !!---------------------------------------------------------------------- 170 170 !! NEMO/OPA 3.3 , NEMO Consortium (2010) 171 !! $Id: sbccpl.F90 3914 2013-06-12 20:17:48Z smasson$171 !! $Id: sbccpl.F90 4162 2013-11-07 10:19:49Z cetlod $ 172 172 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 173 173 !!---------------------------------------------------------------------- … … 221 221 !! 222 222 INTEGER :: jn ! dummy loop index 223 INTEGER :: ios ! Local integer output status for namelist read 223 224 REAL(wp), POINTER, DIMENSION(:,:) :: zacs, zaos 224 225 !! … … 236 237 ! ================================ ! 237 238 238 ! default definitions 239 ! ! description ! multiple ! vector ! vector ! vector ! 240 ! ! ! categories ! reference ! orientation ! grids ! 241 ! send 242 sn_snd_temp = FLD_C( 'weighted oce and ice', 'no' , '' , '' , '' ) 243 sn_snd_alb = FLD_C( 'weighted ice' , 'no' , '' , '' , '' ) 244 sn_snd_thick = FLD_C( 'none' , 'no' , '' , '' , '' ) 245 sn_snd_crt = FLD_C( 'none' , 'no' , 'spherical' , 'eastward-northward' , 'T' ) 246 sn_snd_co2 = FLD_C( 'none' , 'no' , '' , '' , '' ) 247 ! receive 248 sn_rcv_w10m = FLD_C( 'none' , 'no' , '' , '' , '' ) 249 sn_rcv_taumod = FLD_C( 'coupled' , 'no' , '' , '' , '' ) 250 sn_rcv_tau = FLD_C( 'oce only' , 'no' , 'cartesian' , 'eastward-northward', 'U,V' ) 251 sn_rcv_dqnsdt = FLD_C( 'coupled' , 'no' , '' , '' , '' ) 252 sn_rcv_qsr = FLD_C( 'oce and ice' , 'no' , '' , '' , '' ) 253 sn_rcv_qns = FLD_C( 'oce and ice' , 'no' , '' , '' , '' ) 254 sn_rcv_emp = FLD_C( 'conservative' , 'no' , '' , '' , '' ) 255 sn_rcv_rnf = FLD_C( 'coupled' , 'no' , '' , '' , '' ) 256 sn_rcv_cal = FLD_C( 'coupled' , 'no' , '' , '' , '' ) 257 sn_rcv_iceflx = FLD_C( 'none' , 'no' , '' , '' , '' ) 258 sn_rcv_co2 = FLD_C( 'none' , 'no' , '' , '' , '' ) 259 260 REWIND( numnam ) ! ... read namlist namsbc_cpl 261 READ ( numnam, namsbc_cpl ) 239 REWIND( numnam_ref ) ! Namelist namsbc_cpl in reference namelist : Variables for OASIS coupling 240 READ ( numnam_ref, namsbc_cpl, IOSTAT = ios, ERR = 901) 241 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cpl in reference namelist', lwp ) 242 243 REWIND( numnam_cfg ) ! Namelist namsbc_cpl in configuration namelist : Variables for OASIS coupling 244 READ ( numnam_cfg, namsbc_cpl, IOSTAT = ios, ERR = 902 ) 245 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_cpl in configuration namelist', lwp ) 246 WRITE ( numond, namsbc_cpl ) 262 247 263 248 IF(lwp) THEN ! control print … … 388 373 ! 389 374 IF( TRIM( sn_rcv_tau%cldes ) /= 'oce and ice' ) THEN ! 'oce and ice' case ocean stress on ocean mesh used 390 srcv(jpr_it z1:jpr_itz2)%laction = .FALSE. ! ice components not received (itx1 and ity1 used later)375 srcv(jpr_itx1:jpr_itz2)%laction = .FALSE. ! ice components not received 391 376 srcv(jpr_itx1)%clgrid = 'U' ! ocean stress used after its transformation 392 377 srcv(jpr_ity1)%clgrid = 'V' ! i.e. it is always at U- & V-points for i- & j-comp. resp. … … 407 392 SELECT CASE( TRIM( sn_rcv_emp%cldes ) ) 408 393 CASE( 'oce only' ) ; srcv( jpr_oemp )%laction = .TRUE. 409 CASE( 'conservative' ) ; srcv( (/jpr_rain, jpr_snow, jpr_ievp, jpr_tevp/) )%laction = .TRUE. 394 CASE( 'conservative' ) 395 srcv( (/jpr_rain, jpr_snow, jpr_ievp, jpr_tevp/) )%laction = .TRUE. 396 !$$ O.M. IF ( k_ice <= 1 ) srcv(jpr_ivep)%laction = .FALSE. 397 IF ( k_ice <= 1 ) srcv(jpr_ievp)%laction = .FALSE. 410 398 CASE( 'oce and ice' ) ; srcv( (/jpr_ievp, jpr_sbpr, jpr_semp, jpr_oemp/) )%laction = .TRUE. 411 399 CASE default ; CALL ctl_stop( 'sbc_cpl_init: wrong definition of sn_rcv_emp%cldes' ) … … 465 453 CALL ctl_stop( 'sbc_cpl_init: namsbc_cpl namelist mismatch between sn_rcv_qns%cldes and sn_rcv_dqnsdt%cldes' ) 466 454 ! ! ------------------------- ! 467 ! ! Ice Qsr penetration !468 ! ! ------------------------- !469 ! fraction of net shortwave radiation which is not absorbed in the thin surface layer470 ! and penetrates inside the ice cover ( Maykut and Untersteiner, 1971 ; Elbert anbd Curry, 1993 )471 ! Coupled case: since cloud cover is not received from atmosphere472 ! ===> defined as constant value -> definition done in sbc_cpl_init473 IF ( ALLOCATED (fr1_i0)) fr1_i0 (:,:) = 0.18474 IF ( ALLOCATED (fr2_i0)) fr2_i0 (:,:) = 0.82475 ! ! ------------------------- !476 455 ! ! 10m wind module ! 477 456 ! ! ------------------------- ! … … 508 487 ! Allocate taum part of frcv which is used even when not received as coupling field 509 488 IF ( .NOT. srcv(jpr_taum)%laction ) ALLOCATE( frcv(jpr_taum)%z3(jpi,jpj,srcv(jn)%nct) ) 489 ! Allocate itx1 and ity1 as they are used in sbc_cpl_ice_tau even if srcv(jpr_itx1)%laction = .FALSE. 490 IF( k_ice /= 0 ) THEN 491 IF ( .NOT. srcv(jpr_itx1)%laction ) ALLOCATE( frcv(jpr_itx1)%z3(jpi,jpj,srcv(jn)%nct) ) 492 IF ( .NOT. srcv(jpr_ity1)%laction ) ALLOCATE( frcv(jpr_ity1)%z3(jpi,jpj,srcv(jn)%nct) ) 493 END IF 510 494 511 495 ! ================================ ! … … 939 923 IF( nrcvinfo(itx) == OASIS_Rcv ) THEN 940 924 941 ! ! ======================= !925 ! ! ======================= ! 942 926 !AC Pour eviter un stress nul sur la glace dans le cas mixes oce-ice 943 IF( srcv(jpr_itx1)%laction .AND. TRIM( sn_rcv_tau%cldes ) == 'oce and ice') THEN 944 ! ! ======================= !927 IF( srcv(jpr_itx1)%laction .AND. TRIM( sn_rcv_tau%cldes ) == 'oce and ice') THEN ! ice stress received ! 928 ! ! ======================= ! 945 929 ! 946 930 IF( TRIM( sn_rcv_tau%clvref ) == 'cartesian' ) THEN ! 2 components on the sphere … … 1331 1315 END SELECT 1332 1316 1317 ! Ice Qsr penetration used (only?)in lim2 or lim3 1318 ! fraction of net shortwave radiation which is not absorbed in the thin surface layer 1319 ! and penetrates inside the ice cover ( Maykut and Untersteiner, 1971 ; Elbert anbd Curry, 1993 ) 1320 ! Coupled case: since cloud cover is not received from atmosphere 1321 ! ===> defined as constant value -> definition done in sbc_cpl_init 1322 fr1_i0(:,:) = 0.18 1323 fr2_i0(:,:) = 0.82 1324 1325 1333 1326 CALL wrk_dealloc( jpi,jpj, zcptn, ztmp, zicefr ) 1334 1327 !
Note: See TracChangeset
for help on using the changeset viewer.