/[MITgcm]/MITgcm_contrib/llc_hires/llc_4320/lookat.m
ViewVC logotype

Contents of /MITgcm_contrib/llc_hires/llc_4320/lookat.m

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.2 - (show annotations) (download)
Fri Jun 27 13:56:32 2014 UTC (11 years, 1 month ago) by dimitri
Branch: MAIN
Changes since 1.1: +16 -0 lines
Preparing for another 70K attempt.
MITgcm code is 2014/02/13 vintage.
between checkpoint64t and checkpoint64u

1 nx=4320;
2 pn='/nobackupp8/dmenemen/llc/llc_4320/MITgcm/run/';
3
4 %%%%%%%%%%%%%%
5 % SST of San Pedro basin
6 ts=279360;
7 fn=[pn 'Theta.' myint2str(ts,10) '.data'];
8 f=11;
9 ix=3800:4100;
10 iy=3100:3300;
11 T=quikread_llc(fn,nx,1,'real*4',f);
12 clf reset
13 mypcolor(rot90(T(ix,iy),2)')
14 colormap(cmap)
15 caxis([13.7 16.8])
16 thincolorbar
17 set(gca,'xtick',[],'ytick',[])
18 print -dpsc LA
19
20 %%%%%%%%%%%%
21 % compare SST off Peru on November 1, 2011
22 cx=[15 20];
23 n1=1080;
24 n2=2160;
25 n3=4320;
26 ix1=380:590;
27 iy1=300:450;
28 ix2=760:1180;
29 iy2=600:900;
30 ix3=1520:2360;
31 iy3=1200:1800;
32 dte='1-Nov-2011';
33 ts1=dte2ts(dte,90,2010,1,1);
34 ts2=dte2ts(dte,45,2011,1,17);
35 ts3=dte2ts(dte,25,2011,9,10);
36 p1='/nobackupp8/dmenemen/llc/llc_1080/MITgcm/run_2011/';
37 p2='/nobackupp5/dmenemen/llc_2160/MITgcm/run_day49_on/';
38 p3='/nobackupp8/dmenemen/llc/llc_4320/MITgcm/run/';
39 f1=[p1 'T.' myint2str(ts1,10) '.data'];
40 f2=[p2 'Theta.' myint2str(ts2,10) '.data'];
41 f3=[p3 'Theta.' myint2str(ts3,10) '.data'];
42 f=12;
43 T1=quikread_llc(f1,n1,1,'real*4',f);
44 T2=quikread_llc(f2,n2,1,'real*4',f);
45 T3=quikread_llc(f3,n3,1,'real*4',f);
46 clf reset
47 subplot(131)
48 mypcolor(rot90(T1(ix1,iy1),2)');
49 caxis(cx)
50 thincolorbar('horiz')
51 title('1/12 deg')
52 subplot(132)
53 mypcolor(rot90(T2(ix2,iy2),2)');
54 caxis(cx)
55 thincolorbar('horiz')
56 title('1/24 deg')
57 subplot(133)
58 mypcolor(rot90(T3(ix3,iy3),2)');
59 caxis(cx)
60 thincolorbar('horiz')
61 title('1/48 deg')
62
63 print -dpsc -r600 SST_Peru
64
65 %%%%%%%%%%%%
66 nm='SIarea';
67 n=1;
68 clf reset
69 colormap(cmap)
70 for ts=10368:144:138384;
71 mydisp(ts)
72 fn=[pn nm '.' myint2str(ts,10) '.data'];
73 if exist(fn)
74 fld=[rot90(quikread_llc(fn,nx,1,'real*4',7),1) quikread_llc(fn,nx,1,'real*4',8)];
75 clf
76 quikpcolor(rot90(fld(:,1:5000),1)');
77 caxis([0.9 1])
78 title('llc4320 fractional sea ice concentration')
79 thincolorbar
80 text(3400,760,ts2dte(ts,25,2011,9,10),'color','w')
81 eval(['print -dtiff -r135 ' pn 'figs/' nm myint2str(n,4)]);
82 n=n+1;
83 end
84 end
85
86 %%%%%%%%%%%%
87 nm='SIarea';
88 n=1;
89 clf reset
90 colormap(cmap)
91 ts=3600;
92 fn=[pn nm '.' myint2str(ts,10) '.data'];
93 fld=[rot90(quikread_llc(fn,nx,1,'real*4',7),1) quikread_llc(fn,nx,1,'real*4',8)];
94 clf
95 quikpcolor(rot90(fld(:,1:5000),1)')
96 caxis([0.9 1])
97 title('llc4320, sea ice concentration (m)')
98 thincolorbar
99
100 %%%%%%%%%%%%
101 p1='/nobackupp8/dmenemen/llc/llc_1080/MITgcm/run_2011/';
102 n1=1080;
103 t1=599040;
104 f1=[p1 'T.' myint2str(t1,10) '.data'];
105 fld1=zeros(n1*4,n1);
106 fld1(1:n1,:)=quikread_llc(f1,n1,1,'real*4',2);
107 fld1((n1+1):(2*n1),:)=quikread_llc(f1,n1,1,'real*4',5);
108 fld1((2*n1+1):(3*n1),:)=rot90(quikread_llc(f1,n1,1,'real*4',9),2);
109 fld1((3*n1+1):(4*n1),:)=rot90(quikread_llc(f1,n1,1,'real*4',12),2);
110
111 p2='/nobackupp5/dmenemen/llc_2160/MITgcm/run_day49_73/';
112 n2=2160;
113 t2=466080;
114 f2=[p2 'Theta.' myint2str(t2,10) '.data'];
115 fld2=zeros(n2*4,n2);
116 fld2(1:n2,:)=quikread_llc(f2,n2,1,'real*4',2);
117 fld2((n2+1):(2*n2),:)=quikread_llc(f2,n2,1,'real*4',5);
118 fld2((2*n2+1):(3*n2),:)=rot90(quikread_llc(f2,n2,1,'real*4',9),2);
119 fld2((3*n2+1):(4*n2),:)=rot90(quikread_llc(f2,n2,1,'real*4',12),2);
120
121 p3='/nobackupp8/dmenemen/llc/llc_4320/MITgcm/run/';
122 n3=4320;
123 t3=26928;
124 f3=[p3 'Theta.' myint2str(t3,10) '.data'];
125 fld3=zeros(n3*4,n3);
126 fld3(1:n3,:)=quikread_llc(f3,n3,1,'real*4',2);
127 fld3((n3+1):(2*n3),:)=quikread_llc(f3,n3,1,'real*4',5);
128 fld3((2*n3+1):(3*n3),:)=rot90(quikread_llc(f3,n3,1,'real*4',9),2);
129 fld3((3*n3+1):(4*n3),:)=rot90(quikread_llc(f3,n3,1,'real*4',12),2);
130
131 cx=[0 30];
132 clf reset
133 colormap(cmap)
134 subplot(311)
135 mypcolor(fld1');
136 caxis(cx)
137 thincolorbar
138 title('llc_1080 SST, 17 September 2011')
139 subplot(312)
140 mypcolor(fld2');
141 caxis(cx)
142 thincolorbar
143 title('llc_2160 SST, 16 September 2011')
144 subplot(313)
145 mypcolor(fld3');
146 caxis(cx)
147 thincolorbar
148 title('llc_4320 SST, 17 September 2011')
149
150 print -dpsc -r600 Theta_17sep2011
151
152 %%%%%%%%%%%%
153 nx=4320;
154 p1='/nobackupp8/dmenemen/llc/llc_4320/MITgcm/run_day1/';
155 pn='/nobackupp8/dmenemen/llc/llc_4320/MITgcm/run/';
156 nm='Theta';
157 f=2; iy=1300:1900; ix=2600:3400;
158 clf reset
159 colormap(cmap)
160 ts=180;
161 fn=[p1 nm '.' myint2str(ts,10) '.data'];
162 fld=quikread_llc(fn,nx,1,'real*4',f);
163 subplot(211)
164 mypcolor(fld(ix,iy)');
165 caxis([10 20])
166 thincolorbar
167 ts=14976;
168 fn=[pn nm '.' myint2str(ts,10) '.data'];
169 fld=quikread_llc(fn,nx,1,'real*4',f);
170 subplot(212)
171 mypcolor(fld(ix,iy)');
172 caxis([10 20])
173 thincolorbar
174
175 print -dpsc -r600 Theta
176
177 %%%%%%%%%%%%
178 pn='/nobackupp8/dmenemen/llc/llc_4320/MITgcm/run/';
179 nm='Theta';
180 nx=4320;
181 clf reset
182 colormap(cmap)
183 ts=136368;
184 fn=[pn nm '.' myint2str(ts,10) '.data'];
185 fld=quikread_llc(fn,nx);
186 fld(find(~fld))=-3;
187 quikplot_llc(fld)
188 caxis([-3 31])
189 axis([0 17281 1600 15121])
190 title(['llc4320 ' ts2dte(ts,45,2011,1,17) ', Sea Surface Temperature (deg C)'])
191 thincolorbar
192 eval(['print -dpsc -r600 Theta4320_' int2str(ts)])
193
194 %%%%%%%%%%%%
195 nm='KPPhbl';
196 n=1;
197 clf reset
198 colormap(cmap)
199 for ts=92240:80:140720;
200 mydisp(ts)
201 fn=[pn nm '.' myint2str(ts,10) '.data'];
202 fld=quikread_llc(fn,nx);
203 clf
204 quikplot_llc(log10(fld))
205 caxis([0 3])
206 axis([0 8641 800 7561])
207 title('llc2160, log10(PBL)')
208 thincolorbar
209 text(1000,1000,ts2dte(ts,45,2011,1,17),'color','w')
210 eval(['print -dtiff -r135 ' pn 'figs/' nm myint2str(n,4)]);
211 n=n+1;
212 end
213
214 %%%%%%%%%%%%
215 nm='Eta';
216 n=1;
217 clf reset
218 for ts=92240:80:140720;
219 mydisp(ts)
220 fn=[pn nm '.' myint2str(ts,10) '.data'];
221 fld=quikread_llc(fn,nx);
222 clf
223 quikplot_llc(fld)
224 caxis([-1 1]*3)
225 axis([0 8641 800 7561])
226 title('llc2160, sea surface height (m)')
227 thincolorbar
228 text(1000,1000,ts2dte(ts,45,2011,1,17))
229 eval(['print -dtiff -r135 ' pn 'figs/' nm myint2str(n,4)]);
230 n=n+1;
231 end
232
233 %%%%%%%%%%%%
234 nm='Theta';
235 n=1;
236 clf reset
237 colormap(cmap)
238 ts=4464;
239 fn=[pn nm '.' myint2str(ts,10) '.data'];
240 fld=quikread_llc(fn,nx);
241 clf
242 quikplot_llc(fld)
243 caxis([-2.5 30.5])
244 axis([0 17281 1600 15121])
245 title('llc4320, sea surface temperature (deg C)')
246 thincolorbar
247 print -dpsc -r600 Theta4320_4464
248
249 %%%%%%%%%%%%
250 nm='W';
251 kx=68;
252 n=1;
253 clf reset
254 colormap(cmap)
255 for ts=92240:80:140720;
256 mydisp(ts)
257 fn=[pn nm '.' myint2str(ts,10) '.data'];
258 fld=quikread_llc(fn,nx,kx);
259 clf
260 quikplot_llc(fld*1000)
261 caxis([-1 1]*8)
262 axis([0 8641 800 7561])
263 title('llc2160, Wvel at 2 km depth (mm/s)')
264 thincolorbar
265 text(1000,1000,ts2dte(ts,45,2011,1,17),'color','k')
266 eval(['print -dtiff -r135 ' pn 'figs/' nm myint2str(n,4)]);
267 n=n+1;
268 end
269
270 %%%%%%%%%%%%
271 % W2000 in EqWPac
272 nm='W';
273 kx=68;
274 n=1;
275 clf reset
276 colormap(cmap)
277 for ts=92240:80:140720;
278 mydisp(ts)
279 fn=[pn nm '.' myint2str(ts,10) '.data'];
280 fld=quikread_llc(fn,nx,kx,'real*4',9);
281 clf
282 quikpcolor(1000*rot90(fld,2)')
283 caxis([-1 1]*5)
284 title('llc2160, Wvel at 2 km depth (mm/s)')
285 thincolorbar
286 text(620,540,ts2dte(ts,45,2011,1,17),'color','k')
287 eval(['print -dtiff -r135 ' pn 'figs/' nm 'WPac' myint2str(n,4)]);
288 n=n+1;
289 end
290
291 %%%%%%%%%%%%
292 nm='Salt';
293 n=1;
294 clf reset
295 colormap(cmap)
296 for ts=92240:80:140720;
297 mydisp(ts)
298 fn=[pn nm '.' myint2str(ts,10) '.data'];
299 fld=quikread_llc(fn,nx);
300 clf
301 quikplot_llc(fld)
302 caxis([28 38])
303 axis([0 8641 800 7561])
304 title('llc2160, sea surface salinity (g/kg)')
305 thincolorbar
306 text(1000,1000,ts2dte(ts,45,2011,1,17),'color','w')
307 eval(['print -dtiff -r135 ' pn 'figs/' nm myint2str(n,4)]);
308 n=n+1;
309 end
310
311 %%%%%%%%%%%%
312 nm='PhiBot';
313 fld1=0;
314 n=1;
315 for ts=92240:80:140720;
316 mydisp(ts)
317 fn=[pn nm '.' myint2str(ts,10) '.data'];
318 fld1=fld1+quikread_llc(fn,nx);
319 n=n+1;
320 end
321 fld1=fld1/n;
322 n=1;
323 clf reset
324 colormap(cmap)
325 for ts=92240:80:140720;
326 mydisp(ts)
327 fn=[pn nm '.' myint2str(ts,10) '.data'];
328 fld=quikread_llc(fn,nx)-fld1;
329 clf
330 quikplot_llc(fld/9.81)
331 caxis([-2 2])
332 axis([0 8641 800 7561])
333 title('llc2160, bottom pressure (m)')
334 thincolorbar
335 text(1000,1000,ts2dte(ts,45,2011,1,17))
336 eval(['print -dtiff -r135 ' pn 'figs/' nm myint2str(n,4)]);
337 n=n+1;
338 end
339
340 %%%%%%%%%%%%
341 % Eta perturbation
342 nm='Eta';
343 fld1=0;
344 fld2=0;
345 n=1;
346 for ts=92240:80:140720;
347 mydisp(ts)
348 fn=[pn nm '.' myint2str(ts,10) '.data'];
349 fld=quikread_llc(fn,nx);
350 fld1=fld1+fld;
351 fld2=fld2+fld.^2;
352 n=n+1;
353 end
354 fld1=fld1/n;
355 fld2=fld2/n;
356 writebin([pn 'EtaMean.data'],fld1);
357 writebin([pn 'EtaMeanSquare.data'],fld2);
358 clf reset
359 colormap(cmap)
360 quikplot_llc(sqrt(fld2-fld1.^2)*2*sqrt(2))
361 caxis([0 3])
362 thincolorbar
363 axis([0 8641 800 7561])
364 title('Global Eta range (m): 2*sqrt(2)*std(Eta)')
365 eval(['print -dtiff -r135 ' pn 'figs/' nm 'Range']);
366 n=1;
367 for ts=92240:80:140720;
368 mydisp(ts)
369 fn=[pn nm '.' myint2str(ts,10) '.data'];
370 fld=quikread_llc(fn,nx)-fld1;
371 clf
372 quikplot_llc(fld)
373 caxis([-1 1]*2)
374 axis([0 8641 800 7561])
375 title('llc2160, Eta perturbation (m)')
376 thincolorbar
377 text(1000,1000,ts2dte(ts,45,2011,1,17))
378 eval(['print -dtiff -r135 ' pn 'figs/' nm 'Pert' myint2str(n,4)]);
379 n=n+1;
380 end
381
382 %%%%%%%%%%%%
383 % Theta perturbation
384 nm='Theta';
385 fld1=0;
386 n=1;
387 for ts=92240:80:140720;
388 mydisp(ts)
389 fn=[pn nm '.' myint2str(ts,10) '.data'];
390 fld1=fld1+quikread_llc(fn,nx);
391 n=n+1;
392 end
393 fld1=fld1/n;
394 n=1;
395 clf reset
396 colormap(cmap)
397 for ts=92240:80:140720;
398 mydisp(ts)
399 fn=[pn nm '.' myint2str(ts,10) '.data'];
400 fld=quikread_llc(fn,nx)-fld1;
401 clf
402 quikplot_llc(fld)
403 caxis([-1 1]*1.5)
404 axis([0 8641 800 7561])
405 title('llc2160, Theta perturbation (deg C)')
406 thincolorbar
407 text(1000,1000,ts2dte(ts,45,2011,1,17))
408 eval(['print -dtiff -r135 ' pn 'figs/' nm 'Pert' myint2str(n,4)]);
409 n=n+1;
410 end
411
412 %%%%%%%%%%%%
413 % Theta 12-hour difference
414 nm='Theta';
415 n=1;
416 clf reset
417 colormap(cmap)
418 for ts=93200:80:140720;
419 mydisp(ts)
420 fn1=[pn nm '.' myint2str(ts-960,10) '.data'];
421 fn2=[pn nm '.' myint2str(ts,10) '.data'];
422 fld=quikread_llc(fn2,nx)-quikread_llc(fn1,nx);
423 clf
424 quikplot_llc(fld)
425 caxis([-1 1])
426 axis([0 8641 800 7561])
427 title('llc2160, Theta 12-hour difference (deg C)')
428 thincolorbar
429 text(1000,1000,ts2dte(ts,45,2011,1,17))
430 eval(['print -dtiff -r135 ' pn 'figs/' nm 'Diff' myint2str(n,4)]);
431 n=n+1;
432 end
433
434 %%%%%%%%%%%%
435 nm1='U'; nm2='V';
436 clf reset
437 colormap(cmap)
438 ts=140720;
439 fn1=[pn nm1 '.' myint2str(ts,10) '.data'];
440 fn2=[pn nm2 '.' myint2str(ts,10) '.data'];
441 fl1=quikread_llc(fn1,nx);
442 fl2=quikread_llc(fn2,nx);
443 fld=sqrt(fl1.^2+fl2.^2);
444 clf
445 quikplot_llc(fld)
446 caxis([0 1])
447 axis([0 8641 800 7561])
448 title('llc2160, ocean surface speed (m/s)')
449 thincolorbar
450 text(1000,1000,ts2dte(ts,45,2011,1,17),'color','w')
451 eval(['print -dpsc ' pn 'figs/HiResSpeed']);
452
453 %%%%%%%%%%%%
454 nm1='U'; nm2='V';
455 n=1;
456 clf reset
457 colormap(cmap)
458 for ts=92240:80:140720;
459 mydisp(ts)
460 fn1=[pn nm1 '.' myint2str(ts,10) '.data'];
461 fn2=[pn nm2 '.' myint2str(ts,10) '.data'];
462 fl1=quikread_llc(fn1,nx);
463 fl2=quikread_llc(fn2,nx);
464 fld=sqrt(fl1.^2+fl2.^2);
465 clf
466 quikplot_llc(fld)
467 caxis([0 1])
468 axis([0 8641 800 7561])
469 title('llc2160, ocean surface speed (m/s)')
470 thincolorbar
471 text(1000,1000,ts2dte(ts,45,2011,1,17),'color','w')
472 eval(['print -dtiff -r135 ' pn 'figs/Speed' myint2str(n,4)]);
473 n=n+1;
474 end
475
476 %%%%%%%%%%%%
477 % circum-Greenland speed
478 nm1='U'; nm2='V';
479 n=1;
480 clf reset
481 orient landscape
482 wysiwyg
483 colormap(cmap)
484 for ts=92240:80:140720;
485 mydisp(ts)
486 fn1=[pn nm1 '.' myint2str(ts,10) '.data'];
487 fn2=[pn nm2 '.' myint2str(ts,10) '.data'];
488 fl1=sqrt(quikread_llc(fn1,nx,1,'real*4',7).^2+quikread_llc(fn2,nx,1,'real*4',7).^2);
489 fl2=sqrt(quikread_llc(fn1,nx,1,'real*4',11).^2+quikread_llc(fn2,nx,1,'real*4',11).^2);
490 fl3=sqrt(quikread_llc(fn1,nx,1,'real*4',3).^2+quikread_llc(fn2,nx,1,'real*4',3).^2);
491 fld=zeros(nx*2,'single');
492 fld(1:nx,(nx+1):end)=rot90(fl1,2);
493 fld(1:nx,1:nx)=rot90(fl2,2);
494 fld((nx+1):end,(nx+1):end)=rot90(fl1,1);
495 fld((nx+1):end,1:nx)=fl3;
496 clf
497 quikpcolor(fld')
498 caxis([0 1]*.8)
499 axis([940 3080 1490 2620])
500 title('llc2160, ocean surface speed (m/s)')
501 thincolorbar
502 text(1900,2200,ts2dte(ts,45,2011,1,17),'color','w')
503 eval(['print -dtiff -r135 ' pn 'figs/GreenSpeed' myint2str(n,4)]);
504 n=n+1;
505 end
506
507 %%%%%%%%%%%%
508 % circum-Greenland speed, 15-m
509 nm1='U'; nm2='V';
510 k=9; % 14.68 m depth
511 n=1;
512 clf reset
513 orient landscape
514 wysiwyg
515 colormap(cmap)
516 for ts=92240:80:140720;
517 mydisp(ts)
518 fn1=[pn nm1 '.' myint2str(ts,10) '.data'];
519 fn2=[pn nm2 '.' myint2str(ts,10) '.data'];
520 fl1=sqrt(quikread_llc(fn1,nx,k,'real*4',7).^2+quikread_llc(fn2,nx,k,'real*4',7).^2);
521 fl2=sqrt(quikread_llc(fn1,nx,k,'real*4',11).^2+quikread_llc(fn2,nx,k,'real*4',11).^2);
522 fl3=sqrt(quikread_llc(fn1,nx,k,'real*4',3).^2+quikread_llc(fn2,nx,k,'real*4',3).^2);
523 fld=zeros(nx*2,'single');
524 fld(1:nx,(nx+1):end)=rot90(fl1,2);
525 fld(1:nx,1:nx)=rot90(fl2,2);
526 fld((nx+1):end,(nx+1):end)=rot90(fl1,1);
527 fld((nx+1):end,1:nx)=fl3;
528 clf
529 quikpcolor(fld')
530 caxis([0 1]*.8)
531 axis([940 3080 1490 2620])
532 title('llc2160, current speed at 15 m depth (m/s)')
533 thincolorbar
534 text(1900,2200,ts2dte(ts,45,2011,1,17),'color','w')
535 eval(['print -dtiff -r135 ' pn 'figs/GreenSpeed15m' myint2str(n,4)]);
536 n=n+1;
537 end
538
539 %%%%%%%%%%%%
540 nm1='oceTAUX'; nm2='oceTAUY';
541 n=1;
542 clf reset
543 colormap(cmap)
544 for ts=92240:80:140720;
545 mydisp(ts)
546 fn1=[pn nm1 '.' myint2str(ts,10) '.data'];
547 fn2=[pn nm2 '.' myint2str(ts,10) '.data'];
548 fl1=quikread_llc(fn1,nx);
549 fl2=quikread_llc(fn2,nx);
550 fld=sqrt(fl1.^2+fl2.^2);
551 clf
552 quikplot_llc(fld)
553 caxis([0 1]/2)
554 axis([0 8641 800 7561])
555 title('llc2160, ocean surface stress (Pa)')
556 thincolorbar
557 text(1000,1000,ts2dte(ts,45,2011,1,17),'color','w')
558 eval(['print -dtiff -r135 ' pn 'figs/Stress' myint2str(n,4)]);
559 n=n+1;
560 end
561
562 %%%%%%%%%%%%
563 nm='SIheff';
564 n=1;
565 clf reset
566 colormap(cmap)
567 for ts=92240:80:140720;
568 mydisp(ts)
569 fn=[pn nm '.' myint2str(ts,10) '.data'];
570 fld=quikread_llc(fn,nx,1,'real*4',7);
571 clf
572 quikpcolor(rot90(fld,2)')
573 caxis([0 10])
574 title('llc2160, effective sea ice thickness (m)')
575 thincolorbar
576 text(1500,400,ts2dte(ts,45,2011,1,17),'color','w')
577 eval(['print -dtiff -r135 ' pn 'figs/' nm myint2str(n,4)]);
578 n=n+1;
579 end
580
581 %%%%%%%%%%%%
582 ts=140704;
583 pn='/nobackupp5/dmenemen/llc_2160/MITgcm/run_crash/';
584 fn=[pn 'Theta.' myint2str(ts,10) '.data'];
585 for k=1:90
586 fld=quikread_llc(fn,nx);
587 disp([k minmax(fld)])
588 end

  ViewVC Help
Powered by ViewVC 1.1.22