- Timestamp:
- 2015-11-13T17:58:13+01:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/dev_r5518_flux_adjust/NEMOGCM/NEMO/OPA_SRC/SBC/sbcflx_adj.F90
r5881 r5889 37 37 INTEGER, PUBLIC :: nn_flxadjht ! Heat/freshwater flux adjustment indicator 38 38 INTEGER, PUBLIC :: nn_flxadjfw ! Heat/freshwater flux adjustment indicator 39 REAL(wp) :: rn_dqdt ! restoring factor on SST and SSS40 REAL(wp) :: rn_deds ! restoring factor on SST and SSS41 39 LOGICAL :: ln_sssr_bnd ! flag to bound erp term 42 40 REAL(wp) :: rn_sssr_bnd ! ABS(Max./Min.) value of erp term [mm/day] … … 74 72 REAL(wp) :: zerp ! local scalar for evaporation damping 75 73 REAL(wp) :: zqrp ! local scalar for heat flux damping 76 REAL(wp) :: zsrp ! local scalar for unit conversion of rn_deds factor77 74 REAL(wp) :: zerp_bnd ! local scalar for unit conversion of rn_epr_max factor 78 75 INTEGER :: ierror ! return error code … … 104 101 ! 105 102 IF( nn_flxadjfw == 1 ) THEN !* Anomalous freshwater term !(salt flux only (sfx)) 106 zsrp = rn_deds / rday ! from [mm/day] to [kg/m2/s]107 103 !CDIR COLLAPSE 108 104 DO jj = 1, jpj … … 117 113 ! 118 114 ELSEIF( nn_flxadjfw == 2 ) THEN !* Salinity damping term (volume flux (emp) and associated heat flux (qns) 119 zsrp = rn_deds / rday ! from [mm/day] to [kg/m2/s]120 115 zerp_bnd = rn_sssr_bnd / rday ! - - 121 116 !CDIR COLLAPSE … … 152 147 REAL(wp) :: zerp ! local scalar for evaporation damping 153 148 REAL(wp) :: zqrp ! local scalar for heat flux damping 154 REAL(wp) :: zsrp ! local scalar for unit conversion of rn_deds factor155 149 REAL(wp) :: zerp_bnd ! local scalar for unit conversion of rn_epr_max factor 156 150 INTEGER :: ierror ! return error code … … 158 152 CHARACTER(len=100) :: cn_dir ! Root directory for location of ssr files 159 153 TYPE(FLD_N) :: sn_qrp, sn_erp ! informations about the fields to be read 160 NAMELIST/namsbc_flx_adj/ cn_dir, nn_flxadjht, nn_flxadjfw, rn_dqdt, rn_deds, sn_qrp, sn_erp, ln_sssr_bnd, rn_sssr_bnd 154 NAMELIST/namsbc_flx_adj/ cn_dir, nn_flxadjht, nn_flxadjfw, sn_qrp, sn_erp, & 155 & ln_sssr_bnd, rn_sssr_bnd 161 156 INTEGER :: ios 162 157 !!---------------------------------------------------------------------- … … 177 172 WRITE(numout,*) '~~~~~~~ ' 178 173 WRITE(numout,*) ' Namelist namsbc_flx_adj :' 179 WRITE(numout,*) ' Anom alousheat flux (qrp) term (Yes=1) nn_flxadjht = ', nn_flxadjht180 WRITE(numout,*) ' Anom alous freshwaterflux (erp) term (Yes=1, salt flux) nn_flxadjfw = ', nn_flxadjfw174 WRITE(numout,*) ' Anom. heat flux (qrp) term (Yes=1) nn_flxadjht = ', nn_flxadjht 175 WRITE(numout,*) ' Anom. fw flux (erp) term (Yes=1, salt flux) nn_flxadjfw = ', nn_flxadjfw 181 176 WRITE(numout,*) ' (Yes=2, volume flux) ' 182 WRITE(numout,*) ' dQ/dT (restoring magnitude on SST) rn_dqdt = ', rn_dqdt, ' W/m2/K'183 WRITE(numout,*) ' dE/dS (restoring magnitude on SST) rn_deds = ', rn_deds, ' mm/day'184 177 WRITE(numout,*) ' flag to bound erp term ln_sssr_bnd = ', ln_sssr_bnd 185 178 WRITE(numout,*) ' ABS(Max./Min.) erp threshold rn_sssr_bnd = ', rn_sssr_bnd, ' mm/day' … … 194 187 ALLOCATE( sf_qrp(1), STAT=ierror ) 195 188 IF( ierror > 0 ) CALL ctl_stop( 'STOP', 'sbc_flx_adj: unable to allocate sf_qrp structure' ) 196 ALLOCATE( sf_ sst(1)%fnow(jpi,jpj,1), STAT=ierror )189 ALLOCATE( sf_qrp(1)%fnow(jpi,jpj,1), STAT=ierror ) 197 190 IF( ierror > 0 ) CALL ctl_stop( 'STOP', 'sbc_flx_adj: unable to allocate sf_qrp now array' ) 198 191 !
Note: See TracChangeset
for help on using the changeset viewer.