Changeset 11455 for branches/UKMO/dev_r5518_obs_oper_update_addclim/NEMOGCM/NEMO/OPA_SRC/OBS/diaobs.F90
- Timestamp:
- 2019-08-19T17:36:23+02:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/dev_r5518_obs_oper_update_addclim/NEMOGCM/NEMO/OPA_SRC/OBS/diaobs.F90
r11449 r11455 50 50 LOGICAL :: ln_diaobs !: Logical switch for the obs operator 51 51 LOGICAL :: ln_sstnight !: Logical switch for night mean SST obs 52 LOGICAL :: ln_output_clim !: Logical switch for interpolating and outputting T/S climatology53 52 LOGICAL :: ln_default_fp_indegs !: T=> Default obs footprint size specified in degrees, F=> in metres 54 53 LOGICAL :: ln_sla_fp_indegs !: T=> SLA obs footprint size specified in degrees, F=> in metres … … 56 55 LOGICAL :: ln_sss_fp_indegs !: T=> SSS obs footprint size specified in degrees, F=> in metres 57 56 LOGICAL :: ln_sic_fp_indegs !: T=> sea-ice obs footprint size specified in degrees, F=> in metres 57 LOGICAL :: ln_output_clim !: Logical switch for interpolating and writing T/S climatology 58 58 59 59 REAL(wp) :: rn_default_avglamscl !: Default E/W diameter of observation footprint … … 235 235 LOGICAL :: ltype_fp_indegs ! Local version of ln_*_fp_indegs 236 236 LOGICAL :: ltype_night ! Local version of ln_sstnight (false for other variables) 237 LOGICAL :: ltype_clim ! Local version of ln_output_clim 237 238 238 239 REAL(wp), POINTER, DIMENSION(:,:,:) :: & … … 728 729 729 730 DO jtype = 1, nproftypes 730 731 732 ltype_clim = .FALSE. 733 731 734 IF ( TRIM(cobstypesprof(jtype)) == 'prof' ) THEN 732 735 nvarsprof(jtype) = 2 733 736 nextrprof(jtype) = 1 737 IF ( ln_output_clim ) ltype_clim = .TRUE. 734 738 ALLOCATE(llvar(nvarsprof(jtype))) 735 739 CALL wrk_alloc( jpi, jpj, nvarsprof(jtype), zglam ) … … 777 781 & nvarsprof(jtype), nextrprof(jtype), nitend-nit000+2, & 778 782 & rn_dobsini, rn_dobsend, llvar, & 779 & ln_ignmis, ln_s_at_t, .FALSE., &783 & ln_ignmis, ln_s_at_t, .FALSE., ltype_clim, & 780 784 & kdailyavtypes = nn_profdavtypes ) 781 785 … … 813 817 nvarssurf(jtype) = 1 814 818 nextrsurf(jtype) = 0 819 ltype_clim = .FALSE. 815 820 IF ( TRIM(cobstypessurf(jtype)) == 'sla' ) nextrsurf(jtype) = 2 821 IF ( ln_output_clim .AND. & 822 & ( ( TRIM(cobstypessurf(jtype)) == 'sst' ) .OR. & 823 & ( TRIM(cobstypessurf(jtype)) == 'sss' ) ) ) & 824 & ltype_clim = .TRUE. 816 825 817 826 !Read in surface obs types … … 819 828 & clsurffiles(jtype,1:ifilessurf(jtype)), & 820 829 & nvarssurf(jtype), nextrsurf(jtype), nitend-nit000+2, & 821 & rn_dobsini, rn_dobsend, ln_ignmis, .FALSE., llnightav(jtype) ) 830 & rn_dobsini, rn_dobsend, ln_ignmis, .FALSE., & 831 & llnightav(jtype), ltype_clim ) 822 832 823 833 CALL obs_pre_surf( surfdata(jtype), surfdataqc(jtype), ln_nea, ln_bound_reject ) … … 928 938 & jp_spm 929 939 #endif 940 USE tradmp, ONLY: & 941 & tclim, & 942 & sclim 930 943 931 944 IMPLICIT NONE … … 956 969 & pco2_3d ! 3D pCO2 from FABM 957 970 #endif 958 REAL(wp), POINTER, DIMENSION(:,:,:,:) :: zts_dta959 971 960 972 IF(lwp) THEN … … 966 978 967 979 idaystp = NINT( rday / rdt ) 968 969 ! Get the climatological T & S fields on this time step970 IF ( ln_output_clim ) CALL dta_tsd( kstp, zts_dta )971 980 972 981 !----------------------------------------------------------------------- … … 998 1007 zprofvar(:,:,:,1) = tsn(:,:,:,jp_tem) 999 1008 zprofvar(:,:,:,2) = tsn(:,:,:,jp_sal) 1000 IF ( ln_output_clim ) THEN 1001 zprofclim(:,:,:,1) = zts_dta(:,:,:,jp_tem)1002 zprofclim(:,:,:,2) = zts_dta(:,:,:,jp_sal)1009 IF ( ln_output_clim ) THEN 1010 zprofclim(:,:,:,1) = tclim(:,:,:) 1011 zprofclim(:,:,:,2) = sclim(:,:,:) 1003 1012 ENDIF 1004 1013 … … 1219 1228 CASE('sst') 1220 1229 zsurfvar(:,:) = tsn(:,:,1,jp_tem) 1221 IF ( ln_output_clim ) zsurfclim(:,:) = zts_dta(:,:,1,jp_tem)1230 IF ( ln_output_clim ) zsurfclim(:,:) = tclim(:,:,1) 1222 1231 CASE('sla') 1223 1232 zsurfvar(:,:) = sshn(:,:) 1224 1233 CASE('sss') 1225 1234 zsurfvar(:,:) = tsn(:,:,1,jp_sal) 1226 IF ( ln_output_clim ) zsurfclim(:,:) = zts_dta(:,:,1,jp_sal)1235 IF ( ln_output_clim ) zsurfclim(:,:) = sclim(:,:,1) 1227 1236 CASE('sic') 1228 1237 IF ( kstp == 0 ) THEN
Note: See TracChangeset
for help on using the changeset viewer.