Changeset 3026
- Timestamp:
- 2011-10-28T18:10:29+02:00 (12 years ago)
- Location:
- branches/dev_2802_OBStools
- Files:
-
- 1 deleted
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/dev_2802_OBStools/DOC/TexFiles/Chapters/Chap_OBS.tex
r3002 r3026 939 939 \end{alltt} 940 940 941 \subsection{building the obstools} 942 943 To build the obstools use in the tools directory use ./maketools -n OBSTOOLS -m [ARCH]. 944 941 945 \subsection{dataplot} 942 946 -
branches/dev_2802_OBStools/NEMOGCM/TOOLS/OBSTOOLS/dataplot/read_seaice.pro
r3002 r3026 60 60 61 61 if (keyword_set(nodates) eq 0) then begin 62 ; if not keyword_set(quiet) then print,'reading time'63 ; varid = ncdf_varid(ncid, 'time')64 ; varid = ncdf_varid(ncid, 'SeaIce_dtime')65 ; if not keyword_set(quiet) then print,varid66 ; if (varid ne -1) then begin67 ; ncdf_varget, ncid, varid, time68 ; if not keyword_set(quiet) then print,'sec_to_dt 1'69 ; dts= sec_to_dt(time, Base=RefDate, date_fmt=5)70 ; endif71 ; if not keyword_set(quiet) then print,time72 ;73 ;; varid = ncdf_varid(ncid, 'SeaIce_dtime')74 ;; if not keyword_set(quiet) then print,varid75 ; if (varid eq -1) then varid = ncdf_varid(ncid, 'JULD')76 ; if (varid ne -1) then begin77 ; ncdf_varget, ncid, varid, Dats78 ; if not keyword_set(quiet) then print,'sec_to_dt 2'79 ; dts = sec_to_dt(Dats*24.*60.*60., Base=RefDate, date_fmt=5)80 ; endif81 62 82 63 varid = ncdf_varid(ncid, 'JULD') 83 64 if varid ne -1 then begin 84 65 ncdf_varget, ncid, varid, Dats 85 ; dts = sec_to_dt(Dats*24.*60.*60., Base=RefDate, date_fmt=5)86 66 dts = Dats+RefDate 87 67 endif else begin … … 96 76 RefDate = JULDAY(1,1,1981,0,0) ; should be ref from 0 UTC 97 77 dtime = dtime + secs_from_base 98 ; dts = sec_to_dt(dtime, Base=RefDate, date_fmt=5)99 78 dts = RefDate + dtime/86400. 100 79 endelse -
branches/dev_2802_OBStools/NEMOGCM/TOOLS/OBSTOOLS/dataplot/read_sla.pro
r3002 r3026 163 163 164 164 165 ; dts = sec_to_dt(Dats*24.*60.*60., Base=RefDate, date_fmt=5)166 165 dts=RefDate + Dats 167 166 -
branches/dev_2802_OBStools/NEMOGCM/TOOLS/OBSTOOLS/dataplot/read_sst.pro
r3002 r3026 74 74 if varid ne -1 then begin 75 75 ncdf_varget, ncid, varid, Dats 76 ; dts = sec_to_dt(Dats*24.*60.*60., Base=RefDate, date_fmt=5)77 76 dts=RefDate + Dats 78 77 … … 87 86 RefDate = JULDAY(1,1,1981,0,0) ; should be ref from 0 UTC 88 87 dtime = dtime + secs_from_base 89 ; dts = sec_to_dt(dtime, Base=RefDate, date_fmt=5)90 88 dts = RefDate + dtime/86400. 91 89 endelse -
branches/dev_2802_OBStools/NEMOGCM/TOOLS/OBSTOOLS/src/index_sort.F90
r2945 r3026 279 279 END SUBROUTINE index_sort_int 280 280 281 SUBROUTINE index_sort_string(cdval, kindx, kvals) 282 USE toolspar_kind 283 IMPLICIT NONE 284 !!---------------------------------------------------------------------- 285 !! *** ROUTINE index_sort *** 286 !! 287 !! ** Purpose : Get indicies for ascending order for an 288 !! integer array 289 !! 290 !! ** Method : Heapsort 291 !! 292 !! ** Action : 293 !! 294 !! References : http://en.wikipedia.org/wiki/Heapsort 295 !! 296 !! History : 297 !! ! 06-05 (K. Mogensen) Original code 298 !!---------------------------------------------------------------------- 299 !! * Arguments 300 CHARACTER(len=*),DIMENSION(*),INTENT(IN) :: & 301 & cdval ! Array to be sorted 302 INTEGER,DIMENSION(*),INTENT(INOUT) :: & 303 & kindx ! Indicies for ordering 304 INTEGER, INTENT(IN) :: & 305 & kvals ! Number of values 306 307 !! * Local variables 308 INTEGER :: ji, jj, jt, jn, jparent, jchild 309 310 DO ji = 1, kvals 311 kindx(ji) = ji 312 END DO 313 314 IF (kvals > 1 ) THEN 315 316 ji = kvals/2 + 1 317 jn = kvals 318 319 main_loop : DO 320 321 IF ( ji > 1 ) THEN 322 ji = ji-1 323 jt = kindx(ji) 324 ELSE 325 jt = kindx(jn) 326 kindx(jn) = kindx(1) 327 jn = jn-1 328 IF ( jn == 1 ) THEN 329 kindx(1) = jt 330 EXIT main_loop 331 ENDIF 332 ENDIF 333 334 jparent = ji 335 jchild = 2*ji 336 337 inner_loop : DO 338 IF ( jchild > jn ) EXIT inner_loop 339 IF ( jchild < jn ) THEN 340 IF ( cdval(kindx(jchild)) < cdval(kindx(jchild+1)) ) THEN 341 jchild = jchild+1 342 ENDIF 343 ENDIF 344 IF ( cdval(jt) < cdval(kindx(jchild))) THEN 345 kindx(jparent) = kindx(jchild) 346 jparent = jchild 347 jchild = jchild*2 348 ELSE 349 jchild = jn + 1 350 ENDIF 351 ENDDO inner_loop 352 353 kindx(jparent) = jt 354 355 END DO main_loop 356 357 ENDIF 358 359 END SUBROUTINE index_sort_string 360 281 361 END MODULE index_sort
Note: See TracChangeset
for help on using the changeset viewer.