Changeset 41
- Timestamp:
- 01/26/08 10:18:52 (16 years ago)
- Location:
- trunk/procs
- Files:
-
- 1 deleted
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/procs/com_eg.pro
r39 r41 4 4 ; attributs horizontal+vertical means 5 5 ; 6 COMMON zm_att, box_h, depth_z, zoom_z, diaznl_idx, box_plot, legbox, hpa_max, hpa_min, max_spec, spec_win, vert_type, vert_mean, vert_switch, glamboundary_box, msf_mean 6 COMMON zm_att, box_h, depth_z, zoom_z, diaznl_idx, box_plot, legbox, hpa_max, hpa_min, max_spec, spec_win, vert_type, vert_mean, vert_switch, glamboundary_box, msf_mean, name_level 7 7 ; 8 8 ; attributs hoevmoeller … … 12 12 ; attributs formats + div 13 13 ; 14 COMMON formats, look, free_1d_minmax, lat_axis, cont_fill, multi_win, atmos_msk, line_thick, line_style, line_color, title_type, fill_space, vector_sample, symbol_style, symbol_color, symbol_families, contour_options, mean_sc_only, nc_grids_list, cont_real, symbol_size, xchartxt, ychartxt, linfit_sep 14 COMMON formats, look, free_1d_minmax, lat_axis, cont_fill, multi_win, atmos_msk, line_thick, line_style, line_color, title_type, fill_space, vector_sample, symbol_style, symbol_color, symbol_families, contour_options, mean_sc_only, nc_grids_list, cont_real, symbol_size, xchartxt, ychartxt, linfit_sep 15 COMMON switches, cmd1_back, cmd2_back, file_name1, file_name2, ncdf_db1, ncdf_db2, grid1_full, grid2_full 16 15 17 ; 16 18 ; attributs couleur -
trunk/procs/data_read.pro
r32 r41 10 10 ; same data as previous read ? 11 11 12 IF debug_w THEN print, ' ' 12 13 IF debug_w THEN print, ' ENTER data_read...' 13 14 IF debug_w THEN print, ' cmd at top of data_read = ', cmd … … 79 80 def_file_name, cmd, ncdf_db, file_name, delta_t1 80 81 81 IF debug_w THEN print, ' varexp step 1 in data_read = ', varexp82 83 82 ; get file if remote 84 83 85 84 get_file, file_name, ncdf_db 86 87 IF debug_w THEN print, ' varexp step 2 in data_read = ', varexp88 85 89 86 ; read grid from file if require (@<grid> option) … … 92 89 mesh_from_file, cmd.grid, file_name, ncdf_db, cmd.var 93 90 key_shift_map = key_shift 91 file_name2 = file_name 92 ncdf_db2 = ncdf_db 94 93 ENDIF 95 96 IF debug_w THEN print, ' varexp step 3 in data_read = ', varexp97 94 98 95 ; define data domain … … 101 98 ; get hovmoeller box + stride 102 99 box_plot = def_box(cmd.plt, dimplot, legbox, time_stride) 103 IF debug_w THEN print, ' box_plot for domdef in data_read = ', box_plot100 IF debug_w THEN print, ' box_plot for domdef in data_read = ', box_plot 104 101 CASE n_elements(box_plot) OF 105 102 4: domdef, box_plot[0:3], /MEMEINDICES … … 181 178 fldr1 = nc_read(file_name, var1, ncdf_db, $ 182 179 TIME_1 = time1, TIME_2 = time2, ALL_DATA = all_data, _extra = ex) 180 file_name1 = file_name 181 ncdf_db1 = ncdf_db 183 182 CASE cmd.grid OF 184 183 'U': vargrid1 = 'U' … … 200 199 cmd2.spec = cmd.spec 201 200 datyp2 = def_dptyp(cmd2) 201 cmd2_back = cmd2 202 202 ; other grid ? 203 grid2_test = cmd2.grid 203 204 sw_diffg = 0 204 IF cmd2.grid NE cmd.grid THEN BEGIN205 IF grid2_test NE cmd.grid THEN BEGIN 205 206 sw_diffg = 1 206 207 jptb = jpt 207 def_grid, cmd2 208 IF debug_w THEN print, 'def_grid, cmd2 dans data_read : ' 208 IF debug_w THEN print, ' (in data_read) cmd2.grid <> cmd.grid ', cmd2.grid, cmd.grid 209 IF debug_w THEN print, ' exec def_grid, cmd2_back in data_read : ' 210 grid2_full = cmd2_back.grid 211 def_grid, cmd2_back 209 212 jpt = jptb 210 213 ENDIF 211 214 fldr2 = data_read(cmd2, datyp2.hotyp, datyp2.plttyp, '1', '0', ALL_DATA = all_data, _extra = ex) 212 215 var2 = cmd2.var 213 print, ' Variable ', var2, ' lue sur grille', vargrid216 print, ' Variable 2 ', var2, ' read on vargrid ', vargrid 214 217 jptb = jpt 218 if debug_w THEN print, ' yfx grids different ? / sw_diffg = ', sw_diffg 215 219 IF sw_diffg EQ 1 THEN BEGIN 216 def_grid, cmd 217 IF debug_w THEN print, 'def_grid, cmd dans data_read : ' 220 IF debug_w THEN print, ' exec def_grid, cmd1_back in data_read : ' 221 grid1_full = cmd1_back.grid 222 def_grid, cmd1_back 223 IF read_grid_from_file EQ 1 THEN BEGIN 224 mesh_from_file, cmd1_back.grid, file_name1, ncdf_db1, cmd1_back.var 225 key_shift_map = key_shift 226 ENDIF 218 227 ENDIF 219 228 jpt = jptb -
trunk/procs/def_file_name.pro
r16 r41 7 7 @com_eg 8 8 IF debug_w THEN print, ' ' 9 IF debug_w THEN print, ' ENTER def_file_name...'9 IF debug_w THEN print, ' ENTER def_file_name...' 10 10 11 11 ; define date1 and date2 … … 20 20 f_suffix = suffix 21 21 22 IF debug_w THEN print, ' suffix before search_time_file = ', suffix22 IF debug_w THEN print, ' suffix before search_time_file = ', suffix 23 23 24 24 CASE strmid(cmd.plt, 0, 2) OF … … 39 39 END 40 40 ENDCASE 41 IF debug_w THEN print, ' suffix after search_time_file = ', suffix41 IF debug_w THEN print, ' suffix after search_time_file = ', suffix 42 42 43 43 file_name = cmd.exp+'_'+timavef+'_'+date1+'_'+date2+suffix+'.nc' 44 44 base_file_name = cmd.exp+'_'+timavef+'_'+date1+'_'+date2 45 45 46 IF debug_w THEN print, ' vargrid = ', vargrid47 IF debug_w THEN print, ' file_name in def_file_name = ',file_name48 IF debug_w THEN print, ' ... EXIT def_file_name'46 IF debug_w THEN print, ' vargrid = ', vargrid 47 IF debug_w THEN print, ' file_name in def_file_name = ',file_name 48 IF debug_w THEN print, ' ... EXIT def_file_name' 49 49 END -
trunk/procs/def_grid.pro
r26 r41 9 9 IF debug_w THEN print, ' ' 10 10 IF debug_w THEN print, ' ENTER def_grid / cmd =', cmd 11 12 varexp = cmd.exp 11 13 12 14 IF cmd.out EQ 'cdf' THEN BEGIN … … 36 38 ENDIF 37 39 38 IF debug_w THEN print, ' file_suff_var = ', file_suff_var40 IF debug_w THEN print, ' file_suff_var = ', file_suff_var 39 41 40 42 ; read_grid_from_file ? … … 45 47 cmd.grid = strmid(cmd.grid, 1, strlen(cmd.grid)-1) 46 48 read_grid_from_file = 1 47 print, ' Will read grid info '+cmd.grid+' from data file'49 print, ' Will read grid info '+cmd.grid+' from data file' 48 50 key_shift_map = 0 49 51 IF strpos(cmd.var, '@@') NE -1 THEN BEGIN … … 53 55 ENDIF ELSE var_read_grd_file = cmd.var 54 56 55 IF debug_w THEN print, ' cmd.grid after test read_grid_from_file: ', cmd.grid57 IF debug_w THEN print, ' cmd.grid after test read_grid_from_file: ', cmd.grid 56 58 57 59 ; choose grid (if not already loaded) … … 72 74 ; read attributes from Defaults/Grids/grid_config.def 73 75 file_grid_config = hom_def+'grid_config.def' 74 IF debug_w THEN print, ' doing: grep -i "\ '+cmd.grid+' " '+file_grid_config76 IF debug_w THEN print, ' doing: grep -i "\ '+cmd.grid+' " '+file_grid_config 75 77 spawn, 'grep -i "\ '+cmd.grid+' " '+file_grid_config, line 76 78 line = strcompress(strtrim(line[0], 2)) 77 79 length = strlen(line) 78 80 79 IF debug_w THEN print, ' line from grid_config.def ',line81 IF debug_w THEN print, ' line from grid_config.def ',line 80 82 81 83 IF length EQ 0 THEN BEGIN 82 print, ' 84 print, ' *** def_grid : define grid ', cmd.grid, ' in file ', file_grid_config 83 85 stop 84 86 ENDIF ELSE BEGIN … … 88 90 mesh_type2 = argvar[3] 89 91 vargrid = argvar[4] 92 name_level = argvar[5] 90 93 ENDELSE 91 94 meshlec_type = mesh_type 92 95 ENDIF 96 97 IF masked_data EQ 0 THEN atmos_msk = 0 93 98 94 99 ; init zoom for data read … … 99 104 izmindta = 0 100 105 ENDIF 106 IF debug_w THEN print, ' varexp in def_grid before case cmd.grid:', varexp 101 107 102 108 IF read_grid_from_file EQ 1 THEN GOTO, final … … 275 281 box_h_prev = box_h 276 282 277 IF debug_w THEN print, ' cmd.grid in def_grid: ', cmd.grid278 IF debug_w THEN print, ' file_suff_var in def_grid: ', file_suff_var279 IF debug_w THEN print, ' var_read_grd_file in def_grid: ', var_read_grd_file280 IF debug_w THEN print, ' meshlec_type in def_grid: ', meshlec_type281 IF debug_w THEN print, ' varexp in def_grid: ', varexp283 IF debug_w THEN print, ' cmd.grid in def_grid: ', cmd.grid 284 IF debug_w THEN print, ' file_suff_var in def_grid: ', file_suff_var 285 IF debug_w THEN print, ' var_read_grd_file in def_grid: ', var_read_grd_file 286 IF debug_w THEN print, ' meshlec_type in def_grid: ', meshlec_type 287 IF debug_w THEN print, ' varexp in def_grid: ', varexp 282 288 IF debug_w THEN print, ' ...EXIT def_grid' 289 IF debug_w THEN print, ' ' 283 290 284 291 END -
trunk/procs/legend_overlay.pro
r39 r41 27 27 28 28 CASE plttyp OF 29 'yfx': leg_txt = 'Linfit = '+coeff_txt+coefflu_txt 29 'yfx': leg_txt = 'Linfit = '+coeff_txt+coefflu_txt+coeffm_txt 30 30 ELSE: 31 31 END -
trunk/procs/meshes/mesh_from_file.pro
r26 r41 40 40 ELSE: var_local = var_read_grd_file 41 41 ENDCASE 42 IF strpos(var_local, '=f(next)') NE -1 THEN BEGIN 43 idx = strpos(var_local, '=f(') 44 var_local = strmid(var_local, 0, idx) 45 ENDIF 46 47 IF debug_w THEN print, ' var_local = ', var_local 42 48 43 49 ; find valmask … … 49 55 FOR i = 0, varcontient.natts-1 DO BEGIN 50 56 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 57 IF att_txt EQ 'missing_value' OR att_txt EQ 'mask value' OR att_txt EQ '_FillValue' THEN BEGIN 58 ncdf_attget, cdfidl, varidl, att_txt, valmask 59 IF debug_w THEN print, ' valmask found = ',valmask, ' in attribute ', att_txt 60 ENDIF 53 61 ENDFOR 54 62 ncdf_close, cdfidl 55 ; read grid 56 initncdf, s_file, USEASMASK = var_local, missing_value = valmask, GLAMBOUNDARY = glamboundary_box, ZAXISNAME = 'depth' 57 63 ; build grid 64 CASE mesh_type of 65 'atm': initncdf, s_file, GLAMBOUNDARY = glamboundary_box, ZAXISNAME = name_level 66 ELSE: initncdf, s_file, USEASMASK = var_local, missing_value = valmask, GLAMBOUNDARY = glamboundary_box, ZAXISNAME = 'depth' 67 ENDCASE 68 IF debug_w THEN print, ' Grid info after initncdf :' 69 IF debug_w THEN print, ' glamt :', size(glamt) 70 IF debug_w THEN print, ' gphit :', size(gphit) 71 IF debug_w THEN print, ' gdept :', size(gdept) 72 58 73 ENDELSE 59 74 … … 65 80 ; 66 81 diaznl_idx = 1 67 IF debug_w THEN print, ' model, vargrid, varexp at exit = ',model, vargrid, varexp82 IF debug_w THEN print, ' model, vargrid, varexp at exit = ',model, ' ', vargrid,' ', varexp 68 83 IF debug_w THEN print, ' ...EXIT mesh_from_file' 84 IF debug_w THEN print, ' ' 69 85 70 86 return -
trunk/procs/meshes/mesh_pcmdi.pro
r26 r41 5 5 ; init grid, sf, masks for grids with regular grid IPCC netCDF standard 6 6 ; 7 print,' Model inits for ', model 7 IF debug_w THEN print, ' ' 8 IF debug_w THEN print, ' ENTER mesh_pcmdi / model =', model 9 10 print,' Model inits for ', model 11 IF debug_w THEN print, ' varexp at start of mesh_pcmdi:', varexp 8 12 9 13 varexpp = varexp … … 70 74 varexp = varexpp 71 75 72 print,' End of initialisation for pcmdi grid:', model 76 print,' End of initialisation for pcmdi grid:', model 77 IF debug_w THEN print, ' varexp at end of mesh_pcmdi:', varexp 78 IF debug_w THEN print, ' ...EXIT mesh_pcmdi' 79 IF debug_w THEN print, ' ' 73 80 74 81 return -
trunk/procs/nc_read.pro
r27 r41 15 15 16 16 ; inits 17 IF debug_w THEN print, 'DEBUG: Entering nc_read...' 17 IF debug_w THEN print, ' ' 18 IF debug_w THEN print, ' ENTER nc_read' 19 18 20 IF NOT keyword_set(TIME_1) THEN time_1 = 1 19 21 IF NOT keyword_set(TIME_2) THEN time_2 = time_1 … … 22 24 ; 23 25 24 IF debug_w THEN print, ' keyword_set(ALL_DATA) : ', keyword_set(ALL_DATA)26 IF debug_w THEN print, ' keyword_set(ALL_DATA) : ', keyword_set(ALL_DATA) 25 27 26 28 IF keyword_set(ALL_DATA) THEN BEGIN … … 47 49 ENDELSE 48 50 49 IF debug_w THEN print, ' nx,ny,nz,firstx,firsty,firstz,lastx,lasty,lastz'50 IF debug_w THEN print, nx,ny,nz,firstx,firsty,firstz,lastx,lasty,lastz51 52 IF debug_w THEN print, ' key_offset =', key_offset53 IF debug_w THEN print, ' jpi, jpj, jpk =', jpi, jpj, jpk51 IF debug_w THEN print, ' nx,ny,nz,firstx,firsty,firstz,lastx,lasty,lastz' 52 IF debug_w THEN print, ' ', nx,ny,nz,firstx,firsty,firstz,lastx,lasty,lastz 53 54 IF debug_w THEN print, ' key_offset =', key_offset 55 IF debug_w THEN print, ' jpi, jpj, jpk =', jpi, jpj, jpk 54 56 55 57 … … 60 62 z_count = nz 61 63 62 IF debug_w THEN print, ' nx,ny,nz =', nx,ny,nz64 IF debug_w THEN print, ' nx,ny,nz =', nx,ny,nz 63 65 64 66 ; force izmaxmesh to lastz … … 69 71 key_shift_read = 0 70 72 ENDIF ELSE key_shift_read = key_shift 71 IF debug_w THEN print, ' key_shift_read=', key_shift_read73 IF debug_w THEN print, ' key_shift_read=', key_shift_read 72 74 73 75 x_offset = key_offset[0]+ firstx+(key_shift_read-key_shift) 74 76 y_offset = key_offset[1]+ firsty 75 77 z_offset = key_offset[2]+ firstz 76 IF debug_w THEN print, ' offset =', x_offset, y_offset, z_offset78 IF debug_w THEN print, ' offset =', x_offset, y_offset, z_offset 77 79 78 80 ; pour trouver un fichier, tu as … … 191 193 name = varid 192 194 193 IF debug_w THEN print, 'key=', key 194 IF debug_w THEN print, 'jpitotal=', jpitotal 195 IF debug_w THEN print, 'ixmindta,iymindta,izmindta =', ixmindta,iymindta,izmindta 196 IF debug_w THEN print, 'ixminmesh,iyminmesh=', ixminmesh,iyminmesh 197 IF debug_w THEN print, 'ixmaxmesh,iymaxmesh=', ixmaxmesh,iymaxmesh 198 IF debug_w THEN print, 'izminmesh,izmaxmesh=', izminmesh,izmaxmesh 199 IF debug_w THEN print, 'ixmin,iymin=', ixmin,iymin 200 IF debug_w THEN print, 'firsttps,lasttps=', firsttps, lasttps 201 IF debug_w THEN print, 'key_shift in nc_read=', key_shift 202 IF debug_w THEN print, 'key_yreverse, firsty, lasty',key_yreverse, firsty, lasty 195 IF debug_w THEN print, ' ' 196 IF debug_w THEN print, ' key=', key 197 IF debug_w THEN print, ' jpitotal=', jpitotal 198 IF debug_w THEN print, ' ixmindta,iymindta,izmindta =', ixmindta,iymindta,izmindta 199 IF debug_w THEN print, ' ixminmesh,iyminmesh=', ixminmesh,iyminmesh 200 IF debug_w THEN print, ' ixmaxmesh,iymaxmesh=', ixmaxmesh,iymaxmesh 201 IF debug_w THEN print, ' izminmesh,izmaxmesh=', izminmesh,izmaxmesh 202 IF debug_w THEN print, ' ixmin,iymin=', ixmin,iymin 203 IF debug_w THEN print, ' firsttps,lasttps=', firsttps, lasttps 204 IF debug_w THEN print, ' key_shift in nc_read=', key_shift 205 IF debug_w THEN print, ' key_yreverse, firsty, lasty',key_yreverse, firsty, lasty 206 IF debug_w THEN print, ' ' 203 207 204 208 CASE n_elements(varinq.dim) OF … … 227 231 ENDIF ELSE BEGIN 228 232 print, ' Reading ', var_name, ' (2D data time serie)', strcompress(string(time_1)),'-', strtrim(string(time_2), 2), ' [every ',strtrim(string(time_stride), 2), '] from ', file_name 229 IF debug_w THEN print, ' x_offset et y_offset et time_1 :', x_offset, y_offset, time_1233 IF debug_w THEN print, ' x_offset et y_offset et time_1 :', x_offset, y_offset, time_1 230 234 @read_ncdf_varget 231 235 lec_data = res … … 245 249 print, ' Reading ', var_name, ' (3D data - index ', strcompress(string(time_1)),') from ', file_name 246 250 ; read vertical levels 251 IF debug_w THEN print, ' mesh_type= ',mesh_type 247 252 IF mesh_type EQ 'atm' THEN BEGIN 248 253 ncdf_diminq,cdfid,2, name_level, nb_level 249 250 ; get name of vertical level from metadata 251 file_grid_config = hom_def+'grid_config.def' 252 spawn, 'grep -i "\ '+meshlec_type+' " '+file_grid_config, line 253 line = strcompress(strtrim(line[0], 2)) 254 length = strlen(line) 255 256 IF length EQ 0 THEN BEGIN 257 print, ' *** nc_read : define name_level from grid ', meshlec_type, $ 258 ' in file ', file_grid_config 259 name_level = '' 260 return, -1 261 ENDIF ELSE BEGIN 262 argvar = str_sep(line, ' ') 263 name_level = argvar[4] 264 ENDELSE 254 IF debug_w THEN print, 'name_level, nb_level = ', name_level, nb_level 255 265 256 dimidl = ncdf_dimid(cdfid, name_level) 266 257 ncdf_diminq,cdfid,dimidl, name_level, nb_level … … 313 304 CASE vert_type OF 314 305 'z': BEGIN ; depth range 315 IF time_1 EQ time_2 THEN BEGIN 316 zmean = moyenne(lec_data, 'z', boite = vert_mean, NAN =1.e20) 317 END ELSE zmean = grossemoyenne(lec_data, 'z', boite = vert_mean, NAN =1.e20) 306 IF debug_w THEN print, ' performing average' 307 zmean = grossemoyenne(lec_data, 'z', boite = vert_mean) 318 308 IF vert_mean[0] EQ vert_mean[1] THEN BEGIN 319 309 name_suff = ' at '+strtrim(string(long(gdept(vert_mean(0)))), 2)+' hPa' … … 576 566 ;jpk = jpk_orig 577 567 578 IF keyword_set(key_yreverse) THEN print, ' key_yreverse active : ', key_yreverse 579 580 IF debug_w THEN print, 'DEBUG: Exiting nc_read...' 568 IF keyword_set(key_yreverse) THEN print, ' key_yreverse active : ', key_yreverse 569 570 IF debug_w THEN print, ' ...EXIT nc_read' 571 IF debug_w THEN print, ' ' 581 572 582 573 return, field -
trunk/procs/plt_map.pro
r38 r41 156 156 ; read if new type + triangule 157 157 ; 158 cmd1_back = cmd 158 159 sw_diffg = 0 159 160 def_grid, cmd 160 IF debug_w THEN print, ' after def_grid in plt_map: cmd.grid , varexp, vargrid ',cmd.grid, varexp, vargrid161 IF debug_w THEN print, ' after def_grid in plt_map: cmd.grid/varexp/vargrid ',cmd.grid,' ', varexp, ' ', vargrid 161 162 162 163 ; vertical average if 3D field … … 586 587 ; vertical grid type 587 588 ; 588 IF debug_w THEN print, ' splot=', splot589 IF debug_w THEN print, ' splot=', splot 589 590 CASE mesh_type OF 590 591 'oce': BEGIN -
trunk/procs/yfx.pro
r39 r41 21 21 boxx = ' ['+boxx+']' 22 22 vargrid = vargrid1 23 IF debug_w THEN print, ' domdef and vargrid : ', boite_plt1d[0:3], vargrid23 IF debug_w THEN print, ' yfx: domdef and vargrid : ', boite_plt1d[0:3], vargrid 24 24 domdef, boite_plt1d[0:3] 25 25 print, ' Averaging (time serie plot) cmd.var '+cmd.var+' in'+boxx 26 IF debug_w THEN print, ' fld size', size(fld)26 IF debug_w THEN print, ' fld size', size(fld) 27 27 fld = checkfield(fld, 'plt1d', type = datyp.hotyp, boite = boite_plt1d) 28 28 IF cmd.trend GT 0 THEN BEGIN … … 33 33 ENDIF 34 34 ; space and time plots fld2 35 IF debug_w THEN print, ' cmd1_back = ', cmd1_back 36 IF debug_w THEN print, ' cmd2_back = ', cmd2_back 37 IF debug_w THEN print, ' grid1_full = ', grid1_full 38 IF debug_w THEN print, ' grid2_full = ', grid2_full 35 39 IF sw_diffg EQ 1 THEN BEGIN 36 40 jptb = jpt 37 IF debug_w THEN print, ' calling def_grid, cmd2 dans plt_map ' 38 def_grid, cmd2 41 IF debug_w THEN print, ' calling def_grid, cmd2_back in plt_map/yfx ' 42 cmd2_back.grid = grid2_full 43 def_grid, cmd2_back 44 IF read_grid_from_file EQ 1 THEN BEGIN 45 mesh_from_file, cmd2_back.grid, file_name2, ncdf_db2, cmd2_back.var 46 key_shift_map = key_shift 47 ENDIF 39 48 jpt = jptb 40 49 ENDIF 41 50 IF strpos(cmd2.plt, 'xy_') NE -1 THEN BEGIN 42 mask_z, fld2, cmd2 , boite_plt2, dimplot, boxy51 mask_z, fld2, cmd2_back, boite_plt2, dimplot, boxy 43 52 boxy = ' ['+boxy+']' 44 print, ' Averaging (space) '+cmd2 .var+' in'+boxy53 print, ' Averaging (space) '+cmd2_back.var+' in'+boxy 45 54 fld2 = checkfield(fld2, 'plt', type = 'xy', boite = boite_plt2) 46 55 ENDIF … … 51 60 cmd2.plt = strmid(cmd2.plt, 0, strpos(cmd2.plt, '@r')) 52 61 ENDIF 53 mask_z, fld2, cmd2 , boite_plt1d2, dimplot, boxy62 mask_z, fld2, cmd2_back, boite_plt1d2, dimplot, boxy 54 63 boxy = ' ['+boxy+']' 55 64 vargrid = vargrid2 … … 68 77 sw_diffg = 0 69 78 jptb = jpt 70 IF debug_w THEN print, ' calling def_grid, cmd dans plt_map ' 71 def_grid, cmd 79 IF debug_w THEN print, ' calling def_grid, cmd1_back in plt_map/yfx ' 80 cmd1_back.grid = grid1_full 81 def_grid, cmd1_back 82 IF read_grid_from_file EQ 1 THEN BEGIN 83 mesh_from_file, cmd1_back.grid, file_name1, ncdf_db1, cmd1_back.var 84 key_shift_map = key_shift 85 ENDIF 72 86 jpt = jptb 73 87 ENDIF 74 88 75 89 ; Compute linear fit coeeficients 90 fmt_linfit = '(F9.4)' 76 91 ; whole serie 77 92 coeff = linfit(fld2, fld, CHISQ = linerr, PROB = proberr, SIGMA = sigmaerr) 78 93 print, ' Linfit coef (a+bx) = ', coeff(0), coeff(1), ' errbar = ',sigmaerr 79 94 ; text for plot info in legend_overlay 80 coeff_txt = strtrim( coeff(1), 2)95 coeff_txt = strtrim(string(coeff(1), format = fmt_linfit), 2) 81 96 IF proberr NE 1.0 THEN print, ' WARNING: proba = ',proberr 82 83 97 ; divide serie in two domains (on x axis) seperated by linfit_sep (plt_def) 84 IF linfit_sep NE -99999 THEN begin 98 ; do only if 1m@t412 (if full serie, then separate by season) 99 100 IF linfit_sep NE -99999 AND cmd.trend EQ 412 THEN begin 101 85 102 idx_low = where (fld2 LE linfit_sep) 86 103 idx_up = where (fld2 GE linfit_sep) 104 coefflu_txt = ' [' 87 105 88 106 IF idx_low(0) NE -1 THEN BEGIN 89 107 coeffl = linfit(fld2(idx_low), fld(idx_low), CHISQ = linerrl, PROB = proberrl, SIGMA = sigmaerrl) 90 108 print, ' Linfit coef below ',strtrim(string(linfit_sep), 2),' = ', coeffl(0), coeffl(1), ' errbar = ',sigmaerrl 109 IF proberrl NE 1.0 THEN print, ' *** WARNING: proba lower = ',proberrl 110 coefflu_txt = coefflu_txt+strtrim(string(coeffl(1), format = fmt_linfit), 2)+'<'+strtrim(string(linfit_sep, format = '(F4.2)'), 2) 91 111 ENDIF 92 112 … … 94 114 coeffu = linfit(fld2(idx_up), fld(idx_up), CHISQ = linerru, PROB = proberru, SIGMA = sigmaerru) 95 115 print, ' Linfit coef above ',strtrim(string(linfit_sep), 2),' = ', coeffu(0), coeffu(1), ' errbar = ',sigmaerru 96 ENDIF 97 IF proberrl NE 1.0 THEN print, ' *** WARNING: proba lower = ',proberrl 98 IF proberru NE 1.0 THEN print, ' *** WARNING: proba upper = ',proberru 99 coefflu_txt = ' ['+strtrim(coeffl(1), 2)+'<'+strtrim(linfit_sep, 2)+'>'+strtrim(coeffu(1), 2)+']' 100 116 IF proberru NE 1.0 THEN print, ' *** WARNING: proba upper = ',proberru 117 coefflu_txt = coefflu_txt+'>'+strtrim(string(coeffu(1), format = fmt_linfit), 2) 118 ENDIF 119 coefflu_txt = coefflu_txt+']' 101 120 ENDIF ELSE coefflu_txt = '' 102 121 … … 127 146 IF hotyp EQ 't' THEN BEGIN ; time scatter plot 128 147 IF mean_sc_only EQ 0 OR mean_sc_only EQ 4 THEN BEGIN 129 ; number of time colors148 ; number of time colors 130 149 IF strpos(symbol_families, 'x') NE -1 THEN BEGIN 131 150 coding = str_sep(symbol_families, 'x') … … 144 163 linprob = fltarr(ncolors) 145 164 linerr0 = fltarr(ncolors) 165 coeffm_txt = ' [' 146 166 WHILE ic LE ncolors-1 DO BEGIN 147 167 idx0 = (floor(findgen(jpto/(ncolors*ntimes)))*ncolors*ntimes)+ic*(ntimes) … … 160 180 lincoef(ic) = coeff(1) 161 181 linerr0(ic) = sigmaerr(0) 162 IF debug_w THEN print, ' Period '+strtrim(string(ic), 2)+' Linear fit slope, chisq, prob =', coeff(0),coeff(1), sigmaerr, prblin 182 print, ' Period '+strtrim(string(ic+1), 2)+' Linfit coef =', coeff(0),coeff(1), ' errbar = ',sigmaerr 183 coeffm_txt = coeffm_txt+strtrim(string(coeff(1), format = fmt_linfit), 2)+'/' 163 184 IF mean_sc_only EQ 0 THEN BEGIN 164 185 pltcmd = 'pltsc,fldp,fldp2,minc,maxc,minc2,maxc2,varlegend2, boite=boxyfx'+com_strplt+',ov1d='+string(ic)+',COLOR='+string(symbol_color(ic))+', STY1D='+string(symbol_style(ic)-1)+', SYMSIZE='+string(symbol_size) … … 203 224 ic = ic + 1 204 225 ENDWHILE 226 coeffm_txt = coeffm_txt+']' 205 227 ENDIF ELSE BEGIN ; one color 206 228 IF debug_w THEN print, ' ',pltcmdstd … … 212 234 res = execute(pltcmdstd(0)) 213 235 ENDELSE 236 IF cmd.trend EQ 412 THEN coeffm_txt = '' 214 237 ; Add slope value 215 238 @legend_overlay
Note: See TracChangeset
for help on using the changeset viewer.