1 | ;;;;;*************************************** FOLDER |
---|
2 | folder = '/home/aslmd/POLAR/POLAR_APPERE_highres/' |
---|
3 | coord2d = 'false' ;; for non-regular projections ;;CHANGER windowx and windowy |
---|
4 | filename = folder + 'wrfout_d01_2024-03-04_06:00:00_zabg' |
---|
5 | ini_utc = 6 ;; cf. name of file |
---|
6 | freq = 1 ;; cf. 1 output per ... hour |
---|
7 | save_ps = 'polar_hfx' |
---|
8 | |
---|
9 | ;;;;;*************************************** LVL & FLD & TIME |
---|
10 | nlevel = 0 |
---|
11 | use_lt = -3 ;12 ;14 ;99 ;12 ;; cf. what user wants (99 pour tous, negatif pour indice) |
---|
12 | field1 = 'HFX' ;; comment to trace horizontal velocity |
---|
13 | ;field2 = 'XLAT' ;; contour |
---|
14 | no3d = 'true' |
---|
15 | ;overvector_x = 0 ;; comment out to get rid of vectors |
---|
16 | ;overvector_y = 0 ;; comment out to get rid of vectors |
---|
17 | |
---|
18 | ;;;;;*************************************** TWEAK VAR |
---|
19 | what_I_plot = - what_I_plot |
---|
20 | print, max(what_I_plot), min(what_I_plot) |
---|
21 | |
---|
22 | ;;;;;*************************************** PLOT TITLES |
---|
23 | title_user = 'Horizontal wind (m s!U-1!N) 10m AGL' |
---|
24 | title_user = 'Horizontal wind vectors 20m AGL' |
---|
25 | ;title_user = 'Horizontal wind (m s!U-1!N) 20km AMR' |
---|
26 | ;title_user = 'Surface temperature (K)' |
---|
27 | title_user = 'Downward sensible heat flux at the surface (W m!U-2!N)' |
---|
28 | subtitle_user = 'LMD_MM' |
---|
29 | ;subtitle_user = subtitle_user + ' / LT = '+string(use_lt,'(I0)')+'h' |
---|
30 | ;subtitle_user = subtitle_user + ' / UTC!D0!N = 06:00am' ;; pour les series |
---|
31 | subtitle_user = subtitle_user + ' / Ls = 61!Uo!N' |
---|
32 | subtitle_user = subtitle_user + ' / dx = 10km [S]' |
---|
33 | |
---|
34 | ;;;;;*************************************** COLOR TABLES |
---|
35 | ;flag_cb = 'false' |
---|
36 | poscb = 0.68 ;0.80 |
---|
37 | format = '(I0)' |
---|
38 | ;format = '(F4.1)' |
---|
39 | ;colors = 128 |
---|
40 | colors = 32 |
---|
41 | pal = 0 ;; GOOD: 4, 18, 22, 16, 37, 33, 39, 6, 11, 19, 0 |
---|
42 | pal=33 |
---|
43 | |
---|
44 | ;;;;;*************************************** FILL LIMITS |
---|
45 | minfield_init = -5. |
---|
46 | maxfield_init = 15. |
---|
47 | |
---|
48 | ;;;;;*************************************** LIMIT TRICKS |
---|
49 | ;;;;;********************* must always follow FILL LIMITS |
---|
50 | missing_value=1.e30 |
---|
51 | lim_max = maxfield_init & w=where((what_I_plot ge lim_max) and (what_I_plot le 1e9)) & if (w[0] ne -1) then what_I_plot[w]=lim_max |
---|
52 | lim_min = minfield_init & w=where(what_I_plot le lim_min) & if (w[0] ne -1) then what_I_plot[w]=lim_min |
---|
53 | ;lim_blank = 2. & w=where(abs(what_I_plot) le lim_blank) & if (w[0] ne -1) then what_I_plot[w]=missing_value |
---|
54 | |
---|
55 | ;;;;;*************************************** WINDS |
---|
56 | windex = 20. ;; DEF: 20. |
---|
57 | ;windex = 20. ;; DEF: 20. |
---|
58 | ;stride = 1. ;; DEF: 5. |
---|
59 | ;stride = 2. ;; DEF: 5. |
---|
60 | stride = 3. ;; DEF: 5. |
---|
61 | ;stride = 1. |
---|
62 | stride=3. |
---|
63 | |
---|
64 | ;;;;;*************************************** CONTOUR |
---|
65 | overcontour = overcontour/1000. |
---|
66 | ;lev = 50. + 50.*findgen(20) |
---|
67 | ;lev = -10. + 0.2*findgen(20) |
---|
68 | ;lev = -10. + 2.*findgen(20) |
---|
69 | ;lev = -10. + 1.*findgen(40) |
---|
70 | lev = -10. + 0.5*findgen(50) |
---|
71 | |
---|
72 | ;;;;;*************************************** AXIS |
---|
73 | ;isotropic = 'true' ;; DEF: 'true' |
---|
74 | intervalx = 10.0 |
---|
75 | intervaly = intervalx |
---|
76 | title_axis = ['x grid point', 'y grid point'] |
---|
77 | |
---|
78 | ;;;;;*************************************** MAP LIMITS |
---|
79 | windowx = [50,190] |
---|
80 | windowy = [40,160] |
---|
81 | windowx = [60,180] |
---|
82 | ;windowx = [060,110] |
---|
83 | ;windowy = [100,150] |
---|
84 | ;windowx = [090,120] |
---|
85 | ;windowy = [050,080] |
---|
86 | |
---|
87 | ;;;;;***************************************;;;;; |
---|
88 | ;;;;;***************************************;;;;; |
---|
89 | ;;;;;***************************************;;;;; |
---|
90 | ;;;;;***************************************;;;;; |
---|
91 | |
---|
92 | |
---|
93 | ;;;;;*************************************** SETTING TIME (do not modify) |
---|
94 | utc_to_lt = mean(windowx) / 15. ;; cf. longitude -- LT = UTC + utc_to_lt |
---|
95 | use_utc = use_lt - utc_to_lt |
---|
96 | zentime = floor(((24 + use_utc - ini_utc) MOD 24)/freq) ;; TRUE IDL SUBSCRIPT... ajouter un modulo... |
---|
97 | if (use_lt ne 99) then ntime = zentime else ntime = 99 ;; ou commenter pour avoir tous les pas de temps |
---|
98 | if (use_lt lt 0) then ntime = -use_lt |
---|
99 | |
---|
100 | ;;;;;***************************************;;;;; |
---|
101 | ;;;;;***************************************;;;;; |
---|
102 | ;;;;;***************************************;;;;; |
---|
103 | ;;;;;***************************************;;;;; |
---|
104 | |
---|
105 | |
---|
106 | ;;; |
---|
107 | ;;; VERTICAL SECTION LIMITS |
---|
108 | ;;; |
---|
109 | ;minalt=-5. ;; grepSEC |
---|
110 | ;maxalt=40. ;; grepSEC |
---|
111 | ;minspace=0.0 ;; grepSEC |
---|
112 | ;maxspace=35.0 ;; grepSEC |
---|
113 | |
---|
114 | ;;; |
---|
115 | ;;; METRIC UNITS FOR VERTICAL SECTION |
---|
116 | ;;; |
---|
117 | ;factor=10. ;; grepSEC |
---|
118 | ;space=space*60. & spacekm='true' ;; grepSEC |
---|
119 | ;minspace=minspace*60./factor ;; grepSEC |
---|
120 | ;maxspace=maxspace*60./factor ;; grepSEC |
---|
121 | ;intervalx=round(intervalx*60./factor) ;; grepSEC |
---|
122 | |
---|
123 | |
---|
124 | ;;; |
---|
125 | ;;; TRICKS |
---|
126 | ;;; |
---|
127 | |
---|
128 | ;; pour tracer juste les vecteurs sur un fond uni ou vide |
---|
129 | ;pal=0 ;; 1/4 grepMAP |
---|
130 | ;what_I_plot(*,*)=what_I_plot(*,*)*0.+0.2 ;; 2/4 grepMAP |
---|
131 | ;what_I_plot(0,0)=0. ;; 3/4 grepMAP |
---|
132 | ;flag_cb='false' ;; 4/4 grepMAP |
---|
133 | |
---|
134 | ;;; truc pour tracer juste les contours et une zone grisee de topo |
---|
135 | ;pal=0 ;; 1/9 grepALL |
---|
136 | ;w=where(abs(what_I_plot) lt missing_value) ;; 2/9 grepALL |
---|
137 | ;what_I_plot[w]=0. ;; 3/9 grepALL |
---|
138 | ;w=where(abs(what_I_plot) gt missing_value) ;; 4/9 grepALL |
---|
139 | ;what_I_plot[w]=0.75 ;; 5/9 grepALL |
---|
140 | ;w=where(what_I_plot eq 0.) ;; 6/9 grepALL |
---|
141 | ;what_I_plot[w]=missing_value ;; 7/9 grepALL |
---|
142 | ;what_I_plot(0,0)=1. & what_I_plot(1,0)=0. ;; 8/9 grepALL |
---|
143 | ;flag_cb='false' ;; 9/9 grepALL |
---|
144 | |
---|