Changeset 74


Ignore:
Timestamp:
05/23/06 15:45:47 (18 years ago)
Author:
smasson
Message:

debug xxx and cie + clean data file + rm perldoc_idl

Location:
trunk/SRC
Files:
1 deleted
66 edited

Legend:

Unmodified
Added
Removed
  • trunk/SRC/.idlwave_catalog

    r73 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/Calendar/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/Documentation/xmldoc/idlfiles/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ForOldVersion/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/Grid/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/Grid/computegrid.pro

    r69 r74  
    386386; check the peridicity if iyminmesh and iymaxmesh have the default definitions... 
    387387  IF NOT keyword_set(plain) AND key_onearth EQ 1 AND key_stride[1] EQ 1 $ 
    388     AND iyminmesh EQ 0l AND iymaxmesh eq jpjglo-1 AND jpj GE 3 THEN BEGIN 
     388    AND iyminmesh EQ 0l AND iymaxmesh eq jpjglo-1 AND jpj GE 3 AND jpi GE 2 THEN BEGIN 
    389389 
    390390    CASE 1 OF 
     
    581581    ENDCASE 
    582582    glamf = glamt + 0.5 * stepxf 
    583     IF jpj EQ 1 THEN glamf = reform(glamf, jpi, jpj, /over) 
    584583  ENDIF ELSE glamf = glamt + 0.5 
    585584; 
     
    590589    ENDIF ELSE glamf = glamboundary[0] > temporary(glamf) < glamboundary[1] 
    591590  ENDIF 
     591; 
     592  IF jpj EQ 1 THEN glamf = reform(glamf, jpi, jpj, /over) 
    592593; 
    593594;==================================================== 
     
    614615  IF key_onearth THEN gphif = -90. > gphif < 90. 
    615616; 
     617  IF jpj EQ 1 THEN gphif = reform(gphif, jpi, jpj, /over) 
     618; 
    616619;==================================================== 
    617620; e1t: x distance between U(i-1,j) and U(i,j) 
     
    638641      IF NOT keyword_set(key_periodic) THEN $ 
    639642        e1t[0, *] = e1t[1, *]  
    640       IF jpj EQ 1 THEN e1t = reform(e1t, jpi, jpj, /over) 
    641643    ENDIF ELSE e1t = replicate(stepx, jpi, jpj) 
    642644  ENDIF ELSE e1t = replicate(1b, jpi, jpj) 
     645; 
     646  IF jpj EQ 1 THEN e1t = reform(e1t, jpi, jpj, /over) 
    643647; 
    644648;==================================================== 
     
    660664  IF key_onearth THEN e2t = r * !pi/180. * temporary(e2t) 
    661665; 
     666  IF jpj EQ 1 THEN e2t = reform(e2t, jpi, jpj, /over) 
     667; 
    662668;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    663669  IF keyword_set(fullcgrid) THEN BEGIN 
     
    672678        glamu = glamboundary[0] > temporary(glamu) < glamboundary[1] 
    673679    ENDIF ELSE glamu = glamf 
     680; 
     681    IF jpj EQ 1 THEN glamu = reform(glamu, jpi, jpj, /over) 
    674682; 
    675683;==================================================== 
     
    684692          stepyu[jpi-1, *] = stepyu[jpi-2, *] 
    685693        gphiu = gphit + 0.5 * stepyu 
    686         IF jpj EQ 1 THEN gphiu = reform(gphiu, jpi, jpj, /over) 
    687694      ENDIF ELSE gphiu = gphit 
    688695    ENDIF ELSE gphiu = gphit 
    689696  IF key_onearth THEN gphiu = -90. > gphiu < 90. 
     697; 
     698  IF jpj EQ 1 THEN gphiu = reform(gphiu, jpi, jpj, /over) 
    690699; 
    691700;==================================================== 
     
    718727    IF key_onearth THEN gphiv = -90. > gphiv < 90. 
    719728; 
     729    IF jpj EQ 1 THEN gphiv = reform(gphiv, jpi, jpj, /over) 
     730; 
    720731;==================================================== 
    721732; e1u: x distance between T(i,j) and T(i+1,j) 
     
    734745      IF key_onearth THEN e2u = r * !pi/180. * temporary(e2u) 
    735746    ENDIF ELSE e2u = e2t 
     747; 
     748    IF jpj EQ 1 THEN e2u = reform(e2u, jpi, jpj, /over) 
    736749; 
    737750;==================================================== 
     
    751764    ENDIF ELSE e1v = e1t  
    752765; 
     766    IF jpj EQ 1 THEN e1v = reform(e1v, jpi, jpj, /over) 
     767; 
    753768;==================================================== 
    754769; e2v: y distance between T(i,j) and T(i+1,j) 
     
    776791    ENDIF ELSE e1f = e1u 
    777792; 
     793    IF jpj EQ 1 THEN e1f = reform(e1f, jpi, jpj, /over) 
     794; 
    778795;==================================================== 
    779796; e2f: y distance between U(i,j) and U(i,j+1) 
     
    785802      IF key_onearth THEN e2f = r * !pi/180. * temporary(e2f) 
    786803    ENDIF ELSE e2f = e2v 
     804; 
     805    IF jpj EQ 1 THEN e2f = reform(e2f, jpi, jpj, /over) 
    787806; 
    788807  ENDIF 
     
    802821    ENDIF 
    803822  ENDIF 
     823; 
     824  IF jpj EQ 1 THEN BEGIN  
     825    e1t = reform(e1t, jpi, jpj, /over) 
     826    IF keyword_set(fullcgrid) THEN BEGIN 
     827      e1u = reform(e1u, jpi, jpj, /over) 
     828      e1v = reform(e1v, jpi, jpj, /over) 
     829      e1f = reform(e1f, jpi, jpj, /over) 
     830    ENDIF   
     831  ENDIF   
    804832; 
    805833;==================================================== 
     
    953981    e3w = e3w[0:*:stride[2]] 
    954982; we must recompute glamf and gphif... 
    955    IF jpi GT 1 THEN BEGIN  
    956      if (keyword_set(key_onearth) AND keyword_set(xnotsorted)) $ 
    957        OR (keyword_set(key_periodic) AND key_irregular) then BEGIN 
    958        stepxf = (glamt + 720) MOD 360 
    959        stepxf = shift(stepxf, -1, -1) - stepxf 
    960        stepxf = [ [[stepxf]], [[stepxf + 360]], [[stepxf - 360]] ] 
    961        stepxf = min(abs(stepxf), dimension = 3) 
    962        IF NOT keyword_set(key_periodic) THEN $ 
    963          stepxf[jpi-1, *] = stepxf[jpi-2, *] 
    964      ENDIF ELSE BEGIN 
    965        stepxf = shift(glamt, -1, -1) - glamt 
    966        IF keyword_set(key_periodic) THEN $ 
    967          stepxf[jpi-1, *] = 360 + stepxf[jpi-1, *] $ 
    968        ELSE stepxf[jpi-1, *] = stepxf[jpi-2, *] 
    969      ENDELSE 
    970      IF jpj GT 1 THEN BEGIN  
    971        stepxf[*, jpj-1] = stepxf[*, jpj-2] 
    972        stepxf[jpi-1, jpj-1] = stepxf[jpi-2, jpj-2] 
    973      ENDIF 
    974      glamf = glamt + 0.5 * stepxf 
    975      IF jpj EQ 1 THEN glamf = reform(glamf, jpi, jpj, /over) 
    976    ENDIF ELSE glamf = glamt + 0.5 
    977    IF jpj GT 1 THEN BEGIN  
     983    IF jpi GT 1 THEN BEGIN  
     984      if (keyword_set(key_onearth) AND keyword_set(xnotsorted)) $ 
     985        OR (keyword_set(key_periodic) AND key_irregular) then BEGIN 
     986        stepxf = (glamt + 720) MOD 360 
     987        stepxf = shift(stepxf, -1, -1) - stepxf 
     988        stepxf = [ [[stepxf]], [[stepxf + 360]], [[stepxf - 360]] ] 
     989        stepxf = min(abs(stepxf), dimension = 3) 
     990        IF NOT keyword_set(key_periodic) THEN $ 
     991          stepxf[jpi-1, *] = stepxf[jpi-2, *] 
     992      ENDIF ELSE BEGIN 
     993        stepxf = shift(glamt, -1, -1) - glamt 
     994        IF keyword_set(key_periodic) THEN $ 
     995          stepxf[jpi-1, *] = 360 + stepxf[jpi-1, *] $ 
     996          ELSE stepxf[jpi-1, *] = stepxf[jpi-2, *] 
     997      ENDELSE 
     998      IF jpj GT 1 THEN BEGIN  
     999        stepxf[*, jpj-1] = stepxf[*, jpj-2] 
     1000        stepxf[jpi-1, jpj-1] = stepxf[jpi-2, jpj-2] 
     1001      ENDIF 
     1002      glamf = glamt + 0.5 * stepxf 
     1003    ENDIF ELSE glamf = glamt + 0.5 
     1004    IF jpj GT 1 THEN BEGIN  
    9781005; we must compute stepyf: y distance between T(i,j) T(i+1,j+1) 
    979      stepyf = shift(gphit, -1, -1) - gphit 
    980      stepyf[*, jpj-1] = stepyf[*, jpj-2] 
    981      IF jpi GT 1 THEN BEGIN 
    982        if NOT keyword_set(key_periodic) THEN $ 
    983          stepyf[jpi-1, *] = stepyf[jpi-2, *] 
    984        stepyf[jpi-1, jpj-1] = stepyf[jpi-2, jpj-2] 
    985      ENDIF  
    986      gphif = gphit + 0.5 * stepyf 
    987    ENDIF ELSE gphif = gphit + 0.5 
     1006      stepyf = shift(gphit, -1, -1) - gphit 
     1007      stepyf[*, jpj-1] = stepyf[*, jpj-2] 
     1008      IF jpi GT 1 THEN BEGIN 
     1009        if NOT keyword_set(key_periodic) THEN $ 
     1010          stepyf[jpi-1, *] = stepyf[jpi-2, *] 
     1011        stepyf[jpi-1, jpj-1] = stepyf[jpi-2, jpj-2] 
     1012      ENDIF  
     1013      gphif = gphit + 0.5 * stepyf 
     1014    ENDIF ELSE gphif = gphit + 0.5 
     1015; 
     1016    IF jpj EQ 1 THEN BEGIN  
     1017      glamt = reform(glamt, jpi, jpj, /over) 
     1018      gphit = reform(gphit, jpi, jpj, /over) 
     1019      glamf = reform(glamf, jpi, jpj, /over) 
     1020      gphif = reform(gphif, jpi, jpj, /over) 
     1021      e1t = reform(e1t, jpi, jpj, /over) 
     1022      e2t = reform(e2t, jpi, jpj, /over) 
     1023    ENDIF 
    9881024; 
    9891025    IF keyword_set(fullcgrid) THEN BEGIN 
     
    10021038      fmaskredy = (temporary(fmaskredy))[0, 0:*:stride[1], 0:*:stride[2]] 
    10031039      fmaskredx = (temporary(fmaskredx))[0:*:stride[0], 0, 0:*:stride[2]] 
     1040      IF jpj EQ 1 THEN BEGIN  
     1041        glamu = reform(glamu, jpi, jpj, /over) 
     1042        gphiu = reform(gphiu, jpi, jpj, /over) 
     1043        e1u = reform(e1u, jpi, jpj, /over) 
     1044        e2u = reform(e2u, jpi, jpj, /over) 
     1045        glamv = reform(glamv, jpi, jpj, /over) 
     1046        gphiv = reform(gphiv, jpi, jpj, /over) 
     1047        e1v = reform(e1v, jpi, jpj, /over) 
     1048        e2v = reform(e2v, jpi, jpj, /over) 
     1049        e1f = reform(e1f, jpi, jpj, /over) 
     1050        e2f = reform(e2f, jpi, jpj, /over) 
     1051      ENDIF 
    10041052    ENDIF 
    10051053  ENDIF 
     
    10441092    ELSE strcalling = ccmeshparameters.filename 
    10451093  ENDIF 
    1046   glaminfo = moment(glamt) 
    1047   IF finite(glaminfo[2]) EQ 0 THEN glaminfo = glaminfo[0:1] 
    1048   gphiinfo = moment(gphit) 
    1049   IF finite(gphiinfo[2]) EQ 0 THEN gphiinfo = gphiinfo[0:1] 
     1094  IF n_elements(glamt) GE 2 THEN BEGIN 
     1095    glaminfo = moment(glamt) 
     1096    IF finite(glaminfo[2]) EQ 0 THEN glaminfo = glaminfo[0:1] 
     1097    gphiinfo = moment(gphit) 
     1098    IF finite(gphiinfo[2]) EQ 0 THEN gphiinfo = gphiinfo[0:1] 
     1099  ENDIF ELSE BEGIN  
     1100    glaminfo = glamt 
     1101    gphiinfo = gphit 
     1102  ENDELSE  
    10501103  ccmeshparameters = {filename:strcalling  $ 
    1051           , glaminfo:glaminfo $ 
    1052           , gphiinfo:gphiinfo $ 
     1104          , glaminfo:float(string(glaminfo, format = '(E11.4)')) $ 
     1105          , gphiinfo:float(string(gphiinfo, format = '(E11.4)')) $ 
    10531106          , jpiglo:jpiglo, jpjglo:jpjglo, jpkglo:jpkglo $ 
    10541107          , jpi:jpi, jpj:jpj, jpk:jpk $ 
  • trunk/SRC/Grid/ncdf_meshread.pro

    r69 r74  
    335335      ENDIF 
    336336      glamf = glamt + 0.5 * stepxf 
    337       IF jpj EQ 1 THEN glamf = reform(glamf, jpi, jpj, /over) 
    338337    ENDIF ELSE glamf = glamt + 0.5 
    339338    IF jpj GT 1 THEN BEGIN  
     
    529528  endif 
    530529;------------------------------------------------------- 
     530; make sure we do have 2d arrays when jpj eq 1 
     531;------------------------------------------------------- 
     532  IF jpj EQ 1 THEN BEGIN  
     533    glamt = reform(glamt, jpi, jpj, /over) 
     534    gphit = reform(gphit, jpi, jpj, /over) 
     535    e1t = reform(e1t, jpi, jpj, /over) 
     536    e2t = reform(e2t, jpi, jpj, /over) 
     537    glamu = reform(glamu, jpi, jpj, /over) 
     538    gphiu = reform(gphiu, jpi, jpj, /over) 
     539    e1u = reform(e1u, jpi, jpj, /over) 
     540    e2u = reform(e2u, jpi, jpj, /over) 
     541    glamv = reform(glamv, jpi, jpj, /over) 
     542    gphiv = reform(gphiv, jpi, jpj, /over) 
     543    e1v = reform(e1v, jpi, jpj, /over) 
     544    e2v = reform(e2v, jpi, jpj, /over) 
     545    glamf = reform(glamf, jpi, jpj, /over) 
     546    gphif = reform(gphif, jpi, jpj, /over) 
     547    e1f = reform(e1f, jpi, jpj, /over) 
     548    e2f = reform(e2f, jpi, jpj, /over) 
     549    IF keyword_set(key_partialstep) THEN BEGIN 
     550      hdept = reform(hdept, jpi, jpj, /over) 
     551      hdepw = reform(hdepw, jpi, jpj, /over) 
     552      e3t_ps = reform(e3t_ps, jpi, jpj, /over) 
     553      e3w_ps = reform(e3w_ps, jpi, jpj, /over) 
     554    ENDIF  
     555  ENDIF 
     556;------------------------------------------------------- 
    531557  ixmindta = ixmindtasauve 
    532558  iymindta = iymindtasauve 
     
    547573    ELSE strcalling = ccmeshparameters.filename 
    548574  ENDIF  
    549   glaminfo = moment(glamt) 
    550   IF finite(glaminfo[2]) EQ 0 THEN glaminfo = glaminfo[0:1] 
    551   gphiinfo = moment(gphit) 
    552   IF finite(gphiinfo[2]) EQ 0 THEN gphiinfo = gphiinfo[0:1] 
     575  IF n_elements(glamt) GE 2 THEN BEGIN 
     576    glaminfo = moment(glamt) 
     577    IF finite(glaminfo[2]) EQ 0 THEN glaminfo = glaminfo[0:1] 
     578    gphiinfo = moment(gphit) 
     579    IF finite(gphiinfo[2]) EQ 0 THEN gphiinfo = gphiinfo[0:1] 
     580  ENDIF ELSE BEGIN  
     581    glaminfo = glamt 
     582    gphiinfo = gphit 
     583  ENDELSE  
    553584  ccmeshparameters = {filename:strcalling  $ 
    554           , glaminfo:glaminfo $ 
    555           , gphiinfo:gphiinfo $ 
     585          , glaminfo:float(string(glaminfo, format = '(E11.4)')) $ 
     586          , gphiinfo:float(string(gphiinfo, format = '(E11.4)')) $ 
    556587          , jpiglo:jpiglo, jpjglo:jpjglo, jpkglo:jpkglo $ 
    557588          , jpi:jpi, jpj:jpj, jpk:jpk $ 
  • trunk/SRC/Interpolation/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/Interpolation/neighbor.pro

    r59 r74  
    1414; 
    1515; INPUTS: 
    16 ;       Lon0, Lat0 = scalar. longitudes and latitudes of points P0.  
     16;       Lon0, Lat0 = scalar. longitudes and latitudes of point P0.  
    1717;       Lon1, Lat1 = np1 elements vector. longitude and latitude of 
    1818;       np1 points P1  
  • trunk/SRC/Obsolete/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/Postscript/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ReadWrite/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ReadWrite/idl-NetCDF/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
    77(setq idlwave-library-catalog-routines 
    8  '(("ncdf_listdims" fun nil (lib "ncdf_listdims.pro" nil "saxo") "Result = %s(ncid)" (nil ("sizes"))) 
     8 '(("ncdf_listdims" fun nil (lib "ncdf_listdims.pro" nil "saxo") "Result = %s(ncid)" (nil)) 
    99   ("ncdf_listvars" fun nil (lib "ncdf_listvars.pro" nil "saxo") "Result = %s(ncid)" (nil)) 
    1010   ("ncdf_read" pro nil (lib "ncdf_read.pro" nil "saxo") "%s, filename, info, dinfo, vinfo, gatts, vatts, data" (nil)) 
  • trunk/SRC/ReadWrite/idl-NetCDF/ncdf_quickread/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
     
    99   ("ncdf_quickread_getDir" fun nil (lib "ncdf_quickread_helper.pro" nil "saxo") "Result = %s(fullpath)" (nil)) 
    1010   ("ncdf_quickread_validateName" fun nil (lib "ncdf_quickread_helper.pro" nil "saxo") "Result = %s(varname)" (nil)) 
    11    ("ncdf_quickread_helper" fun nil (lib "ncdf_quickread_helper.pro" nil "saxo") "Result = %s(infile)" (nil ("prefix") ("reform") ("verbose"))))) 
     11   ("ncdf_quickread_helper" fun nil (lib "ncdf_quickread_helper.pro" nil "saxo") "Result = %s(infile)" (nil ("fields") ("prefix") ("reform") ("verbose"))))) 
  • trunk/SRC/ReadWrite/idl-NetCDF/ncdf_quickwrite/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ReadWrite/readoldoparestart.pro

    r44 r74  
    7878; expected size computation 
    7979   size = numrec*reclen-toomuch 
    80    19L*jpk 
    81    numrec = if size NE filepamameters.size then begin 
     80   if size NE filepamameters.size then begin 
    8281      print, 'The size of the file is not the expected one!' 
    8382      print, 'Check your file or the values of ibloc, jpiglo,' 
     
    147146   IF arg_present(bsfn) THEN bsfn = read2fromopa(numrst, params, 11) 
    148147;      CALL read2(numrst,bsfd ,jpk,16) 
    149    IF arg_present(bsfd) THENbsfd  = read2fromopa(numrst, params, 16) 
     148   IF arg_present(bsfd) THEN bsfd  = read2fromopa(numrst, params, 16) 
    150149;#endif 
    151150;#ifdef key_zdftke 
  • trunk/SRC/Tests/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/Tests/TestsOld/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/Tests/makeold.sh

    r58 r74  
    11#!/bin/sh 
    2 rm -rf TestsOld 
    3 mkdir TestsOld 
     2rm -f TestsOld/*.pro 
    43for i in tst_*.pro 
    54  do 
  • trunk/SRC/Textoidl/.idlwave_catalog

    r68 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Tue Jan 24 17:06:19 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/CALCULS/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/CALENDRIER/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/COULEURS/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/GRILLE/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/GRILLE/cmpgrid.pro

    r69 r74  
    1212   if n_elements(ccmeshparameters) EQ 0 then return, 1 
    1313; 
    14 ; does ccmeshparameters contains the new parameters ? 
    15 ; 
    16    if (where(strlowcase(tag_names(ccmeshparameters)) EQ 'key_partialstep'))[0] EQ -1 then return, 1 
    17 ; 
    1814; we compare the structure which caracterise the grid whith 
    1915; ccmeshparameters 
     
    2622      ccmeshparameters.jpj NE newgrid.jpj: 
    2723      ccmeshparameters.jpk NE newgrid.jpk: 
    28       array_equal(ccmeshparameters.glaminfo, newgrid.glaminfo) EQ 0: 
    29       array_equal(ccmeshparameters.gphiinfo, newgrid.gphiinfo) EQ 0: 
     24      total(ccmeshparameters.glaminfo - newgrid.glaminfo) NE 0: 
     25      total(ccmeshparameters.gphiinfo - newgrid.gphiinfo) NE 0: 
    3026      ccmeshparameters.ixminmesh NE newgrid.ixminmesh: 
    3127      ccmeshparameters.ixmaxmesh NE newgrid.ixmaxmesh: 
  • trunk/SRC/ToBeReviewed/GRILLE/domdef.pro

    r13 r74  
    170170  lon1f = 99999. & lon2f = -99999. & lat1f = 99999. & lat2f = -99999. 
    171171  vert1t = 99999. & vert2t = -99999. & vert1w = 99999. & vert2w = -99999. 
     172; 
     173  IF jpj EQ 1 THEN BEGIN  
     174    IF (where(gridtype eq 'T'))[0] NE -1 OR (where(gridtype EQ 'W'))[0] NE -1 THEN BEGIN 
     175      glamt = reform(glamt, jpi, jpj, /over) 
     176      gphit = reform(gphit, jpi, jpj, /over) 
     177    ENDIF  
     178    IF (where(gridtype eq 'U'))[0] NE -1 THEN BEGIN 
     179      glamu = reform(glamu, jpi, jpj, /over) 
     180      gphiu = reform(gphiu, jpi, jpj, /over) 
     181    ENDIF   
     182    IF (where(gridtype eq 'V'))[0] NE -1 THEN BEGIN 
     183      glamv = reform(glamv, jpi, jpj, /over) 
     184      gphiv = reform(gphiv, jpi, jpj, /over) 
     185    ENDIF   
     186    IF (where(gridtype eq 'F'))[0] NE -1 THEN BEGIN 
     187      glamf = reform(glamf, jpi, jpj, /over) 
     188      gphif = reform(gphif, jpi, jpj, /over) 
     189    ENDIF   
     190  ENDIF 
    172191; 
    173192  IF N_PARAMS() EQ 2 THEN GOTO, vertical 
     
    237256      IF (dom[0] EQ -1) THEN BEGIN 
    238257        IF keyword_set(findalways) THEN BEGIN 
    239           domdef, GRIDTYPE = gridtype, MEMEINDICES = memeindices, _extra = ex 
    240           IF N_PARAMS() EQ 6 THEN $ 
    241             domdef, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
     258          print, 'WARNING, empty T points box... we get the neighnors to define a new box...' 
     259          neig1 = neighbor(lon1, lat1, glamt, gphit, sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     260          neig2 = neighbor(lon2, lat2, glamt, gphit, sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     261          CASE N_PARAMS() OF 
     262            4:domdef, min(glamt[neig1]), max(glamt[neig2]), min(gphit[neig1]), max(gphit[neig2]), GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
     263            6:domdef, min(glamt[neig1]), max(glamt[neig2]), min(gphit[neig1]), max(gphit[neig2]), z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
     264          ENDCASE 
    242265          RETURN 
    243266        ENDIF ELSE BEGIN 
     
    266289        IF (dom[0] EQ -1) THEN BEGIN 
    267290          IF keyword_set(findalways) THEN BEGIN 
    268             domdef, GRIDTYPE = gridtype, MEMEINDICES = memeindices, _extra = ex 
    269             IF N_PARAMS() EQ 6 THEN $ 
    270               domdef, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
    271             RETURN 
     291; if t grid parameters alreday defined, we use them...  
     292            CASE 1 OF 
     293              (where(gridtype eq 'T'))[0] NE -1 OR (where(gridtype EQ 'W'))[0] NE -1:BEGIN 
     294                print, 'WARNING, empty U points box... we use the same index as T points...' 
     295                firstxu = firstxt & lastxu = lastxt & nxu = nxt 
     296                firstyu = firstyt & lastyu = lastyt & nyu = nyt 
     297              END 
     298              ELSE:BEGIN 
     299                print, 'WARNING, empty U points box... we get the neighnors to define a new box...' 
     300                neig1 = neighbor(lon1, lat1, glamu, gphiu, sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     301                neig2 = neighbor(lon2, lat2, glamu, gphiu, sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     302                CASE N_PARAMS() OF 
     303                  4:domdef, min(glamu[neig1]), max(glamu[neig2]), min(gphiu[neig1]), max(gphiu[neig2]), GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
     304                  6:domdef, min(glamu[neig1]), max(glamu[neig2]), min(gphiu[neig1]), max(gphiu[neig2]), z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
     305                ENDCASE 
     306                RETURN 
     307              END 
     308            ENDCASE 
    272309          ENDIF ELSE BEGIN 
    273310            ras = report('WARNING, The box does not contain any U points...') 
     
    296333        IF (dom[0] EQ -1) THEN BEGIN 
    297334          IF keyword_set(findalways) THEN BEGIN 
    298             domdef, GRIDTYPE = gridtype, MEMEINDICES = memeindices, _extra = ex 
    299             IF N_PARAMS() EQ 6 THEN $ 
    300               domdef, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex  
    301             RETURN 
     335            CASE 1 OF 
     336              (where(gridtype eq 'T'))[0] NE -1 OR (where(gridtype EQ 'W'))[0] NE -1:BEGIN 
     337                print, 'WARNING, empty V points box... we use the same index as T points...' 
     338                firstxv = firstxt & lastxv = lastxt & nxv = nxt 
     339                firstyv = firstyt & lastyv = lastyt & nyv = nyt 
     340              END  
     341              (where(gridtype eq 'U'))[0] NE -1:BEGIN 
     342                print, 'WARNING, empty V points box... we use the same index as U points...' 
     343                firstxv = firstxu & lastxv = lastxu & nxv = nxu 
     344                firstyv = firstyu & lastyv = lastyu & nyv = nyu 
     345              END  
     346              ELSE:BEGIN 
     347                print, 'WARNING, empty V points box... we get the neighnors to define a new box...' 
     348                neig1 = neighbor(lon1, lat1, glamv, gphiv, sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     349                neig2 = neighbor(lon2, lat2, glamv, gphiv, sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     350                CASE N_PARAMS() OF 
     351                  4:domdef, min(glamv[neig1]), max(glamv[neig2]), min(gphiv[neig1]), max(gphiv[neig2]), GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
     352                  6:domdef, min(glamv[neig1]), max(glamv[neig2]), min(gphiv[neig1]), max(gphiv[neig2]), z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
     353                ENDCASE 
     354                RETURN 
     355              END 
     356            ENDCASE 
    302357          ENDIF ELSE BEGIN 
    303358            ras = report('WARNING, The box does not contain any V points...') 
     
    326381        IF (dom[0] EQ -1) THEN BEGIN 
    327382          IF keyword_set(findalways) THEN BEGIN 
    328             domdef, GRIDTYPE = gridtype, MEMEINDICES = memeindices, _extra = ex 
    329             IF N_PARAMS() EQ 6 THEN $ 
    330               domdef, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
    331             RETURN 
     383            CASE 1 OF 
     384              (where(gridtype eq 'T'))[0] NE -1 OR (where(gridtype EQ 'W'))[0] NE -1:BEGIN 
     385                print, 'WARNING, empty F points box... we use the same index as T points...' 
     386                firstxf = firstxt & lastxf = lastxt & nxf = nxt 
     387                firstyf = firstyt & lastyf = lastyt & nyf = nyt 
     388              END  
     389              (where(gridtype eq 'U'))[0] NE -1:BEGIN 
     390                print, 'WARNING, empty F points box... we use the same index as U points...' 
     391                firstxf = firstxu & lastxf = lastxu & nxf = nxu 
     392                firstyf = firstyu & lastyf = lastyu & nyf = nyu 
     393              END  
     394              (where(gridtype eq 'V'))[0] NE -1:BEGIN 
     395                print, 'WARNING, empty F points box... we use the same index as V points...' 
     396                firstxf = firstxv & lastxf = lastxv & nxf = nxv 
     397                firstyf = firstyv & lastyf = lastyv & nyf = nyv 
     398              END  
     399              ELSE:BEGIN 
     400                print, 'WARNING, empty F points box... we get the neighnors to define a new box...' 
     401                neig1 = neighbor(lon1, lat1, glamf, gphif, sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     402                neig2 = neighbor(lon2, lat2, glamf, gphif, sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     403                CASE N_PARAMS() OF 
     404                  4:domdef, min(glamf[neig1]), max(glamf[neig2]), min(gphif[neig1]), max(gphif[neig2]), GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
     405                  6:domdef, min(glamf[neig1]), max(glamf[neig2]), min(gphif[neig1]), max(gphif[neig2]), z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
     406                ENDCASE 
     407                RETURN 
     408              END 
     409            ENDCASE   
    332410          ENDIF ELSE BEGIN 
    333411            ras = report('WARNING, The box does not contain any F points...') 
     
    427505          IF (dom[0] EQ -1) THEN BEGIN 
    428506            IF keyword_set(findalways) THEN BEGIN 
    429               domdef, GRIDTYPE = gridtype, MEMEINDICES = memeindices, _extra = ex 
    430               IF N_PARAMS() EQ 6 THEN $ 
    431                 domdef, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
     507              print, 'WARNING, empty T points box... we get the neighnors to define a new box...' 
     508              neig1 = neighbor(lon1, lat1, glamt[fstx:lstx, *], gphit[fstx:lstx, *], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     509              neig2 = neighbor(lon2, lat2, glamt[fstx:lstx, *], gphit[fstx:lstx, *], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     510              CASE N_PARAMS() OF 
     511                4:domdef, fstx, lstx, min((gphit[fstx:lstx, *])[neig1]), max((gphit[fstx:lstx, *])[neig2]), GRIDTYPE = gridtype, MEMEINDICES = memeindices, /XINDEX, ZINDEX = zindex, _extra = ex 
     512                6:domdef, fstx, lstx, min((gphit[fstx:lstx, *])[neig1]), max((gphit[fstx:lstx, *])[neig2]), z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, /XINDEX, ZINDEX = zindex, _extra = ex 
     513              ENDCASE 
    432514              RETURN 
    433515            ENDIF ELSE BEGIN 
     
    452534            IF (dom[0] EQ -1) THEN BEGIN 
    453535              IF keyword_set(findalways) THEN BEGIN 
    454                 domdef, GRIDTYPE = gridtype, MEMEINDICES = memeindices, _extra = ex 
    455                 IF N_PARAMS() EQ 6 THEN $ 
    456                   domdef, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
    457                 RETURN 
     536                CASE 1 OF 
     537                  (where(gridtype eq 'T'))[0] NE -1 OR (where(gridtype EQ 'W'))[0] NE -1:BEGIN 
     538                    print, 'WARNING, empty U points box... we use the same index as T points...' 
     539                    firstyu = firstyt & lastyu = lastyt & nyu = nyt 
     540                  END  
     541                  ELSE:BEGIN 
     542                    print, 'WARNING, empty U points box... we get the neighnors to define a new box...' 
     543                    neig1 = neighbor(lon1, lat1, glamu[fstx:lstx, *], gphiu[fstx:lstx, *], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     544                    neig2 = neighbor(lon2, lat2, glamu[fstx:lstx, *], gphiu[fstx:lstx, *], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     545                    CASE N_PARAMS() OF 
     546                      4:domdef, fstx, lstx, min((gphiu[fstx:lstx, *])[neig1]), max((gphiu[fstx:lstx, *])[neig2]), GRIDTYPE = gridtype, MEMEINDICES = memeindices, /XINDEX, ZINDEX = zindex, _extra = ex 
     547                      6:domdef, fstx, lstx, min((gphiu[fstx:lstx, *])[neig1]), max((gphiu[fstx:lstx, *])[neig2]), z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, /XINDEX, ZINDEX = zindex, _extra = ex 
     548                    ENDCASE 
     549                    RETURN 
     550                  END 
     551                ENDCASE  
    458552              ENDIF ELSE BEGIN 
    459553                ras = report('WARNING, The box does not contain any U points...') 
     
    478572            IF (dom[0] EQ -1) THEN BEGIN 
    479573              IF keyword_set(findalways) THEN BEGIN 
    480                 domdef, GRIDTYPE = gridtype, MEMEINDICES = memeindices, _extra = ex 
    481                 IF N_PARAMS() EQ 6 THEN $ 
    482                   domdef, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
    483                 RETURN 
     574                CASE 1 OF 
     575                  (where(gridtype eq 'T'))[0] NE -1 OR (where(gridtype EQ 'W'))[0] NE -1:BEGIN 
     576                    print, 'WARNING, empty V points box... we use the same index as T points...' 
     577                    firstyv = firstyt & lastyv = lastyt & nyv = nyt 
     578                  END  
     579                  (where(gridtype eq 'U'))[0] NE -1:BEGIN 
     580                    print, 'WARNING, empty V points box... we use the same index as U points...' 
     581                    firstyv = firstyu & lastyv = lastyu & nyv = nyu 
     582                  END  
     583                  ELSE:BEGIN 
     584                    print, 'WARNING, empty V points box... we get the neighnors to define a new box...' 
     585                    neig1 = neighbor(lon1, lat1, glamv[fstx:lstx, *], gphiv[fstx:lstx, *], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     586                    neig2 = neighbor(lon2, lat2, glamv[fstx:lstx, *], gphiv[fstx:lstx, *], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     587                    CASE N_PARAMS() OF 
     588                      4:domdef, fstx, lstx, min((gphiv[fstx:lstx, *])[neig1]), max((gphiv[fstx:lstx, *])[neig2]), GRIDTYPE = gridtype, MEMEINDICES = memeindices, /XINDEX, ZINDEX = zindex, _extra = ex 
     589                      6:domdef, fstx, lstx, min((gphiv[fstx:lstx, *])[neig1]), max((gphiv[fstx:lstx, *])[neig2]), z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, /XINDEX, ZINDEX = zindex, _extra = ex 
     590                    ENDCASE 
     591                    RETURN 
     592                  END  
     593                ENDCASE  
    484594              ENDIF ELSE BEGIN 
    485595                ras = report('WARNING, The box does not contain any V points...') 
     
    504614            IF (dom[0] EQ -1) THEN BEGIN 
    505615              IF keyword_set(findalways) THEN BEGIN 
    506                 domdef, GRIDTYPE = gridtype, MEMEINDICES = memeindices, _extra = ex 
    507                 IF N_PARAMS() EQ 6 THEN $ 
    508                   domdef, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex 
    509                 RETURN 
     616                CASE 1 OF 
     617                  (where(gridtype eq 'T'))[0] NE -1 OR (where(gridtype EQ 'W'))[0] NE -1:BEGIN 
     618                    print, 'WARNING, empty F points box... we use the same index as T points...' 
     619                    firstyf = firstyt & lastyf = lastyt & nyf = nyt 
     620                  END  
     621                  (where(gridtype eq 'U'))[0] NE -1:BEGIN 
     622                    print, 'WARNING, empty F points box... we use the same index as U points...' 
     623                    firstyf = firstyu & lastyf = lastyu & nyf = nyu 
     624                  END  
     625                  (where(gridtype eq 'V'))[0] NE -1:BEGIN 
     626                    print, 'WARNING, empty F points box... we use the same index as V points...' 
     627                    firstyf = firstyv & lastyf = lastyv & nyf = nyv 
     628                  END  
     629                  ELSE:BEGIN 
     630                    print, 'WARNING, empty F points box... we get the neighnors to define a new box...' 
     631                    neig1 = neighbor(lon1, lat1, glamf[fstx:lstx, *], gphif[fstx:lstx, *], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     632                    neig2 = neighbor(lon2, lat2, glamf[fstx:lstx, *], gphif[fstx:lstx, *], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     633                    CASE N_PARAMS() OF 
     634                      4:domdef, fstx, lstx, min((gphif[fstx:lstx, *])[neig1]), max((gphif[fstx:lstx, *])[neig2]), GRIDTYPE = gridtype, MEMEINDICES = memeindices, /XINDEX, ZINDEX = zindex, _extra = ex 
     635                      6:domdef, fstx, lstx, min((gphif[fstx:lstx, *])[neig1]), max((gphif[fstx:lstx, *])[neig2]), z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, /XINDEX, ZINDEX = zindex, _extra = ex 
     636                    ENDCASE 
     637                    RETURN 
     638                  END 
     639                ENDCASE  
    510640              ENDIF ELSE BEGIN 
    511641                ras = report('WARNING, The box does not contain any F points...') 
     
    543673          IF (dom[0] EQ -1) THEN BEGIN 
    544674            IF keyword_set(findalways) THEN BEGIN 
    545               domdef, GRIDTYPE = gridtype, MEMEINDICES = memeindices, _extra = ex 
    546               IF N_PARAMS() EQ 6 THEN $ 
    547                 domdef, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex  
     675              print, 'WARNING, empty T points box... we get the neighnors to define a new box...' 
     676              neig1 = neighbor(lon1, lat1, glamt[*, fsty:lsty], gphit[*, fsty:lsty], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     677              neig2 = neighbor(lon2, lat2, glamt[*, fsty:lsty], gphit[*, fsty:lsty], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     678              CASE N_PARAMS() OF 
     679                4:domdef, min((glamt[*, fsty:lsty])[neig1]), max((glamt[*, fsty:lsty])[neig2]), fsty, lsty, GRIDTYPE = gridtype, MEMEINDICES = memeindices, /YINDEX, ZINDEX = zindex, _extra = ex 
     680                6:domdef, min((glamt[*, fsty:lsty])[neig1]), max((glamt[*, fsty:lsty])[neig2]), fsty, lsty, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, /YINDEX, ZINDEX = zindex, _extra = ex 
     681              ENDCASE 
    548682              RETURN 
    549683            ENDIF ELSE BEGIN 
     
    568702            IF (dom[0] EQ -1) THEN BEGIN 
    569703              IF keyword_set(findalways) THEN BEGIN 
    570                 domdef, GRIDTYPE = gridtype, MEMEINDICES = memeindices, _extra = ex 
    571                 IF N_PARAMS() EQ 6 THEN $ 
    572                   domdef, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex  
    573                 RETURN 
     704                CASE 1 OF 
     705                  (where(gridtype eq 'T'))[0] NE -1 OR (where(gridtype EQ 'W'))[0] NE -1:BEGIN 
     706                    print, 'WARNING, empty U points box... we use the same index as T points...' 
     707                    firstxu = firstxt & lastxu = lastxt & nxu = nxt 
     708                  END  
     709                  ELSE:BEGIN 
     710                    print, 'WARNING, empty U points box... we get the neighnors to define a new box...' 
     711                    neig1 = neighbor(lon1, lat1, glamu[*, fsty:lsty], gphiu[*, fsty:lsty], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     712                    neig2 = neighbor(lon2, lat2, glamu[*, fsty:lsty], gphiu[*, fsty:lsty], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     713                    CASE N_PARAMS() OF 
     714                      4:domdef, min((glamu[*, fsty:lsty])[neig1]), max((glamu[*, fsty:lsty])[neig2]), fsty, lsty, GRIDTYPE = gridtype, MEMEINDICES = memeindices, /YINDEX, ZINDEX = zindex, _extra = ex 
     715                      6:domdef, min((glamu[*, fsty:lsty])[neig1]), max((glamu[*, fsty:lsty])[neig2]), fsty, lsty, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, /YINDEX, ZINDEX = zindex, _extra = ex 
     716                    ENDCASE 
     717                    RETURN 
     718                  END 
     719                ENDCASE  
    574720              ENDIF ELSE BEGIN 
    575721                ras = report('WARNING, The box does not contain any U points...') 
     
    594740            IF (dom[0] EQ -1) THEN BEGIN 
    595741              IF keyword_set(findalways) THEN BEGIN 
    596                 domdef, GRIDTYPE = gridtype, MEMEINDICES = memeindices, _extra = ex 
    597                 IF N_PARAMS() EQ 6 THEN $ 
    598                   domdef, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex  
    599                 RETURN 
     742                CASE 1 OF 
     743                  (where(gridtype eq 'T'))[0] NE -1 OR (where(gridtype EQ 'W'))[0] NE -1:BEGIN 
     744                    print, 'WARNING, empty V points box... we use the same index as T points...' 
     745                    firstxv = firstxt & lastxv = lastxt & nxv = nxt 
     746                  END  
     747                  (where(gridtype eq 'U'))[0] NE -1:BEGIN 
     748                    print, 'WARNING, empty V points box... we use the same index as U points...' 
     749                    firstxv = firstxu & lastxv = lastxu & nxv = nxu 
     750                  END  
     751                  ELSE:BEGIN 
     752                    print, 'WARNING, empty V points box... we get the neighnors to define a new box...' 
     753                    neig1 = neighbor(lon1, lat1, glamv[*, fsty:lsty], gphiv[*, fsty:lsty], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     754                    neig2 = neighbor(lon2, lat2, glamv[*, fsty:lsty], gphiv[*, fsty:lsty], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     755                    CASE N_PARAMS() OF 
     756                      4:domdef, min((glamv[*, fsty:lsty])[neig1]), max((glamv[*, fsty:lsty])[neig2]), fsty, lsty, GRIDTYPE = gridtype, MEMEINDICES = memeindices, /YINDEX, ZINDEX = zindex, _extra = ex 
     757                      6:domdef, min((glamv[*, fsty:lsty])[neig1]), max((glamv[*, fsty:lsty])[neig2]), fsty, lsty, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, /YINDEX, ZINDEX = zindex, _extra = ex 
     758                    ENDCASE 
     759                    RETURN 
     760                  END  
     761                ENDCASE  
    600762              ENDIF ELSE BEGIN 
    601763                ras = report('WARNING, The box does not contain any V points...') 
     
    620782            IF (dom[0] EQ -1) THEN BEGIN 
    621783              IF keyword_set(findalways) THEN BEGIN 
    622                 domdef, GRIDTYPE = gridtype, MEMEINDICES = memeindices, _extra = ex 
    623                 IF N_PARAMS() EQ 6 THEN $ 
    624                   domdef, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, ZINDEX = zindex, _extra = ex  
    625                 RETURN 
     784                CASE 1 OF 
     785                  (where(gridtype eq 'T'))[0] NE -1 OR (where(gridtype EQ 'W'))[0] NE -1:BEGIN 
     786                    print, 'WARNING, empty F points box... we use the same index as T points...' 
     787                    firstxf = firstxt & lastxf = lastxt & nxf = nxt 
     788                  END  
     789                  (where(gridtype eq 'U'))[0] NE -1:BEGIN 
     790                    print, 'WARNING, empty F points box... we use the same index as U points...' 
     791                    firstxf = firstxu & lastxf = lastxu & nxf = nxu 
     792                  END  
     793                  (where(gridtype eq 'V'))[0] NE -1:BEGIN 
     794                    print, 'WARNING, empty F points box... we use the same index as V points...' 
     795                    firstxf = firstxv & lastxf = lastxv & nxf = nxv 
     796                  END  
     797                  ELSE:BEGIN 
     798                    print, 'WARNING, empty F points box... we get the neighnors to define a new box...' 
     799                    neig1 = neighbor(lon1, lat1, glamf[*, fsty:lsty], gphif[*, fsty:lsty], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     800                    neig2 = neighbor(lon2, lat2, glamf[*, fsty:lsty], gphif[*, fsty:lsty], sphere = keyword_set(key_onearth) * keyword_set(key_irregular)) 
     801                    CASE N_PARAMS() OF 
     802                      4:domdef, min((glamf[*, fsty:lsty])[neig1]), max((glamf[*, fsty:lsty])[neig2]), fsty, lsty, GRIDTYPE = gridtype, MEMEINDICES = memeindices, /YINDEX, ZINDEX = zindex, _extra = ex 
     803                      6:domdef, min((glamf[*, fsty:lsty])[neig1]), max((glamf[*, fsty:lsty])[neig2]), fsty, lsty, z1, z2, GRIDTYPE = gridtype, MEMEINDICES = memeindices, /YINDEX, ZINDEX = zindex, _extra = ex 
     804                    ENDCASE 
     805                    RETURN 
     806                  END  
     807                ENDCASE  
    626808              ENDIF ELSE BEGIN 
    627809                ras = report('WARNING, The box does not contain any F points...') 
  • trunk/SRC/ToBeReviewed/HOPE/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/IMAGE/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/IMAGE/animgif.pro

    r23 r74  
    7878; boucle de creation de l''image 
    7979; 
    80    calen = calendriertotem() 
     80   calen = TIMEGEN(366, START=JULDAY(1,1,2000))  
    8181   debut = where(calen EQ 19810105) 
    8282   debut = where(calen EQ 19790105) 
  • trunk/SRC/ToBeReviewed/INIT/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/LECTURE/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/LECTURE/GRIB/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/LECTURE/read_ncdf.pro

    r69 r74  
    126126    if n_elements(fin) NE 0 then lasttps = fin[0] ELSE lasttps = firsttps 
    127127    jpt = lasttps-firsttps+1 
    128     time = lindgen(jpt) 
     128    time = julday(1, 1, 1) + lindgen(jpt) 
    129129  ENDIF ELSE BEGIN 
    130130    if keyword_set(parent) then BEGIN 
     
    253253        ncdf_close, cdfid 
    254254        return, report('date 1: '+strtrim(jul2date(date1), 1)+' is not found in the time axis.') 
    255       endif 
     255      ENDIF 
    256256      lasttps = where(time LE date2) 
    257257      if lasttps[0] EQ -1 THEN BEGIN 
     
    437437  day = (long(debut[0]) MOD 100) 
    438438  vardate = string(format = '(C(CMoA))', 31*(month-1))+' '+strtrim(day, 1)+', '+strtrim(year, 1) 
    439 ; varexp ??? 
     439  varexp = file_basename(filename) 
    440440 
    441441; we apply reverse 
  • trunk/SRC/ToBeReviewed/MATRICE/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/PLOTS/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
     
    1313   ("pltt" pro nil (lib "pltt.pro" nil "saxo") "%s, tab, giventype, givenmin, givenmax, datmin, datmax" (nil ("_extra") ("BOXZOOM") ("COL1D") ("CONTINTERVALLE") ("CONTLABEL") ("CONTMAX") ("CONTMIN") ("CONTNLEVEL") ("CONTOUR") ("ENDPOINTS") ("EXCHANGE_XY") ("FILTER") ("INTERVALLE") ("INV") ("LABEL") ("MAXIN") ("MININ") ("NLEVEL") ("OV1D") ("OVERPLOT") ("REPEAT_C") ("STRICTFILL") ("STY1D") ("STYLE") ("TREND_TYPE") ("TT") ("TYPEIN") ("XT") ("YT") ("ZT"))) 
    1414   ("pltz" pro nil (lib "pltz.pro" nil "saxo") "%s, tab, giventype, givenmin, givenmax" (nil ("_EXTRA") ("BOXZOOM") ("CONTINTERVALLE") ("CONTLABEL") ("CONTMAX") ("CONTMIN") ("CONTNLEVEL") ("CONTOUR") ("ENDPOINTS") ("FILLXDIR") ("INTERVALLE") ("INV") ("LABEL") ("MASKFILL") ("MAXIN") ("MININ") ("NLEVEL") ("NOTRI") ("OVERPLOT") ("REALSECTION") ("SIN") ("STRICTFILL") ("STYLE") ("TYPEIN") ("USETRI") ("WDEPTH") ("XZ") ("YZ") ("ZOOM") ("ZRATIO"))) 
    15    ("sbar_plot" pro nil (lib "sbar_plot.pro" nil "saxo") "%s, Values" (nil ("_extra") ("COLOR") ("NOREINITPLT"))) 
     15   ("sbar_plot" pro nil (lib "sbar_plot.pro" nil "saxo") "%s, Values" (nil ("_extra") ("COLORS") ("NOREINITPLT"))) 
    1616   ("scontour" pro nil (lib "scontour.pro" nil "saxo") "%s, x, y, z" (nil ("_EXTRA") ("NOREINITPLT"))) 
    1717   ("splot" pro nil (lib "splot.pro" nil "saxo") "%s, x, y" (nil ("_EXTRA") ("NOREINITPLT"))) 
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/plt1d.pro

    r35 r74  
    265265    'y': begin 
    266266      yy = z1d 
    267       if (size(gphi))[0] EQ 1 then xx = gphi ELSE xx = reform(gphi[0, *]) 
     267      IF (size(gphi))[0] EQ 1 then xx = gphi ELSE BEGIN  
     268        IF keyword_set(key_irregular) THEN BEGIN  
     269          cln = (where(gphi EQ max(gphi)))[0] 
     270          xx = reform(gphi[cln MOD nx, *]) 
     271        ENDIF ELSE xx = reform(gphi[0, *]) 
     272      ENDELSE 
    268273      if keyword_set(sin) then xx = sin(!pi/180.*xx) 
    269274      min0 = lat1 & max0 = lat2 
  • trunk/SRC/ToBeReviewed/PLOTS/DESSINE/pltt.pro

    r69 r74  
    499499            end 
    500500            type eq 'yt' : begin 
    501                IF (size(gphi))[0] EQ 1 then yy = gphi ELSE yy = reform(gphi[0, *]) 
     501               IF (size(gphi))[0] EQ 1 then yy = gphi ELSE BEGIN  
     502                 IF keyword_set(key_irregular) THEN BEGIN  
     503                   cln = (where(gphi EQ max(gphi)))[0] 
     504                   yy = reform(gphi[cln MOD nx, *]) 
     505                 ENDIF ELSE yy = reform(gphi[0, *]) 
     506               ENDELSE 
    502507               xx = temps-tempsmin 
    503508               z2d = transpose(z2d) 
  • trunk/SRC/ToBeReviewed/PLOTS/DIVERS/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/PLOTS/DIVERS/axis4pltz.pro

    r37 r74  
    4141; 
    4242; include common 
    43 @cm_general 
     43@cm_4mesh 
    4444  IF NOT keyword_set(key_forgetold) THEN BEGIN 
    4545@updatekwd 
     
    4949; define the mask used for this section 
    5050;-------------------------------------------------------------------- 
    51    if mask[0] NE -1 AND (size(mask))[0] NE 2 then begin 
    52       if type EQ 'xz' then mask = total(mask, 2) < 1 $ 
    53       ELSE mask = total(mask, 1) < 1 
    54    endif 
     51  if mask[0] NE -1 AND (size(mask))[0] NE 2 then begin 
     52    if type EQ 'xz' then mask = total(mask, 2) < 1 $ 
     53    ELSE mask = total(mask, 1) < 1 
     54  endif 
    5555;-------------------------------------------------------------------- 
    5656; define xxaxis and yyaxis the axis used for this section 
     
    6666  ENDCASE 
    6767; 
    68    if type eq 'yz' then BEGIN  
    69       if (size(gphi))[0] EQ 2 then xxaxis=reform(gphi[0, *]) ELSE xxaxis=gphi  
    70       if keyword_set(sin) then xxaxis = sin(!pi/180.*xxaxis) 
    71       if (size(z))[0] EQ 1 THEN zzaxis = z ELSE zzaxis = z 
    72    ENDIF ELSE BEGIN 
    73       xxaxis = glam[*, 0] 
    74       if (size(z))[0] EQ 1 then zzaxis = z ELSE zzaxis = z 
    75    ENDELSE  
     68  if type eq 'yz' then BEGIN  
     69    IF (size(gphi))[0] EQ 1 then xxaxis = gphi ELSE BEGIN  
     70      IF keyword_set(key_irregular) THEN BEGIN  
     71        cln = (where(gphi EQ max(gphi)))[0] 
     72        xxaxis = reform(gphi[cln MOD nx, *]) 
     73      ENDIF ELSE xxaxis = reform(gphi[0, *]) 
     74    ENDELSE 
     75    if keyword_set(sin) then xxaxis = sin(!pi/180.*xxaxis) 
     76    if (size(z))[0] EQ 1 THEN zzaxis = z ELSE zzaxis = z 
     77  ENDIF ELSE BEGIN 
     78    xxaxis = glam[*, 0] 
     79    if (size(z))[0] EQ 1 then zzaxis = z ELSE zzaxis = z 
     80  ENDELSE  
    7681;---------------------------------------------------------- 
    7782; on projette l''axe z dans [0,1] 
    7883;---------------------------------------------------------- 
    79    if not keyword_set(zratio) then zratio = 2./3 
    80    if zoom ge profmax then zratio=1. 
    81    if zoom LT profmax then begin 
    82       mp = projsegment([profmin, zoom], [0, zratio], /mp) 
    83       zzaxis[where(zzaxis LE zoom)] = mp[0]*zzaxis[where(zzaxis LE zoom)]+mp[1] 
    84       mp = projsegment([zoom, profmax], [zratio, 1], /mp) 
    85       zzaxis[where(zzaxis GE zoom)] = mp[0]*zzaxis[where(zzaxis GE zoom)]+mp[1] 
    86    ENDIF ELSE BEGIN 
    87       mp = projsegment([profmin, profmax], [0, 1], /mp) 
    88       zzaxis = mp[0]*zzaxis+mp[1] 
    89    ENDELSE 
     84  if not keyword_set(zratio) then zratio = 2./3 
     85  if zoom ge profmax then zratio = 1. 
     86  if zoom LT profmax then begin 
     87    mp = projsegment([profmin, zoom], [0, zratio], /mp) 
     88    zzaxis[where(zzaxis LE zoom)] = mp[0]*zzaxis[where(zzaxis LE zoom)]+mp[1] 
     89    mp = projsegment([zoom, profmax], [zratio, 1], /mp) 
     90    zzaxis[where(zzaxis GE zoom)] = mp[0]*zzaxis[where(zzaxis GE zoom)]+mp[1] 
     91  ENDIF ELSE BEGIN 
     92    mp = projsegment([profmin, profmax], [0, 1], /mp) 
     93    zzaxis = mp[0]*zzaxis+mp[1] 
     94  ENDELSE 
    9095 
    9196; to draw from bottom to top (avoid using cell_fill) 
    92    CASE size(zzaxis, /n_dimensions) OF 
    93      1:zzaxis=reverse(-zzaxis)  
    94      2:zzaxis=reverse(-zzaxis,2)  
    95    ENDCASE 
    96    if mask[0] NE -1 then mask=reverse(mask,2) 
     97  CASE size(zzaxis, /n_dimensions) OF 
     98    1:zzaxis = reverse(-zzaxis)  
     99    2:zzaxis = reverse(-zzaxis, 2)  
     100  ENDCASE 
     101  if mask[0] NE -1 then mask = reverse(mask, 2) 
    97102 
    98    return 
     103  return 
    99104end 
  • trunk/SRC/ToBeReviewed/PLOTS/LABEL/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/PLOTS/VECTEUR/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/POSTSCRIPT/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
    77(setq idlwave-library-catalog-routines 
    88 '(("calibre" pro nil (lib "calibre.pro" nil "saxo") "%s, rapportyx, marge, margebar, smalldraw, posfenetre, posbar" (nil ("_extra") ("LANDSCAPE") ("PORTRAIT") ("REMPLI") ("YXASPECT"))) 
    9    ("chcolps" pro nil (lib "chcolps.pro" nil "saxo") "%s, n1, n2, file" (nil ("PALIT1") ("PALIT2"))) 
     9   ("format_colortable_hexa" pro nil (lib "chcolps.pro" nil "saxo") "%s, table" (nil)) 
    1010   ("build_table" pro nil (lib "chcolps.pro" nil "saxo") "%s, tableout" (nil)) 
    11    ("format_colortable_hexa" pro nil (lib "chcolps.pro" nil "saxo") "%s, table" (nil)))) 
     11   ("chcolps" pro nil (lib "chcolps.pro" nil "saxo") "%s, n1, n2, file" (nil ("PALIT1") ("PALIT2"))))) 
  • trunk/SRC/ToBeReviewed/POSTSCRIPT/chcolps.pro

    r16 r74  
     1PRO format_colortable_hexa, table 
     2 
     3    tvlct, r, g, b, /get 
     4 
     5    z = strarr(256) 
     6    y = strarr(256) 
     7    for k=0,255 do z[k]='00'+strtrim(string(r[k], format = '(Z)'),2) 
     8    for k=0,255 do y[k]=y[k]+strmid(z[k],strlen(z[k])-2,2) 
     9 
     10    for k=0,255 do z[k]='00'+strtrim(string(g[k], format = '(Z)'),2) 
     11    for k=0,255 do y[k]=y[k]+strmid(z[k],strlen(z[k])-2,2) 
     12 
     13    for k=0,255 do z[k]='00'+strtrim(string(b[k], format = '(Z)'),2) 
     14    for k=0,255 do y[k]=y[k]+strmid(z[k],strlen(z[k])-2,2) 
     15     
     16    table =  strlowcase(y) 
     17 
     18END 
     19 
     20 
     21PRO build_table, tableout 
     22; 
     23; Fabrique le bloc de colortable 
     24; 
     25 
     26    format_colortable_hexa, table 
     27 
     28 
     29    tableout = strarr(25) 
     30 
     31    tableout[0] = '/COLORTAB < ' 
     32    FOR k = 0, 8 DO tableout[0] = tableout[0]+table[k]+' ' 
     33    FOR i = 1, 22 DO BEGIN  
     34          FOR k = 11*i-2, 11*i+8 DO tableout[i] = tableout[i]+table[k]+' ' 
     35    ENDFOR  
     36    FOR k = 251, 255 DO tableout[i] = tableout[i]+table[k]+' ' 
     37    tableout[i] = tableout[i]+'> def' 
     38     
     39END 
     40 
     41 
     42 
    143PRO chcolps, n1, n2, file, PALIT1 = palit1, PALIT2 = palit2 
    244;; 
     
    91133END  
    92134 
    93 PRO build_table, tableout 
    94 ; 
    95 ; Fabrique le bloc de colortable 
    96 ; 
    97  
    98     format_colortable_hexa, table 
    99  
    100  
    101     tableout = strarr(25) 
    102  
    103     tableout[0] = '/COLORTAB < ' 
    104     FOR k = 0, 8 DO tableout[0] = tableout[0]+table[k]+' ' 
    105     FOR i = 1, 22 DO BEGIN  
    106           FOR k = 11*i-2, 11*i+8 DO tableout[i] = tableout[i]+table[k]+' ' 
    107     ENDFOR  
    108     FOR k = 251, 255 DO tableout[i] = tableout[i]+table[k]+' ' 
    109     tableout[i] = tableout[i]+'> def' 
    110      
    111 END  
    112  
    113  
    114 PRO format_colortable_hexa, table 
    115  
    116     tvlct, r, g, b, /get 
    117  
    118     z = strarr(256) 
    119     y = strarr(256) 
    120     for k=0,255 do z[k]='00'+strtrim(string(r[k], format = '(Z)'),2) 
    121     for k=0,255 do y[k]=y[k]+strmid(z[k],strlen(z[k])-2,2) 
    122  
    123     for k=0,255 do z[k]='00'+strtrim(string(g[k], format = '(Z)'),2) 
    124     for k=0,255 do y[k]=y[k]+strmid(z[k],strlen(z[k])-2,2) 
    125  
    126     for k=0,255 do z[k]='00'+strtrim(string(b[k], format = '(Z)'),2) 
    127     for k=0,255 do y[k]=y[k]+strmid(z[k],strlen(z[k])-2,2) 
    128      
    129     table =  strlowcase(y) 
    130  
    131 END 
    132  
    133  
    134  
    135  
    136  
    137  
  • trunk/SRC/ToBeReviewed/STATISTICS/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/STRING/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/STRUCTURE/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/STRUCTURE/mixstru.pro

    r27 r74  
    6060;------------------------------------------------------------ 
    6161FUNCTION mixstru, stru1, stru2 
     62@cm_general 
     63 
    6264   IF size(stru1, /type) EQ 0 AND size(stru2, /type) EQ 8 THEN return, stru2 
    6365   IF size(stru2, /type) EQ 0 AND size(stru1, /type) EQ 8 THEN return, stru1 
     
    6567   if size(stru2, /type) NE 8 then return,  -1 
    6668   tname = tag_names(stru2) 
    67    res = '' 
    68    rien = execute('res = get_extra('+tname[0]+'=stru2.(0), _extra = stru1)') 
    69    if rien EQ 0 then stop 
    70    if n_tags(stru2) GT 1 then begin 
    71       FOR i = 1, n_tags(stru2)-1 DO BEGIN  
    72          rien = execute('res = get_extra('+tname[i]+'=stru2.(i), _extra = res)') 
    73          if rien EQ 0 then stop 
    74       endfor 
    75    endif 
     69    
     70   str = '' 
     71   FOR i = 0, n_tags(stru2)-1 DO str = str + tname[i]+' = stru2.(' + strtrim(i, 2)+ '), ' 
     72 
     73   res = createfunc('get_extra('+str+'_extra = stru1)' $ 
     74              , kwdlist = 'stru1 = stru1, stru2 = stru2' $ 
     75              , stru1 = stru1, stru2 = stru2 $ 
     76              , filename = myuniquetmpdir +'for_createfunc.pro') 
     77 
    7678   return, res 
     79 
    7780end 
  • trunk/SRC/ToBeReviewed/TRIANGULATION/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/UTILITAIRE/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/WIDGET/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
     
    1313   ("xx" pro nil (lib "xx.pro" nil "saxo") "%s" (nil ("_extra") ("CALENDAR") ("FUNCLEC_NAME") ("JOUR") ("LISTGRID") ("LISTVAR") ("MESHFILENAME"))) 
    1414   ("xxx_event" pro nil (lib "xxx.pro" nil "saxo") "%s, event" (nil)) 
    15    ("xxx" pro nil (lib "xxx.pro" nil "saxo") "%s, datafilename, idlfile, argspro" (nil ("_EXTRA") ("CALLERWIDID") ("REDRAW") ("RESTORE") ("SEPARATE") ("UVALUE"))) 
    16    ("xxx_event" pro nil (lib "xxx_save.pro" nil "saxo") "%s, event" (nil)) 
    17    ("xxx" pro nil (lib "xxx_save.pro" nil "saxo") "%s, datafilename, idlfile, argspro" (nil ("_EXTRA") ("BOXZOOM") ("CALLERWIDID") ("DATE1") ("DATE2") ("MULTISTRUCTURE") ("REDRAW") ("RESTORE") ("SEPARATE") ("SMALL") ("UVALUE"))))) 
     15   ("xxx" pro nil (lib "xxx.pro" nil "saxo") "%s, datafilename, idlfile, argspro" (nil ("_EXTRA") ("CALLERWIDID") ("REDRAW") ("RESTORE") ("SEPARATE") ("UVALUE"))))) 
  • trunk/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/buildcmd.pro

    r69 r74  
    6161    'plt':procedure = 'plt' 
    6262    'pltz':procedure = 'pltz' 
    63     'pltz_diag':procedure = 'pltz' 
     63    'pltz diag up':procedure = 'pltz' 
     64    'pltz diag dn':procedure = 'pltz' 
    6465    'pltt':procedure = 'pltt' 
    65     'pltt_diag':procedure = 'pltt' 
     66    'pltt diag up':procedure = 'pltt' 
     67    'pltt diag dn':procedure = 'pltt' 
    6668    'xy':procedure = 'plt' 
    6769    'xz':procedure = 'pltz' 
     
    126128; 
    127129  widget_control, txtcmdid, get_value = widcmd 
     130  widcmd =  strtrim(widcmd, 2) 
    128131  IF widcmd[0] EQ '' THEN widcmd = 'zzz' 
    129132   
     
    357360  endif 
    358361  box = box+']' 
    359   IF strpos(type, '_diag') NE -1 THEN BEGIN 
     362  IF strpos(type, ' diag up') NE -1 THEN BEGIN 
    360363    sendpoints = '[' + strtrim(boxzoom[0], 1) + ', ' + strtrim(boxzoom[2], 1) + $ 
    361364                ', ' + strtrim(boxzoom[1], 1) + ', ' + strtrim(boxzoom[3], 1) + ']' 
    362365  ENDIF 
     366  IF strpos(type, ' diag dn') NE -1 THEN BEGIN 
     367    sendpoints = '[' + strtrim(boxzoom[0], 1) + ', ' + strtrim(boxzoom[3], 1) + $ 
     368                ', ' + strtrim(boxzoom[1], 1) + ', ' + strtrim(boxzoom[2], 1) + ']' 
     369  ENDIF 
    363370;--------------- 
    364371; on determine typein 
    365372;--------------- 
    366     IF strpos(type, '_diag') NE -1 THEN typein = ''''+strmid(type, 0, 4)+'''' $ 
     373    IF strpos(type, ' diag ') NE -1 THEN typein = ''''+strmid(type, 0, 4)+'''' $ 
    367374    ELSE typein = ''''+type+'''' 
    368375;--------------- 
     
    375382;------------------------------------------------------------ 
    376383  Cmd = [readCmd, procedure+ ', field $' $ 
    377          , '    , boxzoom = '+box+', typein='+typein+', small='+ssmall+' $'] 
     384         , '    , boxzoom = '+box+', /findalways, typein='+typein+', small='+ssmall+' $'] 
    378385  IF drawvecteur then Cmd = [Cmd, '    , vecteur = {u: fieldu,v: fieldv} $'] 
    379386  IF drawover then Cmd = [Cmd, '    , contour = fieldover $'] 
  • trunk/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/buildreadcmd.pro

    r69 r74  
    7676  if size(exextra, /type) EQ 8 then extra = mixstru(exextra, extra) 
    7777  sextra = struct2string(extra) 
    78  
    7978;--------------- 
    8079; find date1 and date2 
     
    113112    endif 
    114113  box = box+']' 
    115   IF strpos(type, '_diag') NE -1 THEN BEGIN 
     114  IF strpos(type, ' diag up') NE -1 THEN BEGIN 
    116115    sendpoints = '[' + strtrim(boxzoom[0], 1) + ', ' + strtrim(boxzoom[2], 1) + $ 
    117116                ', ' + strtrim(boxzoom[1], 1) + ', ' + strtrim(boxzoom[3], 1) + ']' 
     117  ENDIF 
     118  IF strpos(type, ' diag dn') NE -1 THEN BEGIN 
     119    sendpoints = '[' + strtrim(boxzoom[0], 1) + ', ' + strtrim(boxzoom[3], 1) + $ 
     120                ', ' + strtrim(boxzoom[1], 1) + ', ' + strtrim(boxzoom[2], 1) + ']' 
    118121  ENDIF 
    119122;--------------- 
     
    138141           , '; Do we change the grid?:', 'dummy = changegrid(meshparameters)' $ 
    139142           , '; Read the data...' $ 
    140            , 'if keyword_set(date1in) then date1 = date1in else date1 = ' + sdate1 $ 
    141            , 'if keyword_set(date2in) then date2 = date2in else date2 = ' + sdate2 $ 
     143           , 'if n_elements(date1in) ne 0 then date1 = date1in else date1 = ' + sdate1 $ 
     144           , 'if n_elements(date2in) ne 0 then date2 = date2in else date2 = ' + sdate2 $ 
    142145           , funclec_name+'('+snamevar+', date1, date2, '+snameexp $ 
    143146           + ', timestep = '+strtrim(keyword_set(fakecal), 1)+', parent = '+strtrim(base, 2) $ 
    144            + ', boxzoom = '+box+' $' $ 
     147           + ', boxzoom = '+box+', /findalways $' $ 
    145148           , '    , filename = '+sfilename+' $'] 
    146149    if n_elements(sendpoints) NE 0 then $ 
  • trunk/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/changefile.pro

    r69 r74  
    3030; Did we change the calendar? 
    3131  if array_equal(oldcalendar, newcalendar) NE 1 then begin 
    32 @cm_4cal ; for key_caltype 
     32@cm_4cal  
     33; for key_caltype 
    3334    key_caltype = (*(extractatt(top_uvalue, 'fileparameters'))[newfile]).caltype 
     35; fake or real calendar??? 
     36    fakecal = (*(extractatt(top_uvalue, 'fileparameters'))[newfile]).fakecal 
    3437; Which dates were selected?     
    3538    date1id = widget_info(base, find_by_uname = 'calendar1') 
     
    4649    basecal = widget_info(base, find_by_uname = 'basecal') 
    4750    rien = cw_calendar(basecal, newcalendar, jdate1, uname = 'calendar1' $ 
    48                        , uvalue = {name:'calendar1'}, /frame) 
     51                       , FAKECAL = fakecal, uvalue = {name:'calendar1'}, /frame) 
    4952    rien = cw_calendar(basecal, newcalendar, jdate2, uname = 'calendar2' $ 
    50                        , uvalue = {name:'calendar2'}, /frame) 
     53                       , FAKECAL = fakecal, uvalue = {name:'calendar2'}, /frame) 
    5154  ENDIF ELSE BEGIN  
    5255    if keyword_set(date1) then begin 
  • trunk/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/scanfile.pro

    r69 r74  
    205205; 
    206206; high frequency calendar: more than one element per day 
    207           IF max(histogram([long(time)])) GT 1 THEN fakecal = 1 ELSE fakecal = 0 
     207          IF max(histogram([long(time-time[0])])) GT 1 THEN fakecal = 1 ELSE fakecal = 0 
    208208          date0fk = date2jul(19000101) 
    209209          IF keyword_set(fakecal) THEN time = date0fk+lindgen(jpt) $ 
  • trunk/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/selectfile.pro

    r69 r74  
    213213  loadgrid, res.meshload, _extra = ex 
    214214 
    215   glaminfo = moment(glamt) 
    216   IF finite(glaminfo[2]) EQ 0 THEN glaminfo = glaminfo[0:1] 
    217   gphiinfo = moment(gphit) 
    218   IF finite(gphiinfo[2]) EQ 0 THEN gphiinfo = gphiinfo[0:1] 
    219   ccmeshparameters = {filename: res.meshload $ 
    220           , glaminfo:glaminfo $ 
    221           , gphiinfo:gphiinfo $ 
    222           , jpiglo:jpiglo, jpjglo:jpjglo, jpkglo:jpkglo $ 
    223           , jpi:jpi, jpj:jpj, jpk:jpk $ 
    224           , ixminmesh:ixminmesh, ixmaxmesh:ixmaxmesh $ 
    225           , iyminmesh:iyminmesh, iymaxmesh:iymaxmesh $ 
    226           , izminmesh:izminmesh, izmaxmesh:izmaxmesh $ 
    227           , key_shift:key_shift, key_periodic:key_periodic $ 
    228           , key_stride:key_stride, key_gridtype:key_gridtype $ 
    229           , key_yreverse:key_yreverse, key_zreverse:key_zreverse $ 
    230           , key_partialstep:key_partialstep, key_onearth:key_onearth} 
    231  
    232215  ccreadparameters = {funclec_name:'read_ncdf' $ 
    233216          , jpidta:jpidta, jpjdta:jpjdta, jpkdta:jpkdta $ 
  • trunk/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/xcreateanim.pro

    r69 r74  
    22@common 
    33; on recupere les aguments contenus ds le widget 
    4    if tag_names(event, /structure_name) NE 'WIDGET_BUTTON' then return 
    5    widget_control, event.id, get_uvalue = uval 
    6    if n_elements(uval) EQ 0 then return 
    7    if uval EQ 'cancel' then begin 
    8       widget_control, event.top, /destroy 
    9       return 
    10    ENDIF 
     4  if tag_names(event, /structure_name) NE 'WIDGET_BUTTON' then return 
     5  widget_control, event.id, get_uvalue = uval 
     6  if n_elements(uval) EQ 0 then return 
     7  if uval EQ 'cancel' then begin 
     8    widget_control, event.top, /destroy 
     9    return 
     10  ENDIF 
    1111; on va ecrire l''animation! 
    1212; 
    13    widget_control, event.top, get_uvalue = local_uvalue 
    14    widget_control, local_uvalue.parent, get_uvalue = top_uvalue 
    15 ; 
    16    calendar = (*(extractatt(top_uvalue, 'fileparameters'))[local_uvalue.indexfile]).time_counter 
    17    key_caltype = (*(extractatt(top_uvalue, 'fileparameters'))[local_uvalue.indexfile]).caltype 
    18 ; 
    19    widget_control, widget_info(event.top, find_by_uname = 'Filename') $ 
    20     , get_value = nomfic & nomfic = nomfic[0] 
    21 ; 
    22    widget_control, widget_info(event.top, find_by_uname = 'directorie') $ 
    23     , get_value = animdir & animdir = animdir[0] 
    24 ; 
    25    widget_control, widget_info(event.top, find_by_uname = 'debut') $ 
    26     , get_value = vdate1 
    27    index1 = where(calendar eq date2jul(vdate1)) & index1 = index1[0]  
    28    if index1 EQ -1 then return 
    29 ; 
    30    widget_control, widget_info(event.handler, find_by_uname = 'fin') $ 
    31     , get_value = vdate2 
    32    index2 = where(calendar eq date2jul(vdate2)) & index2 = index2[0]  
    33    if index2 EQ -1 OR index2 LE index1 then return 
     13  widget_control, event.top, get_uvalue = local_uvalue 
     14  widget_control, local_uvalue.parent, get_uvalue = top_uvalue 
     15; 
     16  calendar = (*(extractatt(top_uvalue, 'fileparameters'))[local_uvalue.indexfile]).time_counter 
     17  key_caltype = (*(extractatt(top_uvalue, 'fileparameters'))[local_uvalue.indexfile]).caltype 
     18  fakecal = (*(extractatt(top_uvalue, 'fileparameters'))[local_uvalue.indexfile]).fakecal 
     19; 
     20  widget_control, widget_info(event.top, find_by_uname = 'Filename') $ 
     21                  , get_value = nomfic & nomfic = nomfic[0] 
     22; 
     23  widget_control, widget_info(event.top, find_by_uname = 'directorie') $ 
     24                  , get_value = animdir & animdir = animdir[0] 
     25; 
     26  widget_control, widget_info(event.top, find_by_uname = 'debut') $ 
     27                  , get_value = vdate1 
     28  index1 = where(calendar eq date2jul(vdate1)) & index1 = index1[0]  
     29  if index1 EQ -1 then return 
     30; 
     31  widget_control, widget_info(event.handler, find_by_uname = 'fin') $ 
     32                  , get_value = vdate2 
     33  index2 = where(calendar eq date2jul(vdate2)) & index2 = index2[0]  
     34  if index2 EQ -1 OR index2 LE index1 then return 
    3435; on detruit le widget avant de creer le fichier .ps 
    35    widget_control, event.top, /destroy  
    36 ; test pour savoir quel type des calendrier on a 
    37    caldat, calendar, m, d 
    38    if total(d EQ 15) EQ n_elements(d) then mensuel = 1 ELSE mensuel = 0 
    39    if total(d EQ 1) EQ n_elements(d) AND total(m EQ 6) EQ n_elements(m) $ 
    40     then annuel = 1 ELSE annuel = 0 
     36  widget_control, event.top, /destroy 
    4137; 
    4238; creation de la routine qui nous serviera pour faire le dessin 
    4339; 
    4440; on recupere la liste des instructions 
    45    globalcommand = extractatt(top_uvalue, 'globalcommand') 
     41  globalcommand = extractatt(top_uvalue, 'globalcommand') 
    4642; on complete par le premiere et les dernieres lignes du programme 
    47    createpro, globalcommand, filename = myuniquetmpdir + 'xxx2ps.pro' $ 
    48               , KWDLIST = ', NOERASE = noerase, POSTSCRIPT = postscript, DATE1IN = date1in, DATE2IN = date2in' 
     43  createpro, globalcommand, filename = myuniquetmpdir + 'xxx2ps.pro' $ 
     44             , KWDLIST = ', NOERASE = noerase, POSTSCRIPT = postscript, DATE1IN = date1in, DATE2IN = date2in' 
    4945; 
    5046;--------creation du fichier---------- 
    5147; 
    5248;  recupere le nombre d'octets surlequel on code la palette 
    53    device, get_visual_depth = depth 
     49  device, get_visual_depth = depth 
    5450; taille de l''image (en nombre de pixel: 
    55    xsize = !d.x_size 
    56    ysize = !d.y_size 
     51  xsize = !d.x_size 
     52  ysize = !d.y_size 
    5753; 
    5854; on verifie que le nom du fichier termine bien par .gif 
    59    if strpos(nomfic, '.gif') EQ -1 then nomfic = nomfic+'.gif' 
    60  
    61    current_window = !d.window 
    62    window, /free, /pixmap, xsize=xsize, ysize=ysize 
     55  if strpos(nomfic, '.gif') EQ -1 then nomfic = nomfic+'.gif' 
     56 
     57  current_window = !d.window 
     58  window, /free, /pixmap, xsize = xsize, ysize = ysize 
    6359 
    6460 
    6561; indication du numero de l''image que l''on est en train de creer 
    66    base = widget_base() 
    67    sliderid = widget_slider(base, minimum = 1, maximum = index2-index1+1, value = 1 $ 
    68                             , title = 'image number: ') 
    69    widget_control,base,/realize 
     62  base = widget_base() 
     63  sliderid = widget_slider(base, minimum = 1, maximum = index2-index1+1, value = 1 $ 
     64                           , title = 'image number: ') 
     65  widget_control, base, /realize 
    7066; 
    7167; commencement du fichier gif. ecriture d''une image vide  
    72   date = jul2date(calendar[index1]) 
    73    xxx2ps, /noerase, date1in = date, date2in = date 
    74 ; 
    75 ; 
    76    image = tvrd(true = depth GT 8) 
     68  IF keyword_set(fakecal) THEN date = index1 ELSE date = jul2date(calendar[index1]) 
     69  xxx2ps, /noerase, date1in = date, date2in = date 
     70; 
     71; 
     72  image = tvrd(true = depth GT 8) 
    7773;- If an 8-bit image was read, reduce the number of colors 
    78    if depth le 8 then begin 
    79       tvlct, red, green, blue, /get 
    80       reduce_colors, image, index 
    81       red = red[index] 
    82       green = green[index] 
    83       blue = blue[index] 
    84    endif             
    85 ; 
    86    if depth gt 8 then $ 
     74  if depth le 8 then begin 
     75    tvlct, red, green, blue, /get 
     76    reduce_colors, image, index 
     77    red = red[index] 
     78    green = green[index] 
     79    blue = blue[index] 
     80  endif             
     81; 
     82  if depth gt 8 then $ 
    8783;- Convert 24-bit image to 8-bit 
    88    image = color_quan(image, 1, red, green, blue, colors=256, get_translation = translation, /map_all) 
    89 ; 
    90 ; 
    91    write_gif,animdir+nomfic, image, red, green, blue, /multiple 
    92    wdelete, !d.window 
     84  image = color_quan(image, 1, red, green, blue, colors = 256, get_translation = translation, /map_all) 
     85; 
     86; 
     87  write_gif, animdir+nomfic, image, red, green, blue, /multiple 
     88  wdelete, !d.window 
    9389; 
    9490; boucle de creation et d''ecriture ds le fichier. 
    9591; 
    96    for ind = index1+1, index2 do BEGIN 
     92  IF index2 GT index1 THEN BEGIN 
     93    FOR ind = index1+1, index2 do BEGIN 
    9794; 
    9895      widget_control, sliderid, set_value = ind-index1+1 ; on bouge le slider 
    9996; 
    100       window, /free, /pixmap, xsize=xsize, ysize=ysize 
    101       date = jul2date(calendar[ind]) 
     97      window, /free, /pixmap, xsize = xsize, ysize = ysize 
     98      IF keyword_set(fakecal) THEN date = ind ELSE date = jul2date(calendar[ind]) 
    10299      xxx2ps, /noerase, date1 = date, date2 = date 
    103100;       
     
    105102; 
    106103      if depth gt 8 then $ 
    107       image = color_quan(image, 1, aaa, bbb, ccc, colors=256, translation = translation) ; 
    108 ; 
    109       write_gif,animdir+nomfic,image,red, green, blue, /multiple 
     104        image = color_quan(image, 1, aaa, bbb, ccc, colors = 256, translation = translation) ; 
     105; 
     106      write_gif, animdir+nomfic, image, red, green, blue, /multiple 
    110107      wdelete, !d.window 
    111    ENDFOR 
     108    ENDFOR 
     109  ENDIF  
    112110; on met une derniere image blanche 
    113       window, /free, /pixmap, xsize=xsize, ysize=ysize 
    114       reinitplt 
    115       plot,  [0],  [0], /nodata 
    116       image = tvrd(true = depth GT 8) 
    117 ; 
    118       if depth gt 8 then $ 
    119       image = color_quan(image, 1, aaa, bbb, ccc, colors=256, translation = translation) ; 
    120 ; 
    121       write_gif,animdir+nomfic,image,red, green, blue, /multiple 
    122       wdelete, !d.window 
     111  window, /free, /pixmap, xsize = xsize, ysize = ysize 
     112  reinitplt 
     113  plot,  [0],  [0], /nodata 
     114  image = tvrd(true = depth GT 8) 
     115; 
     116  if depth gt 8 then $ 
     117    image = color_quan(image, 1, aaa, bbb, ccc, colors = 256, translation = translation) ; 
     118; 
     119  write_gif, animdir+nomfic, image, red, green, blue, /multiple 
     120  wdelete, !d.window 
    123121; fermeture du fichier 
    124    write_gif,animdir+nomfic,/close  
    125    widget_control, base, /destroy  
     122  write_gif, animdir+nomfic, /close  
     123  widget_control, base, /destroy  
    126124; rebascule en mode "normal" 
    127    thisOS = strupcase(strmid(!version.os_family, 0, 3)) 
    128 ; 
    129    wset, current_window 
     125  thisOS = strupcase(strmid(!version.os_family, 0, 3)) 
     126; 
     127  wset, current_window 
    130128 
    131129; si on est sous x on essaie de lancer xanim... 
    132130 
    133    if thisOS NE 'MAC' AND thisOS NE 'WIN' then begin 
    134       spawn, 'which xanim',result 
    135       if strpos(result[0],'xanim') EQ strlen(result[0])-5 then spawn, 'xanim '+animdir+nomfic+' &' 
    136    endif 
    137 ; 
    138     
    139    return 
     131  if thisOS NE 'MAC' AND thisOS NE 'WIN' then begin 
     132    spawn, 'which xanim', result 
     133    if strpos(result[0], 'xanim') EQ strlen(result[0])-5 then spawn, 'xanim '+animdir+nomfic+' &' 
     134  endif 
     135; 
     136   
     137  return 
    140138end 
    141139;---------------------------------------------------------------- 
     
    162160   indexfile = (where(filelist EQ filenames[0]))[0] 
    163161   calendar = (*(extractatt(top_uvalue, 'fileparameters'))[indexfile]).time_counter   
     162   key_caltype = (*(extractatt(top_uvalue, 'fileparameters'))[indexfile]).caltype 
     163   fakecal = (*(extractatt(top_uvalue, 'fileparameters'))[indexfile]).fakecal 
    164164   if n_elements(filenames) GT 1 then begin 
    165165      for i = 1, n_elements(filenames)-1 do begin 
     
    186186   rien = widget_text(base,value=animdir, uname='directorie', /editable) 
    187187   rien = widget_label(base, value = 'starting date') 
    188    rien = cw_calendar(base, calendar, uname = 'debut', uvalue = {name:'calendar'}, /frame) 
     188   rien = cw_calendar(base, calendar, calendar[0] $ 
     189                      , FAKECAL = fakecal, uname = 'debut', uvalue = {name:'calendar'}, /frame) 
    189190   rien = widget_label(base, value = 'ending date') 
    190191   rien = cw_calendar(base, calendar, calendar[n_elements(calendar)-1] $ 
    191                       , uname = 'fin', uvalue = {name:'calendar'}, /frame) 
     192                      , FAKECAL = fakecal, uname = 'fin', uvalue = {name:'calendar'}, /frame) 
    192193   rien = widget_button(base,value='OK', uvalue = 'ok') 
    193194   rien = widget_button(base,value='Cancel', uvalue = 'cancel') 
  • trunk/SRC/ToBeReviewed/WIDGET/AUTOUR_de_XXX/xxxmenubar_event.pro

    r69 r74  
    3232      widget_control, vlstid, set_combobox_select = 0 > index[0] 
    3333; on s''occupe du calendrier 
     34      key_caltype = newfile.fileparameters.caltype 
    3435      date1id = widget_info(event.top, find_by_uname = 'calendar1') 
    3536      widget_control, date1id, get_value = date1 
    3637      widget_control, date1id, /destroy 
    37       if (where(newfile.fileparameters.time_counter EQ date1))[0] EQ -1 $ 
    38       then date1 = newfile.fileparameters.time_counter[0] 
     38      jdate1 = jul2date(date1) 
     39      if (where(newfile.fileparameters.time_counter EQ jdate1))[0] EQ -1 $ 
     40      then jdate1 = newfile.fileparameters.time_counter[0] 
    3941      date2id = widget_info(event.top, find_by_uname = 'calendar2') 
    4042      widget_control, date2id, get_value = date2 
    4143      widget_control, date2id, /destroy 
    42       if (where(newfile.fileparameters.time_counter EQ date2))[0] EQ -1 then date2 = date1 
     44      jdate2 = jul2date(date2) 
     45      if (where(newfile.fileparameters.time_counter EQ jdate2))[0] EQ -1 then jdate2 = jdate1 
    4346      basecal = widget_info(event.top, find_by_uname = 'basecal') 
    44       rien = cw_calendar(basecal, newfile.fileparameters.time_counter, date1, uname = 'calendar1' $ 
    45                          , uvalue = {name:'calendar1'}, /frame) 
    46       rien = cw_calendar(basecal, newfile.fileparameters.time_counter, date2, uname = 'calendar2' $ 
    47                          , uvalue = {name:'calendar2'}, /frame) 
     47      fakecal = newfile.fileparameters.fakecal 
     48      rien = cw_calendar(basecal, newfile.fileparameters.time_counter, jdate1, uname = 'calendar1' $ 
     49                         , FAKECAL = fakecal, uvalue = {name:'calendar1'}, /frame) 
     50      rien = cw_calendar(basecal, newfile.fileparameters.time_counter, jdate2, uname = 'calendar2' $ 
     51                         , FAKECAL = fakecal, uvalue = {name:'calendar2'}, /frame) 
    4852; on update les elements fileparameters, readparameters et meshparameters de la top_uvalue 
    4953      newfileparameters = ptrarr(currentfile+1, /allocate_heap) 
  • trunk/SRC/ToBeReviewed/WIDGET/COMPOUND_WIDGET/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
  • trunk/SRC/ToBeReviewed/WIDGET/COMPOUND_WIDGET/cw_calendar.pro

    r69 r74  
    116116    month = (where(allmonths EQ wid_value.combobox_gettext))[0] + 1  
    117117    date = date + 100L * long(month) 
    118   ENDIF ELSE date = date + (oldate MOD 10000L)/100L 
     118  ENDIF ELSE date = date + (oldate MOD 10000L)/100L*100L 
    119119;-------------year---------------- 
    120120  wid_id = widget_info(id, find_by_uname = 'year') 
     
    237237  compile_opt strictarr, strictarrsubs  
    238238; 
    239   winfo_id = widget_info(event.top, find_by_uname = 'infocal') 
     239  winfo_id = widget_info(event.handler, find_by_uname = 'infocal') 
    240240  widget_control, winfo_id, get_uvalue = infowid 
    241241  key_caltype = infowid.caltype 
     
    290290  if n_elements(jdate0) EQ 0 then jdate0 = calendar[0] 
    291291  if (where(calendar EQ jdate0))[0] EQ -1 then jdate0 = calendar[0] 
    292  
     292; 
    293293  caldat, jdate0, month0, day0, year0 
    294294; test the type of calendar 
  • trunk/SRC/ToBeReviewed/WIDGET/COMPOUND_WIDGET/cw_specifie.pro

    r69 r74  
    22;***************************************************** 
    33PRO cw_specifie_set_value, id, value 
     4@cm_general 
    45   if size(value, /type) NE 8 then return 
    56   widget_control, widget_info(id,find_by_uname='min'), set_value = strtrim(value.min, 2) 
     
    1011   if size(autres, /type) EQ 8 then BEGIN  
    1112      autresid = widget_info(id,find_by_uname='autres') 
    12       widget_control, widget_info(id,find_by_uname='autres'), get_value = autresautres 
     13      widget_control, widget_info(id, find_by_uname = 'autres'), get_value = autresautres 
    1314      autresautres = autresautres[0] 
    1415      if strtrim(autresautres, 2) NE '' then begin 
    15          nothing = execute('autresautres = get_extra('+autresautres+')') 
    16 ;         autresautres = createfunc('get_extra('+autresautres+')') 
    17          autres = mixstru(autres, autresautres) 
     16        autresautres = createfunc('get_extra(' + autresautres + ')' $ 
     17                                  , filename = myuniquetmpdir +'for_createfunc.pro') 
     18        autres = mixstru(autres, autresautres) 
    1819      endif 
    1920      autres = strkeywd(autres) 
     
    2526;***************************************************** 
    2627FUNCTION cw_specifie_get_value, id 
     28@cm_general 
    2729   widget_control, widget_info(id,find_by_uname='min'), get_value = min 
    2830   min = float(min[0]) 
     
    3840   exextra = {min:min, max:max, inter:int, lct:palnum} 
    3941   if strtrim(autres, 2) NE '' then $ 
    40     rien = execute('exextra = get_extra('+autres+', _extra = exextra)') 
    41 ;    exextra = createfunc('get_extra('+autres+', _extra = exextra)') 
     42      exextra = createfunc('get_extra('+autres+', _extra = exextra)' $ 
     43                           , kwdlist = 'exextra = exextra', exextra = exextra $ 
     44                           , filename = myuniquetmpdir +'for_createfunc.pro') 
     45; 
    4246   return, exextra 
    4347end 
     
    6165; on trouve le nom de la variable: 
    6266;--------------- 
    63       vlstid = widget_info(base, find_by_uname = 'varlist') 
     67      vlstid = widget_info(event.top, find_by_uname = 'varlist') 
    6468      fieldname = widget_info(vlstid, /combobox_gettext) 
    6569;--------------- 
    66       exextra = definedefaultextra(varname) 
     70      exextra = definedefaultextra(fieldname) 
    6771      widget_control, widget_info(event.handler, find_by_uname = 'min'), set_value = strtrim(exextra.min, 1) 
    6872      widget_control, widget_info(event.handler, find_by_uname = 'max'), set_value = strtrim(exextra.max, 1) 
     
    110114; base2 
    111115   base2 = widget_base(base, column = 4+keyword_set(forxxx), yoffset = 30) 
    112    if keyword_set(forxxx) then rien = widget_button(base2,value='Default', uvalue = 'default', /frame, tooltip = 'see '+find('definedefaultextra')) 
     116   if keyword_set(forxxx) then rien = widget_button(base2,value='Default', uvalue = 'default', /frame, tooltip = 'see '+(find('definedefaultextra'))[0]) 
    113117   rien = widget_text(base2, value = '', /editable, xsize = 7, uname = 'min', uvalue = 'min') 
    114118   rien = widget_text(base2, value = '', /editable, xsize = 7, uname = 'max', uvalue = 'max') 
  • trunk/SRC/ToBeReviewed/WIDGET/xxx.pro

    r69 r74  
    215215  xoff = 0 
    216216  yoff = 0 
    217   pltlst = ['plt', 'pltz', 'pltz_diag', 'pltt', 'pltt_diag' $ 
     217  pltlst = ['plt' $ 
     218            , 'pltz', 'pltz diag up', 'pltz diag dn' $ 
     219            , 'pltt', 'pltt diag up', 'pltt diag dn' $ 
    218220            , 'xy', 'xz', 'yz', 'xt', 'yt', 'zt' $ 
    219221            , 'x', 'y', 'z', 't'] 
    220222  actid = widget_combobox(base, value = pltlst, uname = 'action', uvalue = {name:'action'} $ 
    221                             , xoffset = xoff+5, yoffset = yoff+4, xsize = 80) 
     223                            , xoffset = xoff+5, yoffset = yoff+4, xsize = 90) 
    222224  if keyword_set(uvalue) then BEGIN 
    223225    selectact = (extractatt(uvalue, 'types'))[numdessinin] 
     
    229231; menu/options 
    230232;------------------------------------------------------------ 
    231   xoff = xoff + 100 
     233  xoff = xoff + 110 
    232234  if keyword_set(uvalue) then begin 
    233235    options = extractatt(uvalue, 'options') 
     
    474476  ENDELSE  
    475477;------------------------------------------------------------ 
    476   xmanager, 'xxx', base, /no_block 
     478  xmanager, 'xxx', base, /no_block  
    477479;------------------------------------------------------------ 
    478480;------------------------------------------------------------ 
  • trunk/SRC/Utilities/.idlwave_catalog

    r69 r74  
    22;; IDLWAVE catalog for library saxo 
    33;; Automatically Generated -- do not edit. 
    4 ;; Created by idlwave_catalog on Thu May  4 08:42:55 2006 
     4;; Created by idlwave_catalog on Tue May 23 15:31:07 2006 
    55;; 
    66(setq idlwave-library-catalog-libname "saxo") 
     
    1313   ("isadirectory" fun nil (lib "isadirectory.pro" nil "saxo") "Result = %s(directoryin)" (nil ("_extra") ("IODIRECTORY") ("TITLE"))) 
    1414   ("isafile" fun nil (lib "isafile.pro" nil "saxo") "Result = %s(filein)" (nil ("_extra") ("FILENAME") ("IODIRECTORY") ("NEW") ("ONLYNC") ("ONLYPRO") ("RECURSIVE"))) 
    15    ("protype" fun nil (lib "protype.pro" nil "saxo") "Result = %s(file)" (nil)))) 
     15   ("protype" fun nil (lib "protype.pro" nil "saxo") "Result = %s(file)" (nil)) 
     16   ("test" fun nil (lib "test.pro" nil "saxo") "Result = %s" (nil ("_extra") ("two"))))) 
  • trunk/SRC/Utilities/createfunc.pro

    r69 r74  
    33;------------------------------------------------------------ 
    44;+ 
    5 ; NAME:createpro 
     5; NAME:createfunc 
    66; 
    7 ; PURPOSE: write an idl procedure, compile it and execute it. 
     7; PURPOSE: write an idl function, compile it and execute it. 
     8;          usefull to avoid the use of execute 
    89; 
    910; CATEGORY: 
    1011; 
    11 ; CALLING SEQUENCE:createpro, command 
     12; CALLING SEQUENCE:res = createfunc(command) 
    1213;  
    1314; INPUTS: 
    14 ;      command: a string array defining the procedure to be created. 
    15 ;      each element will be a line of the created procedure.  
     15;      command: a scalar string defining the result to be byven back by the 
     16;               function. (see examples) 
    1617; 
    1718; KEYWORD PARAMETERS: 
    1819; 
    19 ;      FILENAMEIN: name of the procedure to be created. 
    20 ;      'for_createpro.pro' by default 
     20;      FILENAMEIN: name of the funccedure to be created. 
     21;      'for_createfunc.pro' by default 
    2122; 
    2223;      KWDLIST: a vector string. to specify a list of keywords that 
    23 ;      must be included in the procedure definition. Warning: the string 
     24;      must be included in the function definition. Warning: the string 
    2425;      must start with a ',' for example: KWDLIST = ', TOTO = toto' 
    2526; 
    26 ;      _EXTRA: used to pass your keywords to the created procedure. 
     27;      _EXTRA: used to pass your keywords to the created function. 
    2728; 
    2829; OUTPUTS: none  
     
    3031; COMMON BLOCKS: none 
    3132; 
    32 ; SIDE EFFECTS: ends teh procedure name with '.pro' if needed 
     33; SIDE EFFECTS: ends the function name with '.pro' if needed 
    3334; 
    34 ; RESTRICTIONS:de marche pas pour les fonctions 
     35; RESTRICTIONS:arguments can be given only through keywords 
    3536; 
    3637; EXAMPLE: 
    37 ;      IDL> createpro, ['print,''OK'''], filename='test' 
    38 ;      IDL> createpro, ['if keyword_set(ok) then print,''OK'' else print, ''No'''] $ 
    39 ;      IDL>   , filename = 'test', kwdlist =', ok = ok'  
    40 ;      IDL> createpro, ['if keyword_set(ok) then print,''OK'' else print, ''No'''] $ 
    41 ;      IDL>   , filename = 'test', kwdlist = ', ok = ok', /ok  
    42 ; 
     38;      IDL> print, createfunc('3*2', filename='test') 
     39;      IDL> print, createfunc('3*two', filename = 'test' $ 
     40;                                    , kwdlist ='two = two', two = 2) 
    4341; 
    4442; MODIFICATION HISTORY:Sebastien Masson (smasson@lodyc.jussieu.fr) 
    45 ; cleaning + new keywords: October 2005 
    46 ; Feb. 2006: supress keyword "kwdused" and use call_procedure instead of execute 
     43;                      May 2005 
    4744;- 
    4845;------------------------------------------------------------ 
     
    5451  compile_opt idl2, hidden, strictarrsubs 
    5552; 
     53  IF n_elements(command) NE 1 THEN stop 
    5654; define filename if needed 
    5755  if NOT keyword_set(filenamein) then filename = 'for_createfunc.pro' $ 
     
    6866   if NOT keyword_set(kwdlist) then kwdlist = '' 
    6967   kwdlist = kwdlist + ', _extra = ex' 
     68   IF strmid(kwdlist, 0, 1) NE ',' THEN kwdlist = ', ' +  kwdlist 
    7069   putfile, filename, ['function ' + shortfilename + kwdlist $ 
    7170                       , 'compile_opt idl2, hidden, strictarrsubs' $ 
  • trunk/SRC/Utilities/createpro.pro

    r69 r74  
    3030; COMMON BLOCKS: none 
    3131; 
    32 ; SIDE EFFECTS: ends teh procedure name with '.pro' if needed 
     32; SIDE EFFECTS: ends the procedure name with '.pro' if needed 
    3333; 
    34 ; RESTRICTIONS:de marche pas pour les fonctions 
     34; RESTRICTIONS:is not working with functions, use createfunc instead. 
     35;              arguments can be given only through keywords 
    3536; 
    3637; EXAMPLE: 
     
    7475   if NOT keyword_set(kwdlist) then kwdlist = '' 
    7576   kwdlist = kwdlist + ', _extra = ex' 
     77   kwdlist = strtrim(kwdlist, 2) 
     78   IF strmid(kwdlist, 0, 1) NE ',' THEN kwdlist = ', ' +  kwdlist 
    7679;  for i = 0, n_elements(command)-1 do print, command[i] 
    7780   putfile, filename, ['pro ' + shortfilename + kwdlist $ 
Note: See TracChangeset for help on using the changeset viewer.