Changeset 1601 for trunk/NEMO/OPA_SRC/SBC/sbcblk_core.F90
- Timestamp:
- 2009-08-11T12:09:19+02:00 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMO/OPA_SRC/SBC/sbcblk_core.F90
r1482 r1601 54 54 TYPE(FLD), ALLOCATABLE, DIMENSION(:) :: sf ! structure of input fields (file informations, fields read) 55 55 56 ! ! *CORE bulk parameters56 ! !!! CORE bulk parameters 57 57 REAL(wp), PARAMETER :: rhoa = 1.22 ! air density 58 58 REAL(wp), PARAMETER :: cpa = 1000.5 ! specific heat of air … … 62 62 REAL(wp), PARAMETER :: Cice = 1.63e-3 ! transfer coefficient over ice 63 63 64 LOGICAL :: ln_2m = .FALSE. !: logical flag for height of air temp. and hum 65 REAL(wp) :: alpha_precip=1. !: multiplication factor for precipitation 64 ! !!* Namelist namsbc_core : CORE bulk parameters 65 LOGICAL :: ln_2m = .FALSE. ! logical flag for height of air temp. and hum 66 REAL(wp) :: rn_pfac = 1. ! multiplication factor for precipitation 66 67 67 68 !! * Substitutions … … 115 116 TYPE(FLD_N) :: sn_wndi, sn_wndj, sn_humi, sn_qsr ! informations about the fields to be read 116 117 TYPE(FLD_N) :: sn_qlw , sn_tair, sn_prec, sn_snow ! " " 117 NAMELIST/namsbc_core/ cn_dir, ln_2m, alpha_precip, sn_wndi, sn_wndj, sn_humi, sn_qsr, &118 & sn_qlw , sn_tair, sn_prec, sn_snow118 NAMELIST/namsbc_core/ cn_dir, ln_2m, rn_pfac, sn_wndi, sn_wndj, sn_humi, sn_qsr, & 119 & sn_qlw , sn_tair, sn_prec, sn_snow 119 120 !!--------------------------------------------------------------------- 120 121 … … 124 125 ! set file information (default values) 125 126 cn_dir = './' ! directory in which the model is executed 126 127 ! 127 128 ! (NB: frequency positive => hours, negative => months) 128 129 ! ! file ! frequency ! variable ! time intep ! clim ! 'yearly' or ! weights ! rotation ! … … 136 137 sn_prec = FLD_N( 'precip' , -1. , 'precip' , .true. , .false. , 'yearly' , '' , '' ) 137 138 sn_snow = FLD_N( 'snow' , -1. , 'snow' , .true. , .false. , 'yearly' , '' , '' ) 138 139 ! 139 140 REWIND( numnam ) ! ... read in namlist namsbc_core 140 141 READ ( numnam, namsbc_core ) 141 142 ! 142 143 ! store namelist information in an array 143 144 slf_i(jp_wndi) = sn_wndi ; slf_i(jp_wndj) = sn_wndj … … 145 146 slf_i(jp_tair) = sn_tair ; slf_i(jp_humi) = sn_humi 146 147 slf_i(jp_prec) = sn_prec ; slf_i(jp_snow) = sn_snow 147 148 ! 148 149 ! set sf structure 149 150 ALLOCATE( sf(jpfld), STAT=ierror ) … … 151 152 CALL ctl_stop( 'sbc_blk_core: unable to allocate sf structure' ) ; RETURN 152 153 ENDIF 153 154 154 DO ifpr= 1, jpfld 155 155 ALLOCATE( sf(ifpr)%fnow(jpi,jpj) ) 156 156 ALLOCATE( sf(ifpr)%fdta(jpi,jpj,2) ) 157 157 END DO 158 158 ! 159 159 ! fill sf with slf_i and control print 160 160 CALL fld_fill( sf, slf_i, cn_dir, 'sbc_blk_core', 'flux formulattion for ocean surface boundary condition', 'namsbc_core' ) 161 161 ! 162 162 ENDIF 163 164 163 165 164 CALL fld_read( kt, nn_fsbc, sf ) ! input fields provided at the current time-step … … 327 326 qns(:,:) = zqlw(:,:) - zqsb(:,:) - zqla(:,:) ! Downward Non Solar flux 328 327 !CDIR COLLAPSE 329 emp (:,:) = zevap(:,:) - sf(jp_prec)%fnow(:,:) * alpha_precip* tmask(:,:,1)328 emp (:,:) = zevap(:,:) - sf(jp_prec)%fnow(:,:) * rn_pfac * tmask(:,:,1) 330 329 !CDIR COLLAPSE 331 330 emps(:,:) = emp(:,:) … … 533 532 534 533 !CDIR COLLAPSE 535 p_tpr(:,:) = sf(jp_prec)%fnow(:,:) * alpha_precip! total precipitation [kg/m2/s]536 !CDIR COLLAPSE 537 p_spr(:,:) = sf(jp_snow)%fnow(:,:) * alpha_precip! solid precipitation [kg/m2/s]538 CALL iom_put( 'snowpre', p_spr ) 534 p_tpr(:,:) = sf(jp_prec)%fnow(:,:) * rn_pfac ! total precipitation [kg/m2/s] 535 !CDIR COLLAPSE 536 p_spr(:,:) = sf(jp_snow)%fnow(:,:) * rn_pfac ! solid precipitation [kg/m2/s] 537 CALL iom_put( 'snowpre', p_spr ) ! Snow precipitation 539 538 ! 540 539 IF(ln_ctl) THEN
Note: See TracChangeset
for help on using the changeset viewer.