source: palm/trunk/SCRIPTS/NCL/.ncl.config.default @ 827

Last change on this file since 827 was 782, checked in by heinze, 12 years ago

Bugfix concerning setting of font size in legends.

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