source: trunk/SRC/Documentation/xmldoc/wiki/MiniNotice @ 355

Last change on this file since 355 was 355, checked in by pinsard, 16 years ago

some improvements in wiki production (hyperlinks)

File size: 22.1 KB
Line 
1= Mini Guide for Basic Commands in the XXX Program =
2[[PageOutline]]
3
4   
5   
6   
7     
8 
9== Launching XXX ==
10
11There is several ways to launch XXX which we will detail in the next sections:
12 
13{{{
14#!html
15<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
16    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span></code></strong>
17    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>/separate</code></em></code></strong>
18    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>restore = 'file.dat'</code></em></code></strong>
19    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'file.nc'</code></em></code></strong>
20    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'file.nc'</code></em>, <em class="parameter"><code>keywd1 = 
</code></em>, <em class="parameter"><code>keywd2 = 
</code></em></code></strong>
21    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'file.nc'</code></em>, <em class="parameter"><code>'initgrid'</code></em></code></strong>
22    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'file.nc'</code></em>, <em class="parameter"><code>'initgrid'</code></em>, <em class="parameter"><code>keywd1 = 
</code></em>, <em class="parameter"><code>keywd2 = 
</code></em></code></strong>
23    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'file.nc'</code></em>, <em class="parameter"><code>'initgrid'</code></em>, <em class="parameter"><code>'arg1, arg2, 
'</code></em></code></strong>
24  </pre>
25}}}
26
27=== idl&gt; xxx ===
28
29    A window will open with 3 parts to consider.
30
31Window xxx 1
32
33
34
35
36
37
38
39
40[[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0101.png)]]
41
42
43
44Data file name
45
46
47Grid initialization method
48
49
50Grid initialization parameters
51
52
53
54
55
56
57==== Data file name ====
58
59    The name of the data file. It can be typed directly in the window provided, or selected with the help of the browse button.
60 
61==== Grid initialization method ====
62
63    For visualising grilled data, you need to [wiki:FirstSteps define the grid] on which are located the data. By default, "automatic grid construction with initncdf.pro" is checked. This means that the grid will be defined by using the informations contained in the data file (through the IDL prodecure {{{initncdf}}}) without needing any other auxiliary file. If you checked "grid construction with other IDL batch or procedure", this means that you don't want to use the default {{{initncdf}}} procedure to define the grid and you will provide your own IDL procedure or the so-called IDL batch file (a file which is called by using @, see IDL documentation).
64 
65==== Grid initialization parameters ====
66
67    This third part allows you to specify the name, the argument and the keywords of the routine you want to use to initialize the grid.
68By default the name of the procedure is {{{initncdf}}}, its argument will be automatically defined so you cannot change them. If you If you checked "grid construction with other IDL batch or procedure", you have to select the name of the IDL procedure or batch file and its suitable arguments and keywords. Note that if you select an IDL batch file you cannot give any parameter or keyword.
69   
70      Window xxx 1
71     
72 
73    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0102.png)]]
74 
75     
76   
77    Once these two lines have been completed, click on let's go.
78  For example, we choose the IDL batch file "tst_initlev". Compare the result with "automatic grid construction with initncdf.pro" checked. Cf [#LaunchingXXX Launching XXX]
79      Oceania at 125 meters of depth with proper grid initialization
80
81
82  [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0103.png)]]
83
84     
85 
86=== idl&gt; xxx, /separate ===
87
88This is the same as the simple idl&gt; xxx except that once the xxx window open, you will have 2 separate windows (command and plotting window) instead of one.
89
90=== idl&gt; xxx, restore = 'file.dat' ===
91
92In that case xxx window will open directly in the same state as it was when the file "file.dat" was created. see +++++++
93=== idl&gt; xxx, 'file.nc' ===
94
95In this case, the xxx window directly open the data file 'file.nc' and build the grid automatically with the IDL procedure {{{initncdf}}}. For example:
96 
97{{{
98#!html
99<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
100    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'Levitus98_1m_01_12_Temperature_Pot_1x1.nc'</code></em></code></strong>
101  </pre>
102}}}
103
104=== idl&gt; xxx, 'file.nc', keywd1 = 
, keywd2 = 
 ===
105
106In this case, the xxx window directly open the data file 'file.nc', build the grid automatically with the IDL procedure {{{initncdf}}} and use the keywords keywd1 = 
, keywd2 = 
 in the call of {{{initncdf}}}. For example:
107 
108{{{
109#!html
110<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
111    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'Levitus98_1m_01_12_Temperature_Pot_1x1.nc'</code></em>, <em class="parameter"><code>useasmask = 'votemper'</code></em>, <em class="parameter"><code>missing_value = 31.0720</code></em></code></strong>
112  </pre>
113}}}
114
115=== idl&gt; xxx, 'file.nc', 'initgrid' ===
116
117In this case, the xxx window directly open the data file 'file.nc' and build the grid directly with the IDL procedure or batch file {{{initgrid}}}
118{{{
119#!html
120<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
121    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'Levitus98_1m_01_12_Temperature_Pot_ORCA2.nc'</code></em>, <em class="parameter"><code>'tst_initorca2'</code></em></code></strong>
122  </pre>
123}}}
124
125=== idl&gt; xxx, 'file.nc', 'initgrid', keywd1 = 
, keywd2 = 
 ===
126
127In this case, the xxx window directly open the data file 'file.nc', build the grid directly with the IDL procedure {{{initgrid}}} and use the keywords keywd1 = 
, keywd2 = 
 in the call of {{{initgrid}}}.
128
129=== idl&gt; xxx, 'file.nc', 'initgrid', 'arg1, arg2, 
' ===
130
131In this case, the xxx window directly open the data file 'file.nc', build the grid directly with the IDL procedure {{{initgrid}}} and use the string 'arg1, arg2, 
' to specify the input arguments in the call of {{{initgrid}}}.
132
133== Description of XXX window ==
134
135Window xxx 2
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151[[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0201.png)]]
152
153
154
155Plot type
156
157
158Menu
159
160
161OK
162
163
164Page layout
165
166
167Variables list
168
169
170Files list
171
172
173Command text
174
175
176Calendar
177
178
179Domdef
180
181
182Spefications
183
184
185
186
187
188
189=== Plot type list ===
190Allows specification of the type of plot desired.
191      Different plot types available
192
193 
194    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0202.png)]]
195 
196     
197   
198
199If the type plt is selected, the selection of plot type
200is made by mouse. Cf [#LaunchingXXX Launching XXX]
201
202=== The menu bar made up of 3 sub-menus ===
203
204==== File sub-menu ====
205
206      The File menu
207
208 
209    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0203.png)]]
210 
211     
212   
213 * Open: to open a new file. Same procedure as during the launch of XXX.
214The new file can be on a different grid, with different variables, with a different time base 

215
216 * New XXX: to open a second XXX window identical to the first one.
217 * Quit: to close the XXX window.
218==== Save As sub-menu ====
219
220      The Save As menu
221
222 
223    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0204.png)]]
224 
225     
226   
227 * Postscript: to save the plotting window in Postscript format
228 * Animated gif: to create an animation of the plotting window.
229The creation of an animation is only possible if none of the plots have a time axis, and if the plots are all on the same time base (calendar). On the other hand, animations of horizontal and vertical plots, with different color palettes (for those not on an X-terminal), are possible.The creation of animations has a tendency to saturate the video memory of X-terminals, crashing the entire program 

230 * Gif: to save a gif of the plotting window.
231 * IDL procedure: to save the command history that has created the plot in an IDL procedure that can be re-executed later. For example if I save the commands in {{{xxx_figure.pro}}} file, when ever I want, I can then launch a new IDL session and type:
232 
233{{{
234#!html
235<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
236<code class="prompt">idl&gt;</code> <strong class="userinput"><code>@init</code></strong>
237<code class="prompt">idl&gt;</code> <strong class="userinput"><code>xxx_figure</code></strong>
238</pre>
239}}}
240
241and I'll obtain the saved figure.
242 
243{{{
244#!html
245<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
246<code class="prompt">idl&gt;</code> <strong class="userinput"><code>xxx_figure,/post</code></strong>
247</pre>
248}}}
249
250or
251 
252{{{
253#!html
254<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
255<code class="prompt">idl&gt;</code> <strong class="userinput"><code>@ps</code></strong>
256</pre>
257}}}
258
259will then create a Postscript file of the figure.
260
261 * RESTORE kwd of xxx: to save the xxx widget (all buttons and parameters stored in memory 
) in a binary file in order to quit xxx and relaunch it later with idl&gt; xxx, restore = 'file.dat' and get exactly the same configuration.
262 * Print to prompt: lists in the IDL window the command history that created the last plot. Useful primarily for debugging

263==== Flag options sub-menu ====
264
265      The Flag Option menu
266
267 
268    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0205.png)]]
269 
270     
271   
272 * Portrait/Landscape: changes the configuration of the plot.
273 * Overlay: to plot contours of a different field on top the
274one represented as color-filled contours. It is necessary to relaunch the entire plot to make this work!
275 * Vecteur: to plot a vector field on top of contours. Only
276works on horizontal plots ({{{plt.pro}}}).
277As for Overlay, a relaunch of the entire plot is necessary.
278 * Longitude / x index: switches longitude labeling of the plot sub-domain from degrees to indexes following i.
279 * Latitude / y index: switches latitude labeling of the plot sub-domain from degrees to indexes following j.Careful, a selected option remains selected until it is re-clicked.
280=== OK button ===
281Click on this OK button is required to make a new plot appear
282=== Page Layout ===
283Specify the number of columns and rows for plots on the sheet of paper.
284      Number of Column
285
286 
287    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0206.png)]]
288 
289     
290   
291      Example: For 2 columns and 2 rows
292
293 
294    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0206a.png)]]
295 
296     
297   
298=== List of variables ===
299You can choose the variable to work on.
300      Example of different Variables available
301
302 
303    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0207.png)]]
304 
305     
306   
307=== List of open files ===
308You can choose the file to work on.
309      Example of list of open files
310
311 
312    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0208.png)]]
313 
314     
315   
316=== Command text ===
317
318To specify in the widget part number 7 the computation you want to do on the data
319In all cases bellow, the name given to a field (a, b, c, 
) is of no importance.
320==== Linear calculation ====
321
322If you want to make basic linear computation (like difference between fields, add/multiply by a constant 
). you can simply put the following commands:
323{{{
324#!html
325<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">a - b</pre>
326}}}
327
328{{{
329#!html
330<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">numb1*a</pre>
331}}}
332
333{{{
334#!html
335<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">a + numb</pre>
336}}}
337 or any command with the following format
338{{{
339#!html
340<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">numb1*a + numb2*b  + numb3*c 
 + numb</pre>
341}}}
342 where numb1, numb2, 
 correspond to numbers and a, b, c 
 will be the data to read.
343
344==== Any kind of computation ====
345
346If you want to make a computation more complicated than a basic linear you must put designate the data you want to read between "" (with anything in between the "). For example:
347{{{
348#!html
349<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">"a"^2</pre>
350}}}
351
352{{{
353#!html
354<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">"a" - abs("b")</pre>
355}}}
356
357{{{
358#!html
359<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">grad("a", 'x')</pre>
360}}}
361 â€Š
362
363=== Calendar ===
364
365The calendar is made up of two drop-lists, which allow specification of two dates, the beginning and end of a time series, or the period over which to average before plotting.
366      Example: first plot in January, second plot is from January to December
367
368 
369    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0301.png)]]
370 
371     
372   
373=== Define the domain ===
374
375  A series of widgets that allow specification of the min/max limits of the domain in longitude/x-index, latitude/y-index, and depth in levels or meters.
376 
377    Domain by default
378
379   
380      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0210.png)]]
381   
382     
383 
384    Change Domain area: zoom on Oceania
385
386 
387    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0401.png)]]
388 
389     
390 
391    This configuration give us:
392
393   
394      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0402.png)]]
395   
396     
397 
398    Change depth area: between depth 125 and 126
399
400   
401      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0403.png)]]
402   
403     
404 
405    temperature of the ocean at depth 125 meters without proper land/sea mask
406
407   
408      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0404.png)]]
409   
410     
411 
412  As you can see, at this depth, we better define a land/sea mask when loading the grid. Cf [#LaunchingXXX Launching XXX]
413=== Specify your plot ===
414
415==== Specify min, max and contour interval ====
416
417    min, max, and contour interval specifications
418
419   
420      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0501.png)]]
421   
422     
423 
424  You can restore configuration by default by pressing the Default button.
425  The path of the file [../../ToBeReviewed/WIDGET/AUTOUR_de_XXX/definedefaultextra.pro definedefaultextra.pro] that defines the default values for each variable names is displayed when the cursor hovers over the button Default. This file contains a case statement based on the name of the variable and defining the min, max, contour interval and other keywords that should be used as default for the specified variable. You can copy this file in your own {{{${HOME}/My_IDL/}}} directory and easily modify it to suit your favorite default values.
426==== Specify the palette to be used ====
427For the color palette, you can either specify the name or go search for one among the palettes available.
428      The Color menu
429
430 
431    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0502.png)]]
432 
433     
434   
435==== Add any keyword ====
436
437  The "keywords" window allows specification of all desired keywords. There is a few examples of the use of this "keywords" window.
438 
439    Without any additional keyword
440
441   
442      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0209.png)]]
443   
444     
445 
446    Add {{{/realcont}}} keyword
447
448   
449      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0210a.png)]]
450   
451     
452 
453    Graphic with {{{/realcont}}} keyword
454
455   
456      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0210.png)]]
457   
458     
459 
460    Add /realcont, map=[90,0,0], /ortho, cell_fill=2 keywords
461
462   
463      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0211a.png)]]
464   
465     
466 
467    Graphic with /realcont, map=[90,0,0], /ortho, cell_fill=2 keywords
468
469   
470      [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0211.png)]]
471   
472     
473 
474== Mouse Actions ==
475
476=== In the graphics window on a horizontal plot ===
477
478Select a domain and select the horizontal plot (plt), vertical plot
479(pltz), or the hovmoeller plot (pltt):
480The domain we'd like to select for the plot is determined by one of
481its diagonals, defined therefore by two points.
482The first point is
483defined when the mouse button is pushed, then the mouse is moved, and
484the second point is defined as the mouse button is released
485(click-drag).
486The domains are thus defined by a long click (LC).
487To determine which type of plot should be made of selection, use:
488
489If the plot selector is on plt
490 * the left mouse button to create horizontal plots (plt)
491 * the middle mouse button to create vertical plots (pltz)
492 * the right mouse button to create common hovmoellers for xt and yt cuts (pltt)In summary:
493 *       LCL---&gt;plt
494     
495 
496    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_mousell.png)]]
497 
498     
499   
500      Horizontal Plot
501     
502 
503    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0701.png)]]
504 
505     
506   
507 *       LCM---&gt;pltz
508     
509 
510    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_mouselm.png)]]
511 
512     
513   
514      Vertical Plot
515     
516 
517    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0702.png)]]
518 
519     
520   
521 *       LCR---&gt;pltt
522     
523 
524    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_mouselr.png)]]
525 
526     
527   
528      Common hovmoeller for xt and yt cuts
529     
530 
531    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0703.png)]]
532 
533     
534    If the plot selector is on something other than plt the indicated plot type is made.
535=== Create multiple plots on the same sheet and make them interact ===
536
537Select the number of columns and rows for the page.
538Create a first plot.
539It will appear in the first frame.
540To create a plot in another frame double-click in the frame with the
541middle button (DCM).
542A black dotted frame will surround the designated frame, the "target" frame.
543A black frame will surround the first plot.
544This is the "reference" frame, in other words the one
545that all the XXX widgets refer to.
546Change for example the date and create a new plot.
547With a left button double-click in the first
548frame, all the widgets change and refer again to the first plot.
549A double-click with the right button in the second frame will erase the
550plot.In summary:
551 *       DCL---&gt;"reference" frame
552     
553 
554    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_mousedl.png)]]
555 
556     
557   
558      The reference frame is selected
559     
560 
561    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0801.png)]]
562 
563     
564   
565 *       DCM---&gt;"target" frame
566     
567 
568    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_mousedm.png)]]
569 
570     
571   
572      The target frame is selected
573     
574 
575    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0802.png)]]
576 
577     
578   
579 *       DCR---&gt;erase the frame
580     
581 
582    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_mousedr.png)]]
583 
584     
585    Here's a series of commands to show how this works.
586
587
588load xxx with the command:
589 
590{{{
591#!html
592<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
593    <code class="prompt">idl&gt;</code> <strong class="userinput"><code><span><strong class="command">xxx</strong></span>, <em class="parameter"><code>'Levitus98_1m_01_12_Temperature_Pot_ORCA05.nc'</code></em>, <em class="parameter"><code>'tst_initorca05'</code></em></code></strong>
594  </pre>
595}}}
596
597
598
599
600Select a 3-D field and create 6 frames for the sheet of paper.
601
602
603
604
605Create a horizontal plot in Frame 1
606
607
608
609
610DCM in frame 2, LCL on the plot in frame 1, to create a horizontal
611zoom in frame 2.
612DCM in frame 3, LCM on the plot in frame 1, to create a vertical cut
613in frame 3.
614DCM in frame 4, LCR on the plot in frame 1, to create a hovmoeller in frame 4.
615
616
617      Frame with four plot
618     
619 
620    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0901.png)]]
621 
622     
623   
624
625
626
627To redo the hovmoeller with the keyword {{{/nocontour}}}
628
629DCL in frame 4 which now becomes the reference and target frame.
630
631
632
633
634Add the keyword
635{{{/nocontour}}}
636
637      Command text area
638     
639 
640    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0902a.png)]]
641 
642     
643   
644
645
646
647click OK, and the plot is redone.
648
649
650      The fourth plot with the keyword "nocontour"
651     
652 
653    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0902.png)]]
654 
655     
656   
657
658
659
660in frame 5, let's create the same plot as in frame 2 except we use pltv instead of plt
661
662
663DCL on frame 2
664
665
666
667DCM on frame 5
668
669
670
671
672change plt for pltv
673
674
675
676
677Click on OK
678
679      Frame with five plot
680     
681 
682    [[Image(source:/trunk/SRC/Documentation/xmldoc/figpng/xxx_0903.png)]]
683 
684     
685   
686
687
688== What should I do when it breakdown ==
689
690
691In the IDL window type (as many time you click on a button since a problem occurs in xxx !!!),
692 
693{{{
694#!html
695<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
696<code class="prompt">idl&gt;</code> <strong class="userinput"><code>retall</code></strong>
697</pre>
698}}}
699
700
701in the IDL window, type
702 
703{{{
704#!html
705<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
706<code class="prompt">idl&gt;</code> <strong class="userinput"><code>domdef</code></strong>
707</pre>
708}}}
709
710DCR to erase the problem frame.
711
712change the orientation of the plot by pressing Flag options -&gt; Portrait/Landscape. Cf [#LaunchingXXX Launching XXX]
713quit XXX cleanly using quit from the File menu. Cf [#LaunchingXXX Launching XXX]
714
715
716Always avoid if at all possible closing and killing the XXX
717window, but rather select quit from the File menu.
718XXX uses a large number of pointers, and want only killing the window will
719leave a large number of unused variables in memory, which could in the end
720overflow.
721To clean up this memory:
722 
723{{{
724#!html
725<pre xmlns:xl="http://www.w3.org/1999/xlink" class="screen">
726<code class="prompt">idl&gt;</code> <strong class="userinput"><code>ptr_free, ptr_valid()</code></strong>
727</pre>
728}}}
729
730
Note: See TracBrowser for help on using the repository browser.