The input vectors may be the names of vectors or expressions in parentheses. You should now have a graph. The word must exist before you can do this to it. This means that the command will not appear on the history list, to confuse you when you do a playback. For example, if you wanted to define a postscript device that took the name of the printer as its argument, you’d put an entry mypostscript like postscript, but specify the printer as its argument: The shading is rotated through the current value of ANGLE , and lines are spaced by the integral part of dnumber apart screen coordinates, so the full screen is across.

In this form of conditional assignment, the dimension of vec is the same as that of the right hand side. You can turn down the verbosity, of course, or you could try sending mail us mail to see if we can’t fix it but it isn’t easy, or else we’d have done it already. Strictly speaking, there are no postscript devices, merely postscript drivers in stdgraph see section The Stdgraph Graphics Kernel. The format should be given as a standard C e. Perhaps the most important thing to know is how to escape from SM. This is not what you want for, e. It is possible for the wrong macro to be reported if SM has finished reading the macro before detecting the error , in which case you’ll be told that the error occurred in a macro that called the offender. When called, all the arguments must appear on the same line as the macro itself.

IF statements are similar, in that we read the entire list before executing it. If the expr is true non-zerothen the list of commands are executed, otherwise the ELSE clause is executed.

If verbose is one or more SM will: Or, in the more common scenario, you have put the plot on the screen, and fiddled with it until you were happy with it, and then want to plot it to a hardcopy device. You can get at the current values of GX1 etc.

Because this depends on how your local graphcap was configured, you’ll have to see your Guru for guidance; see section The Stdgraph Graphics Kernel. It is not possible to change the value of the loop variable inside a loop or at least it has no effect on the next iteration.


Registration Forgot your password? A final point will only worry TeXies, namely that the emulation isn’t perfect: There isn’t really any need for this section because SM doesn’t distinguish between hardcopy devices such as laser printers and other devices such as graphics terminals, except that it saves up plotting commands for hardcopy devices and sends them all when you are finished.

Of course, if a macro had been seen while the first macro was being executed, the first one would get pushed onto the stack, and attention transferred to the the new one.

SM – Command Reference

The macro unload not listed here will undefine the load ed macros. If you try entering it at the keyboard any special characters in keysuch as ESC, will be interpreted by the history editor so you’ll probably have to quote the key with control-Q or ESC-q.

For further discussion see the discussion of how macros are used. How do I get a hardcopy of a plot? Determine tick intervals for BOX. Value may be a word or a number.

Byname access is only currently supported for FITS binary tables as a special case, you can specify byname as the format in a filecap file. See section The SM Grammar. Set the physical location of the plot.

The SM Tutorial

A word on caution: This doesn’t work quite the way that you might naively think. You might want to use the abbreviation h which will not appear on your history list or you could overload help itself. The only way to close a device is to open another, any other, so it is just as good supermohgo say dev x11 as it is to say hardcopy dev x11 as the macro hardcopy does no more than open the null device.

Now you could type all to run your new macro, or put it back onto the history list. Some devices are not supported through stdgraph graphics drawn to a SunView window would be an examplebut they still appear in graphcap with a special entry DV giving the name of the appropriate hard-coded device driver.


This also provides a way to generate a vector initialised to a desired value: SM now supports python; with a modicum of effort it could be used with perl or ruby or STRING uses the same code as the axis-labelling routines, so FORMAT can be used to modify its behaviour; whether the x- or y-axis formats is used depends on whether the label is more nearly horizontal or vertical.

Set axis label format exponential or floating. If you have long ints, you will need to use e. If you want to include a space in an argument, enclose it in quotes. Because SM submits plots only when the current device is closed, and because opening nodevice closes the current device, it is also used by the hardcopy command in fact hardcopy is a macro that expands to DEVICE nodevice. You can work around this by putting a space after the RETURN, or simply omitting it as it isn’t doing anything anyway.

If the left hand side is a string but the right hand side is numerical it will be converted. All other keys have the same meaning as for the history editor e. All the commands must start in a column in the file other than the first column.

The Art of SUPERMONGO A Beginners Primer By Martin Altmann 17.11.2005.

There are also commands to read the values of variables from data files defined with the DATA command. See the end of the section on macros for how this works. See SET for how to set the latter. Various examples are scattered throughout the text, to give some guidance on the use of SM’s capabilities.

It may look strange, but it can be just what you want. You can also use SORT to sypermongo a single expression, returning an expression; e. You can read text columns into string vectors, as described in the next paragraph.