In this guide we presume that you are familiar with the general use of the RISC OS desktop. Therefore, we do not explain how to call menus and filer windows, how to place the caret, and what click and drag means. If you do have problems, please refer to the computer's User Guide.
Praktikum can be installed on hard disk or floppy disk. If you use a floppy disk, it is sufficient to make a back-up copy of the accompanying disk (please keep the original in a safe place!). To install the program on hard disk, simply drag the "!Praktikum" application to a directory display. We recommend to copy the directory "NatConst", which contains several natural constants in the Praktikum format to the same directory, but this is not necessary to run the program.
Praktikum will automatically determine whether to use 2D (flat) or 3D icons. This is a configuration option for the whole computer. You can change this configuration using the !Boot application (RiscPC) or the !NewLook application (Archimedes). Please do not configure 3D icons without installing !NewLook on Archimedes computers as RISC OS 3.1 seems to have faulty routines that have to be replaced by !NewLook.
Normally Praktikum will automatically choose the language for its messages to be the same as that of the operating system. If Praktikum has not been translated into your native language, it will use English messages. However, you can enforce the usage of a different language. Double click on the !Praktikum icon with the Shift key depressed, find the directory named Terr_x where x is the territory number of the desired language and copy its contents into the !Praktikum (i.e. the parent) directory.
Praktikum is started by a double click on its icon
in the filer window (or by double clicking on the icon
of a project file). It then appears on the the icon bar.
A menu is attached to this icon, not only providing the standard options Info and Quit but also the opportunity to set and to save global switches. When Crunch EP formulae is activated, Praktikum tries to simplify formulae which have been generated according to the error propagation theorem, so that they can be read more easily. When Auto Save is activated, all projects with known file names are automatically saved every five minutes. The option Draw Compatible will be described later in this guide, in the section concerning the graphical output. The option Use and accept local number format is meaningless for the UK.
A project file can be loaded either by a double click or by dragging its icon onto the Praktikum icon on the icon bar. By clicking on the Praktikum icon a new empty project window appears:

To start a new data input, be it either single valued or a series of data, you click on (Create:) Variable in the project window. Into the appearing dialogue box you can enter the name of the variable, which can consist of lower case characters, digits and "_", but the name must not begin with a digit or "f_". Please make sure that you have selected Numerical value and then click on OK. Now the new variable is created and the window "Numerical Editor" appears:

In this window you can now insert new values or edit existing data. Changes are only transferred to the project when OK is clicked, but discarded when you close the window using the Cancel button. You can also work with several windows for different variables at the same time.
For each value you have the option to specify an error range. You do this by activating the option With error. Now you can insert the error range into its input field.
If the variable consists of a single value, activate the option Scalar (Now the according fields are accessible). For a series of data activate Table (The window is enlarged and shows where you can key in the data).
Later, when you have an operation between a scalar and a table, e.g. a sum, the scalar is connected with each member of the table, thus the result is again a table:
When you connect two tables, the operation is done line by line resulting in a table whose length is the same as that of the shorter of the two tables:
You can extract a common (integer valued) exponent from all numbers in the window (values and errors), such that every value appears as
. If you find the value of the exponent impractical during or after the input, you can click on the adjuster arrows next to the exponent field to increase or decrease the exponent. At the same time all numbers are divided or multiplied by ten. Therefore the overall value does not change. But you can also write directly into the exponent's field. When you do this, the numbers remain the same and thus the value changes[1]. When a series of data ranges over many orders of magnitude, it is also possible to enter an additional exponent together with the number (e.g. 1.e-5).
A menu is attached to the Numerical Editor. The option Change to formula allows to change the status of a variable from number valued to formula valued in case you have accidentally clicked on the wrong option. The remaining three options (Delete, Insert above and Insert below) apply only when MENU is clicked on a line in the table field and refer to this line. The Insert below function is dublicated by the keyboard shortcut Shift-Return.
Tables can be imported from external programs. To do that, simply drag a CSV file with the data into the editor's window. Each line consists of one data value (with the corresponding error if required). These, for example, are valid lines:
| "13.7", "0.3" |
| "14.5", "1.2" |
| "0.27" |
Please note that when importing CSV from other computer systems, you must explicitly set the file type to "CSV". You may find the program CsvExtrct useful to extract columns of multicolumn CSV files or to generate CSV files out of differently formatted files (use the toggle size icon of the window to change the column separator and parenthesis characters).
In order to define a formula type variable, click on New variable in the project manager, insert the name of the variable in the dialogue box, then activate Formula and click OK. The window of the Formula Editor appears:

Insert the formula for the variable into the first line. A formula consists of numbers, variables, infix operators and prefix operators:
Praktikum can automatically calculate the right error formula to the given main formula. To do this, choose the option Automatic. After clicking on OK, the symbolic error formula is given. The program uses the Error Propagation Law (by Gauß), given by
for a variable x depending on a, b, c...
From version 1.2 on, Praktikum is able to compute the correct formula, even if you use several variables depending on each other; i.e. it computes the derivations of a formula with respect to all independent variables and automatically fills in the formulae for dependent variables. A variable is only then considered dependent, if it is a formula with activated automatic error calculation.
Activate Formula and enter your own error formula. You can also include the variable itself. The errors of other variables are referred to by "f_<variable>" (if no error is assigned to <variable>, Praktikum sets f_<variable> to zero).
If you do not want to assign an error to a formula type variable, activate the button None.
You can export formula texts (both main and error formulae) as ASCII files or LaTeX source codes by using the menu (option Save text or Save TeX). The generated file consists of two lines: one for the main and one for the error formula. The contents of both fields are exported. So, if using automatic error calculation, you have to update the error formula by clicking on OK with ADJUST every time you change the main formula before exporting them; otherwise they may be inconsistent.
An easier method is to simply drag the relevant text icon to the destination (Drag and Drop). Some programs provide additional support by displaying a "ghost caret" showing the exact position where the text will go when you release the mouse button.
It is also possible to import formulae. To do this, drag the text file into one of the formula fields (manual error calculation must be selected if you want to import error formulae). Please note that only the first line of the file is loaded. An arbitrary line can be loaded by selecting it in a text editor and exporting the selection. This line will be appended to text already in the field.
With programs supporting the Drag and Drop protocol, you can use a simpler method to import data. When you drag a selection onto the writable field, the caret appears to show the position where the selection will be inserted. Especially, you can drag a formula from another opened Formula Editor into the field, or you can insert a variable name by dragging the variable out of the Project Manager's window.
A new variable is created automatically (after clicking on OK), when you use it in a formula before it has been explicitly created. Its default definition is as undefined numerical type value. To redefine this variable as a formula, choose the item Change to formula in the menu of the Numerical Editor. If you accidentally type in a wrong variable, first correct the formula, click on OK and then delete the wrong variable using the Project Manager's menu.
Using the item Change to value, you can change a formula into a numerical type value. Praktikum then tries to work out the formula and to use the result as numerical type value. For this reason the contents of the formula must not be empty. If nothing else, you can simply write "0" into the field.
The project window provides you with an overview of all defined objects, i.e. tables, graphs and variables, their status and type. Here you can also create new objects or open edit and output windows for existing objects.
You know already how to create new variables: You click on the Variable button and insert its name and type in the appearing dialogue box.
To edit an existing one, double click on its name in the project window. Depending on its type, you automatically get either the Numerical Editor or the Formula Editor, where it is possible to change the type, as described above.
It is also possible to edit variables while one or several output windows are open. After every change all formulae depending directly or indirectly on this variable are recalculated and all text and graph windows are updated. Please note: If you add an undefined variable to a formula, it is no longer possible to calculate this formula and all other formulae depending on this one. The graphs concerned disappear until the variable is defined.
Similarly, you can create new tables and graphs by clicking the Table or the Graph button. These objects also have names, but the names are used only for the project manager display. Therefore you are completely free to choose any name; you may use upper case characters, spaces etc.
When you are creating a new diagram, the Definition Editor for graphs automatically opens up to define the first graph. When you are creating a table, all selected variables are added to the list.
The Info item in the File menu leads to a dialogue box giving you details of the project. The item Save leads to the usual dialogue box.
If variables are selected, you can save only those, if you activate the Selection option before saving. When saving a selection it is not necessary to save all variables on which a formula depends. The missing variables are automatically created as undefined when the 'incomplete' selection is loaded, in the same way the Formula Editor does when a formula contains an unknown variable.
You can select variables, diagrams and tables in the same way you select files in a directory display. Additionally the menu items Select all and Clear selection are available.
Using the submenu Selection you can delete the selected variables or display them in tables.
If a variable is used in a formula calculating another one, it is not possible to delete it. On the other hand, graphs using a deleted variable are automatically deleted, and disappear simultaneously from all output windows. Windows which are now empty are automatically closed as well.
You can export the selection using the Drag and Drop model: Click SELECT over a selected variable and drag the selection to a destination; if you drag to a filer window, it will simply be saved (see: Saving a Project). If you drag it to another program supporting the Drag and Drop model it will be exported in a format both programs understand; usually this will generate a list of the object names. If you drag it into another Project Manager, the selection will be merged with the other project and if you drag it into a table output window, new columns with the selected variables will appear.
When you drag a project file into the window of an existing project, its variables are added to the existing project. Before an existing variable is redefined, a dialogue box appears asking you to confirm this.
Added to the program is the directory "NatConst" consisting of useful natural constants, which can be merged as explained above when needed.
When you create a new table using the project manager, a table appears with all selected variables.
You can change the order of variables by clicking SELECT on a column and dragging it to the desired place. You can add more columns by dragging variables from the project manager's list into the table window. You can also delete a variable from the table by clicking MENU on its column and selecting the Delete item.
Changing the format is initiated by double clicking on the column or by clicking MENU on the column and selecting the item Format.
When you switch off the option Choose format automatically, you can decide which exponent should be extracted, if the format should depend on the value or the error of the variable and how many significant figures to use. If there is no error, i.e. the error equals zero, the format is always chosen according to the value. The width of the column will be computed automatically in any case. Click on OK to initiate the changes.

After changing the output window according to your wishes, you can export the tables for further processing, for example to a word processor. Available formats are: "CSV" files (ideal for word processors or spreadsheets, for example), "TSV" files (entries are separated by tabulators) and "LaTeX" source code fragments, which can be used directly in LaTeX files and will be translated into fully formatted tables.
In each graph window one diagram is displayed. An arbitrary number of graph windows can be open at the same time. A diagram consists of any number of graphs and one (or more) co-ordinate system(s) which determine the scaling of the graphs. Generation of diagrams with more than one co-ordinate system is described in a separate section below.
A graph is defined by two variables, one yielding the x co-ordinates and the other the y co-ordinates. You can specify the variables and their co-ordinate system with the Definition Editor, which opens automatically when a new diagram is created or when you click on one of the edit buttons of the diagram window.
There are quite a lot of options, regarding the graphic representation of your graph and its co-ordinate system. The frequently used ones can be set directly in the window shown above, such as the variable names, their scaling settings and the type of graph to generate. Additional options are hidden in the menu and in different dialogue boxes you can open by clicking on the relevant buttons. For a start, we will describe only the basic functions. We recommend that you make yourself familiar with those functions before turning to the details.

The diagrams created by Praktikum may be just raw versions, since other programs, Draw for example, are far more suitable to make elaborate changes on line styles, etc. Also, you may use those programs to change the alignment of labels.
If we start with the simple case that you use just one co-ordinate system in a diagram, this will determine the scaling of all graphs in that diagram. By default, co-ordinate axes are linear. The geometrical distance between two staves can be entered into the field on the left-hand side for each axis. On the right-hand side you can enter the numerical distance between two marks expressed in powers of ten:

Any changes on the scaling settings apply to all graphs using that co-ordinate system.
For each graph you must select the two variables and the way the data is displayed. You can connect the points by lines, either straight from point to point, or by interpolating curves (cubic splines). Or you display the points themselves with markers; if you activate the Markers button, you get a selection of markers available. Or you can visualize the uncertainty of each value by generating error bars.
If you want to see, say, both the points and the interpolating line, you only have to create two graphs with the same data, one with markers and one with an interpolating line.
To generate a graph with the current settings, click on Insert. If you click on Discard, no graph will be generated. If no graph is inside the diagram window after that, it will be closed.
All graphs and co-ordinate systems are displayed in the diagram window. Here you can select a graph and either delete it or modify its definition. To select a graph, click inside the window. The title bar colour will change to cream and the topmost graph will be selected and marked by a blinking rectangle. At the same time a toolbox appears to the left of the window:

Toolbox for editing a selected graph
If you delete the last remaining graph in a diagram, its window will be closed.
The
button removes the selected graph and opens the Definition Editor with the removed graph's data filled in. You can modify the definition and re-create the (modified) graph using the Insert button. If, however, you click on Discard, the graph will be deleted.
The
button keeps the selected graph and equally opens the Definition Editor with its data. Use this to create a similar graph (e.g. a marker graph over a line graph).
If you are unsure which one of similar sized graphs is selected, use Acorn's interactive Help application to find out. With RISC OS 3.5 or later, it is sufficient to press the F1 key; with prior versions, you must manually start the application (click on the Apps folder on the icon bar to open the relevant filer window).
In the menu attached to the diagram window you can find the item Save: If you move the pointer over the arrow to the right, you get the usual "Save as" dialogue box, but if you click on Save, the diagram is automatically exported to Draw or a similar program, even if that program has not yet been loaded (this is similar to double clicking on a draw file in a directory viewer). This export takes slightly longer than the exchange via the "Save" box, but you should not be able to notice this on newer machines.
From a logical point of view, the graphical axes and the numeric axes should be the same, i.e. a point with (numeric) co-ordinates (0,0) should lie in the graphics origin. However, Draw does not display negative parts of a diagram. It is quite irritating if you have to drag the whole diagram to the top right each time you export it to Draw. That's why you can choose to switch off the logic (with respect to graphics origins only), by activating Options > Draw compatible in the icon bar menu of Praktikum.
We now start to explain more elaborate options related to the co-ordinate axes.
By clicking one of the Details... buttons you can open a dialogue box for the relevant axis. You can choose the nature and number of the staves and you can define an interval outside of which no points are rendered.

Controlling the co-ordinate axes
There is a hierarchy of staves, with 3 layers maximum. The topmost layer consists of the numbered staves. Each interval between the main staves is divided into sub-intervals (second layer of staves). Finally, each of these sub-intervals can be divided once more. Look at a piece of millimetre paper: It is divided just this way; the size of the innermost intervals is one millimetre. How to generate this in Praktikum is demonstrated below.
For each layer you can choose if the staves should be drawn all over the diagram or not. In the next section, you will see how to change line widths of the staves for the layers.
Also in the Details dialogue box you can specify an interval outside of which no points are generated. You determine the bounds of the interval in axis units. I.e., if you specify an interval of -2 to 2 for a linear axis with an exponent of 3, points in the numeric range -2000 to 2000 are rendered. The same interval for a logarithmic axis means a numeric range of 0.01 to 100.

Usage of subdivisions and second subdivisions
Also you should note that this is not clipping in the sense of art programs. The generated graphic may well be larger than the interval. This is what Praktikum does, depending on the kind of graph you want to generate:
The available range is limited by the Draw type diagram standard: no graphs larger than about 1 kilometre can be generated. This is considered to be of no real importance, so if you get in conflict with this limits, the range is silently adjusted without any warning.
You can generate logarithmic axes. Then, the main staves mark the various orders of magnitude, while the subdivisions are numerically equidistant:

Divisions and subdivisions at logarithmic axes
You can assign different colours to each graph and to each co-ordinate system. Simply click the relevant Colour... button in the Definition Editor.
You can choose different line widths for graphs and the three layers of staves respectively. Click Line widths... to open the relevant dialogue box. Line widths are given in internal units i.e. 1/46080 inch; 0 stands for "as thin as possible". There are three buttons to fill in standard values for different output devices.
If it is important to distinguish the layers of the co-ordinate system clearly, you must take care of the resolution of the device the graph will be sent to: If you select line widths smaller than the resolution, lines will be randomly 1 or 2 pixels wide.
To deal with this problem, three standard buttons are provided. The 90 dpi button inserts values appropriate for screen output. The widths inserted by the 300 dpi button are suitable for medium resolution printers, e.g. standard ink jet or laser printers. The 600 dpi button is for use with high resolution printers. No "thin" lines are generated with this setting to ensure the output is visible even on professional typesetting machines.
Apart from the problem that thin lines vanish on devices with a resolution above ca. 1000 dpi, you can print diagrams with low resolution settings on high resolution devices, but not vice versa. Also note that we are just talking about line widths: the actual resolution of a Draw type diagram is always 46080 dpi!
This is considered to be a rarely used option. For this reason, the commands for adding and deleting co-ordinate systems are "hidden" in the menu. If you add a co-ordinate system, the standard scaling settings, colours, details etc. are inserted into the relevant fields of the Definition Editor. All changes you make refer to the new co-ordinate system. You activate the changes by clicking the Apply button, or implicitly by Inserting the graph. Cancel the definition by clicking the left arrow.

Buttons and menu entries for handling multiple co-ordinate systems
When multiple co-ordinate systems are defined, the arrow buttons on the bottom of the co-ordinate section of the Definition Editor come to life. Use them to select one of the systems. Changes to scaling settings etc. refer to the currently selected system. To save the changes, click Apply, or Insert the graph. To discard them, use the relevant menu item. Also, changes are discarded if you click one of the arrow buttons to select a different system.
There is a delete option in the menu, if one of the systems is no longer needed.
[1] Praktikum cannot work with physical units. We recommend to use only SI units and change the exponent accordingly. For example if you have experimental data in mm, key in your number and set the exponent to -3. You then get the SI unit m.
[2] If you want to export formulae as TeX source, you should obey a stricter convention for names. The underscore is interpreted as start of an index and greek characters cited by their full names are replaced by the corresponding TeX command. For best results, use names starting with a single character and continue with an underscore and some specification, e.g. p_max (
), epsilon_r (
), mu_alpha (
). Accordingly, the errors are rendered as
, etc.