Changeset 292
- Timestamp:
- 09/24/07 15:23:37 (17 years ago)
- Location:
- trunk/SRC
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SRC/Calendar/caldat.pro
r261 r292 45 45 ; 46 46 ; @history 47 ; Translated from "Numerical Recip ies in C", by William H. Press,47 ; Translated from "Numerical Recipes in C", by William H. Press, 48 48 ; Brian P. Flannery, Saul A. Teukolsky, and William T. Vetterling. 49 49 ; Cambridge University Press, 1988 (second printing). -
trunk/SRC/Calendar/julday.pro
r279 r292 60 60 ; 61 61 ; @history 62 ; Translated from "Numerical Recip ies in C", by William H. Press,62 ; Translated from "Numerical Recipes in C", by William H. Press, 63 63 ; Brian P. Flannery, Saul A. Teukolsky, and William T. Vetterling. 64 64 ; Cambridge University Press, 1988 (second printing). -
trunk/SRC/Colors/newpalette.pro
r285 r292 22 22 ; 23 23 ; @history 24 ; Guillaume Roul et (gr\@lodyc.jussieu.fr)24 ; Guillaume Roullet (gr\@lodyc.jussieu.fr) 25 25 ; 30/3/1999 s.masson, add _extra, research of the full name, OVER 26 26 ; 5/5/1999 s.masson -
trunk/SRC/Interpolation/extrapolate.pro
r271 r292 47 47 ; 48 48 ; @history 49 ; Originaly written by G. Roul et49 ; Originaly written by G. Roullet 50 50 ; Sebastien Masson (smasson\@lodyc.jussieu.fr) 51 51 ; -
trunk/SRC/Interpolation/file_interp.pro
r283 r292 8 8 compile_opt idl2, strictarrsubs 9 9 ; 10 ; for byte, short and long, convert to double before extr epolation and interpolation10 ; for byte, short and long, convert to double before extrapolation and interpolation 11 11 intype = size(data, /type) 12 12 if intype LE 3 THEN data = double(temporary(data)) … … 15 15 mask = inmask *finite(data) 16 16 ; 17 IF keyword_set(NaN_value) THEN BEGIN 17 IF keyword_set(NaN_value) THEN BEGIN 18 18 CASE 1 OF 19 19 nan_value GT 1.e6:mask = temporary(mask) * (data LT (nan_value-10.)) … … 31 31 ENDIF ELSE BEGIN 32 32 data = fromirr(method, temporary(data), inlon, inlat, -1, outlon, outlat, -1, WEIG = weig, ADDR = addr) 33 ENDELSE 34 33 ENDELSE 34 35 35 if intype LE 3 THEN data = round(temporary(data)) 36 36 … … 43 43 ; 44 44 ; @categories 45 ; Interpolation andNetCDF45 ; Interpolation, NetCDF 46 46 ; 47 47 ; @param filein {in}{type=scalar string} … … 56 56 ; 57 57 ; @keyword GRIDIN {type=scalar string}{default=set to filein} 58 ; define the input grid file name. It must exist and must contain the 58 ; define the input grid file name. It must exist and must contain the 59 59 ; longitude and latitude axis as 1D or 2D arrays. Useful if 60 60 ; filein file doesn't contain longitude and latitude axis … … 62 62 ; @keyword MASKIN {type=scalar string}{default=set to gridin} 63 63 ; define the input mask file name. It must exist. The mask will be 64 ; determi ded through <pro>ncdf_getmask</pro> according to the keywords64 ; determined through <pro>ncdf_getmask</pro> according to the keywords 65 65 ; inmaskname, ininvmask, inuseasmask, inmissing_value, inaddscl_before 66 ; (see bel low)66 ; (see below) 67 67 ; 68 68 ; @keyword MASKOUT {type=scalar string}{default=set to gridout} 69 69 ; define the output mask file name. It must exist. The mask will be 70 ; determi ded through <pro>ncdf_getmask</pro> according to the keywords70 ; determined through <pro>ncdf_getmask</pro> according to the keywords 71 71 ; outmaskname, outinvmask, outuseasmask, outmissing_value, 72 ; outaddscl_before (see bellow) 72 ; outaddscl_before (see bellow) 73 73 ; 74 74 ; @keyword KEEP {type=string array}{default=all variables} … … 81 81 ; 82 82 ; @keyword METHOD {type=scalar string}{default='bilinear'} 83 ; interpolation method: can be only 'bilinear' (or 'imoms3' if the i put grid83 ; interpolation method: can be only 'bilinear' (or 'imoms3' if the input grid 84 84 ; is a "regular" grid). A "regular/rectangular grid" is defined as a 85 ; grid for which 85 ; grid for which each longitude lines have the same latitude and each 86 86 ; latitude columns have the same longitude. 87 87 ; … … 90 90 ; <pro>extrapolate</pro> when extrapolating input data over masked 91 91 ; points. 92 ; 92 ; 93 93 ; @keyword SET_XDIMNAME {type=scalar string}{default=not used} 94 94 ; used to defined the name of x dimension in filein input file when … … 105 105 ; containing the x axis name is not the same. By default, we assume 106 106 ; both file have the same x axis name. Not that if filein includes x 107 ; axis ther is no point to use gridin107 ; axis there is no point to use gridin 108 108 ; 109 109 ; @keyword SET_YAXISNAME {type=scalar string}{default=not used} … … 112 112 ; @keyword INMASKNAME {type=scalar string}{default=not used} 113 113 ; A string giving the name of the variable in the file maskin that 114 ; contains the land/sea mask 114 ; contains the land/sea mask 115 115 ; 116 116 ; @keyword OUTMASKNAME {type=scalar string}{default=not used} … … 119 119 ; @keyword ININVMASK {default=0}{type=scalar: 0 or 1} 120 120 ; Inverse the land/sea mask of the input mask file maskin (that should 121 ; have 0/1 values for land/sea) 121 ; have 0/1 values for land/sea) 122 122 ; 123 123 ; @keyword OUTINVMASK {default=0}{type=scalar: 0 or 1} … … 138 138 ; @keyword INMISSING_VALUE {type=scalar} 139 139 ; To define (or redefine if the attribute is already existing) the 140 ; missing values used by INUSEASMASK keyword 140 ; missing values used by INUSEASMASK keyword 141 141 ; 142 142 ; @keyword OUTMISSING_VALUE {type=scalar} … … 144 144 ; 145 145 ; @keyword INADDSCL_BEFORE {default=0}{type=scalar: 0 or 1} 146 ; put 1 to apply add_offset a d scale factor on data before looking for146 ; put 1 to apply add_offset and scale factor on data before looking for 147 147 ; missing values when using INUSEASMASK keyword 148 148 ; … … 156 156 ; 157 157 ; @keyword ADDR {type=2d array or variable name} 158 ; 1) at the first call of file_interp: 158 ; 1) at the first call of file_interp: 159 159 ; This keyword can be set to a named variable (undefined or equal to 160 160 ; 0) into which the addresses used to perform the interpolation will … … 163 163 ; to bypass the computation of the weights and addresses used to 164 164 ; perform the interpolation. In this case, interpolation is much 165 ; faster 165 ; faster 166 166 ; 167 167 ; @keyword WEIG {type=2d array or variable name} 168 168 ; (see ADDR) 169 ; 169 ; 170 170 ; @keyword INXAXISNAME {default='x', 'longitude', 'nav_lon', 'lon', 'lon_rho' or 'NbLongitudes'}{type=scalar string} 171 ; A string giving the name of the variable contain ning the x axis in171 ; A string giving the name of the variable containing the x axis in 172 172 ; the input grid file gridin 173 173 ; … … 302 302 indimx = i 303 303 outdimx = outdimid[i] 304 END 305 strlowcase(name) EQ strlowcase(inydimname): BEGIN 304 END 305 strlowcase(name) EQ strlowcase(inydimname): BEGIN 306 306 outdimid[i] = ncdf_dimdef(outid, name, jpjout) 307 307 outdimsz[i] = jpjout 308 308 indimy = i 309 309 outdimy = outdimid[i] 310 END 311 i EQ ininq.recdim: outdimid[i] = ncdf_dimdef(outid, name, /UNLIMITED) 310 END 311 i EQ ininq.recdim: outdimid[i] = ncdf_dimdef(outid, name, /UNLIMITED) 312 312 ELSE: outdimid[i] = ncdf_dimdef(outid, name, size) 313 313 ENDCASE … … 315 315 ; 316 316 ; Variables 317 ; 317 ; 318 318 outvarid = lonarr(ininq.nvars) 319 319 FOR i = 0, ininq.nvars-1 DO BEGIN … … 332 332 strlowcase(varinq.name) EQ strlowcase(inxaxisname):BEGIN ; xaxis 333 333 IF outirr THEN dimvar = [outdimx, outdimy] ELSE dimvar = [outdimx] 334 END 334 END 335 335 strlowcase(varinq.name) EQ strlowcase(inyaxisname):BEGIN ; yaxis 336 336 IF outirr THEN dimvar = [outdimx, outdimy] ELSE dimvar = [outdimy] … … 348 348 , FLOAT = varinq.datatype EQ 'FLOAT', DOUBLE = varinq.datatype EQ 'DOUBLE') 349 349 ENDIF ELSE outvarid[i] = - 1 350 ENDELSE 350 ENDELSE 351 351 ; Variables attributes 352 IF outvarid[i] NE - 1 THEN BEGIN 352 IF outvarid[i] NE - 1 THEN BEGIN 353 353 FOR j = 0, varinq.natts-1 DO BEGIN 354 354 name = ncdf_attname(inid, i, j) … … 371 371 IF outirr THEN ncdf_varput, outid, outvarid[i], outlon $ 372 372 ELSE ncdf_varput, outid, outvarid[i], outlon[*, 0] 373 END 373 END 374 374 strlowcase(varinq.name) EQ strlowcase(inyaxisname):BEGIN ; y axis 375 375 IF outirr THEN ncdf_varput, outid, outvarid[i], outlat $ … … 384 384 ncdf_varget, inid, i, data 385 385 ncdf_varput, outid, outvarid[i], temporary(data) 386 END 386 END 387 387 1:BEGIN ; 1D 388 388 ncdf_varget, inid, i, data 389 389 ncdf_varput, outid, outvarid[i], temporary(data) 390 END 390 END 391 391 2:BEGIN ; 2D 392 392 ncdf_varget, inid, i, data … … 395 395 , WEIG = weig, ADDR = addr, NAN_VALUE = NaN_value, _extra = ex) 396 396 ncdf_varput, outid, outvarid[i], temporary(data) 397 END 397 END 398 398 3:BEGIN ; 3D 399 399 FOR k = 0, indimsz[varinq.dim[2]]-1 DO BEGIN … … 409 409 ncdf_varput, outid, outvarid[i], temporary(data), offset = off, count = outcnt 410 410 ENDFOR 411 END 411 END 412 412 4:BEGIN ; 4D 413 413 FOR t = 0, indimsz[varinq.dim[3]]-1 DO BEGIN … … 424 424 ENDFOR 425 425 ENDFOR 426 END 426 END 427 427 ENDCASE 428 428 END 429 429 ENDCASE 430 ENDIF 430 ENDIF 431 431 ENDFOR 432 432 433 433 ncdf_close, inid 434 434 ncdf_close, outid 435 435 436 436 return 437 END 437 END -
trunk/SRC/Postscript/openps.pro
r260 r292 130 130 ; show some informations 131 131 IF arg_present(infowidget) THEN $ 132 infowidget = xnotice('Post cript file is currently processed...')132 infowidget = xnotice('Postscript file is currently processed...') 133 133 ; 134 134 RETURN -
trunk/SRC/ToBeReviewed/LECTURE/read_ncdf_varget.pro
r271 r292 45 45 ; |--+---+---+|--+---+---+---+-| +...+..|+...+...+ 46 46 ; in the ........ part, it is easy the first point is number 0 but in 47 ; the --------- part the first point is number 3... Ihe position of47 ; the --------- part the first point is number 3... The position of 48 48 ; the first point in the is given by: 49 49 ; (key_stride[0]-1)-((key-1) MOD key_stride[0]) -
trunk/SRC/ToBeReviewed/PLOTS/DESSINE/bar_plot.pro
r262 r292 135 135 TITLE=title, XTITLE=xtitle, YTITLE=ytitle, BASERANGE=baserange, $ 136 136 BARWIDTH=barwidth, BARSPACE=barspace, BAROFFSET=baroffset, $ 137 OUTLINE=outline, OVERPLO t=overplot, BACKGROUND=background, $137 OUTLINE=outline, OVERPLOT=overplot, BACKGROUND=background, $ 138 138 ROTATE=rotate, _EXTRA = ex 139 139 ; -
trunk/SRC/ToBeReviewed/PLOTS/DESSINE/plt.pro
r264 r292 459 459 Conn = [replicate(3, 1, n_elements(trifield)/3), trifield] 460 460 Result = mesh_decimate(temporary(verts), (temporary(Conn))[*] $ 461 , Connout, vertices = Vertsout $461 , connout, vertices = Vertsout $ 462 462 , percent_vertices = decimatetri) 463 463 connout = reform(connout, 4, n_elements(connout)/4, /over) -
trunk/SRC/ToBeReviewed/PLOTS/VECTEUR/vecteur.pro
r232 r292 333 333 direcz = direcz/100. 334 334 ; 335 ; St ege 1, d)335 ; Stage 1, d) 336 336 ; coordinates of the point of the arrow in the cartesian reference. 337 337 -
trunk/SRC/ToBeReviewed/TRIANGULATION/ciseauxtri.pro
r262 r292 4 4 ; Delete arrays which do not have to be drawn thanks to 2 tests: 5 5 ; 1) Corners of the array must be in the window 6 ; 2) Length es of side of triangles expressed in normalized6 ; 2) Lengths of side of triangles expressed in normalized 7 7 ; coordinates must not surpass a sill length. 8 8 ; … … 79 79 seuil = 5 < (min([nx, ny])-2) 80 80 ; 81 ; Now we delete tri ngles whose one side has a size superior to 1/sill from the domain reserved for the drawing.81 ; Now we delete triangles whose one side has a size superior to 1/sill from the domain reserved for the drawing. 82 82 ; 83 83 -
trunk/SRC/ToBeReviewed/WIDGET/xnotice.pro
r231 r292 39 39 ; 40 40 ; We separate the text in different lines (separated by !C) if it is not done yet... 41 ; n''est pas deja fait...42 41 ; 43 42 compile_opt idl2, strictarrsubs
Note: See TracChangeset
for help on using the changeset viewer.