- Timestamp:
- 03/19/12 18:51:42 (12 years ago)
- Location:
- trunk/src
- Files:
-
- 7 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/add_19890101.sh
r101 r167 31 31 # ++ 32 32 # has been produced by 33 # : ref:`interp_erai_lwr_1989_2009.pro`.33 # :func:`interp_erai_lwr`. 34 34 # repeat the first time step in 35 35 # -
trunk/src/compute_erai_daily_region_2d.sh
r164 r167 106 106 # :func:`divc <cdo:divc>` 107 107 # 108 # : ref:`interp_erai_dewt_1989_2009.pro`109 # : ref:`interp_erai_lwr_1989_2009.pro`108 # :func:`interp_erai_dewt` 109 # :func:`interp_erai_lwr` 110 110 # :ref:`interp_erai_sst_1989_2009.pro` 111 111 # :func:`interp_erai_t2m` -
trunk/src/d2m_to_q2m_erai.pro
r166 r167 26 26 ; has been 27 27 ; produced by 28 ; : ref:`interp_erai_msl_1989_2009.pro`.28 ; :func:`interp_erai_msl`. 29 29 ; 30 30 ; q2m on OAFLUX grid -
trunk/src/interp_erai_dewt.pro
r166 r167 183 183 result = -1 184 184 ; 185 usage = 'result = interp_erai_ t2m(yyyymmddb, yyyymmdde)185 usage = 'result = interp_erai_dewt(yyyymmddb, yyyymmdde) 186 186 nparam = N_PARAMS() 187 187 IF (nparam NE 2) THEN BEGIN -
trunk/src/interp_erai_lwr.pro
r164 r167 1 1 ;+ 2 2 ; 3 ; .. _interp_erai_lwr_1989_2009.pro: 4 ; 5 ; ============================= 6 ; interp_erai_lwr_1989_2009.pro 7 ; ============================= 3 ; 4 ; =================== 5 ; interp_erai_lwr.pro 6 ; =================== 7 ; 8 ; .. function:: interp_erai_lwr(yyyymmddb,yyyymmdde) 8 9 ; 9 10 ; DESCRIPTION … … 24 25 ; Interpolated str 25 26 ; is written in 26 ; :file:`${PROJECT_OD}/erai_lwr_ 19890102_20091231_oafluxgrid.nc`27 ; :file:`${PROJECT_OD}/erai_lwr_{yyyymmdd}_{yyyymmdd}_oafluxgrid.nc` 27 28 ; if this file not already exists. 28 29 ; 29 30 ; This output file 30 ; :file:`${PROJECT_OD}/erai_lwr_ 19890102_20091231_oafluxgrid.nc`31 ; :file:`${PROJECT_OD}/erai_lwr_{yyyymmdd}_{yyyymmdd}_oafluxgrid.nc` 31 32 ; must be processed after by 32 33 ; :ref:`add_19890101.sh`. … … 40 41 ; .. graphviz:: 41 42 ; 42 ; digraph interp_erai_lwr _1989_2009{43 ; digraph interp_erai_lwr { 43 44 ; 44 45 ; file_in [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/20c3m_erai_str_TROP_1989_2009.nc"]; 45 46 ; mask [shape=ellipse,fontname=Courier,label="${PROJECT_ID}/mask_oaflux_30N30S.nc"]; 46 ; file_out [shape=ellipse,fontname=Courier,label="${PROJECT_OD}/erai_lwr_ 19890102_20091231_oafluxgrid.nc"];47 ; 48 ; interp_erai_lwr _1989_2009[shape=box,47 ; file_out [shape=ellipse,fontname=Courier,label="${PROJECT_OD}/erai_lwr_{yyyymmdd}_{yyyymmdd}_oafluxgrid.nc"]; 48 ; 49 ; interp_erai_lwr [shape=box, 49 50 ; fontname=Courier, 50 51 ; color=blue, 51 ; URL="http://forge.ipsl.jussieu.fr/tropflux/browser/trunk/src/interp_erai_lwr _1989_2009.pro",52 ; label="${PROJECT}/src/interp_erai_lwr _1989_2009.pro"];53 ; 54 ; {file_in mask} -> {interp_erai_lwr _1989_2009} -> {file_out}52 ; URL="http://forge.ipsl.jussieu.fr/tropflux/browser/trunk/src/interp_erai_lwr.pro", 53 ; label="${PROJECT}/src/interp_erai_lwr.pro"]; 54 ; 55 ; {file_in mask} -> {interp_erai_lwr} -> {file_out} 55 56 ; 56 57 ; } … … 60 61 ; 61 62 ; :ref:`interpolate_data` 63 ; 64 ; Used by :ref:`tropflux.sh` 62 65 ; 63 66 ; :ref:`project_profile.sh` … … 80 83 ; 81 84 ; IDL> .compile file_interp 82 ; IDL> interp_erai_lwr_1989_2009 85 ; IDL> yyyymmddb = 19890101 86 ; IDL> yyyymmdde = 20091231 87 ; IDL> result = interp_erai_lwr(yyyymmddb, yyymmdde) 88 ; IDL> print, result 83 89 ; 84 90 ; TODO … … 92 98 ; 93 99 ; lwr[longitude,latitude,time]=lwrout:lwr_attr; longitude[]=xlon:lon_attr; latitude[]=ylat:lat_attr; tt[*time]=tt:time_attr @ globattr 94 ; % NCDF_VARPUT: Operation Failed, bad file (4) or variable (0)id ?100 ; % NCDF_VARPUT: Operation Failed, bad file (4) or variable [0] id ? 95 101 ; (NC_ERROR=-31) 96 102 ; % Stop encountered: INTERP_ERAI_LWR_1989_2009 1 … … 106 112 ; dataset to 19890101 using nco after this processing. see :ref:`compute_erai_daily_region_2d.sh` 107 113 ; 114 ; st and en not used 115 ; 116 ; check if there is the same issue with 19790101 vs 19790102. 117 ; 108 118 ; coding rules 109 119 ; … … 119 129 ; $Id$ 120 130 ; 121 ; $URL: svn+ssh://pinsard@forge.ipsl.jussieu.fr/ipsl/forge/projets/tropflux/svn/trunk/src/interp_erai_lwr_1989_2009.pro $ 131 ; $URL: svn+ssh://pinsard@forge.ipsl.jussieu.fr/ipsl/forge/projets/tropflux/svn/trunk/src/interp_erai_lwr.pro $ 132 ; 133 ; - fplod 20120319 134 ; 135 ; * taking project_overwite into account 136 ; * try to add compile_opt seems to be incompatible with ncdf_quickwrite 137 ; * pro -> function 122 138 ; 123 139 ; - fplod 20110830T145010Z cratos (Linux) … … 173 189 ; 174 190 ;- 175 pro interp_erai_lwr_1989_2009 191 function interp_erai_lwr $ 192 , yyyymmddb $ 193 , yyyymmdde 194 ; 195 ;++compile_opt idl2, strictarrsubs, logical_predicate 176 196 ; 177 197 @cm_4cal … … 181 201 @cm_project 182 202 ; 203 ; Return to caller if errors 204 ON_ERROR, 2 205 ; 206 result = -1 207 ; 208 usage = 'result = interp_erai_lwr(yyyymmddb, yyyymmdde) 209 nparam = N_PARAMS() 210 IF (nparam NE 2) THEN BEGIN 211 ras = report(['Incorrect number of arguments.' $ 212 + '!C' $ 213 + 'Usage : ' + usage]) 214 return, result 215 ENDIF 216 ; 183 217 ; check for input directory 184 218 ; … … 188 222 msg = 'eee : ${PROJECT_ID} is not defined' 189 223 ras = report(msg) 190 STOP224 return, result 191 225 END 192 226 ELSE: BEGIN … … 202 236 msg = 'eee : the directory' + iodirin + ' is not accessible.' 203 237 ras = report(msg) 204 STOP238 return, result 205 239 ENDIF 206 240 ; … … 215 249 msg = 'eee : the file ' + fullfilename_msk + ' was not found.' 216 250 ras = report(msg) 217 STOP251 return, result 218 252 ENDIF 219 253 ; … … 231 265 msg = 'eee : the file ' + fullfilename + ' was not found.' 232 266 ras = report(msg) 233 STOP267 return, result 234 268 ENDIF 235 269 ; … … 239 273 msg = 'eee : ${PROJECT_OD} is not defined' 240 274 ras = report(msg) 241 STOP275 return, result 242 276 END 243 277 ELSE: BEGIN … … 254 288 msg = 'eee : the directory' + iodirout + ' was not found.' 255 289 ras = report(msg) 256 STOP290 return, result 257 291 ENDIF 258 292 ; 259 293 ; build output filename 260 filename_out = 'erai_lwr_ 19890102_20091231_oafluxgrid.nc'294 filename_out = 'erai_lwr_' + string(yyyymmddb,format='(I8.8)') + '_' + string(yyyymmdde,format='(I8.8)') + '_oafluxgrid.nc' 261 295 fullfilename_out = iodirout + filename_out 262 296 ; in order to avoid unexpected overwritten 263 IF ( FILE_TEST(fullfilename_out) EQ 1) THEN BEGIN297 IF ((FILE_TEST(fullfilename_out) EQ 1) AND (project_overwrite EQ 0)) THEN BEGIN 264 298 msg = 'eee : the file ' + fullfilename_out + ' already exists.' 265 299 ras = report(msg) 266 STOP300 return, result 267 301 ENDIF 268 302 ; … … 273 307 initncdf, fullfilename 274 308 domdef 275 latin=reform(gphit (0,*))276 lonin=reform(glamt (*,0))277 print, 'lat grid ',min(latin),max(latin),latin (1)-latin(0)278 print, 'lon grid ',min(lonin),max(lonin),lonin (1)-lonin(0)309 latin=reform(gphit[0,*]) 310 lonin=reform(glamt[*,0]) 311 print, 'lat grid ',min(latin),max(latin),latin[1]-latin[0] 312 print, 'lon grid ',min(lonin),max(lonin),lonin[1]-lonin[0] 279 313 ; 280 314 jptin=jpt 281 tab=lwrin (*,*,0)315 tab=lwrin[*,*,0] 282 316 mskin=glamt*0.+1. 283 317 ; 284 318 initncdf, fullfilename_msk 285 319 domdef 286 latout=reform(gphit (0,*))287 lonout=reform(glamt (*,0))288 print, 'lat grid ',min(latout),max(latout),latout (1)-latout(0)289 print, 'lon grid ',min(lonout),max(lonout),lonout (1)-lonout(0)320 latout=reform(gphit[0,*]) 321 lonout=reform(glamt[*,0]) 322 print, 'lat grid ',min(latout),max(latout),latout[1]-latout[0] 323 print, 'lon grid ',min(lonout),max(lonout),lonout[1]-lonout[0] 290 324 mskout=read_ncdf("msk", file=fullfilename_msk,/nostr) 291 325 ; … … 295 329 ; ++print, 'Interpolation jt=',jt,' / ',jptin-1 296 330 ; 297 tab=reform(lwrin (*,*,jt))298 lwrout (*,*,jt)=call_interp2d(tab,lonin,latin,mskin $331 tab=reform(lwrin[*,*,jt]) 332 lwrout[*,*,jt]=call_interp2d(tab,lonin,latin,mskin $ 299 333 , lonout,latout,method='bilinear' $ 300 334 , OUTMASK_IND=mskout, SET_OUTMSKVAL=mskout) 301 lwrout (*,*,jt)=lwrout(*,*,jt)*mskout+(1.-mskout)*1.e20335 lwrout[*,*,jt]=lwrout[*,*,jt]*mskout+(1.-mskout)*1.e20 302 336 ; 303 337 endfor … … 305 339 time=timegen(7669, start=julday(1,2,1989,0), units='days') 306 340 jpt=n_elements(time) 307 cda0=string(jul2date(time (0)),format='(i8.8)')308 cda1=string(jul2date(time (jpt-1)),format='(i8.8)')341 cda0=string(jul2date(time[0]),format='(i8.8)') 342 cda1=string(jul2date(time[jpt-1]),format='(i8.8)') 309 343 time=time-julday(1,1,1950,00,00,00) 310 344 ; … … 326 360 @ncdf_quickwrite 327 361 ; 362 result = 0 363 return, result 364 ; 328 365 end -
trunk/src/lwr_correction_ncdf.pro
r100 r167 13 13 ; ++ 14 14 ; have been produced by 15 ; : ref:`add_19890101.sh`.15 ; :func:`interp_erai_lwr` and :ref:`add_19890101.sh`. 16 16 ; 17 17 ; Corrected lwr on OAFLUX grid … … 55 55 ; :ref:`mooring_corrections` 56 56 ; 57 ; : ref:`add_19890101.sh`57 ; :func:`interp_erai_lwr` and :ref:`add_19890101.sh` 58 58 ; 59 59 ; :func:`initncdf <saxo:initncdf>` … … 97 97 ; - fplod 20110819T105050Z aedon.locean-ipsl.upmc.fr (Darwin) 98 98 ; 99 ; * replace previous step :ref:`interp_erai_lwr_1989_2009.pro`99 ; * replace previous step interp_erai_lwr_1989_2009.pro 100 100 ; by :ref:`add_19890101.sh` 101 101 ; * change 19890102 to 19890101 -
trunk/src/oaflux_mask_30n30s.pro
r166 r167 64 64 ; :ref:`TropFlux_19890101_20091231.pro`, 65 65 ; :func:`interp_erai_dewt`, 66 ; : ref:`interp_erai_lwr_1989_2009.pro`,66 ; :func:`interp_erai_lwr`, 67 67 ; :ref:`interp_erai_sst_1989_2009.pro`, 68 68 ; :func:`interp_erai_t2m`, -
trunk/src/tropflux.sh
r166 r167 90 90 # Use : 91 91 # :func:`oaflux_mask_30n30s`, :func:`interp_erai_t2m`, 92 # :func:`interp_erai_msl`, :func:`interp_erai_dewt`, etc. 92 # :func:`interp_erai_msl`, :func:`interp_erai_dewt`, :func:`interp_erai_lwr`, 93 # etc. 93 94 # 94 95 # Next step : +validation ++ comparison … … 117 118 # * handling error of inter_erai_msl (now function) 118 119 # * handling error of inter_erai_dewt (now function) 120 # * handling error of inter_erai_lwr (now function) 119 121 # 120 122 # - pinsard 20120306 … … 303 305 exit 304 306 ENDIF 305 ;interp_erai_lwr_1989_2009 307 result = interp_erai_lwr(${yyyymmddb}, ${yyyymmdde}) 308 IF result < 0 THEN BEGIN 309 msg = 'eee : pb after interp_erai_lwr' + string(result) 310 err = report(msg) 311 exit 312 ENDIF 306 313 result = interp_erai_msl(${yyyymmddb}, ${yyyymmdde}) 307 314 IF result < 0 THEN BEGIN
Note: See TracChangeset
for help on using the changeset viewer.