source: palm/trunk/SCRIPTS/NCL/ncl_preferences.ncl @ 283

Last change on this file since 283 was 267, checked in by weinreis, 16 years ago

NCL scripts profiles cross_sections ncl_preference and UserGuide? modified

File size: 65.2 KB
Line 
1begin
2
3;*********************************************************
4
5script=which_script
6   
7;*********************************************************
8   
9   ;******************************************************
10   ; parameters used by CROSS_SECTIONS
11   ;******************************************************
12   
13   if (script .EQ. "cross_section")then
14   
15      ;***************************************************
16      ; REQUIRED --file_1-- INPUT FILE
17      ;
18      ; input file produced by PALM; if there is more than one file for all timesteps of a job chain,
19      ; declare path and file name without cycle number and ".nc" (first and last cycle numbers are given with the parameters 'start_f' and 'end_f');
20      ; otherwise declare path and full file name
21      ;
22      ; data type: string
23      ;
24      ; example: file_1 = "/path_to_file/file_xy_av"      if you use more than one cycle number
25      ;          file_1 = "/path_to_file/file_xy_av.4.nc" if you use one file (e.g. with cycle number 4)
26      ;
27      ; default:   "File in"
28      ;***************************************************
29      if(.not. isvar("file_1"))then
30
31
32         file_1 = "File in"
33         
34         
35      end if
36      ;***************************************************
37      ; REQUIRED if more than one file of a job chain --start_f-- START OF CYCLIC NUMBER
38      ;
39      ; if there is more than one file for all timesteps of a job chain, declare the first cyclicnumber which contains timesteps you'd like to use
40      ;
41      ; data type: integer
42      ;
43      ; example:   start_f = 3 (if first file: example_xy_av.3.nc) and 0 (if first file: example_xy_av.nc)
44      ;
45      ; default:   -1 
46      ;***************************************************
47      if (.not. isvar("start_f"))then 
48     
49         
50         start_f = -1
51         
52         
53      end if
54      ;***************************************************
55      ; REQUIRED if more than one file of a job chain --end_f-- END OF CYCLIC NUMBER
56      ;
57      ; if there is more than one file for all timesteps of a job chain, declare the last cyclicnumber which contains timesteps you'd like to use
58      ;
59      ; data type: integer
60      ;
61      ; example:   end_f = 48 (if last file: example_xy_av.48.nc) and 0 (if last file: example_xy_av.nc)
62      ;
63      ; default:   -1 
64      ;***************************************************
65      if (.not. isvar("end_f"))then 
66     
67         
68         end_f = -1
69         
70         
71      end if
72      ;***************************************************
73      ; REQUIRED --xyc--xzc--yzc-- SELECTION of XY or XZ or YZ CROSS SECTIONS
74      ;
75      ; desired section has to be set to 1; e.g.: xyc=1, xzc=0 and yzc=0 for xy-section
76      ;
77      ; data type: integer
78      ;
79      ; example: xyc = 1
80      ;          xzc = 0
81      ;          yzc = 0
82      ;
83      ; default:   0
84      ;***************************************************
85      if(.not. isvar("xyc"))then     
86       
87         xyc = 0
88       
89      end if
90      if (.not. isvar("xzc"))then
91     
92         xzc = 0
93       
94      end if
95      if (.not. isvar("yzc"))then
96     
97         yzc = 0
98                 
99      end if             
100      ;***************************************************
101      ; OPTIONAL --format_out-- OUTPUT FORMAT
102      ;
103      ; format of the output file; supported file formats: x11, pdf, ps, eps, epsi or ncgm
104      ;
105      ; data type: string
106      ;
107      ; example: format_out = "pdf"
108      ;
109      ; default:   "x11"
110      ;***************************************************
111      if(.not. isvar("format_out"))then 
112     
113     
114         format_out = "x11"
115         
116         
117      end if
118      ;***************************************************
119      ; OPTIONAL --file_out-- OUTPUT FILE
120      ;
121      ; path and name of the output file
122      ;
123      ; data type: string
124      ;
125      ; example: file_out = "/home/path_to_output/test_cs"
126      ;
127      ; default:   "~/test_cs"
128      ;***************************************************
129      if(.not. isvar("file_out"))then   
130     
131     
132         file_out = "~/test_cs"
133         
134         
135      end if     
136      ;***************************************************
137      ; OPTIONAL --no_columns-- NUMBER OF COLUMNS
138      ;
139      ; number of plots in one row
140      ;
141      ; data type: integer
142      ;
143      ; example: no_columns = 1
144      ;
145      ; default:   1
146      ;***************************************************
147      if(.not. isvar("no_columns"))then 
148     
149     
150         no_columns = 1
151         
152         
153      end if     
154      ;***************************************************
155      ; OPTIONAL --no_rows-- NUMBER OF ROWS
156      ;
157      ; number of plots in one column
158      ;
159      ; data type: integer
160      ;
161      ; example: no_rows = 2
162      ;
163      ; default:   2
164      ;***************************************************
165      if(.not. isvar("no_rows"))then     
166     
167     
168         no_rows = 2
169         
170         
171      end if     
172      ;***************************************************
173      ; OPTIONAL --sort-- TYPE OF SORTING
174      ;
175      ; sequence of plots; sorting either by time step [="time"] or by layer/height [="layer"]
176      ;
177      ; data type: string
178      ;
179      ; example: sort = "layer"
180      ;
181      ; default:   "layer"
182      ;***************************************************
183      if(.not. isvar("sort"))then       
184     
185     
186         sort = "layer"
187         
188         
189      end if     
190      ;***************************************************
191      ; OPTIONAL --var-- OUTPUT VARIABLES
192      ;
193      ; names of output variables; inidcate them with one comma before and after each variable
194      ;
195      ; data type: string
196      ;
197      ; example: var = ",u,v,w"
198      ;
199      ; default:   "all" (all available variables are plotted)
200      ;***************************************************
201      if(.not. isvar("var"))then
202     
203         
204         var = "all"
205         
206         
207      end if     
208      ;***************************************************
209      ; OPTIONAL --start_time_step-- FIRST TIME STEP
210      ;
211      ; first time step of plot; there is no need to specify a precise time value from the input file,
212      ; 'start_time_step' is rounded to the next existent time step
213      ;
214      ; data type: double; dimension: [hour]
215      ;
216      ; example:   start_time_step = 0.5
217      ;
218      ; default:   -1.d (first available time step)
219      ;***************************************************
220      if(.not. isvar("start_time_step"))then
221     
222         
223         start_time_step = -1.d
224         
225         
226      end if     
227      ;***************************************************
228      ; OPTIONAL --end_time_step-- LAST TIME STEP
229      ;
230      ; last time step of plot; there is no need to specify a precise time value from the input file,
231      ; 'end_time_step' is rounded to the next existent time step
232      ;
233      ; data type: double; dimension: [hour]
234      ;
235      ; example:   end_time_step = 2.0
236      ;
237      ; default:   -1.d (last available time step)
238      ;***************************************************
239      if(.not. isvar("end_time_step"))then       
240     
241     
242         end_time_step = -1.d
243         
244         
245      end if     
246      ;***************************************************
247      ; OPTIONAL --xs-- MINIMUM X-AXIS
248      ;
249      ; value for minimum of x-axis, selectable if there are NO preseted layers for x (as for XY or XZ 2D-DATA);
250      ; there is no need to specify a precise meter value from the input file, it is rounded to the next existent value
251      ;
252      ; data type: double; dimension: [meter]
253      ;
254      ; example: xs = 150.0
255      ;
256      ; default:   -1.d (minimum of range)
257      ;***************************************************
258      if(.not. isvar("xs"))then     
259     
260     
261         xs = -1.d
262         
263         
264      end if     
265      ;***************************************************
266      ; OPTIONAL --xe-- MAXIMUM X-AXIS
267      ;
268      ; value for maximum of x-axis, selectable if there are NO preseted layers for x (as for XY or XZ 2D-DATA);
269      ; there is no need to specify a precise meter value from the input file, it is rounded to the next existent value
270      ;
271      ; data type: double; dimension: [meter]
272      ;
273      ; example: xe = 300.0
274      ;
275      ; default:   -1.d (maximum of range)
276      ;***************************************************
277      if(.not. isvar("xe"))then     
278     
279     
280         xe = -1.d
281         
282         
283      end if     
284      ;***************************************************
285      ; OPTIONAL --ys-- MINIMUM Y-AXIS
286      ;
287      ; value for minimum of y-axis, selectable if there are NO preseted layers for y (as for XY or YZ 2D-DATA);
288      ; there is no need to specify a precise meter value from the input file, it is rounded to the next existent value
289      ;
290      ; data type: double; dimension: [meter]
291      ;
292      ; example: ys = 150.0
293      ;
294      ; default:   -1.d (minimum of range)
295      ;***************************************************
296      if(.not. isvar("ys"))then     
297     
298     
299         ys = -1.d
300         
301         
302      end if     
303      ;***************************************************
304      ; OPTIONAL --ye-- MAXIMUM Y-AXIS
305      ;
306      ; value for maximum of y-axis, selectable if there are NO preseted layers for y (as for XY or YZ 2D-DATA);
307      ; there is no need to specify a precise meter value from the input file, it is rounded to the next existent value
308      ;
309      ; data type: double; dimension: [meter]
310      ;
311      ; example: ye = 300.0
312      ;
313      ; default:   -1.d (maximum of range)
314      ;***************************************************
315      if(.not. isvar("ye"))then   
316     
317         
318         ye = -1.d
319         
320         
321      end if     
322      ;***************************************************
323      ; OPTIONAL --zs-- MINIMUM Z-AXIS
324      ;
325      ; index for minimum of z-axis, selectable if there are NO preseted layers for z (as for XZ or YZ 2D-DATA);
326      ; you cannot specify a meter value from the input file due to grid stretching 
327      ;
328      ; data type: integer
329      ;
330      ; example: zs = 0
331      ;
332      ; default:   -1 (minimum of range)
333      ;***************************************************
334      if(.not. isvar("zs"))then     
335     
336     
337         zs = -1
338         
339         
340      end if     
341      ;***************************************************
342      ; OPTIONAL --ze-- MAXIMUM Z-AXIS
343      ;
344      ; index for maximum of z-axis, selectable if there are NO preseted layers for z (as for XZ or YZ 2D-DATA);
345      ; you cannot specify a meter value from the input file due to grid stretching 
346      ;
347      ; data type: integer
348      ;
349      ; example: ze = 15
350      ;
351      ; default:   -1 (maximum of range)
352      ;***************************************************
353      if(.not. isvar("ze"))then
354     
355           
356         ze = -1
357         
358         
359      end if     
360      ;***************************************************
361      ; OPTIONAL --mode-- TYPE OF PLOT
362      ;
363      ; isoline plots [="Line"], contour plots [="Fill"] or both [="Both"] can be choosen
364      ;
365      ; data type: string
366      ;
367      ; example: mode = "Fill"
368      ;
369      ; default:   "Fill"
370      ;***************************************************
371      if(.not. isvar("mode"))then       
372     
373     
374         mode = "Fill"
375         
376         
377      end if     
378      ;***************************************************
379      ; OPTIONAL --fill_mode-- TYPE OF FILLING
380      ;
381      ; area fill [="AreaFill"], raster fill [="RasterFill"] or cell fill [="CellFill"] can be choosen
382      ;
383      ; data type: string
384      ;
385      ; example: fill_mode = "AreaFill"
386      ;
387      ; default:   "AreaFill"
388      ;***************************************************
389      if(.not. isvar("fill_mode"))then   
390     
391     
392         fill_mode = "AreaFill"
393         
394         
395      end if     
396      ;***************************************************
397      ; OPTIONAL --shape-- ASPECT RATIO
398      ;
399      ; aspect ratio of axis is kept [=1] or not[=0]
400      ;
401      ; data type: integer
402      ;
403      ; example: shape = 1
404      ;
405      ; default:   1
406      ;***************************************************
407      if(.not. isvar("shape"))then
408     
409         
410         shape = 1
411         
412         
413      end if
414      ;***************************************************
415      ; OPTIONAL --font_size-- FONT SIZE OF STRINGS
416      ;
417      ; font size can be changed to fit to the current plot
418      ;
419      ; data type: float
420      ;
421      ; example: font_size = 0.04
422      ;
423      ; default:   0.04
424      ;***************************************************
425      if(.not. isvar("font_size"))then
426     
427         
428         font_size = 0.04
429         
430         
431      end if
432      ;***************************************************
433      ; OPTIONAL --font_size_legend-- FONT SIZE OF LEGEND STRINGS
434      ;
435      ; font size of the legend can be changed to fit to the current plot
436      ;
437      ; data type: float
438      ;
439      ; example: font_size_legend = 0.02
440      ;
441      ; default:   0.02
442      ;***************************************************
443      if(.not. isvar("font_size_legend"))then
444     
445         
446         font_size_legend = 0.02
447         
448         
449      end if   
450      ;***************************************************
451      ; OPTIONAL --legend_label_stride-- REDUCTION OF THE NUMBER OF LABELS IN THE LEGEND
452      ;
453      ; if legend_label_stride is set to 1 every label is shown; if set to 2 every second,...
454      ;
455      ; data type: integer
456      ;
457      ; example: legend_label_stride = 2
458      ;
459      ; default:   2
460      ;***************************************************
461      if(.not. isvar("legend_label_reduction"))then
462     
463         
464         legend_label_stride = 2
465         
466         
467      end if
468      ;***************************************************
469      ; OPTIONAL --axes_explicit-- EXPLICIT SETTINGS OF X- AND Y-AXES ARE SWITCHED ON
470      ;
471      ; to use several parameters to set up the axes, 'axes_explicit' must be switched [=1]; if switched off [=0] units of axes are [gridpoints]
472      ;
473      ; data type: integer
474      ;
475      ; example: axes_explicit = 0
476      ;
477      ; default:   0
478      ;***************************************************
479      if(.not. isvar("axes_explicit"))then
480     
481         
482         axes_explicit = 0
483         
484         
485      end if
486      ;***************************************************
487      ; OPTIONAL if axes_explicit = 1 --major_ticks_x-- NUMBER OF MAJOR TICK MARKS AT X-AXIS
488      ;
489      ; major_ticks_x can be set to any integer, best segmentation of x-axis can be achieved, if
490      ; (number of gripdpoints in x-direction)/(major_ticks_x-1)=INTEGER, e.g. 128/8 = 16 -> major_ticks_x should be set to 9
491      ;
492      ; data type: integer
493      ;
494      ; example: major_ticks_x = 6
495      ;
496      ; default:   6
497      ;***************************************************
498      if(.not. isvar("major_ticks_x"))then
499     
500         
501         major_ticks_x = 6
502         
503         
504      end if
505      ;***************************************************
506      ; OPTIONAL if axes_explicit = 1 --major_ticks_y-- NUMBER OF MAJOR TICK MARKS AT Y-AXIS
507      ;
508      ; major_ticks_y can be set to any integer, best segmentation of y-axis can be achieved, if
509      ; (number of gripdpoints in y-direction)/(major_ticks_y-1)=INTEGER, e.g. 128/8 = 16 -> major_ticks_y should be set to 9
510      ;
511      ; data type: integer
512      ;
513      ; example: major_ticks_y = 6
514      ;
515      ; default:   6
516      ;***************************************************
517      if(.not. isvar("major_ticks_y"))then
518     
519         
520         major_ticks_y = 6
521         
522         
523      end if
524      ;***************************************************
525      ; OPTIONAL if axes_explicit = 1 --norm_x--norm_y--norm_z-- NORMALISE X-, Y- and Z-AXES
526      ;
527      ; normalising the axes with the given value; units can explicitly set; by default no normalising is used and units are [meter]
528      ;
529      ; data type: float
530      ;
531      ; default:   1.
532      ;***************************************************
533      if(.not. isvar("norm_x"))then     
534         
535         norm_x = 1.     
536         
537      end if
538      if(.not. isvar("norm_y"))then     
539         
540         norm_y = 1.     
541         
542      end if
543      if(.not. isvar("norm_z"))then     
544         
545         norm_z = 1.     
546         
547      end if
548      ;***************************************************
549      ; OPTIONAL if axes_explicit = 1 --unit_x--unit_y--unit_z-- UNITS OF X-, Y- and Z-AXES
550      ;
551      ; units of the axes can be set; by default no units are given, if norm_x, norm_y or norm_z are unequal 1., otherwise units are [meter]
552      ;
553      ; data type: string,
554      ;
555      ; example: unit_x = "m/s"
556      ;
557      ; default:   " "
558      ;***************************************************
559      if(.not. isvar("unit_x"))then     
560         
561         unit_x = " "   
562         
563      end if
564      if(.not. isvar("unit_y"))then     
565         
566         unit_y = " "   
567         
568      end if
569      if(.not. isvar("unit_z"))then     
570         
571         unit_z = " "   
572         
573      end if
574      ;***************************************************
575      ; OPTIONAL --vector-- VECTOR PLOT
576      ;
577      ; a vector plot for one defined vector is switched on [=1] or off [=0]
578      ;
579      ; data type: integer
580      ;
581      ; example: vector = 0
582      ;
583      ; default:   0
584      ;***************************************************
585      if(.not. isvar("vector"))then
586     
587         
588         vector = 0
589         
590         
591      end if     
592      ;***************************************************
593      ; REQUIRED IF vector=1 --vec1, vec2-- VECTOR FOR VECTOR PLOT
594      ;
595      ; variables for the vector, vec1 hast to be set to component 1 and vec2 to component 2;
596      ; inidcate them with one comma before and after each variable;
597      ;
598      ; data type: string
599      ;
600      ; example: vec1=",u,"
601      ;          vec2=",v,"
602      ;
603      ; default:   vec1 = "component1", vec2 = "component2"
604      ;***************************************************
605      if(.not. isvar("vec1"))then     
606         
607         vec1 = "component1"
608         
609      end if
610      if (.not. isvar("vec2"))then
611     
612         vec2 = "component2"     
613         
614      end if     
615      ;***************************************************
616      ; OPTIONAL --plotvec-- VARIABLE FOR EXTRA VECTOR PLOT
617      ;
618      ; the vector plot can be combined with other plots of variables; if this is desired inidcate the variables,
619      ; where a vector plot shall overlay; inidcate them with one comma before and after each variable
620      ;
621      ; data type: string
622      ;
623      ; example: plotvec = ",u,w,"
624      ;
625      ; default:   "plotvec" (no combining, the vector plot is created seperately)
626      ;***************************************************
627      if(.not. isvar("plotvec"))then
628     
629         
630         plotvec = "plotvec"
631         
632         
633      end if     
634      ;***************************************************
635      ; OPTIONAL --ref_mag-- REFERENCE VECTOR
636      ;
637      ; length of the reference vector in a vector plot
638      ;
639      ; data type: float
640      ;
641      ; example: ref_mag = 0.05
642      ;
643      ; default:   0.05
644      ;***************************************************
645      if(.not. isvar("ref_mag"))then
646     
647         
648         ref_mag = 0.05
649         
650         
651      end if             
652      ;***************************************************
653
654   end if
655
656   ;******************************************************
657   ; parameters used by PROFILES
658   ;******************************************************
659   
660   if (script .EQ. "profiles")then
661
662      ;***************************************************
663      ; REQUIRED --file_1-- 1ST INPUT FILE
664      ;
665      ; 1st input file produced by PALM; if there is more than one file for all timesteps of a job chain,
666      ; declare path and file name without cycle number and ".nc" (first and last cycle numbers are given with the parameters 'start_f' and 'end_f');
667      ; otherwise declare path and full file name
668      ;
669      ; data type: string
670      ;
671      ; example: file_1 = "/path_to_file/file_pr"      if you use more than one cycle number
672      ;          file_1 = "/path_to_file/file_pr.4.nc" if you use one file (e.g. with cycle number 4)
673      ;
674      ; default:   "File in"
675      ;***************************************************
676      if(.not. isvar("file_1"))then
677
678
679         file_1 = "File in"
680         
681         
682      end if
683      ;***************************************************
684      ; REQUIRED --start_f_1-- START OF CYCLIC NUMBER OF THE 1ST INPUT FILE
685      ;
686      ; if there is more than one file for all timesteps of a job chain, declare the first cyclicnumber which contains timesteps you'd like to use
687      ;
688      ; data type: integer
689      ;
690      ; example:   3 (if first file: example_pr.3.nc) and 0 (if first file: example_pr.nc)
691      ;
692      ; default:   -1 
693      ;***************************************************
694      if (.not. isvar("start_f_1"))then 
695     
696         
697         start_f_1 = -1
698         
699         
700      end if
701      ;***************************************************
702      ; REQUIRED --end_f_1-- END OF CYCLIC NUMBER OF THE 1ST INPUT FILE
703      ;
704      ; if there is more than one file for all timesteps of a job chain, declare the last cyclicnumber which contains timesteps you'd like to use
705      ;
706      ; data type: integer
707      ;
708      ; example:   48 (if last file: example_pr.48.nc) and 0 (if last file: example_pr.nc)
709      ;
710      ; default:   -1 
711      ;***************************************************
712      if (.not. isvar("end_f_1"))then 
713     
714         
715         end_f_1 = -1
716         
717         
718      end if
719      ;***************************************************
720      ; OPTIONAL --format_out-- OUTPUT FORMAT
721      ;
722      ; supported file formats: x11, pdf, ps, eps, epsi or ncgm
723      ;
724      ; data type: string
725      ;
726      ; default:   "x11"
727      ;***************************************************
728      if (.not. isvar("format_out"))then         
729     
730     
731         format_out = "x11"
732         
733         
734      end if     
735      ;***************************************************
736      ; OPTIONAL --file_out-- OUTPUT FILE
737      ;
738      ; declare path and name of the output file
739      ;
740      ; data type: string
741      ;
742      ; default:   "~/test_pr"
743      ;***************************************************
744      if (.not. isvar("file_out"))then 
745     
746       
747         file_out = "~/test_pr"
748         
749         
750      end if     
751      ;***************************************************
752      ; OPTIONAL --no_columns-- NUMBER OF COLUMNS
753      ;
754      ; number of plots in one row
755      ;
756      ; data type: integer
757      ;
758      ; default:   1
759      ;***************************************************
760      if (.not. isvar("no_columns"))then         
761     
762     
763         no_columns = 1
764         
765         
766      end if     
767      ;***************************************************
768      ; OPTIONAL --no_rows-- NUMBER OF ROWS
769      ;
770      ; number of plots in one column
771      ;
772      ; data type: integer
773      ;
774      ; default:   2
775      ;***************************************************
776      if (.not. isvar("no_rows"))then   
777     
778       
779         no_rows = 2
780         
781         
782      end if     
783      ;***************************************************
784      ; OPTIONAL --var-- OUTPUT VARIABLES
785      ;
786      ; names of output variables; inidcate them with one comma before and after each variable
787      ;
788      ; data type: string
789      ;
790      ; example: var = ",u,v,w";
791      ;
792      ; default:   "all" (all available variables are plotted)
793      ;***************************************************
794      if (.not. isvar("var"))then
795     
796         
797         var = "all"
798         
799         
800      end if
801      ;***************************************************
802      ; OPTIONAL --legend-- SWITCHES ON A LEGEND
803      ;
804      ; a legend is switched on [=1] or off [=0]
805      ;
806      ; data type: integer
807      ;
808      ; example: legend = 1
809      ;
810      ; default:   1
811      ;***************************************************
812      if (.not. isvar("legend"))then
813     
814         
815         legend = 1
816         
817         
818      end if   
819      ;***************************************************
820      ; OPTIONAL ---no_files-- NUMBER OF INPUT FILES
821      ;
822      ; up to 6 input files of different runs can be used; all input files must contain the same variables and dimensionalties;
823      ; identical variables are merged in one plot;
824      ; combining or overlaying of any variables is not feasible;
825      ; an extra legend (besides the time step legend) is drawn where you can explicitily name the items
826      ;
827      ; data type: integer
828      ;
829      ; default:   1
830      ;***************************************************
831      if (.not. isvar("no_files"))then
832     
833         
834         no_files = 1
835         
836         
837      end if     
838      ;***************************************************
839      ; OPTIONAL --name_legend_1-- 1st LEGEND ITEM
840      ;
841      ; if no_files > 1: name of 1st item in extra legend
842      ;
843      ; data type: string
844      ;
845      ; default:   "File 1"
846      ;***************************************************
847      if (.not. isvar("name_legend_1"))then
848     
849           
850         name_legend_1 = "File 1"
851         
852         
853      end if
854      ;***************************************************
855      ; REQUIRED if no_files > 1 --file_2-- 2ND INPUT FILE
856      ;
857      ; 2nd input file produced by PALM; if there is more than one file for all timesteps of a job chain,
858      ; declare path and file name without cycle number and ".nc" (first and last cycle numbers are given with the parameters 'start_f' and 'end_f');
859      ; otherwise declare path and full file name
860      ;
861      ; data type: string
862      ;
863      ; example: file_2 = "/path_to_file/file_pr"      if you use more than one cycle number
864      ;          file_2 = "/path_to_file/file_pr.4.nc" if you use one file (e.g. with cycle number 4)
865      ;
866      ; default:   "File in"
867      ;***************************************************
868      if(.not. isvar("file_2"))then
869
870
871         file_2 = "File in"
872         
873         
874      end if
875      ;***************************************************
876      ; REQUIRED --start_f_2-- START OF CYCLIC NUMBER OF THE 2ND INPUT FILE
877      ;
878      ; if there is more than one file for all timesteps of a job chain, declare the first cyclicnumber which contains timesteps you'd like to use
879      ;
880      ; data type: integer
881      ;
882      ; example:   3 (if first file: example_ts.3.nc)
883      ;
884      ; default:   -1 
885      ;***************************************************
886      if (.not. isvar("start_f_2"))then 
887     
888         
889         start_f_2 = -1
890         
891         
892      end if
893      ;***************************************************
894      ; REQUIRED --end_f_2-- END OF CYCLIC NUMBER OF THE 2ND INPUT FILE
895      ;
896      ; if there is more than one file for all timesteps of a job chain, declare the last cyclicnumber which contains timesteps you'd like to use
897      ;
898      ; data type: integer
899      ;
900      ; example:   48 (if last file: example_ts.48.nc)
901      ;
902      ; default:   -1 
903      ;***************************************************
904      if (.not. isvar("end_f_2"))then 
905     
906         
907         end_f_2 = -1
908         
909         
910      end if             
911      ;***************************************************
912      ; OPTIONAL --name_legend_2-- 2nd LEGEND ITEM
913      ;
914      ; if no_files > 1: name of 2nd item in extra legend
915      ;
916      ; data type: string
917      ;
918      ; default:   "File 2"
919      ;***************************************************
920      if (.not. isvar("name_legend_2"))then   
921     
922         
923         name_legend_2 = "File 2"
924         
925         
926      end if
927      ;***************************************************
928      ; REQUIRED if no_files > 2 --file_3-- 3RD INPUT FILE
929      ;
930      ; 3rd input file produced by PALM; if there is more than one file for all timesteps of a job chain,
931      ; declare path and file name without cycle number and ".nc" (first and last cycle numbers are given with the parameters 'start_f' and 'end_f');
932      ; otherwise declare path and full file name
933      ;
934      ; data type: string
935      ;
936      ; example: file_3 = "/path_to_file/file_pr"      if you use more than one cycle number
937      ;          file_3 = "/path_to_file/file_pr.4.nc" if you use one file (e.g. with cycle number 4)
938      ;
939      ; default:   "File in"
940      ;***************************************************
941      if(.not. isvar("file_3"))then
942
943
944         file_3 = "File in"
945         
946         
947      end if
948      ;***************************************************
949      ; REQUIRED --start_f_3-- START OF CYCLIC NUMBER OF THE 3RD INPUT FILE
950      ;
951      ; if there is more than one file for all timesteps of a job chain, declare the first cyclicnumber which contains timesteps you'd like to use
952      ;
953      ; data type: integer
954      ;
955      ; example:   3 (if first file: example_ts.3.nc)
956      ;
957      ; default:   -1 
958      ;***************************************************
959      if (.not. isvar("start_f_3"))then 
960     
961         
962         start_f_3 = -1
963         
964         
965      end if
966      ;***************************************************
967      ; REQUIRED --end_f_3-- END OF CYCLIC NUMBER OF THE 3RD INPUT FILE
968      ;
969      ; if there is more than one file for all timesteps of a job chain, declare the last cyclicnumber which contains timesteps you'd like to use
970      ;
971      ; data type: integer
972      ;
973      ; example:   48 (if last file: example_ts.48.nc)
974      ;
975      ; default:   -1 
976      ;***************************************************
977      if (.not. isvar("end_f_3"))then 
978     
979         
980         end_f_3 = -1
981         
982         
983      end if   
984      ;***************************************************
985      ; OPTIONAL --name_legend_3-- 3rd LEGEND ITEM
986      ;
987      ; if no_files > 2: name of 3rd item in extra legend
988      ;
989      ; data type: string
990      ;
991      ; default:   "File 3"
992      ;***************************************************
993      if (.not. isvar("name_legend_3"))then
994     
995           
996         name_legend_3 = "File 3"
997         
998         
999      end if
1000      ;***************************************************
1001      ; REQUIRED if no_files > 3 --file_4-- 4TH INPUT FILE
1002      ;
1003      ; 4th input file produced by PALM; if there is more than one file for all timesteps of a job chain,
1004      ; declare path and file name without cycle number and ".nc" (first and last cycle numbers are given with the parameters 'start_f' and 'end_f');
1005      ; otherwise declare path and full file name
1006      ;
1007      ; data type: string
1008      ;
1009      ; example: file_4 = "/path_to_file/file_pr"      if you use more than one cycle number
1010      ;          file_4 = "/path_to_file/file_pr.4.nc" if you use one file (e.g. with cycle number 4)
1011      ;
1012      ; default:   "File in"
1013      ;***************************************************
1014      if(.not. isvar("file_4"))then
1015
1016
1017         file_4 = "File in"
1018         
1019         
1020      end if
1021      ;***************************************************
1022      ; REQUIRED --start_f_4-- START OF CYCLIC NUMBER OF THE 4TH INPUT FILE
1023      ;
1024      ; if there is more than one file for all timesteps of a job chain, declare the first cyclicnumber which contains timesteps you'd like to use
1025      ;
1026      ; data type: integer
1027      ;
1028      ; example:   3 (if first file: example_ts.3.nc)
1029      ;
1030      ; default:   -1 
1031      ;***************************************************
1032      if (.not. isvar("start_f_4"))then 
1033     
1034         
1035         start_f_4 = -1
1036         
1037         
1038      end if
1039      ;***************************************************
1040      ; REQUIRED --end_f_4-- END OF CYCLIC NUMBER OF THE 4TH INPUT FILE
1041      ;
1042      ; if there is more than one file for all timesteps of a job chain, declare the last cyclicnumber which contains timesteps you'd like to use
1043      ;
1044      ; data type: integer
1045      ;
1046      ; example:   48 (if last file: example_ts.48.nc)
1047      ;
1048      ; default:   -1 
1049      ;***************************************************
1050      if (.not. isvar("end_f_4"))then 
1051     
1052         
1053         end_f_4 = -1
1054         
1055         
1056      end if 
1057      ;***************************************************
1058      ; OPTIONAL --name_legend_4-- 4th LEGEND ITEM
1059      ;
1060      ; if no_files > 3: name of 4th item in extra legend
1061      ;
1062      ; data type: string
1063      ;
1064      ; default:   "File 4"
1065      ;***************************************************
1066      if (.not. isvar("name_legend_4"))then   
1067     
1068       
1069         name_legend_4 = "File 4"
1070         
1071         
1072      end if
1073      ;***************************************************
1074      ; REQUIRED if no_files > 4 --file_5-- 5TH INPUT FILE
1075      ;
1076      ; 5th input file produced by PALM; if there is more than one file for all timesteps of a job chain,
1077      ; declare path and file name without cycle number and ".nc" (first and last cycle numbers are given with the parameters 'start_f' and 'end_f');
1078      ; otherwise declare path and full file name
1079      ;
1080      ; data type: string
1081      ;
1082      ; example: file_5 = "/path_to_file/file_pr"      if you use more than one cycle number
1083      ;          file_5 = "/path_to_file/file_pr.4.nc" if you use one file (e.g. with cycle number 4)
1084      ;
1085      ; default:   "File in"
1086      ;***************************************************
1087      if(.not. isvar("file_5"))then
1088
1089
1090         file_5 = "File in"
1091         
1092         
1093      end if
1094      ;***************************************************
1095      ; REQUIRED --start_f_5-- START OF CYCLIC NUMBER OF THE 5TH INPUT FILE
1096      ;
1097      ; if there is more than one file for all timesteps of a job chain, declare the first cyclicnumber which contains timesteps you'd like to use
1098      ;
1099      ; data type: integer
1100      ;
1101      ; example:   3 (if first file: example_ts.3.nc)
1102      ;
1103      ; default:   -1 
1104      ;***************************************************
1105      if (.not. isvar("start_f_5"))then 
1106     
1107         
1108         start_f_5 = -1
1109         
1110         
1111      end if
1112      ;***************************************************
1113      ; REQUIRED --end_f_5-- END OF CYCLIC NUMBER OF THE 5TH INPUT FILE
1114      ;
1115      ; if there is more than one file for all timesteps of a job chain, declare the last cyclicnumber which contains timesteps you'd like to use
1116      ;
1117      ; data type: integer
1118      ;
1119      ; example:   48 (if last file: example_ts.48.nc)
1120      ;
1121      ; default:   -1 
1122      ;***************************************************
1123      if (.not. isvar("end_f_5"))then 
1124     
1125         
1126         end_f_5 = -1
1127         
1128         
1129      end if     
1130      ;***************************************************
1131      ; OPTIONAL --name_legend_5-- 5th LEGEND ITEM
1132      ;
1133      ; if no_files > 4: name of 5th item in extra legend
1134      ;
1135      ; data type: string
1136      ;
1137      ; default:   "File 5"
1138      ;***************************************************
1139      if (.not. isvar("name_legend_5"))then
1140     
1141           
1142         name_legend_5 = "File 5"
1143         
1144         
1145      end if
1146      ;***************************************************
1147      ; REQUIRED if no_files > 5 --file_6-- 6TH INPUT FILE
1148      ;
1149      ; 6th input file produced by PALM; if there is more than one file for all timesteps of a job chain,
1150      ; declare path and file name without cycle number and ".nc" (first and last cycle numbers are given with the parameters 'start_f' and 'end_f');
1151      ; otherwise declare path and full file name
1152      ;
1153      ; data type: string
1154      ;
1155      ; example: file_6 = "/path_to_file/file_pr"      if you use more than one cycle number
1156      ;          file_6 = "/path_to_file/file_pr.4.nc" if you use one file (e.g. with cycle number 4)
1157      ;
1158      ; default:   "File in"
1159      ;***************************************************
1160      if(.not. isvar("file_6"))then
1161
1162
1163         file_6 = "File in"
1164         
1165         
1166      end if
1167      ;***************************************************
1168      ; REQUIRED --start_f_6-- START OF CYCLIC NUMBER OF THE 6TH INPUT FILE
1169      ;
1170      ; if there is more than one file for all timesteps of a job chain, declare the first cyclicnumber which contains timesteps you'd like to use
1171      ;
1172      ; data type: integer
1173      ;
1174      ; example:   3 (if first file: example_ts.3.nc)
1175      ;
1176      ; default:   -1 
1177      ;***************************************************
1178      if (.not. isvar("start_f_6"))then 
1179     
1180         
1181         start_f_6 = -1
1182         
1183         
1184      end if
1185      ;***************************************************
1186      ; REQUIRED --end_f_6-- END OF CYCLIC NUMBER OF THE 6TH INPUT FILE
1187      ;
1188      ; if there is more than one file for all timesteps of a job chain, declare the last cyclicnumber which contains timesteps you'd like to use
1189      ;
1190      ; data type: integer
1191      ;
1192      ; example:   48 (if last file: example_ts.48.nc)
1193      ;
1194      ; default:   -1 
1195      ;***************************************************
1196      if (.not. isvar("end_f_6"))then 
1197     
1198         
1199         end_f_6 = -1
1200         
1201         
1202      end if                     
1203      ;***************************************************
1204      ; OPTIONAL --name_legend_6-- 6TH LEGEND ITEM
1205      ;
1206      ; if no_files > 5: name of 6th item in extra legend
1207      ;
1208      ; data type: string
1209      ;
1210      ; default:   "File 6"
1211      ;***************************************************
1212      if (.not. isvar("name_legend_6"))then
1213     
1214           
1215         name_legend_6 = "File 6"
1216         
1217         
1218      end if             
1219      ;***************************************************
1220      ; OPTIONAL --start_time_step-- FIRST TIME STEP
1221      ;
1222      ; first time step of plot; there is no need to specify a precise time value from the input file,
1223      ; 'start_time_step' is rounded to the next existent time step
1224      ;
1225      ; data type: double; dimension: [hour]
1226      ;
1227      ; example:   start_time_step = 0.5
1228      ;
1229      ; default:   -1.d (first available time step)
1230      ;***************************************************
1231      if (.not. isvar("start_time_step"))then   
1232     
1233       
1234         start_time_step = -1.d
1235         
1236         
1237      end if     
1238      ;***************************************************
1239      ; OPTIONAL --end_time_step-- LAST TIME STEP
1240      ;
1241      ; last time step of plot; there is no need to specify a precise time value from the input file,
1242      ; 'end_time_step' is rounded to the next existent time step
1243      ;
1244      ; data type: double; dimension: [hour]
1245      ;
1246      ; example:   end_time_step = 2.0
1247      ;
1248      ; default:   -1.d (last available time step)
1249      ;***************************************************
1250      if (.not. isvar("end_time_step"))then
1251     
1252         
1253         end_time_step = -1.d   
1254         
1255         
1256      end if
1257      ;***************************************************
1258      ; OPTIONAL --start_x-- STARTVALUE IN X-DIRECTION 
1259      ;
1260      ; if 3D data is used for profiles you can choose a startvalue in x-direction for horizontal averaging
1261      ;
1262      ; data type: integer; dimension [grippoint]
1263      ;
1264      ; example: start_x = 0
1265      ;
1266      ; default:   0 (minimum of range)
1267      ;***************************************************
1268      if (.not. isvar("start_x"))then   
1269     
1270         
1271         start_x = 0
1272         
1273         
1274      end if
1275      ;***************************************************
1276      ; OPTIONAL --end_x-- ENDVALUE IN X-DIRECTION 
1277      ;
1278      ; if 3D data is used for profiles you can choose an endvalue in x-direction for horizontal averaging
1279      ;
1280      ; data type: integer; dimension [grippoint]
1281      ;
1282      ; example: end_x = 200
1283      ;
1284      ; default:   -1 (maximum of range excluding ghostpoint)
1285      ;***************************************************
1286      if (.not. isvar("end_x"))then   
1287     
1288         
1289         end_x = -1
1290         
1291         
1292      end if
1293      ;***************************************************
1294      ; OPTIONAL --start_y-- STARTVALUE IN Y-DIRECTION 
1295      ;
1296      ; if 3D data is used for profiles you can choose a startvalue in y-direction for horizontal averaging
1297      ;
1298      ; data type: integer; dimension [grippoint]
1299      ;
1300      ; example: start_y = 0
1301      ;
1302      ; default:   0 (minimum of range)
1303      ;***************************************************
1304      if (.not. isvar("start_y"))then   
1305     
1306         
1307         start_y = 0
1308         
1309         
1310      end if
1311      ;***************************************************
1312      ; OPTIONAL --end_y-- ENDVALUE IN Y-DIRECTION 
1313      ;
1314      ; if 3D data is used for profiles you can choose an endvalue in y-direction for horizontal averaging
1315      ;
1316      ; data type: integer; dimension [grippoint]
1317      ;
1318      ; example: end_y = 200
1319      ;
1320      ; default:   -1 (maximum of range excluding ghostpoint)
1321      ;***************************************************
1322      if (.not. isvar("end_y"))then   
1323     
1324         
1325         end_y = -1
1326         
1327         
1328      end if     
1329      ;***************************************************
1330      ; OPTIONAL --xs-- MINIMUM X-AXIS
1331      ;
1332      ; value for minimum of x-axis
1333      ;
1334      ; data type: float; dimension of variable
1335      ;
1336      ; example: xs = 300. (e.g. if var=",pt")
1337      ;
1338      ; default:   -1. (minimum of range)
1339      ;***************************************************
1340      if (.not. isvar("xs"))then   
1341     
1342         
1343         xs = -1.
1344         
1345         
1346      end if     
1347      ;***************************************************
1348      ; OPTIONAL --xe-- MAXIMUM X-AXIS
1349      ;
1350      ; value for maximum of x-axis
1351      ;
1352      ; data type: float; dimension of variable
1353      ;
1354      ; example: xe = 302. (e.g. if var=",pt")
1355      ;
1356      ; default:   -1. (maximum of range)
1357      ;***************************************************
1358      if (.not. isvar("xe"))then 
1359     
1360         
1361         xe = -1.
1362         
1363         
1364      end if     
1365      ;***************************************************
1366      ; OPTIONAL --min_z-- MINIMUM Z-AXIS
1367      ;
1368      ; value for minimum height of z-axis
1369      ;
1370      ; data type: double; dimension: [meter]
1371      ;
1372      ; example: min_z = 0.0
1373      ;
1374      ; default:   -1.d (related to the minimum of z-axis in input file)
1375      ;***************************************************
1376      if (.not. isvar("min_z"))then   
1377     
1378         
1379         min_z = -1.d
1380         
1381         
1382      end if     
1383      ;***************************************************
1384      ; OPTIONAL --max_z-- MAXIMUM Z-AXIS
1385      ;
1386      ; value for maximum height of z-axis
1387      ;
1388      ; data type: double; dimension: [meter]
1389      ;
1390      ; example: max_z = 1000.0
1391      ;
1392      ; default:   -1.d (related to the maximum of z-axis in input file)
1393      ;***************************************************
1394      if (.not. isvar("max_z"))then   
1395     
1396         
1397         max_z = -1.d
1398         
1399         
1400      end if     
1401      ;***************************************************
1402      ; OPTIONAL --log_z-- LOGARITHMIC SCALE OF Z-AXIS
1403      ;
1404      ; logarithmic scale for z-axis is switched on [=1] or off [=0]
1405      ;
1406      ; data type: integer
1407      ;
1408      ; example: log_z = 0
1409      ;
1410      ; default:   0
1411      ;***************************************************
1412      if (.not. isvar("log_z"))then
1413     
1414           
1415         log_z = 0
1416         
1417         
1418      end if     
1419      ;***************************************************
1420      ; OPTIONAL --norm_z-- NORMALISING Z-AXIS
1421      ;
1422      ; value for normalising the z-axis
1423      ;
1424      ; data type: float
1425      ;
1426      ; example: norm_z = 1.
1427      ;
1428      ; default:   1. (no normalising)
1429      ;***************************************************
1430      if (.not. isvar("norm_z"))then
1431     
1432           
1433         norm_z = 1.
1434         
1435         
1436      end if     
1437      ;***************************************************
1438      ; OPTIONAL --over-- OVERLAYING
1439      ;
1440      ; predefined overlaying of standard variables is switched on [=1] or off [=0];
1441      ; this feature cannot be used with statistic regions
1442      ;
1443      ; data type: integer
1444      ;
1445      ; example: over = 0
1446      ;
1447      ; default:   0
1448      ;***************************************************
1449      if (.not. isvar("over"))then
1450     
1451         
1452         over = 0
1453         
1454         
1455      end if     
1456      ;***************************************************
1457      ; OPTIONAL --combine-- COMBINING
1458      ;
1459      ; combining of two or three individual variables is possible and switched on [=1] or off[=0]
1460      ;
1461      ; data type: integer
1462      ;
1463      ; example: combine = 0
1464      ;
1465      ; default:   0
1466      ;***************************************************
1467      if (.not. isvar("combine"))then 
1468     
1469         
1470         combine = 0
1471         
1472         
1473      end if     
1474      ;***************************************************
1475      ; REQUIRED IF combine=1 --number_comb-- NUMBER FOR COMBINING
1476      ;
1477      ; number of variables for combining; 2 or 3 is valid
1478      ;
1479      ; data type: integer
1480      ;
1481      ; example: number_comb = 2
1482      ;
1483      ; default:   -1
1484      ;***************************************************
1485      if (.not. isvar("number_comb"))then
1486     
1487           
1488         number_comb = -1
1489         
1490         
1491      end if     
1492      ;***************************************************
1493      ; REQUIRED IF combine=1 --c_var-- VARIABLES FOR COMBINING
1494      ;
1495      ; names of variables; inidcate them with one comma before and after each variable;
1496      ;
1497      ; data type: string
1498      ;
1499      ; example: c_var = ",u,v,"
1500      ;
1501      ; default:   "c_variables"
1502      ;***************************************************
1503      if (.not. isvar("c_var"))then
1504     
1505           
1506         c_var = "c_variables"
1507         
1508         
1509      end if     
1510      ;***************************************************
1511      ; OPTIONAL --black-- BLACK OR COLOR LINES
1512      ;
1513      ; colored [=0] or black and white [=1] plots
1514      ;
1515      ; data type: integer
1516      ;
1517      ; example: black = 0
1518      ;
1519      ; default:   0
1520      ;***************************************************
1521      if (.not. isvar("black"))then
1522     
1523           
1524         black = 0
1525         
1526         
1527      end if     
1528      ;***************************************************
1529      ; OPTIONAL --dash-- DASHED LINES
1530      ;
1531      ; use of different line patterns [=1] or continous lines [=0] for different time steps
1532      ;
1533      ; data type: integer
1534      ;
1535      ; example: dash = 0
1536      ;
1537      ; default:   0
1538      ;***************************************************
1539      if (.not. isvar("dash"))then     
1540     
1541       
1542         dash = 0     
1543         
1544         
1545      end if
1546      ;***************************************************
1547      ; OPTIONAL --font_size-- FONT SIZE OF STRINGS
1548      ;
1549      ; font size can be changed to fit to the current plot
1550      ;
1551      ; data type: float
1552      ;
1553      ; example: font_size = 0.02
1554      ;
1555      ; default:   0.02
1556      ;***************************************************
1557      if(.not. isvar("font_size"))then
1558     
1559         
1560         font_size = 0.02
1561         
1562         
1563      end if
1564      ;***************************************************
1565      ; OPTIONAL --font_size_legend-- FONT SIZE OF LEGEND STRINGS
1566      ;
1567      ; font size of the legend can be changed to fit to the current plot
1568      ;
1569      ; data type: float
1570      ;
1571      ; example: font_size_legend = 0.2
1572      ;
1573      ; default:   0.2
1574      ;***************************************************
1575      if(.not. isvar("font_size_legend"))then
1576     
1577         
1578         font_size_legend = 0.2
1579         
1580         
1581      end if     
1582      ;***************************************************
1583       
1584   end if
1585
1586   ;******************************************************
1587   ; parameters used by SPECTRA
1588   ;******************************************************
1589   
1590   if (script .EQ. "spectra") then
1591
1592      ;***************************************************
1593      ; REQUIRED --file_1-- INPUT FILE
1594      ;
1595      ; input file produced by PALM; if there is more than one file for all timesteps of a job chain,
1596      ; declare path and file name without cycle number and ".nc" (first and last cycle numbers are given with the parameters 'start_f' and 'end_f');
1597      ; otherwise declare path and full file name
1598      ;
1599      ; data type: string
1600      ;
1601      ; example: file_1 = "/path_to_file/file_sp"      if you use more than one cycle number
1602      ;          file_1 = "/path_to_file/file_sp.4.nc" if you use one file (e.g. with cycle number 4)
1603      ;
1604      ; default:   "File in"
1605      ;***************************************************
1606      if(.not. isvar("file_1"))then
1607
1608
1609         file_1 = "File in"
1610         
1611         
1612      end if
1613      ;***************************************************
1614      ; REQUIRED if more than one file of a job chain --start_f-- START OF CYCLIC NUMBER
1615      ;
1616      ; if there is more than one file for all timesteps of a job chain, declare the first cyclicnumber which contains timesteps you'd like to use
1617      ;
1618      ; data type: integer
1619      ;
1620      ; example:   start_f = 3 (if first file: example_sp.3.nc) and 0 (if first file: example_sp.nc)
1621      ;
1622      ; default:   -1 
1623      ;***************************************************
1624      if (.not. isvar("start_f"))then 
1625     
1626         
1627         start_f = -1
1628         
1629         
1630      end if
1631      ;***************************************************
1632      ; REQUIRED if more than one file of a job chain --end_f-- END OF CYCLIC NUMBER
1633      ;
1634      ; if there is more than one file for all timesteps of a job chain, declare the last cyclicnumber which contains timesteps you'd like to use
1635      ;
1636      ; data type: integer
1637      ;
1638      ; example:   end_f = 48 (if last file: example_sp.48.nc) and 0 (if last file: example_sp.nc)
1639      ;
1640      ; default:   -1 
1641      ;***************************************************
1642      if (.not. isvar("end_f"))then 
1643     
1644         
1645         end_f = -1
1646         
1647         
1648      end if
1649      ;***************************************************
1650      ; OPTIONAL --format_out-- OUTPUT FORMAT
1651      ;
1652      ; format of the output file; supported file formats: x11, pdf, ps, eps, epsi or ncgm
1653      ;
1654      ; data type: string
1655      ;
1656      ; example: format_out = "pdf"
1657      ;
1658      ; default:   "x11"
1659      ;***************************************************
1660      if (.not. isvar("format_out"))then       
1661     
1662       
1663         format_out = "x11"
1664         
1665         
1666      end if     
1667      ;***************************************************
1668      ; OPTIONAL --file_out-- OUTPUT FILE
1669      ;
1670      ; path and name of the output file
1671      ;
1672      ; data type: string
1673      ;
1674      ; example: file_out = "/home/path_to_output/test_sp"
1675      ;
1676      ; default:   "~/test_sp"
1677      ;***************************************************
1678      if (.not. isvar("file_out"))then 
1679     
1680       
1681         file_out = "~/test_sp"
1682         
1683         
1684      end if     
1685      ;***************************************************
1686      ; OPTIONAL --no_columns-- NUMBER OF COLUMNS
1687      ;
1688      ; number of plots in one row
1689      ;
1690      ; data type: integer
1691      ;
1692      ; example: no_columns = 1
1693      ;
1694      ; default:   1
1695      ;***************************************************
1696      if (.not. isvar("no_columns"))then         
1697     
1698     
1699         no_columns = 1
1700         
1701         
1702      end if     
1703      ;***************************************************
1704      ; OPTIONAL --no_rows-- NUMBER OF ROWS
1705      ;
1706      ; number of plots in one column
1707      ;
1708      ; data type: integer
1709      ;
1710      ; example: no_rows = 2
1711      ;
1712      ; default:   2
1713      ;***************************************************
1714      if (.not. isvar("no_rows"))then
1715     
1716         
1717         no_rows = 2
1718         
1719         
1720      end if     
1721      ;***************************************************
1722      ; OPTIONAL --var-- OUTPUT VARIABLES
1723      ;
1724      ; names of output variables; inidcate them with one comma before and after each variable
1725      ;
1726      ; data type: string
1727      ;
1728      ; example: var = ",u,v,w"
1729      ;
1730      ; default:   "all" (all available variables are plotted)
1731      ;***************************************************
1732      if (.not. isvar("var"))then
1733     
1734         
1735         var = "all"
1736         
1737         
1738      end if     
1739      ;***************************************************
1740      ; OPTIONAL --height_level-- HEIGHT LEVELS
1741      ;
1742      ; defines if all levels or selected levels are output; a 1D array with up to 100 elements
1743      ; from 0 to 99 must be indicated
1744      ;
1745      ; data type: integer array
1746      ;
1747      ; example: height_level=(/0,3,7/)
1748      ;
1749      ; default:   (/-1/) (all levels are output)
1750      ;***************************************************
1751      if (.not. isvar("height_level"))then
1752     
1753         
1754         height_level = (/-1/)
1755         
1756         
1757      end if     
1758      ;***************************************************
1759      ; OPTIONAL --sort-- TYPE OF SORTING
1760      ;
1761      ; defines if all heights [="height"] or all timesteps [="time"] are merged in one plot
1762      ;
1763      ; data type: string
1764      ;
1765      ; example: sort = "height"
1766      ;
1767      ; default:   "height"
1768      ;***************************************************
1769      if (.not. isvar("sort"))then
1770     
1771         
1772         sort = "height"
1773         
1774         
1775      end if     
1776      ;***************************************************
1777      ; OPTIONAL --start_time_step-- FIRST TIME STEP
1778      ;
1779      ; first time step of plot; there is no need to specify a precise time value from the input file,
1780      ; 'start_time_step' is rounded to the next existent time step
1781      ;
1782      ; data type: double; dimension: [hour]
1783      ;
1784      ; example:   start_time_step = 0.5
1785      ;
1786      ; default:   -1.d (first available time step)
1787      ;***************************************************
1788      if (.not. isvar("start_time_step"))then
1789     
1790         
1791         start_time_step = -1.d
1792         
1793         
1794      end if     
1795      ;***************************************************
1796      ; OPTIONAL --end_time_step-- LAST TIME STEP
1797      ;
1798      ; last time step of plot; there is no need to specify a precise time value from the input file,
1799      ; 'end_time_step' is rounded to the next existent time step
1800      ;
1801      ; data type: double; dimension: [hour]
1802      ;
1803      ; example:   end_time_step = 2.0
1804      ;
1805      ; default:   -1.d (last available time step)
1806      ;***************************************************
1807      if (.not. isvar("end_time_step"))then
1808     
1809         
1810         end_time_step = -1.d
1811         
1812         
1813      end if   
1814      ;***************************************************
1815      ; OPTIONAL --black-- BLACK OR COLOR LINES
1816      ;
1817      ; colored [=0] or black and white [=1] plots
1818      ;
1819      ; data type: integer
1820      ;
1821      ; example: black = 0
1822      ;
1823      ; default:   0
1824      ;***************************************************
1825      if (.not. isvar("black"))then
1826     
1827           
1828         black = 0
1829         
1830         
1831      end if     
1832      ;***************************************************
1833      ; OPTIONAL --dash-- DASHED LINES
1834      ;
1835      ; use of different line patterns [=1] or continous lines [=0]
1836      ;
1837      ; data type: integer
1838      ;
1839      ; example: dash = 0
1840      ;
1841      ; default:   0
1842      ;***************************************************
1843      if (.not. isvar("dash"))then   
1844     
1845         
1846         dash = 0
1847         
1848         
1849      end if
1850      ;***************************************************
1851      ; OPTIONAL --log_x-- LOGARITHMIC SCALE X-AXIS
1852      ;
1853      ; logarithmic scale for x-axis is switched on [=1] or off [=0]
1854      ;
1855      ; data type: integer
1856      ;
1857      ; example: log_x = 1
1858      ;
1859      ; default:   1
1860      ;***************************************************
1861      if (.not. isvar("log_x"))then   
1862     
1863         
1864         log_x = 1
1865         
1866         
1867      end if     
1868      ;***************************************************
1869      ; OPTIONAL --log_y-- LOGARITHMIC SCALE Y-AXIS
1870      ;
1871      ; logarithmic scale for y-axis is switched on [=1] or off [=0]
1872      ;
1873      ; data type: integer
1874      ;
1875      ; example: log_y = 1
1876      ;
1877      ; default:   1
1878      ;***************************************************
1879      if (.not. isvar("log_y"))then   
1880     
1881         
1882         log_y = 1
1883         
1884         
1885      end if     
1886      ;***************************************************
1887      ; OPTIONAL --norm_x-- NORMALISING X-AXIS
1888      ;
1889      ; value for normalising the x-axis
1890      ;
1891      ; data type: float
1892      ;
1893      ; example: norm_x = 1
1894      ;
1895      ; default:   1. (no normalising)
1896      ;***************************************************
1897      if (.not. isvar("norm_x"))then   
1898     
1899         
1900         norm_x = 1.
1901         
1902         
1903      end if
1904      ;***************************************************
1905      ; OPTIONAL --norm_height-- NORMALISING X-AXIS WITH HEIGHT
1906      ;
1907      ; normalising the x-axis with the height of each spectra is switched on [=1] or off [=0]
1908      ;
1909      ; data type: integer
1910      ;
1911      ; example: norm_height = 0
1912      ;
1913      ; default:   0 (no normalising)
1914      ;***************************************************
1915      if (.not. isvar("norm_height"))then   
1916     
1917         
1918         norm_height = 0
1919         
1920         
1921      end if     
1922      ;***************************************************
1923      ; OPTIONAL --norm_y-- NORMALISE Y-AXIS
1924      ;
1925      ; value for normalising the y-axis
1926      ;
1927      ; data type: float
1928      ;
1929      ; example: norm_y = 1.
1930      ;
1931      ; default:   1. (no normalising)
1932      ;***************************************************
1933      if (.not. isvar("norm_y"))then     
1934     
1935       
1936         norm_y = 1.
1937         
1938         
1939      end if
1940      ;***************************************************
1941      ; OPTIONAL --unit_x--unit_y-- UNITS OF X-, Y-AXES
1942      ;
1943      ; unit of the x-axis can be set if norm_x is unequal 1, otherwise the unit is [1/m]; by default no unit is set for the y-axis
1944      ;
1945      ; data type: string,
1946      ;
1947      ; example: unit_x = "100/m"
1948      ;
1949      ; default:   " "
1950      ;***************************************************
1951      if(.not. isvar("unit_x"))then     
1952         
1953         unit_x = " "   
1954         
1955      end if
1956      if(.not. isvar("unit_y"))then     
1957         
1958         unit_y = " "   
1959         
1960      end if
1961      ;***************************************************
1962      ; OPTIONAL --font_size-- FONT SIZE OF STRINGS
1963      ;
1964      ; font size can be changed to fit to the current plot
1965      ;
1966      ; data type: float
1967      ;
1968      ; example: font_size = 0.02
1969      ;
1970      ; default:   0.02
1971      ;***************************************************
1972      if(.not. isvar("font_size"))then
1973     
1974         
1975         font_size = 0.02
1976         
1977         
1978      end if
1979      ;***************************************************
1980      ; OPTIONAL --font_size_legend-- FONT SIZE OF LEGEND STRINGS
1981      ;
1982      ; font size of the legend can be changed to fit to the current plot
1983      ;
1984      ; data type: float
1985      ;
1986      ; example: font_size_legend = 0.2
1987      ;
1988      ; default:   0.2
1989      ;***************************************************
1990      if(.not. isvar("font_size_legend"))then
1991     
1992         
1993         font_size_legend = 0.2
1994         
1995         
1996      end if     
1997      ;***************************************************
1998     
1999   end if
2000
2001   ;******************************************************
2002   ; parameters used by TIMESERIES
2003   ;******************************************************
2004
2005   if (script .EQ. "timeseries") then
2006
2007      ;***************************************************
2008      ; REQUIRED --file_1-- INPUT FILE
2009      ;
2010      ; input file produced by PALM; if there is more than one file for all timesteps of a job chain,
2011      ; declare path and file name without cycle number and ".nc" (first and last cycle numbers are given with the parameters 'start_f' and 'end_f');
2012      ; otherwise declare path and full file name
2013      ;
2014      ; data type: string
2015      ;
2016      ; example: file_1 = "/path_to_file/file_ts"      if you use more than one cycle number
2017      ;          file_1 = "/path_to_file/file_ts.4.nc" if you use one file (e.g. with cycle number 4)
2018      ;
2019      ; default:   "File in"
2020      ;***************************************************
2021      if(.not. isvar("file_1"))then
2022
2023
2024         file_1 = "File in"
2025         
2026         
2027      end if
2028      ;***************************************************
2029      ; REQUIRED if more than one file of a job chain --start_f-- START OF CYCLIC NUMBER
2030      ;
2031      ; if there is more than one file for all timesteps of a job chain, declare the first cyclicnumber which contains timesteps you'd like to use
2032      ;
2033      ; data type: integer
2034      ;
2035      ; example:   start_f = 3 (if first file: example_ts.3.nc) and 0 (if first file: example_ts.nc)
2036      ;
2037      ; default:   -1 
2038      ;***************************************************
2039      if (.not. isvar("start_f"))then 
2040     
2041         
2042         start_f = -1
2043         
2044         
2045      end if
2046      ;***************************************************
2047      ; REQUIRED if more than one file of a job chain --end_f-- END OF CYCLIC NUMBER
2048      ;
2049      ; if there is more than one file for all timesteps of a job chain, declare the last cyclicnumber which contains timesteps you'd like to use
2050      ;
2051      ; data type: integer
2052      ;
2053      ; example:   end_f = 48 (if last file: example_ts.48.nc) and 0 (if last file: example_ts.nc)
2054      ;
2055      ; default:   -1 
2056      ;***************************************************
2057      if (.not. isvar("end_f"))then 
2058     
2059         
2060         end_f = -1
2061         
2062         
2063      end if
2064      ;***************************************************
2065      ; OPTIONAL --format_out-- OUTPUT FORMAT
2066      ;
2067      ; format of the output file; supported file formats: x11, pdf, ps, eps, epsi or ncgm
2068      ;
2069      ; data type: string
2070      ;
2071      ; example: format_out = "pdf"
2072      ;
2073      ; default:   "x11"
2074      ;***************************************************
2075      if (.not. isvar("format_out"))then         
2076     
2077     
2078         format_out = "x11"
2079         
2080         
2081      end if     
2082      ;***************************************************
2083      ; OPTIONAL --file_out-- OUTPUT FILE
2084      ;
2085      ; path and name of the output file
2086      ;
2087      ; data type: string
2088      ;
2089      ; example: file_out = "/home/path_to_output/test_ts"
2090      ;
2091      ; default:   "~/test_ts"
2092      ;***************************************************
2093      if (.not. isvar("file_out"))then 
2094     
2095       
2096         file_out = "~/test_ts"
2097         
2098         
2099      end if     
2100      ;***************************************************
2101      ; OPTIONAL --no_columns-- NUMBER OF COLUMNS
2102      ;
2103      ; number of plots in one row
2104      ;
2105      ; data type: integer
2106      ;
2107      ; example: no_columns = 1
2108      ;
2109      ; default:   1
2110      ;***************************************************
2111      if (.not. isvar("no_columns"))then       
2112     
2113       
2114         no_columns = 1
2115         
2116         
2117      end if     
2118      ;***************************************************
2119      ; OPTIONAL --no_rows-- NUMBER OF ROWS
2120      ;
2121      ; number of plots in one column
2122      ;
2123      ; data type: integer
2124      ;
2125      ; example: no_rows = 2
2126      ;
2127      ; default:   2
2128      ;***************************************************
2129      if (.not. isvar("no_rows"))then
2130     
2131         
2132         no_rows = 1
2133         
2134         
2135      end if     
2136      ;***************************************************
2137      ; OPTIONAL --var-- OUTPUT VARIABLES
2138      ;
2139      ; names of output variables; inidcate them with one comma before and after each variable
2140      ;
2141      ; data type: string
2142      ;
2143      ; example: var = ",u,v,w"
2144      ;
2145      ; default:   "all" (all available variables are plotted)
2146      ;***************************************************
2147      if (.not. isvar("var"))then
2148     
2149         
2150         var = "all"
2151         
2152         
2153      end if     
2154      ;***************************************************
2155      ; OPTIONAL --start_time_step-- FIRST TIME STEP
2156      ;
2157      ; first time step of plot; there is no need to specify a precise time value from the input file,
2158      ; 'start_time_step' is rounded to the next existent time step
2159      ;
2160      ; data type: double; dimension: [hour]
2161      ;
2162      ; example:   start_time_step = 0.5
2163      ;
2164      ; default:   -1.d (first available time step)
2165      ;***************************************************
2166      if (.not. isvar("start_time_step"))then
2167     
2168         
2169         start_time_step = -1.d
2170         
2171         
2172      end if     
2173      ;***************************************************
2174      ; OPTIONAL --end_time_step-- LAST TIME STEP
2175      ;
2176      ; last time step of plot; there is no need to specify a precise time value from the input file,
2177      ; 'end_time_step' is rounded to the next existent time step
2178      ;
2179      ; data type: double; dimension: [hour]
2180      ;
2181      ; example:   end_time_step = 2.0
2182      ;
2183      ; default:   -1.d (last available time step)
2184      ;***************************************************
2185      if (.not. isvar("end_time_step"))then
2186     
2187         
2188         end_time_step = -1.d
2189         
2190
2191      end if     
2192      ;***************************************************
2193      ; OPTIONAL --over-- OVERLAYING
2194      ;
2195      ; predefined overlaying of standard variables are switched on [=1] or off [=0];
2196      ; this feature cannot be used with statistic regions
2197      ;
2198      ; data type: integer
2199      ;
2200      ; example: over = 0
2201      ;
2202      ; default:   0
2203      ;***************************************************
2204      if (.not. isvar("over"))then
2205     
2206         
2207         over = 0
2208         
2209         
2210      end if
2211      ;***************************************************
2212      ; OPTIONAL --font_size-- FONT SIZE OF STRINGS
2213      ;
2214      ; font size can be changed to fit to the current plot
2215      ;
2216      ; data type: float
2217      ;
2218      ; example: font_size = 0.07
2219      ;
2220      ; default:   0.07
2221      ;***************************************************
2222      if(.not. isvar("font_size"))then
2223     
2224         
2225         font_size = 0.07
2226         
2227         
2228      end if
2229      ;***************************************************
2230      ; OPTIONAL --norm_t-- NORMALISING X-AXIS OF TIMESERIES PLOTS (T-AXIS)
2231      ;
2232      ; normalising the x-axis with the given value; the unit can explicitly set; by default no normalising and unit is set to [s]
2233      ;
2234      ; data type: float
2235      ;
2236      ; example: norm_t = 3600
2237      ;
2238      ; default:   1.
2239      ;***************************************************
2240      if(.not. isvar("normt"))then
2241     
2242         
2243         norm_t = 1.
2244         
2245         
2246      end if
2247      ;***************************************************
2248      ; OPTIONAL --unit_t-- UNIT OF X-AXIS OF TIMESERIES PLOTS (T-AXIS)
2249      ;
2250      ; unit of the x-axis can be set; by default unit is set to [s]
2251      ;
2252      ; data type: string
2253      ;
2254      ; example: unit_t = "h"
2255      ;
2256      ; default:   " "
2257      ;***************************************************
2258      if(.not. isvar("unitt"))then
2259     
2260         
2261         unit_t = " "
2262         
2263         
2264      end if
2265      ;***************************************************
2266
2267   end if
2268         
2269;*********************************************************       
2270   
2271end
Note: See TracBrowser for help on using the repository browser.