Changeset 168 for trunk/tools
- Timestamp:
- 11/13/09 17:04:09 (15 years ago)
- Location:
- trunk/tools
- Files:
-
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tools/density_binning/binning_neutral_and_co/bn2.pro
r165 r168 3 3 ; Compute the local Brunt-Vaisala frequency 4 4 ; 5 ; 6 ; 5 ; Method : 6 ; ------- 7 7 ; neos = 0 : UNESCO sea water properties 8 8 ; The brunt-vaisala frequency is computed using the polynomial … … 23 23 ; and is never used at this level. 24 24 ; 25 ; References : 26 ; ----------- 27 ; McDougall, T. J., J. Phys. Oceanogr., 17, 1950-1964, 1987. 28 ; 25 29 ; @param TN {in} 26 30 ; potential temperature … … 31 35 ; @returns 32 36 ; brunt-vaisala frequency 33 ;34 ; References :35 ; -----------36 ; McDougall, T. J., J. Phys. Oceanogr., 17, 1950-1964, 1987.37 37 ; 38 38 ; @history -
trunk/tools/density_binning/binning_neutral_and_co/eos.pro
r165 r168 2 2 ; 3 3 ; computes rho (in situ volumic mass) 4 ;5 ; @categories6 ; calculation7 ;8 ; @examples9 ; tableau=eos(t,s,sigma)10 ;11 ; @param T {in}{required}12 ; temperature13 ;14 ; @param S {in}{required}15 ; salinity16 ;17 ; @param SIGMA {in}{required}18 ; reference level (real number belonging to [0,5])19 ; for instance, sigma=3. means that rho will be referenced to 3000m20 ;21 ; @uses22 ; common.pro23 4 ; 24 5 ; REFERENCE: … … 42 23 ; 43 24 ; Jackett, D.R., and T.J. McDougall. J. Atmos. Ocean. Tech., 1994 25 ; 26 ; @categories 27 ; calculation 28 ; 29 ; @examples 30 ; tableau=eos(t,s,sigma) 31 ; 32 ; @param T {in}{required} 33 ; temperature 34 ; 35 ; @param S {in}{required} 36 ; salinity 37 ; 38 ; @param SIGMA {in}{required} 39 ; reference level (real number belonging to [0,5]) 40 ; for instance, sigma=3. means that rho will be referenced to 3000m 41 ; 42 ; @uses 43 ; common.pro 44 44 ; 45 45 ; @history -
trunk/tools/density_binning/binning_neutral_and_co/eos_neutral.pro
r164 r168 2 2 ; 3 3 ; computes rho (in situ volumic mass) 4 ; 5 ; REFERENCE: 6 ; Compute the neutral volumic mass (Kg/m3) from known potential 7 ; temperature and salinity fields using McDougall and Jackett 2005 8 ; equation of state. 9 ; potential temperature t deg celsius 10 ; salinity s psu 11 ; nutral density rho kg/m**3 12 ; 13 ; Check value: rho(35,20) = 1024.59416751197 kg/m**3 14 ; t = 20 deg celcius, s=35 psu 15 ; 16 ; McDougall and Jackett, J. Mar Res., 2005 4 17 ; 5 18 ; @categories … … 15 28 ; @param S {in} 16 29 ; salinity 17 ;18 ; REFERENCE:19 ; Compute the neutral volumic mass (Kg/m3) from known potential20 ; temperature and salinity fields using McDougall and Jackett 200521 ; equation of state.22 ; potential temperature t deg celsius23 ; salinity s psu24 ; nutral density rho kg/m**325 ;26 ; Check value: rho(35,20) = 1024.59416751197 kg/m**327 ; t = 20 deg celcius, s=35 psu28 ;29 ; McDougall and Jackett, J. Mar Res., 200530 30 ; 31 31 ; @history -
trunk/tools/density_binning/binning_neutral_and_co/fig_msfs_new.pro
r166 r168 1 1 ;+ 2 ; 3 ; @todo 4 ; missing 0_initorca2_NDV1 module 2 5 ; 3 6 ; @version -
trunk/tools/density_binning/binning_neutral_and_co/fsalbt.pro
r165 r168 4 4 ; used for the computation of the the local Brunt-Vaisala frequency 5 5 ; 6 ; References : 7 ; ----------- 8 ; McDougall, T. J., J. Phys. Oceanogr., 17, 1950-1964, 1987. 9 ; 6 10 ; @param PFT{in} 7 11 ; potential temperature in degrees celcius … … 15 19 ; @returns 16 20 ; ratio of thermal over saline expension coefficients 17 ;18 ; References :19 ; -----------20 ; McDougall, T. J., J. Phys. Oceanogr., 17, 1950-1964, 1987.21 21 ; 22 22 ; @history -
trunk/tools/density_binning/binning_neutral_and_co/fsbeta.pro
r165 r168 4 4 ; used for the computation of the the local Brunt-Vaisala frequency 5 5 ; 6 ; References : 7 ; ----------- 8 ; McDougall, T. J., J. Phys. Oceanogr., 17, 1950-1964, 1987. 9 ; 6 10 ; @param PFT {in} {required} 7 11 ; potential temperature in degrees celcius … … 16 20 ; saline expension coefficients 17 21 ; 18 ; References :19 ; -----------20 ; McDougall, T. J., J. Phys. Oceanogr., 17, 1950-1964, 1987.21 ;22 22 ; @history 23 23 ; Original : 94-07 (G. Madec, M. Imbard) -
trunk/tools/density_binning/binning_neutral_and_co/npc.pro
r165 r168 1 1 ;+ 2 ; Non penetrative convective adjustment scheme. solve the static 3 ; instability of the water column. 4 ; 5 ; Method : 6 ; ------- 7 ; The algorithm used converges in a maximium of jpk iterations. 8 ; instabilities are treated when the vertical density gradient 9 ; is less than 1.e-5. 2 ; 3 ; Non penetrative convective adjustment scheme. solve the static 4 ; instability of the water column. 5 ; 6 ; Method 7 ; ------ 8 ; The algorithm used converges in a maximium of jpk iterations. 9 ; instabilities are treated when the vertical density gradient 10 ; is less than 1.e-5. 11 ; 12 ; References : 13 ; ----------- 14 ; Madec et al., 1991, JPO, 21, 9, 1349-1371. 10 15 ; 11 16 ; @param S3D {in} … … 14 19 ; @returns 15 20 ; adjusted potential density field 16 ; 17 ; References : 18 ; ----------- 19 ; Madec et al., 1991, JPO, 21, 9, 1349-1371. 20 ; 21 21 22 ; @history 22 23 ; original : 90-09 (G. Madec) -
trunk/tools/density_binning/density_bin_IDL_gm/bin_sigma.pro
r165 r168 5 5 ; Method : 6 6 ; -------- 7 ; 8 ; 9 ; c- project field7 ; a- read density 8 ; b- define density grid 9 ; c- project field 10 10 ; 11 11 ; @param CMD {in} … … 35 35 vargrid = 'T' 36 36 sig = make_eos(file_nam, '', time_1 = time1_r, time_2 = time2_r, BOXZOOM = boxzoom, ALL_DATA = all_data) 37 IF sig_bowl EQ 1 THEN BEGIN 37 IF sig_bowl EQ 1 THEN BEGIN 38 38 sobwlmax = make_sobwlmax(file_nam, '', time_1 = time1_r, time_2 = time2_r) 39 39 ENDIF ELSE BEGIN 40 40 sobwlmax = {data:0} 41 ENDELSE 41 ENDELSE 42 42 43 43 mask = tmask[firstxt:lastxt, firstyt:lastyt, firstzt:lastzt] … … 50 50 ; c- project field 51 51 52 CASE pfildi.name OF 52 CASE pfildi.name OF 53 53 '@@vodeptht': data_s = sig.data 54 54 '@@vosigvol': data_s = sig.data 55 55 '@@vosigthi': data_s = sig.data 56 56 ELSE: data_s = pfildi.data 57 ENDCASE 57 ENDCASE 58 58 final_dim = pfildi.dim 59 59 IF strpos(cmd.plt, "_") NE -1 OR strpos(cmd.plt, "#") NE -1 THEN BEGIN … … 61 61 IF cmd.var EQ '@@vosigvol' THEN BEGIN 62 62 print, ' (using bining3)...' 63 bining3, sig.data-1000., data_s, sobwlmax.data, sig_bowl, depth_bin, thick_bin, f_bin, bowl_bin, vol_bin, SIGMA = z_sig, DEPTH_T = gdept, DEPTH_W = gdepw, E1T = e1t, E2T = e2t, E3T = e3t, TMASK = mask 63 bining3, sig.data-1000., data_s, sobwlmax.data, sig_bowl, depth_bin, thick_bin, f_bin, bowl_bin, vol_bin, SIGMA = z_sig, DEPTH_T = gdept, DEPTH_W = gdepw, E1T = e1t, E2T = e2t, E3T = e3t, TMASK = mask 64 64 ENDIF ELSE BEGIN 65 65 print, ' (using bining2)...' 66 66 bining2, sig.data-1000., data_s, sobwlmax.data, sig_bowl, depth_bin, thick_bin, f_bin, bowl_bin, SIGMA = z_sig, DEPTH_T = gdept, DEPTH_W = gdepw, E3T = e3t, E3W = e3w, TMASK = mask 67 ENDELSE 67 ENDELSE 68 68 ENDIF ELSE BEGIN 69 69 print, ' Performing density bining (assuming global domain)...' 70 70 IF cmd.var EQ '@@vosigvol' THEN BEGIN 71 71 print, ' (using bining3)...' 72 bining3, sig.data-1000., data_s, sobwlmax.data, sig_bowl, depth_bin, thick_bin, f_bin, bowl_bin, vol_bin, SIGMA = z_sig, DEPTH_T = gdept, DEPTH_W = gdepw, E1T = e1t, E2T = e2t, E3T = e3t, TMASK = tmask 72 bining3, sig.data-1000., data_s, sobwlmax.data, sig_bowl, depth_bin, thick_bin, f_bin, bowl_bin, vol_bin, SIGMA = z_sig, DEPTH_T = gdept, DEPTH_W = gdepw, E1T = e1t, E2T = e2t, E3T = e3t, TMASK = tmask 73 73 ENDIF ELSE BEGIN 74 74 print, ' (using bining2)...' 75 75 bining2, sig.data-1000., data_s, sobwlmax.data, sig_bowl, depth_bin, thick_bin, f_bin, bowl_bin, SIGMA = z_sig, DEPTH_T = gdept, DEPTH_W = gdepw, E3T = e3t, E3W = e3w, TMASK = tmask 76 ENDELSE 77 ENDELSE 76 ENDELSE 77 ENDELSE 78 78 79 79 ; output : depth_bin = depth of isopycnal surfaces (3D array) … … 84 84 ; print, ' Density domain / intervals : ', sig_min, sig_max, sig_del, n_sig 85 85 86 IF sig_surf EQ 0. THEN BEGIN 86 IF sig_surf EQ 0. THEN BEGIN 87 87 ; vertical section (pltz) 88 88 89 CASE pfildi.name OF 89 CASE pfildi.name OF 90 90 '@@vodeptht': nfild = depth_bin(*, *, 0:n_sig-1) 91 91 '@@vosigthi': nfild = thick_bin(*, *, 0:n_sig-1) … … 97 97 ; nfild = (thick_bin*e12t3)(*, *, 0:n_sig-1) 98 98 99 END 99 END 100 100 ELSE: nfild = f_bin(*, *, 0:n_sig-1) 101 ENDCASE 101 ENDCASE 102 102 103 ENDIF ELSE BEGIN 103 ENDIF ELSE BEGIN 104 104 ; horizontal projection on sig_surf (plt) example : votemper@s25 105 105 ; find index of sig_surf in z_sig … … 107 107 index = index[n_elements(index)-1] 108 108 109 CASE pfildi.name OF 109 CASE pfildi.name OF 110 110 '@@vodeptht': nfild = depth_bin(*, *, index) 111 111 '@@vosigthi': nfild = thick_bin(*, *, index) 112 '@@vosigvol': BEGIN 112 '@@vosigvol': BEGIN 113 113 nfild = vol_bin 114 114 final_dim = 1 … … 116 116 ; e12t3 = reform((reform(e12t(premierx:dernierx, premiery:derniery), nx*ny))#replicate(1,n_sig +2), nx, ny, n_sig+2) 117 117 ; nfild = ((thick_bin*e12t3)(*, *, index)) 118 END 118 END 119 119 ELSE: nfild = f_bin(*, *, index) 120 ENDCASE 120 ENDCASE 121 121 122 ENDELSE 122 ENDELSE 123 123 124 IF final_dim eq 3 THEN BEGIN 124 IF final_dim eq 3 THEN BEGIN 125 125 indx = where(finite(nfild, /NAN)) 126 126 nfild(indx) = -1.e20 … … 129 129 nfild(indx) = !VALUES.F_NAN 130 130 ENDIF ELSE BEGIN 131 132 ENDELSE 131 132 ENDELSE 133 133 134 134 pfild2 = {name: pfildi.name, data: nfild, legend: pfildi.legend, units: pfildi.units, origin: pfildi.origin, dim: final_dim, bowl: bowl_bin} … … 136 136 137 137 138 END 138 END -
trunk/tools/density_binning/density_bin_IDL_gm/bining2.pro
r165 r168 310 310 print, ' Computing spiciness...' 311 311 FOR i = 0, (size(x1_bin))[3]-1 DO BEGIN 312 x1_bin(*,*,i) = x1_bin(*,*,i) - mean(x1_bin(*,*,i),/N aN)312 x1_bin(*,*,i) = x1_bin(*,*,i) - mean(x1_bin(*,*,i),/NAN) 313 313 ENDFOR 314 314 ENDIF … … 317 317 IF 0 THEN BEGIN 318 318 print, ' Removing domain mean...' 319 x1_bin(*,*,*) = x1_bin(*,*,*) - mean(x1_bin(*,*,*),/N aN)319 x1_bin(*,*,*) = x1_bin(*,*,*) - mean(x1_bin(*,*,*),/NAN) 320 320 ENDIF 321 321 -
trunk/tools/density_binning/density_bin_IDL_gm/eos.pro
r165 r168 2 2 ; 3 3 ; computes rho (in situ volumic mass) 4 ;5 ; @categories6 ; calculation7 ;8 ; @examples9 ; tableau=eos(t,s,sigma)10 ;11 ; @param T {in}{required}12 ; temperature13 ;14 ; @param S {in}{required}15 ; salinity16 ;17 ; @param SIGMA {in}{required}18 ; reference level (real number belonging to [0,5])19 ; for instance, sigma=3. means that rho will be referenced to 3000m20 ;21 ; @uses22 ; common.pro23 4 ; 24 5 ; REFERENCE: … … 42 23 ; 43 24 ; Jackett, D.R., and T.J. McDougall. J. Atmos. Ocean. Tech., 1994 25 ; 26 ; @categories 27 ; calculation 28 ; 29 ; @examples 30 ; tableau=eos(t,s,sigma) 31 ; 32 ; @param T {in}{required} 33 ; temperature 34 ; 35 ; @param S {in}{required} 36 ; salinity 37 ; 38 ; @param SIGMA {in}{required} 39 ; reference level (real number belonging to [0,5]) 40 ; for instance, sigma=3. means that rho will be referenced to 3000m 41 ; 42 ; @uses 43 ; common.pro 44 44 ; 45 45 ; @history -
trunk/tools/density_binning/density_bin_IDL_gm/npc.pro
r165 r168 4 4 ; instability of the water column. 5 5 ; 6 ; Method : 7 ; ------- 8 ; The algorithm used converges in a maximium of jpk iterations. 9 ; instabilities are treated when the vertical density gradient 10 ; is less than 1.e-5. 6 ; Method : 7 ; ------- 8 ; The algorithm used converges in a maximium of jpk iterations. 9 ; instabilities are treated when the vertical density gradient 10 ; is less than 1.e-5. 11 ; 12 ; References : 13 ; ----------- 14 ; Madec et al., 1991, JPO, 21, 9, 1349-1371. 11 15 ; 12 16 ; @param S3D {in} … … 16 20 ; adjusted potential density field 17 21 ; 18 ; References :19 ; -----------20 ; Madec et al., 1991, JPO, 21, 9, 1349-1371.21 ;22 22 ; @history 23 23 ; original : 90-09 (G. Madec) -
trunk/tools/lma/slec.pro
r165 r168 14 14 if strlowcase(name) EQ 'vn' then name = 'AM_win1r' 15 15 ;------------------------------------------------------------ 16 return, read_data(name,debut,fin, PARENT =parent, BOITE=boite, _EXTRA=extra)16 return, read_data(name,debut,fin, PARENT=parent, BOITE=boite, _EXTRA=extra) 17 17 ; 18 18 end -
trunk/tools/transfo/grads_read.pro
r165 r168 12 12 FUNCTION grads_read, file_name, var_name $ 13 13 , NCDF_DB=ncdf_db $ 14 , TIME_1=time_1 $15 , TIME_2=time_2 $16 , ALL_DATA=all_data $17 , NO_KEY_SHIFT=no_key_shift $14 , TIME_1=time_1 $ 15 , TIME_2=time_2 $ 16 , ALL_DATA=all_data $ 17 , NO_KEY_SHIFT=no_key_shift $ 18 18 , LEVEL=level 19 19 ;
Note: See TracChangeset
for help on using the changeset viewer.