Changeset 209 for trunk/SRC/ToBeReviewed


Ignore:
Timestamp:
02/08/07 11:01:49 (17 years ago)
Author:
smasson
Message:

bugfix + introduce C grid based on F, U and V points

Location:
trunk/SRC/ToBeReviewed
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/SRC/ToBeReviewed/CALCULS/remplit.pro

    r163 r209  
    8080  z = zinput 
    8181  if n_elements(key_gridtype) EQ 0 then key_gridtype = 'c' 
     82  oldkey_gridtype = key_gridtype 
     83; keep only the first letter of the grid type 
     84  key_gridtype = strmid(key_gridtype, 0, 1) 
    8285  if keyword_set(basique) then begin 
    83     oldkey_gridtype = key_gridtype 
    8486    key_gridtype = 'c' 
    8587    nx = (size(zinput))[1] 
    8688    ny = (size(zinput))[2] 
    8789    if NOT keyword_set(mask) then mmmask = basique ELSE mmmask = mask 
    88     if  key_gridtype eq 'e' then begin 
    89       case vargrid of 
    90         'T':glam = glamt[firstxt:lastxt, firstyt:lastyt] 
    91         'U':glam = glamu[firstxu:lastxu, firstyu:lastyu] 
    92       endcase 
    93     endif 
    9490  ENDIF ELSE grille, mmmask, glam, gphi, gdep, nx, ny, nz, _extra = ex 
    9591  if keyword_set(mask) then mmmask = mask 
     
    282278  endcase 
    283279; 
    284   if keyword_set(basique) then key_gridtype = oldkey_gridtype 
     280  key_gridtype = oldkey_gridtype 
    285281;--------------------------------------------------------------- 
    286282  if keyword_set(key_performance) THEN print, 'temps remplit', systime(1)-tempsun  
  • trunk/SRC/ToBeReviewed/GRILLE/tracegrille.pro

    r163 r209  
    8282  if n_elements(glamin) * n_elements(gphiin) EQ 0 then BEGIN 
    8383    grille, mask, glam, gphi, gdep, nx, ny, nz, firstx, firsty, firstz, lastx, lasty, lastz 
    84     IF keyword_set(ocean) AND key_gridtype EQ 'c' THEN BEGIN 
     84    IF keyword_set(ocean) AND strmid(key_gridtype, 0, 1) EQ 'c' THEN BEGIN 
    8585; we reduce the mask to take into account the point located ON the coastline. 
    8686      CASE vargrid OF 
     
    157157  if NOT keyword_set(xstride) then xstride = 1 
    158158  if NOT keyword_set(ystride) then ystride = 1 
    159   case key_gridtype of 
     159  case strmid(key_gridtype, 0, 1) of 
    160160    'c':BEGIN 
    161161      for i = 0, ny-1, ystride do begin 
  • trunk/SRC/ToBeReviewed/LECTURE/read_ncdf.pro

    r206 r209  
    9999                    , PARENTIN = parentin, TIMESTEP = timestep, TIMEVAR = timevar $ 
    100100                    , TOUT = tout, NOSTRUCT = nostruct, CONT_NOFILL = CONT_NOFILL, INIT = init $ 
    101                     , GRID = grid, FBASE2TBASE = fbase2tbase, CALLITSELF = callitself $ 
     101                    , GRID = grid, CALLITSELF = callitself $ 
    102102                    , ZETAFILENAME = zetafilename, ZETAZERO = zetazero $ 
    103103                    , _EXTRA = ex 
     
    427427  ENDIF 
    428428; 
    429   IF keyword_set(fbase2tbase) THEN BEGIN 
    430     case strupcase(vargrid) of 
    431       'U':BEGIN 
    432         IF NOT keyword_set(key_periodic) THEN BEGIN 
    433           firstx = firstx+1 
    434           lastx = lastx+1 
    435         ENDIF 
    436       END 
    437       'V':BEGIN 
    438         firsty = firsty+1 
    439         lasty = lasty+1 
    440       END 
    441       'F':BEGIN 
    442         firsty = firsty+1 
    443         lasty = lasty+1 
    444         IF NOT keyword_set(key_periodic) THEN BEGIN 
    445           firstx = firstx+1 
    446           lastx = lastx+1 
    447         ENDIF 
    448       END 
    449       ELSE: 
    450     endcase 
    451   ENDIF 
    452 ; 
    453   IF keyword_set(fbase2tbase) AND keyword_set(key_periodic) $ 
    454     AND (strupcase(vargrid) EQ 'U' OR strupcase(vargrid) EQ 'F') THEN key_shift =  key_shift-1 
     429  IF (key_gridtype EQ 'c_u' OR key_gridtype EQ 'c_f') $ 
     430     AND (vargrid EQ 'U' OR vargrid EQ 'F') THEN BEGIN 
     431    IF keyword_set(key_periodic)  THEN BEGIN 
     432      key_shift =  key_shift-1 
     433    ENDIF ELSE BEGIN  
     434      firstx = firstx+1 
     435      lastx = lastx+1     
     436    ENDELSE  
     437  ENDIF 
     438  IF (key_gridtype EQ 'c_v' OR key_gridtype EQ 'c_f') $ 
     439      AND (vargrid EQ 'V' OR vargrid EQ 'F') THEN BEGIN 
     440    firsty = firsty+1 
     441    lasty = lasty+1 
     442  ENDIF 
    455443; 
    456444;--------------------------------------------------------------------- 
     
    460448;--------------------------------------------------------------------- 
    461449; 
    462   IF keyword_set(fbase2tbase) AND keyword_set(key_periodic) $ 
    463     AND (strupcase(vargrid) EQ 'U' OR strupcase(vargrid) EQ 'F') THEN key_shift =  key_shift+1 
     450  IF (key_gridtype EQ 'c_u' OR key_gridtype EQ 'c_f') AND keyword_set(key_periodic) $ 
     451    AND (strupcase(vargrid) EQ 'U' OR strupcase(vargrid) EQ 'F') THEN key_shift = key_shift+1 
    464452;--------------------------------------------------------------------- 
    465453; We define global variable joined with the variable. 
     
    504492 
    505493; we apply reverse 
    506   if keyword_set(key_yreverse) AND ny NE 1 THEN $ 
    507      res = reverse(reform(res, nx, ny, nz, jpt, /overwrite),  2) 
     494  IF keyword_set(key_yreverse) AND ny NE 1 THEN BEGIN  
     495    IF varcontient.ndims - ((where(varcontient.dim EQ contient.recdim))[0] NE -1) EQ 2 THEN $ 
     496       res = reverse(reform(res, nx, ny, jpt, /overwrite),  2) $ 
     497    ELSE res = reverse(reform(res, nx, ny, nz, jpt, /overwrite),  2) 
     498  ENDIF 
    508499  if keyword_set(key_zreverse) AND nz NE 1 $ 
    509500     AND varcontient.ndims - ((where(varcontient.dim EQ contient.recdim))[0] NE -1) EQ 3 THEN $ 
  • trunk/SRC/ToBeReviewed/PLOTS/axe.pro

    r205 r209  
    8282      CASE 1 OF 
    8383; yearly base 
    84         tempsmax GT julday(mmin, dmin, ymin + 3, hmin, mnmin, smin):BEGIN ; more than 3 years 
     84        ymin NE 0 AND tempsmax GT julday(mmin, dmin, ymin + 3, hmin, mnmin, smin):BEGIN ; more than 3 years 
    8585          CASE 1 OF 
    8686          ymax-ymin+1 GT 5000: BEGIN & freq = 500. & tminor = 5 & datfmt = fmtyr & end 
  • trunk/SRC/ToBeReviewed/TRIANGULATION/tracecote.pro

    r163 r209  
    9595   tempvar = SIZE(TEMPORARY(ind)) ; we delete ind 
    9696; 
    97    if n_elements(key_gridtype) EQ 0 then key_gridtype = 'c' 
    98    case key_gridtype of 
     97   case strmid(key_gridtype, 0, 1) of 
    9998      'c':drawcoast_c, mask, xf, yf, nx, ny, _extra = ex 
    10099      'e':drawcoast_e, mask, xf, yf, nx, ny, onemore = onemore, _extra = ex 
  • trunk/SRC/ToBeReviewed/TRIANGULATION/triangule.pro

    r163 r209  
    7373   if n_elements(key_gridtype) EQ 0 then key_gridtype = 'c' 
    7474   if n_elements(maskentree) EQ 0 then maskentree = tmask[*, *, 0] 
    75    case key_gridtype of 
     75   case strmid(key_gridtype, 0, 1) of 
    7676      'e':res = triangule_e(maskentree, _extra = ex) 
    7777      'c':res = triangule_c(maskentree, COINMONTE = coinmonte, COINDESCEND = coindescend, _extra = ex) 
Note: See TracChangeset for help on using the changeset viewer.