Changeset 9


Ignore:
Timestamp:
11/27/07 17:13:57 (16 years ago)
Author:
kolasinski
Message:

Add var_read_grd_file in def_grid and mesh_from_file - Define valmask if needed when the grid is read in mesh_from_file

Location:
trunk/procs
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/procs/com_eg.pro

    r2 r9  
    4343; attributs champs 
    4444; 
    45 COMMON fld_att, fldatt, field, fld_prev, index_over, fldatt_bak, cmd_prev, key_shift_map, vecplot, time1_r, time2_r, cmdline2, cmdm, macro_base_fld, datyp, datyp2, fldrem_t1, fldrem_t2, fld_flag, vargrid1, vargrid2, mean_sc 
     45COMMON fld_att, fldatt, field, fld_prev, index_over, fldatt_bak, cmd_prev, key_shift_map, vecplot, time1_r, time2_r, cmdline2, cmdm, macro_base_fld, datyp, datyp2, fldrem_t1, fldrem_t2, fld_flag, vargrid1, vargrid2, mean_sc, var_read_grd_file 
    4646; 
    4747; stats 
  • trunk/procs/def_grid.pro

    r6 r9  
    4747      print, ' Will read grid info '+cmd.grid+' from data file' 
    4848      key_shift_map = 0 
    49    ENDIF  
     49      IF strpos(cmd.var, '@@') NE -1 THEN BEGIN  
     50         @def_macro_base_fld 
     51         var_read_grd_file = macro_base_fld 
     52      ENDIF ELSE var_read_grd_file = cmd.var 
     53   ENDIF ELSE var_read_grd_file = cmd.var 
    5054 
    5155   IF debug_w THEN print,    '  cmd.grid after test read_grid_from_file: ', cmd.grid 
     
    257261   ENDCASE   
    258262 
    259 key_shift_map = key_shift 
     263   key_shift_map = key_shift 
     264 
     265   IF read_grid_from_file EQ 1 THEN BEGIN  
     266      ; def base field if macro 
     267 ; needed ?     cmd.grid = strmid(cmd.grid, 0, strlen(cmd.grid)-1) 
     268      @def_file_suff_var 
     269      var_read_grd_file = macro_base_fld 
     270      file_suff_var = '' 
     271   ENDIF  
    260272 
    261273final: 
     
    265277   IF debug_w THEN print,  '   cmd.grid in def_grid:          ', cmd.grid  
    266278   IF debug_w THEN print,  '   file_suff_var in def_grid:     ', file_suff_var  
     279   IF debug_w THEN print,  '   var_read_grd_file in def_grid: ', var_read_grd_file  
    267280   IF debug_w THEN print,  '   meshlec_type in def_grid:      ', meshlec_type 
    268281   IF debug_w THEN print,  '  ...EXIT def_grid' 
  • trunk/procs/meshes/mesh_from_file.pro

    r2 r9  
    66; masks made in data_read 
    77; 
     8   IF debug_w THEN print, '  ENTER mesh_from_file...' 
    89 
    910   IF strpos(ncdf_db, ':') GE 1 THEN directory = (str_sep(ncdf_db, ':'))[1] $ 
     
    1213   s_file = directory+file_name 
    1314 
    14    print,' Model inits for ', model, ' from file', s_file 
     15   print,'   Model inits for ', model, ' from file: ', s_file 
    1516 
    1617   sm_file = hom_idl+'grids/grids_'+model+'.nc'  
     
    2122      initncdf, s_file, GLAMBOUNDARY = glamboundary_box 
    2223 
    23       IF debug_w THEN print, ' Found mask from ',sm_file  
     24      print, '    Found mask from ',sm_file  
    2425 
    2526      tmask = byte(read_ncdf('sftlf', 0, 0, /timestep, file = sm_file, /nostruct)) 
     
    3536 
    3637   ENDIF ELSE BEGIN  
    37       initncdf, s_file, USEASMASK = var_name, GLAMBOUNDARY = glamboundary_box, ZAXISNAME = 'depth' 
     38      CASE var_name OF 
     39         '@@voenergy': var_local = 'so' 
     40         ELSE: var_local = var_read_grd_file 
     41      ENDCASE  
     42 
     43      ; find valmask 
     44      cdfidl=ncdf_open(s_file)  
     45      contient=ncdf_inquire(cdfidl) 
     46      varidl = ncdf_varid(cdfidl, var_local) 
     47      varcontient=ncdf_varinq(cdfidl, var_local) 
     48      valmask = 1.e20 
     49      FOR i = 0, varcontient.natts-1 DO BEGIN 
     50         att_txt = ncdf_attname(cdfidl, varidl, i) 
     51         IF att_txt EQ 'missing_value' OR att_txt EQ 'mask value' OR att_txt EQ '_FillValue' THEN ncdf_attget, cdfidl, varidl, att_txt, valmask 
     52         IF debug_w THEN print, 'valmask found = ',valmask  
     53      ENDFOR  
     54      ncdf_close, cdfidl 
     55      ; read grid 
     56      initncdf, s_file, USEASMASK = var_local, missing_value = valmask, GLAMBOUNDARY = glamboundary_box, ZAXISNAME = 'depth' 
     57 
    3858   ENDELSE  
    39  
    40    IF debug_w THEN print, 'vargrid = ',vargrid  
    4159 
    4260   key_offset = [0, 0, 0] 
     
    4563; 
    4664   diaznl_idx = 1 
     65   IF debug_w THEN print, '  ...EXIT mesh_from_file' 
    4766 
    4867  return 
Note: See TracChangeset for help on using the changeset viewer.