Formulator

**© Copyright Psion PLC 1987**. All rights reserved. This
manual and the programs referred to herein are
copyrighted works of Psion PLC, London, England.
Reproduction in whole or in part including utilisation in
machines capable of reproduction or retrieval, without
the express written permission of Psion PLC, is
prohibited. Reverse engineering is also prohibited.

The information in this document is subject to change without notice.

**Please note that formulae provided in this product
are designed to illustrate the utility and application
of the Formulator. Users must satisfy themselves
as to the validity and applicability of any individual
formula before use. Psion accepts no liability for
loss, including consequential loss, arising from the
use of the formulae contained herein.**

Typeset by Lotus Reprographic Services, London.

Printed by Premier Metropolis, London.

**1 INTRODUCTION**
**2 GETTING STARTED**
**3 FINDING AND SAVING FORMULAE**
**4 ADVANCED FEATURES**
**5 USING THE SUPPLIED FORMULAE**
**6 THE FORMULATOR AND OPL**
**APPENDICES**
**A ERROR MESSAGES**
**B THE SUPPLIED FORMULAE**
**INDEX**

INTRODUCTION

The Formulator is a program for your Psion Organiser II which can work out almost any calculation which can be expressed as a formula. You have only to type the formula as a single line, using names and numbers; no programming is required. As a very simple example, you could specify a formula to convert litres to pints. It might look like this:

PINTS=LITRES*1.76

Whenever you then used this formula, the Formulator would ask you for a value in litres, and display the result in pints.

"FIND" and "SAVE" options, similar to those on the 0rganiser's main menu, are provided for your formulae. You only have to type a formula once - if you then save it, you can find and use it again at any time in the future.

As well as allowing you to construct your own formulae the Formulator is provided with over 250 useful examples. These cover a huge range of common calculation areas, including the following:

Business, e.g. VAT calculations

Finance, e.g. loan repayment

Statistics, e.g. Poisson probability

Mathematics, e.g. quadratic equations

Physics and electronics, e.g. parallel resistance

Chemistry, e.g. the ideal gas law

Navigation, e.g. radar range

General formulae, e.g. metric to imperial units

(including, of course, such things as litres and pints)

The Formulator occupies approximately 4K of Organiser memory, and so can be used on all versions of the Organiser.

Chapter 2 explains how to run the Formulator and its
basic method of operation. Read it first, so that you
can write and use your own formulae. You should then
read chapter 3, which explains how to save formulae
on your Organiser.
**The examples in these chapters
are designed to follow on from each other, so first-
time users may use them as a tutorial.**

The Formulator can handle complex formulae, and chapter 4 explains its more powerful features. Chapter 5 explains how to use the supplied formulae, and lists the functions provided by them. Chapter 6 shows how to use the Formulator from inside OPL, the Organiser programming language.

GETTING STARTED

The Formulator is supplied on a datapak. To run the program, return to the main menu on the Organiser, insert the Formulator datapak in either datapak slot, and press ON/CLEAR. This will add the "XFORM" option near the end of the main menu. To select it, either just press X or move the cursor to this "XFORM" option and press EXE. The prompt "XFORM:" will appear on the screen, and the Formulator is ready for use.

You will find the style of use of the Formulator similar to that of the Organiser calculator. However, since you will be typing a mixture of text and numbers, the keyboard is set to accept alphabetic characters.

Once you have added the "XFORM" option to the main menu you can if you wish remove the Formulator datapak. If you do this you should take care to avoid pressing ON/CLEAR while at the Organiser's main menu, since this will remove the "XFORM" option and you will then need to reload it from the datapak.

In the introduction, a simple example formula to give an approximate conversion from litres to pints was suggested, The formula looks like this:

PINTS=LITRES*1.76

To enter this example, just type it in when the "XFORM:" prompt is on the screen, and press EXE.The screen will then show the following:

LITRES=

You should type in a number, to say how many litres to convert to pints. The keyboard will automatically be set to numeric mode when values are being prompted for. Note that you can always abort the execution of a formula by pressing ON/CLEAR when you are prompted for a number.

When you press EXE to enter the number, the screen will show the result. If, for example, you entered the number 3, the screen will show:

PINTS=5.28

If you now press SPACE you will be returned to the "XFORM:" prompt, with the formula ready to be edited or run again.

In general, of course, when you type in one of your own formulae you would then save it for future use.

When the Formulator runs a simple formula it evaluates the sum on the right of the equals sign, prompting you to supply values where necessary. It then displays the result name (the text on the left of the equals sign), followed by the result it has calculated.

Note that pressing ON/CLEAR while the Formulator is running a formula may cause the Organiser to pause, just as it does in OPL. If you then press Q the Formulator will abort the calculation; any other key will cause the calculation to resume.

Prompts for input should begin with a letter and may contain any combination of letters, numbers and space characters. Result names may contain any combination of characters, other than equals signs, colons and commas.

The litres-to-pints formula from the previous section can be altered to produce a second result in gallons, as follows:

PINTS=LITRES*1.76;GALLONS=PINTS/8

This formula now contains two calculations, separated by a semicolon.

Again, just type this in at the "XFORM:" prompt. If the formula from the previous section is still on the screen, it can be edited in the same way as any other input line on the Organiser. Move the cursor with the cursor keys, type new text at the cursor position, and use DEL to delete a character.

Press EXE to run the formula. As before, the Formulator will prompt you to enter the number of litres to convert into pints. In the second calculation, "GALLONS=PINTS/8", the value for "PINTS" from the first formula is automatically used.

Having completed the calculations, the results - in this case, "PINTS" and "GALLONS" - will be shown on the screen, one to a line. Press SPACE to return to the "XFORM:" prompt, with the formula ready to be edited or run again.

This example highlights a fundamental feature of the Formulator; any result or input value in a formula can be used anywhere else in the formula. In this case, the "PINTS" result is calculated, and then used in another calculation. It is not even necessary to arrange the calculations in the correct order, since the Formulator will work out which values must be prompted for. The previous example could have been written like this:

GALLONS=PINTS/8; PINTS=LITRES*1.76

and the Formulator would still realise that a value for "LITRES" is needed in order to calculate the "PINTS" and "GALLONS" results.

When two or more prompts are required, they will appear on the screen in turn, according to their position from left to right in the formula. This means that you can swap formulae around to change the order in which prompts appear.

A formula may contain up to 16 different prompts and result names, and up to 16 separate calculations.

If a formula produces more than two results, use ↑ and ↓ to move up or down the result list.

To save time and space, you can abbreviate any prompt or result name when you re-use it in a formula, as long as you use at least the first three characters of the name. In the previous example, the second occurrence of "PINTS" could have been replaced by "PIN" or "PINT", like this;

PINTS=LITRES*1.76; GALLONS=PIN/8

The Formulator will match things like "PIN" and "PINTS", no matter which order they appear in the formula. You should take care to ensure that you do not accidentally use two prompt names which are meant to be different but which match in this way. If, for example, you tried to run a formula containing prompts for "DAY" and "DAYLIGHT", the Formulator would treat them as one item, and only prompt for "DAYLIGHT".

When entering a formula, or typing a number in response to a prompt, you can use any expression which OPL allows, such as;

2 2+3 $18 SIN(5) PI**2 DATAGET%:(2,3)

These options are almost the same as those available in the calculator. "$18" is a hexadecimal number, while "PI" and "SIN()" are OPL functions. The last item in the list, "DATAGET%:(2,3)" is an example of a call to an existing OPL procedure.

You should ensure that none of your prompts conflict with the numeric OPL functions "PI", "SECOND", "MINUTE", "HOUR", "DAY", "MONTH", "YEAR", and "RND", or with the logical operators "AND", "OR", and "NOT". The Formulator would evaluate these in the same way that OPL does if your formula contained them. Similarly, you should not use "M0" to "M9" as prompts. They will be taken to be the names of the Organiser's calculator memories. Note that any numbers or prompts which you use logical operators on must be enclosed in brackets.

Refer to the OPL section of your Organiser manual for more information on the rules of the mathematical syntax.

To leave the Formulator, just press ON/CLEAR at the "XFORM:" prompt. This returns to the Organiser's main menu. If you then wish to free the memory used by the Formulator, remove the datapak and press ON/CLEAR.

FINDING AND SAVING FORMULAE

The Formulator has a menu to handle the finding, saving and erasing of formulae from any Organiser device (A:, B: and C:). These options are similar to those on the Organisers main menu, which commonly holds addresses and telephone numbers. The main menu options use a data file called "MAIN". The Formulator uses another data file, called "XFORM", to keep formulae in.

When at the "XFORM:" prompt you can save your formula to datapak or memory. For example, return to the "XFORM:" prompt and type this formula:

FEET=METRES*3.28

Press EXE to run it. You will be asked to enter the number of metres, and then the result in feet will be shown. Press SPACE to return with the formula to the "XFORM:" prompt. Now press MODE to display the "FIND"/"SAVE"/"ERASE" menu, and S to select the "SAVE" option. The "SAVE" prompt will appear, followed by the device name. Use MODE again, it necessary, to select device A:. At this point you can also, if you wish, re-edit the formula. Then press EXE, and your formula will be saved to the "XFORM" data file on device A:. The Formulator will then return to the "XFORM:" prompt with the formula ready to be run or edited again.

The "SAVE" option not only saves your formula but also searches from the start of the "XFORM" data file, trying to find an existing formula with the same left hand side (up to the first equals sign) as the formula you are Saving. The search is case-independent. If such a formula is found you are given the option to delete it, as well as saving the new one at the end of the data file. If you choose not to delete the existing formula, the new formula is just added.

For example, if you have saved the metres-to-feet formula above, type and save this formula:

FEET=METRES*3.28; YARDS=FEET/3

also to device A:. The Formulator will find that the first formula you saved also begins with "FEET=" and will display the prompt "Overwrite Y/N" on the bottom line. Press Y to delete the first formula and add this new one.

The quickest way to find a formula which has been saved is to use the "quick find" method. Type at the "XFORM:" prompt a small part of the formula you wish to find, as with the "FIND" command on the Organiser's main menu. Ensure that the search text you wish to find does not contain an equals sign. When you press EXE the Formulator will understand that you are not specifying a formula, since the text you have typed does not contain an equals sign, and will jump into the "quick find" option. The "XFORM:" prompt will change to "FIND:", followed by the device name, and the Formulator will begin to search the device for a formula which contains your search text. The search will be case-independent.

If you wish to change the device in use, press MODE. Note that, as well as changing the device, this will automatically perform a search on the new device for the text you have specified.

For example, if you saved the metres-to-feet formula in the previous section, type "METRES" at the "XFORM:" prompt. Press EXE to start the search, using the "quick find" method. If the device in use is not A:, use MODE to change device, searching at the same time. When the Formulator finds a formula which contains the search text that you typed it will display the formula on the bottom line of the screen. The metres-to-feet example would appear like this:

FIND A:METRES FEET=METRES*3.28; YARDS=FEET/3

In this case, the bottom line of the screen would scroll. You can now press EXE to run this formula, or ON/CLEAR to return to the "XFORM:" prompt with the formula, ready for editing.

In general, when you have found a formula you can if you wish press ↓ , and the Formulator will try to find the next formula which contains your search text. If you do search for further matches you can press ↑ to return to the previous matching formula. If there is only one formula which contains your search text, then these keys will have no effect. Note that if you search for a further match and the Formulator cannot find one between the current match and the end of the "XFORM" data file, it will start searching again from the start of the data file - just like the "FIND" option on the Organiser's main menu.

If the Formulator cannot find a formula which contains your search text, it will display "Not Found" on the bottom line. Pressing ON/CLEAR will in this case return to the "XFORM:" prompt with the search text.

It is also possible to find every formula on a particular device. To do this, just press EXE at the "XFORM:" prompt with nothing else on the screen, i.e. without having typed any search text.

There is also a "FIND" option on the Formulator menu, which may be used as an alternative to the "quick find" method. It operates in a very similar way to the "FIND" option on the Organiser's main menu. To select it just press MODE and F, use MODE if necessary to change device, then type your search text and press EXE. You should use this option instead of the "quick find" method if your search text contains an equals sign {since this makes the "quick find" method impossible), or if you prefer to be able to use EXE to search down the data file for further matches. When you have found the formula you want, press ON/CLEAR to return with it to the "XFORM:" prompt.

The "ERASE" option on the menu acts in a similar way to the "FIND" option. To use it, first press MODE and E when at the "XFORM:" prompt, and press MODE if necessary to change the device. Then type a small part of the formula you wish to erase, and press EXE. For example, to erase the metres-to-feet formula from the previous section, use something like "METRES" or "FEET".

The Formulator will now try to find a formula which contains your search text, and if it is successful it will display that formula on the screen. You can use EXE at this point, if necessary, to search for different matching formulae. When you have found the metres-to-feet formula, press DEL, and confirm this by pressing Y. The formula will be deleted and the next one containing your search text will be looked for. In this example, the Formulator should find no more matches, and display "Not Found" on the bottom line. Press ON/CLEAR to leave the "ERASE" option and return to the "XFORM:" prompt.

ADVANCED FEATURES

Any result from a formula may be displayed to a given number of decimal places. To do this, follow the result name with the number of decimal places required (from 0 to 9), separated by a colon. For example, the following formula:

PINTS:2=LITRES*1.76

will convert the number of litres you specify into pints, and display the result to two decimal places. This only affects the final display of the results, not the calculations involved, which are always performed to 12 digit accuracy.

If a result name is followed by just a colon without a number, the result will be calculated as normal but will not be shown in the final display of results. This can be useful when a formula needs to calculate an intermediate result for use later on in the formula. For example, when calculating the area of a triangle from the lengths of its sides, the value of half the sum of the lengths must be calculated, and then used several times in the final calculation. A suitable formula for this is as follows:

HS:=(S1+S2+S3)/2; AREA=SQR(HS*(HS-S1) *(HS-S2)*(HS-S3))

Note that this formula would be typed in all on one line.

In this formula. "HS" stands for half the sum of the sides. Since it is followed by a colon it will be treated as an intermediate result, and will not be shown in the final display of results. "S1", "S2" and "S3" are the three side lengths which the Formulator would prompt for.

As mentioned in chapter 2, the order of the calculations in your formula may be changed to change the order in which values are prompted for. There may be cases, however, where it is difficult to rearrange a formula to achieve the desired order of prompts. In such a case you can use the intermediate result technique for this purpose. To ensure that one value, say, "LITRES", is prompted for before any other, you can begin your formula with the following calculation:

:=LITRES;

This calculation uses an intermediate value without a result name, purely to ensure that the name on the right of the equals sign (which would be used elsewhere in the formula) is the first value prompted for.

Any formula may begin with a title which will be
displayed before the list of results. **This is very
helpful as a reminder or confirmation to you when
using the formula and, equally importantly, it is
ideal to use as search text when finding a formula.**
Many of the supplied formulae begin with a helpful
title, as explained in the next chapter.

A title may contain any combination of characters, except those such as the equals sign which are significant to the Formulator. The title is separated from the rest of the formula by a comma. For example, the litres-to-pints formula could be rewritten as follows:

LITRES>PINTS,PINTS=LITRES*1.76

When the Formulator runs this formula, the title "LITRES>PINTS" will be displayed before the list of results.

USING THE SUPPLIED FORMULAE

You will probably want to use some of the formulae which are supplied on the datapak. As explained in chapter 3, they are stored in an ordinary data file, called "XFORM". For example, this data file contains several formulae to convert between different units of volume, including one to convert from litres to pints. Just like the example formula in chapter 7, this formula will ask you to specify a number of litres, and then display a list of conversion results. Its title is "litres>", since it converts from litres to other units. All of the conversion formulae have titles like this. To find this formula the "FIND" option from the menu could be used, but the "quick find" method described in chapter 3 is even easier. Just type:

LITRES>EXE

at the "XFORM:" prompt. This immediately goes into the "quick find" option, since the text you have typed does not contain an equals sign. If the device is not the one containing the datapak, use MODE to change it. Remember that using MODE will change the device and also perform a search on it.

The formula, which is a little more complicated than the example in this manual, will now be displayed on the bottom line. To run this formula, press EXE. It will produce a list of results which can be examined by using ↑ and ↓ . It includes the number of litres you specified, with the result name "(Litres)" to confirm that you typed the correct value. Note that the calculation "Litres=Litres" cannot be used to force the Formulator to display "Litres" as a result, since this would be a form of "circular reference" - the "Litres" value would depend on itself. See the appendix on error messages for more details. This is the reason why the supplied formulae use brackets in the result names in such cases.

In practice, you may well wish to copy some of the supplied formulae from the datapak into the internal memory of your Organiser (device A:) Storing the formulae you want on device A: means that you can remove the Formulator datapak if you wish. It will also make the Formulator considerably faster when finding and saving formulae, and you will not waste datapak space if you re-edit formulae.

Even if your Organiser has a lot of free memory, it is not a good idea to copy the entire "XFORM" data file to A:, since filling up memory will affect calculation speed. It is better to copy the formulae you want, one by one. For example, you could copy the supplied formula which converts litres to other units of volume. First, find the formula on the Formulator datapak. To use the "quick find" method, as in the previous section, type:

LITRES> EXE

at the "XFORM:" prompt. Use MODE if necessary, to select the device which contains the datapak. Remember that using MODE will change the device and also perform a search on it.

The formula should now be displayed on the bottom line. Press ON/CLEAR to return to the "XFORM:" prompt with the formula you have found. At this stage you can, if you wish, re-edit it. Now press MODE and S to enter the "SAVE" option, and use the MODE key to select device A:. When you press EXE, the formula will be saved to the "XFORM" data file on device A:. The Formulator will then return to the "XFORM:" prompt with the formula ready to be run or edited again.

It is quite safe to experiment with formulae on A:, since the original data file still exists as a backup on the Formulator datapak.

A few of the supplied formulae use OPL programs which are supplied on the datapak. To copy these formulae to device A: and run them from there, either copy their OPL programs as well or leave the datapak plugged in. If you do remove the datapak you should take care to avoid pressing ON/CLEAR while at the Organiser's main menu, since this will remove the "XFORM" option and the Formulator will then need to be reloaded from the datapak.

If you wish to make substantial changes either to the supplied formulae or to your own formulae, you can use Psion's Comms Link product to transfer the "XFORM" data file to a desktop PC You can then edit or add to the formulae on your PC, before using Comms Link to transfer the new data file back to your Organiser. Alternatively, OPL programs may be used to modify the "XFORM" data file.

Although a long formula may at first glance look daunting, you can easily understand it by following a few simple rules.

First, see if the formula begins with a title, which should explain what it is trying to do. Then look for the semicolons in the formula, which separate the calculations, and look at each calculation in turn, working from left to right. The calculations will in general proceed in this order.

Each calculation will contain a result name followed by an equals sign. If the result name is followed by just a colon, it is an intermediate result to be calculated for use elsewhere in the formula, and will not be shown in the final list of results. If, however, the colon is followed by a digit, it is a result which will be displayed to that number of decimal places.

The text on the right of the equals sign will be the sum to calculate. It may contain names whose values will be prompted for, and/or names whose values are calculated elsewhere in the formula.

There follows a list of the functions provided by the
supplied formulae. To help you find the one you want,
the titles and key words which may be used as
suitable search text are in bold type below. **When you
find formulae which match your search text, don't
be afraid to try them out, to see which values they
prompt for and which results they produce.** Some
of the suggested search text below will find more than
one formula.

Be careful to ensure that any formula you use matches the requirements you have. You may also wish in some circumstances to change the number of decimal places used when displaying certain results. Similarly, note that although all calculations are performed to 12 digit accuracy, many of the constants used in the formulae have less than 12 digits - again, adjust them if you require greater accuracy

The data file begins with financial formulae, some of
which are specific to the U.K. They can be adjusted, if
necessary, to suit your particular needs. They include
conversion between **price, net** and **VAT** (**UK 15%**
sales tax); **mark up** and **discount**; **compound
interest**, **current value**, **annuity** future and current,
**loan repayment** and **APR**, **repayment mortgage**,
**endowment mortgage** and **take home pay**.

The UK 15% sales tax formulae (for VAT) are followed
by the corresponding formulae for **France 18.6%**,
**France 33%**, **Germany 14%**, **Austria 20%**, **Portugal
16%**, **Spain 12%**, **Italy 18%**, **Belgium 19%**, **Holland
20%**, **Turkey 12%** and **Morocco 19%**. The UK
formulae may be easily modified for use with a local
US sales tax - just replace every occurrence of "15"
in the formula by the correct percentage tax.

For the financial formulae involving interest rate, the prompt "Incrs Per Year" refers to the number of times per year the accrued interest is added to the capital sum. This might be daily, weekly, monthly, quarterly or yearly. The mortgage repayments calculate the repayments first with no allowance for tax, and then under MIRAS, assuming the standard rate of tax (27%) is paid. Additional payments will probably be required, so you should consult the lending institution for the total cost. The "take home pay" formula applies to the UK, in the year 1987/88, assuming non-contracted out N.I. contributions, and only covers the 27% tax bracket. Because of rounding errors and discrepancies between weekly and monthly paid N.I. contributions the result may be inaccurate by a few pence. Again, you may wish to adjust the formula for future years or other situations. Note that by convention when a formula prompt ends with a percentage sign you should type in a percentage, not a fraction. For example, to specify 75% in such a situation, you should type "75", not "0.75".

The next formula is a number converter. You can only give it as input a simple decimal integer, octal integer (prefixed by the letter 'O'), or hexadecimal integer (prefixed by '$'). It then lists the number in all three notations.

Then comes a group of formulae covering functions
and statistical formulae in mathematics. This includes
**factorial**, **Gamma** function, **Beta** function, **Bessel**
function of the 1st kind, **Euler** numbers, **Bernoulli**
numbers, Rieman **Zeta** function, and **Chebyshev**
polynomial (1st and 2nd) for values between zero and
one; **binomial coef**ficient, **binomial dist**ribution,
**Poisson prob**ability, **chi**-squared distribution,
Student's **t dist**ribution and **normal prob**ability.

Some of the above formulae may take some time to execute since they rely on the convergence of series. Remember that you can always exit from a calculation by pressing ON/CLEAR and Q .

Still in mathematics, the next group contains geometry
formulae. These are **triangle** sizes (**SAS** for specifying
side-angle-side, **SAA** for side-angle-angle and **SSS** for
side-side-side), **triangle area**, **regular polygon** (from
**edge length**, **short radius** and **long radius**), **circle**,
**sphere**, and **cone** (from **height** and **slant**).

There then follow conic formulae: two formulae for
calculating the Y and X of a **parabola**, three for the Y,X
and eccentricity of an **ellipse**, and three for the Y,X and
eccentricity of a **hyperbola**.

Next come **asin**, **acos**, **hyperbolic** functions, **sum
arithmetic series**, **sum geometric series**, **real
quadratic** (equation with real solutions), **complex
quadratic** (equation with imaginary solutions),
**complex** arithmetic (**add**, **subtract**, **multiply**, **divide**,
**exp**, **sinh** and **cosh**), **polar coords** (to and from
cartesian), **polar** arithmetic (**add**, **multiply** and
**divide**), **spherical coords** (to and from cartesian),
vector **dot product** and vector **cross product**.

The next group is a long series of conversions. In each case, the units which are converted from are also the title of the formula, followed by a '>' character. They are grouped together below, separated by semicolons, according to the outputs that are produced. So if, for example, you want to use the formula to convert from metres to microns, you will want the second formula whose title is "metres>", since it occurs in the group which converts microns, angstroms, fermis and metres. The titles are

**inches>**, **feet>**, **yards>**, **miles>**,
nautical miles (**nmiles>**), **metres>** and **km>**;
**fathoms>**, **yards>** and **metres>**;
**microns>**, **angstroms>**, **fermis>** and **metres>**;
**Au>**(astronomic units), **light years>**, **parsec>**
and **metres>**;
**BMU>**, **points>**, **picas>**, **inches>** and **cm>**;
**sq inches>**, **sq feet>**, **sq yards>**, **acres>**,
**sq miles>**, **sq metres>**, **hectares>** and **sq km>**;
**fl ounces>**, **pints>**, **gallons>**, **litres>**,
**US gallons>** and **barrels>**;
**cu inches>**, **cu feet>**, **cu yards>**, **cc>** and **litres**;
**ounces>**, **pounds>**, **stone>**, **CWT>**, **short tons>**,
**long tons>**, **kg>** and **tonnes>**;
**sec of arc>**, **min of arc>**, **degrees>** and **radians>**;
**seconds>**, **minutes>**, **hours>**, **days>**,
**weeks>** and **years>**;
**MPH>**, **FPS>** (feet per second), **KPH>**,
**metres/sec>** and **knots>**;
**poundals>**, **lbf>** and **newtons>**;
**dynes>** and **newtons>**;
**joules>**, **ergs>**, **calories>**, **therms>**,
**btu>** and **KWH>**;
**joules>**, **eVolt>**, **Hertz>**, **Kelvin>** and **kg>**;
**PSI>** (pounds per square inch), **Pascals>**,
**Kilopascals>**,** mmHg>**, **inHg>** and **Millibars>**;
**Tesla>** and **Gauss>**;
**Curie>** and **Becquerel>**;
**Rads>** and **Gray>**;
**Horsepower>** and **Watts>**;
**RPM>** and **Hertz>**;
**Fahrenheit>**, **Celsius(centigrade)>**
and **Kelvin>**;
electron masses (**em>**), proton masses (**pm>**),
neutron masses (**nm>**) and **Kg>**.

UK nautical miles have been used, which are equal to 6080 ft. International nautical miles are 1852 metres, so one UK nautical mile is approximately equal to 1.00064 international nautical miles. IT calories have been used, equal to 4.1868 joules. Thermodynamic calories are 4.1840 joules.

The next section is concerned with physical and
chemical formulae. It covers **Watts** (from Amps and
Volts, Amps and Ohms, and Volts and Ohms), **Joules**
(from farads and volts), **Farads** (from Joules and volts),
Volts (from amps and ohms), **Amps** (from volts and
ohms) and **Ohms** (from volts and amps); **const
acc**eleration formulae (where units are unspecified
they should be determined by the user), including
**velocity** (from either time or distance), **distance** (from
either time or final velocity), and **energy** (from initial
and final velocity); some fundamental relationships
including **force** (from mass and acceleration),
**momentum** (from velocity and mass), **final speed**
when two objects moving in the same direction
collide, **circular motion** acceleration (from velocity
and radius) and **centripetal force** (from velocity, radius
and mass); unit definitions for **Joules** (from newtons
and metres) and **newtons** (from Kilograms and
acceleration); lens **focal length** (from image and
object distance) and **image dist**ance (from object
distance and focal length); **pendulum period** (from
pendulum length); **earth satellite** velocity and period
(from height); Resistance value of two, three and four
resistors in parallel (**resistance 2**, **resistance 3** and
**resistance 4**); **charge growth** and **charge decay** for
an RC circuit; **Amps growth** and **Amps decay** for an
RL circuit; **Volts**, **Amps** and **Impedance** for an AC
series circuit, **resonant frequency** for an LC circuit
and **Coulombs Law** for **force**, **energy** and **voltage**;
**pressure** and **volume** from **Boyles law**; **Adiabatic
gas law** and **Ideal gas law**; **Joules** from **expanding
gas (isothermal)** and **expanding gas (adiabatic)**;
**Rads/hour** (from Curies, MeVolts and metres) and
**radiation** decay (from initial radiation, half life of
source and time); and **denier** (from Kilograms and
metres), **Kg** (from deniers and metres) and **metres**
(from deniers and Kilograms).

Next come navigational formulae including **radar
range**, **sea horizon**, **extreme range** and approximate
**barometer correction** (each from feet and metres),
**true speed** and **bear**ing (from apparent speed,
apparent bearing, drift speed and drift bearing) and
**apparent speed** and **bear**ing (from true speed, true
bearing, drift speed and drift bearing).

The list of formulae ends with **new exposure** time for
photo printing (from old exposure, old distance from
lens and new distance from lens), and **wall area**,
ceiling and total area of a rectangular room (from
width, length and height).

A few of the formulae (the APR formula, the number
converter and some of those concerning statistics and
probability) do use OPL programs which are supplied
on the datapak. You can still copy these formulae to
device **A:** and run them from there, as long as you
either copy their OPL programs as well, or leave the
datapak plugged in.

Psion has a policy of continuous product development.

If you have any formula ideas which you think would be suitable for future releases of the Formulator. please write to:

Formulator Research, Marketing Dept., Psion PLC, Psion House, Harcourt St., LONDON, W1H 1DT

Psion will send you a copy of a new release of the Formulator if it includes an original suggestion of yours.

THE FORMULATOR AND OPL

Once the "XFORM" option has been added to the Organiser's main menu a new command, "XFORM:", is added to OPL. To use it, pass it a formula to run.

As an example, you could write a simple OPL program to call the Formulator with a VAT formula, then install this program on the Organiser's main menu. To do this, first return to the main menu, move the cursor to the "PROG" option, and press EXE. The OPL menu will now be displayed. Press N to choose the "new procedure" option, and press MODE, if necessary, to change the device to A:. Now type:

VAT EXE

to begin editing a new procedure called "VAT". Then press EXE to start a new line, and type all on one line:

XFORM:("VAT:2=PRICE*3/23;NET:2=PRI-VAT")

This is in fact very similar to the supplied VAT formula; when run, it will ask you for a price, and then break the price down into "NET" and "VAT".

When you have typed this, press MODE to display the procedure-saving menu, and select the "TRAN" option. This will translate your procedure, ready for running. It will then prompt you with "SAVE A:VAT", and when you press EXE your procedure will be saved.

Finally, return to the main menu on your Organiser (by using ON/CLEAR), and press MODE. This will prompt you with "INSERT ITEM", asking you for the name of the new item to put on the menu. Just type:

VAT EXE

and a new option, "VAT", will appear on your main menu. Whenever this option is selected in future, it will run the OPL program called "VAT" which you have just written and saved.

The "XFORM:" command can also be called in OPL with text which does not contain an equals sign, to be used as a search text. This will use the "quick find" method, just as if it had been typed in at the "XFORM:" prompt, searching through the "XFORM" data file for a formula which contains the search text. You can then use ↑ and ↓ to search for different formulae, or MODE to change the device. When you hit EXE, the Formulator will execute the formula, and then return to OPL. If you hit ON/CLEAR while using this "quick find" method, you will return to OPL without having run a formula.

ERROR MESSAGES

If a formula contains a "circular reference" such as the "LITRES" result depending on "PINTS" while the "PINTS" result depended on "LITRES", the Formulator will be unable to find a place to begin calculation and will display an error message ("CIRCULAR REF") on the top line of the screen. One of the names in the circular reference will be displayed on the bottom line. If this happens, press SPACE to Continue.

A formula may contain up to 16 different prompts and result names. If this limit is exceeded, a "TOO MANY NAMES" error message will be displayed. If a formula assigns to the same result name twice, a "REPEATED RESULT" message appears.

Several other Organiser error messages may appear when the Formulator executes a formula, according to the calculations you specify. There follows a list of the commonest which the Formulator may display.

1. STRING TOO LONG - the result list has exceeded 254 characters in length, counting one character for the end of every line.

2. OUT OF MEMORY the Formulator has run out of memory while trying to calculate a formula.

3. DIVIDE BY ZERO - division by zero was attempted, e.g. specifying "0" payments per year in the loan repayments formula.

4. SYNTAX ERROR - a formula was executed which was incorrectly entered and could not be calculated.

5. BAD FN ARGS - the arguments to a function are illegal or of the wrong type, such as "sin(x,y)".

6. MISSING PROC - a formula referred to a procedure which does not exist anywhere on the Organiser. This could be caused, for example, by copying an OPL- dependent formula to A: and running it from there when the datapak containing the OPL program has been removed.

7. FN ARGUMENT ERR - an invalid input was used, such as entering "2" as input to the ACOS formula.

8. BAD CHARACTER - an invalid character such as "%" has been used.

9. BAD NUMBER - a meaningless number, such as "2.3.4" has been used, or an invalid number of decimal places was specified for the display of a result

10. MISMATCHED ()'s - the left and right brackets in a formula do not match up.

11. EXPONENT RANGE - a number is too large to be held, e.g. the factorial of 100.

12. BAD DEVICE CALL - an attempt has been made to call the Formulator either from within itself or from within the calculator.

13. TYPE MISMATCH or MISMATCHED " - one or more quote characters (") have been used.

THE SUPPLIED FORMULAE

The following pages contain a complete list of the supplied formulae whose functions are listed in chapter 5. Note that many of them extend over more than one line.

UK 15%,VAT:2=Price*(.15/1.15);Net:2=Price-VAT;(Price):2=Price

UK 15%,Price:2=Net*1.15;VAT:2=Price-Net;(Net):2=Net

France 18.6%,TVA:2=Prix*(.186/1.186);Net:2=Prix-TVA;(Prix):2=Prix

France 18.6%,Prix:2=Net*1.186;TVA:2=Prix-Net;(Net):2=Net

France 33%,TVA:2=Prix*(.33/1.33);Net:2=Prix-TVA;(Prix):2=Prix

France 33%,Prix:2=Net*1.33;TVA:2=Prix-Net;(Net):2=Net

Germany 14%,MWSt:2=Preis*(.14/1.14);Netto:2=Preis/1.14;(Preis):2=Preis

Germany 14%,Preis:2=Netto*1.14;MWSt:2=Preis-Netto;(Netto):2=Netto

Austria 20%,MWSt:2=Preis*(.20/1.20);Netto:2=Preis/1.20;(Preis):2=Preis

Austria 20%,Preis:2=Netto*1.20;MWSt:2=Preis-Netto;(Netto):2=Netto

Portugal 16%,IVA:2=Preco*(.16/1.16);Liquido:2=Preco/1.16;(Preco):2=Preco

Portugal 16%,Preco:2=Liquido*1.16;IVA:2=Preco-Liquido;(Liquido):2=Liquido

Spain 12%,IVA:2=Precio*(.12/1.12);Neto:2=Precio/1.12;(Precio):2=Precio

Spain 12%,Precio:2=Neto*1.12;IVA:2=Precio-Neto;(Neto):2=Neto

Italy 18%,IVA:2=Prezzo*(.18/1.18);Netto:2=Prezzo/1.18;(Prezzo):2=Prezzo

Italy 18%,Prezzo:2=Netto*1.18;IVA:2=Prezzo-Netto;(Netto):2=Netto

Belgium 19%,BTW:2=Prijs*(.19/1.19);Netto:2=Prijs/1.19;(Prijs):2=Prijs

Belgium 19%,Prijs:2=Netto*1.19;BTW:2=Prijs-Netto;(Netto):2=Netto

Holland 20%,BTW:2=Prijs*(.20/1.20);Netto:2=Prijs-BTW;(Prijs):2=Prijs

Holland 20%,Prijs:2=Netto*1.20;BTW:2=Prijs-Netto;(Netto):2=Netto

Turkey 12%,KDV:2=Fiat*(.12/1.12);Net:2=Fiat-KDV;(Fiat):2=Fiat

Turkey 12%,Fiat:2=Net*1.12;KDV:2=Fiat-Net;(Net):2=Net

Morocco 19%,TVA:2=Prix*(.19/1.19);Net:2=Prix-TVA;(Prix):2=Prix

Morocco 19%,Prix:2=Net*1.19;TVA:2=Prix-Net;(Net):2=Net

Price:2=Cost*(1+Mark Up%/100);(Cost):2=Cost

Sale Price:2=Price*(1-Discount%/100);(Price):2=Price

Compound Interest,Balance:2=Deposit*(1+Annual Rate%/(100*Incrs Per Year))**(Years*Inc)

Current Value,:2=Future Value*(1+Annual Rate%/(100*Incrs Per Year))**(-Years*Inc)

Annuity Value,Future:2=Annual Amount*(((1+Annual Rate%/(100*Incrs per Year))**(Years*Incr)-1)/(Annual R/100));Current:2=Annual A*((1-(1+Annual R/(100*Incr))**(-Years*Incr))/(Annual R/100))

Loan Repayment,:=Loan;Rate:=Annual Rate%/(100*Number Payments per Year);:2=Loan*Rate/(1-(1+Rate)**-(Years*Number))

Loan Repayment(APR),:=Loan;Rate:=(1+APR%/100)**(-1/Number Payments per Year);:2=Loan*((1-Rate)/(1-Rate**(Years*Number))/Rate)

APR%:1=apr:(Loan/Payment,Number Payments per Year,Years)

Repayment Mortgage,:=Loan;Rate:=Annual Rate%/100;X:=(1+Rate)**Years;Monthly :2=Loan*Rate*X/(12*(X-1));Z:=1+Rate*.75;Z1:=Z**Years;Monthly(MIRAS):2=-(Loan<=30000)*(Loan*Z1*(Z-1)/(Z1-1)/12)-(Loan>30000)*(Monthly -625*Rate)

Endowment Mortgage - does not include policy premiums,:=Loan;Rate:=Annual Rate%/1200;Monthly :2=Rate*Loan;Z:=Loan+(Loan>30000)*(Loan-30000);Monthly(MIRAS):2=(Loan-.25*(Loan+(Loan>30000)*(Loan-30000)))*Rate

Take Home Pay(87),AP:=Annual Salary*(1-Pension%/100);NI:=-.05*AP*(AP>=2028)-.02*AP*((AP>=3384)+(AP>=5208))+.09*(AP-15348)*(AP>15348);TB:=AP-Allowance;Tx:=-.27*TB*(TB>0);Pay:2=(AP-NI-Tx)/12;Tax:2=Tx/12;N.I.:2=NI/12;Pension Cont:2=(Annual-AP)/12

Converter,:=Hex:

Factorial,=fact:(int(r));(r)=int(r)

Gamma:4=Gamma:(n);(n)=n

Beta:4=Gamma:(n)*Gamma:(m)/Gamma:(n+m);(n)=n;(m)=m

Bessel:4=JBessel:(n,x);(n)=n;(x)=x

Euler=euler:(int(n));(n)=int(n)

Bernoulli=bernli:(int(n));(n)=int(n)

Zeta=zeta:(int(n));(n)=int(n)

Chebyshev Poly 1st,Y:=atan(sqr((1/(x*x))-1));:8=cos(n*Y)

Chebyshev Poly 2nd,Y:=atan(sqr((1/(x*x))-1));:8=sin((n+1)*Y)/sin(Y)

Binomial Coefs,=binomial:(int(n),int(r));(n)=int(n);(r)=int(r)

Binomial Dist,=binomial:(int(n),int(r))*(p**r)*((1-p)**(n-r));(n)=int(n);(r)=int(r);(p)=p

Poisson Prob,=exp(-a)*(a**int(r)/fact:(int(r)));(a)=a;(r)=int(r)

Chi:4=Chi:(p%,n);(p%)=p%;(n)=n

t Dist,Certainty%:4=100*Tdist:(int(n),x);(n)=int(n);(x)=x

Normal Prob:4=normal:(x);Ordinates:4=exp(-x*x/2)*.39894;(x)=x

Triangle SAS,Side1=S1;:=A3;Side2=S2;Side3=sqr(S1*S1+S2*S2-2*S1*S2*cos(rad(A3)));t:=deg(atan(sqr((1/(1-(sin(rad(A3))/Side3*S1)**2))-1)));Angle1:2=t-(s1*s1>s2*s2+Side3*Side3)*(180-t-t);Angle2:2=180-A3-Angle1;Angle3:2=A3;Area=S1*S2*sin(rad(A3))/2

Triangle SAA,Side1=S1;:=A1;:=A2;Side2=S1/sin(rad(A1))*sin(rad(A2));Side3=S1/sin(rad(A1))*sin(rad(180-A1-A2));Angle1:2=A1;Angle2:2=A2;Angle3:2=180-A1-A2;Area=S1*Side2*sin(rad(Angle3))/2

Triangle SSS,Side1=S1;Side2=S2;Side3=S3;X:=(S1+S2+S3)/2;Y:=sqr((X*(X-S1))/(S2*S3));Z:=sqr((X*(X-S2))/(S1*S3));Angle1:2=2*deg(atan(sqr((1/(Y*Y))-1)));Angle2:2=2*deg(atan(sqr((1/(Z*Z))-1)));Angle3:2=180-Angle1-Angle2;Area=S1*S2*sin(rad(Angle3))/2

Triangle Area,P:=(S1+S2+S3)/2;=SQR(P*(P-S1)*(P-S2)*(P-S3))

Regular Polygon,Area=Edge Len*Edge*No Sides*cos(pi/No S)/(sin(pi/No S)*4);Perimeter=Edge*No S;(Edge Len)=Edge;Long Radius=sqr(Short Radius*Short+Edge*Edge/4);Short=2*Area/(No S*Edge)

Regular Polygon,Area=Long Radius*Long*No Sides*sin(2*pi/No S)/2;Perimeter=2*No S*Long*sin(pi/No S);Edge Len=Perimeter/No S;(Long Radius)=Long;Short Radius=sqr(Long*Long-Edge*Edge/4)

Regular Polygon,Area=Short Radius*Short*No Sides*tan(pi/No S);Perimeter=2*No S*Short*tan(pi/No S);Edge Len=Perimeter/No S;Long Radius=sqr(Short*Short+Edge*Edge/4);(Short Radius)=Short

Circle,Circumference:2=2*pi*Radius;Area:2=pi*Radius*Radius

Sphere,Surface:2=Radius*Radius*4*pi;Volume:2=Radius*Radius*Radius*pi*4/3

Cone,:=Height;Slant:2=sqr(Radius*Radius+Height*Height);Surface:2=Radius*(Slant+Radius)*pi;Volume:2=Radius*Radius*Height*pi/3;(Height)=Height;(Radius)=Radius

Cone,:=Slant;Height:2=sqr(-Radius*Radius+Slant*Slant);Surface:2=Radius*(Slant+Radius)*pi;Volume:2=Radius*Radius*Height*pi/3;(Slant)=Slant;(Radius)=Radius

Parabola,Y(+/-)=sqr(4*Focus*X);Directrix X=-Focus;(Focus)=Focus;(X)=X

Parabola,X=1/(4*Focus)*Y*Y;Directrix X=-Focus;(Focus)=Focus;(Y)=Y

Ellipse,Y(+/-)=sqr(1-X*X/(a*a))*b;(X)=X;(a)=a;(b)=b

Ellipse,X(+/-)=sqr(1-Y*Y/(b*b))*a;(Y)=Y;(a)=a;(b)=b

Ellipse,Eccentricity=sqr(1-(1/(a*a)*b*b));Focus(+/-)=Ecc*a;Directrix X(+/-)=a/Ecc;Area=pi*a*b;(a)=a;(b)=b

Hyperbola,Y(+/-)=sqr((X*X/(a*a))-1)*b;(X)=X;(a)=a;(b)=b

Hyperbola,X(+/-)=sqr(1+(Y*Y/(b*b)))*a;(Y)=Y;(a)=a;(b)=b

Hyperbola,Eccentricity=sqr((1/(a*a)*b*b)+1);Focus(+/-)=Ecc*a;Directrix X(+/-)=a/Ecc;(a)=a;(b)=b

Asin:2=deg(atan(x/sqr(1-x*x)));(x)=x

Acos:2=deg(atan(sqr((1/(x*x))-1)));(x)=x

Hyperbolics,Y:=exp(x);Z:=exp(-x);COSH=(Y+Z)/2;SINH=(Y-Z)/2;TANH=1-2/(exp(2*X)+1);(x)=x

Sum Arithmetic Series,=(First Term+Last Term)*No of Terms/2

Sum Arithmetic Series,=First*No of Terms+Increment*No of T*(No of T-1)/2

Sum Geometric Series,:2=First*(1-R**No of Terms)/(1-R)

Real Quadratic,:=a;R:=sqr(b*b-4*a*c);X1:8=(-b+R)/(2*a);X2:8=(-b-R)/(2*a);(a)=a;(b)=b;(c)=c

Complex Quadrtic,:=a;I:=sqr(-b*b+4*a*c);Real:8=-b/(2*a);Imag(+/-):8=I/(2*a);(a)=a;(b)=b;(c)=c

Complex Add,:=a;:=b;:=c;:=d;Real=a+c;Imag=b+d

Complex Subtact,:=a;:=b;:=c;:=d;Real=a-c;Imag=b-d

Complex Multiply,:=a;:=b;:=c;:=d;Real=a*c-b*d;Imag=a*d+b*c

Complex Divide,:=a;:=b;:=c;:=d;X:=c*c+d*d;Real=(a*c+b*d)/X;Imag=(b*c-a*d)/X

Complex Exp,X:=exp(a);Real:9=X*cos(b);Imag:9=X*sin(b)

Complex Sinh,X:=exp(a);Y:=exp(-a);Real:9=(X*cos(b)-Y*cos(-b))/2;Imag:9=(X*sin(b)-Y*sin(-b))/2

Complex Cosh,X:=exp(a);Y:=exp(-a);Real:9=(X*cos(b)+Y*cos(-b))/2;Imag:9=(X*sin(b)+Y*sin(-b))/2

Polar Coords,r=sqr(x*x+y*y);Z:=deg(atan(y/x))-180*(x<0);theta:4=Z-(Z<0)*360;(x)=x;(y)=y

Polar Coords,x=r*cos(rad(theta));y=r*sin(rad(theta));(r)=r;(theta)=theta

Polar Add,:=r1;T1:=theta 1;:=r2;T2:=theta 2;Z:=pi-rad(T1-T2);r3=sqr(r1*r1+r2*r2-2*r1*r2*cos(Z));X:=T1+(1+2*(((T2<T1)and((T2+180)>T1))or((T2>T1)and(T2>(T1+180)))))*deg(atan(sqr((1/(1-(sin(Z)/r3*r2)**2))-1)));theta 3:4=X+360*((X>=360)-(X<0))

Polar Multiply,:=r1;T1:=theta 1;:=r2;T2:=theta 2;r3=r1*r2;Z:=T1+T2;theta 3:4=Z+(Z>360)*360

Polar Divide,:=r1;T1:=theta 1;:=r2;T2:=theta 2;r3=r1/r2;Z:=T1-T2;theta 3:4=Z-(Z<0)*360

Spherical Coords,:=x;:=y;:=z;r=sqr(x*x+y*y+z*z);A:=deg(atan(y/x))-180*((Y<0)and(X<0));phi:4=A-360*(A<0);B:=z/r;C:=deg(atan(sqr((1/(B*B))-1)));Theta:4=(C-180)*(z<0)-C*(z>0);(x)=x;(y)=y;(z)=z

Spherical Coords,:=r;P:=rad(phi);T:=rad(theta);x=r*sin(T)*cos(P);y=r*sin(T)*sin(P);z=r*cos(T);(r)=r;(phi)=phi;(theta)=theta

Dot Product,:=A1;:=A2;:=A3;:=B1;:=B2;:=B3;=A1*B1+A2*B2+A3*B3

Cross Product,:=A1;:=A2;:=A3;:=B1;:=B2;:=B3;i=A2*B3-A3*B2;j=A3*B1-A1*B3;k=A1*B2-A2*B1

Inches>,(Inches):2=Inches;Feet:2=Inches/12;Yards:2=Feet/3;Miles:2=Yards/1760;Naut Miles:2=Feet/6080;metres:2=Inch*.0254;Kilometres:2=metres/1000

Feet>,Inches:2=Feet*12;(Feet):2=Feet;Yards:2=Feet/3;Miles:2=Yards/1760;Naut Miles:2=Feet/6080;metres:2=Feet*.3048;Kilometres:2=metres/1000

Yards>,Inches:2=Yards*36;Feet:2=Yards*3;(Yards):2=Yards;Miles:2=Yards/1760;Naut Miles:2=Feet/6080;metres:2=Yards*.9144;Kilometres:2=metres/1000

Miles>,Inches:2=Miles*63360;Feet:2=Miles*5280;Yards:2=Miles*1760;(Miles):2=Miles;Naut Miles:2=Feet/6080;metres:2=Miles*1609.343;Kilometres:2=metres/1000

NMiles>,Inches:2=NMiles*72960;Feet:2=NMiles*6080;Yards:2=Feet/3;Miles:2=Yards/1760;(Naut Miles):2=NMiles;metres:2=NMiles*1853.183;Kilometres:2=metres/1000

Metres>,Inches:2=metres*39.3701;Feet:2=metres*3.28084;Yards:2=metres*1.0936146;Miles:2=metres*6.213717e-4;Naut Miles:2=metres*5.39612e-4;(metres):2=metres;Kilometres:2=metres/1000

Km>,Inches:2=Km*39370.1;Feet:2=Km*3280.84;Yards:2=Km*1093.6146;Miles:2=Km*.6213717;Naut Miles:2=Km*.539612;metres:2=Km*1000;(Kilometres):2=Km

Fathoms>,(Fathom)=Fathoms;Yards=Fathoms*2;Metres:2=Fathoms*1.8288

Yards>,Fathom=Yards/2;(Yards)=Yards;Metres:2=Yards*.9144

Metres>,Fathom:2=metres*.5468;Yards:2=Fathom*2;(metres)=metres

Microns>,(Microns):4=Microns;Angstroms:4=Microns*1e4;Fermis:4=Microns*1e9;Metres:4=Microns*1e-6

Angstroms>,Microns:4=Angstroms*1e-4;(Angstroms):4=Angst;Fermis:4=Angst*1e5;Metres:4=Angst*1e-10

Fermis>,Microns:4=Fermis*1e-9;Angstroms:4=Fermis*1e-5;(Fermis):4=Fermis;Metres:4=Fermis*1e-15

Metres>,Microns:4=metres*1e6;Angstroms:4=metres*1e10;Fermis:4=metres*1e15;(metres):4=metres

Au>,(Astronomic units)=Astronomic units;Light Years=Astro*1.58e-5;Parsecs=Astro*4.85e-6;Metres=Astro*1.496e11

Light Years>,Au=Light Years*63242;(Light Years)=Light;Parsecs=Light*.3068;Metres=Light*9.461e15

Parsecs>,Au=Parsecs*206150;Light Years=Parsecs*3.26;(Parsecs)=Parsecs;Metres=Parsecs*3.084e16

Metres>,Au=Metres*6.6845e-12;Light Years=Metres*1.057e-16;Parsecs=Metres*3.24e-17;(Metres)=Metres

BMU>,(Basic Measurement Units):2=BMU;Points:2=BMU/6;Picas:2=BMU/72;Inches:2=BMU/1440;Centimetres:2=BMU*1.7639e-3

Points>,BMU:2=Points*6;(Points):2=Points;Picas:2=Points/12;Inches:2=Points/240;Centimetres:2=Points*.0105833

Picas>,BMU:2=Picas*72;Points:2=Picas*12;(Picas):2=Picas;Inches:2=Picas/20;Centimetres:2=Picas*.127

Inches>,BMU:2=Inches*1440;Points:2=Inches*240;Picas:2=Inches*20;(Inches):2=Inches;Centimetres:2=Inches*2.54

cm>,BMU:2=cm*566.93;Points:2=cm*94.488;Picas:2=cm*7.874;Inches:2=cm*.3937;(Centimetres):2=cm

Sq Inches>,(Sq Inches):2=Sq Inches;Sq Feet:2=Sq I/144;Sq Yards:2=Sq F/9;Acres:2=Sq Y/4840;Sq Miles:2=Acres/640;Sq Metres:2=Sq I*6.4516E-4;Hectares:2=Sq Me*1e-4;Sq km:2=Hect/100

Sq Feet>,Sq Inches:2=Sq Feet*144;(Sq Feet):2=Sq F;Sq Yards:2=Sq F/9;Acres:2=Sq Y/4840;Sq Miles:2=Acres/640;Sq Metres:2=Sq F*.092903;Hectares:2=Sq Me*1e-4;Sq km:2=Hect/100

Sq Yards>,Sq Inches:2=Sq Yards*1296;Sq Feet:2=Sq Y*9;(Sq Yards):2=Sq Y;Acres:2=Sq Y/4840;Sq Miles:2=Acres/640;Sq Metres:2=Sq Y*.836126;Hectares:2=Sq Me*1e-4;Sq km:2=Hect/100

Acres>,Sq Inches:2=Acres*6272640;Sq Feet:2=Acres*43560;Sq Yards:2=Acres*4840;(Acres):2=Acres;Sq Miles:2=Acres/640;Sq Metres:2=Acres*4046.85;Hectares:2=Sq Me*1e-4;Sq km:2=Hect/100

Sq Miles>,Sq Inches:2=Sq Miles*4.01449E9;Sq Feet:2=Sq Mi*27878400;Sq Yards:2=Sq Mi*3097600;Acres:2=Sq Mi*640;(Sq Miles):2=Sq Mi;Sq Metres:2=Sq Mi*2589984;Hectares:2=Sq Me*1e-4;Sq km:2=Hect/100

Sq Metres>,Sq Inches:2=Sq Metres*1550.01;Sq Feet:2=Sq Me*10.7639;Sq Yards:2=Sq Me*1.196;Acres:2=Sq Y/4840;Sq Miles:2=Acres/640;(Sq Metres):2=Sq Me;Hectares:2=Sq Me*1e-4;Sq km:2=Hect/100

Hectares>,Sq Inches:2=Hectares*1.5501e7;Sq Feet:2=Sq I/144;Sq Yards:2=Sq F/9;Acres:2=Sq Y/4840;Sq Miles:2=Acres/640;Sq Metres:2=Hect*1e4;(Hectares):2=Hect;Sq km:2=Hect/100

Sq km>,Sq Inches:2=Sq km*1.5501e9;Sq Feet:2=Sq I/144;Sq Yards:2=Sq F/9;Acres:2=Sq Y/4840;Sq Miles:2=Sq km*.3861;Sq Metres:2=Sq K*1e6;Hectares:2=Sq K*1e4;(Sq km):2=Sq K

Fl oz>,(Fl oz):2=Fl oz;Pints:2=Fl O/20;Gallons:2=Pints/8;Litres:2=FL O*.028413;US Gallon:2=FL O*.0075059;Barrels:2=US G/42

Pints>,Fl oz:2=Pints*20;(Pints):2=Pints;Gallons:2=Pints/8;Litres:2=Pints*.56826;US Gallon:2=Pints*.1501187;Barrels:2=US G/42

Gallons>,Fl oz:2=Gallons*160;Pints:2=Gallons*8;(Gallons):2=Gallons;Litres:2=Gallons*4.54609;US Gallon:2=Gallons*1.20095;Barrels:2=US G/42

Litres>,Fl oz:2=Litres*35.195;Pints:2=Litres*1.75975;Gallons:2=Litres*.21997;(Litres):2=Litres;US Gallon:2=Litres*.26417;Barrels:2=US G/42

US Gallons>,Fl oz:2=US Gallons*133.228;Pints:2=US G*6.6614;Gallons:2=US G*.83267;Litres:2=US G*3.7854;(US Gallon):2=US G;Barrels:2=US G/42

Barrels>,Fl oz:2=Barrels*5595.6;Pints:2=Barrels*279.78;Gallons:2=Barrels*34.972;Litres:2=Barrels*158.987;US Gallon:2=Barrels*42;(Barrels):2=Barrels

Cu Inches>,(Cubic Inches):2=Cu Inches;Cubic Feet:2=Cu I/1728;Cubic Yards:2=Cu I/46656;Cubic Centimetres:2=Cu I*16.387;Litres:2=Cu I*.016387

Cu Feet>,Cubic Inches:2=Cu Feet*1728;(Cubic Feet):2=Cu F;Cubic Yards:2=Cu F/27;Cubic Centimetres:2=Cu F*28317;Litres:2=Cu F*28.317

Cu Yards>,Cubic Inches:2=Cu Yards*46656;Cubic Feet:2=Cu Y*27;(Cubic Yards):2=Cu Y;Cubic Centimetres:2=Cu Y*764555;Litres:2=Cu Y*764.555

CC>,Cubic Inches:2=CC*.061024;Cubic Feet:2=CC*.3531467e-4;Cubic Yards:2=CC*.130795e-5;Cubic Centimetres:2=CC;Litres:2=CC/1000

Litres>,Cubic Inches:2=Litres*61.024;Cubic Feet:2=Litres*.03531476;Cubic Yards:2=Litres*.130795e-2;Cubic Centimetres:2=Litres*1000;(Litres):2=Litres

oz>,(oz):2=oz;Pounds:2=oz/16;Stone:2=Pounds/14;CWT:2=Stone/8;Ton(short):2=Pounds/2000;Ton(long):2=CWT/20;Kg:2=oz*.0283495;Tonnes:2=Kg/1000

Pounds>,oz:2=Pounds*16;(Pounds):2=Pounds;Stone:2=Pounds/14;CWT:2=Stone/8;Ton(short):2=Pounds/2000;Ton(long):2=CWT/20;Kg:2=Pounds*.453592;Tonnes:2=Kg/1000

Stone>,oz:2=Stone*224;Pounds:2=Stone*14;(Stone):2=Stone;CWT:2=Stone/8;Ton(short):2=Pounds/2000;Ton(long):2=CWT/20;Kg:2=Stone*6.35029;Tonnes:2=Kg/1000

CWT>,oz:2=CWT*1792;Pounds:2=CWT*112;Stone:2=CWT*8;(CWT):2=CWT;Ton(short):2=Pounds/2000;Ton(long):2=CWT/20;Kg:2=CWT*50.8023;Tonnes:2=Kg/1000

Short Tons>,oz:2=Short Tons*32000;Pounds:2=Short*2000;Stone:2=Pounds/14;CWT:2=Stone/8;(Ton(short)):2=Short;Ton(long):2=Short*25/28;Kg:2=Short*907.184;Tonnes:2=Kg/1000

Long Tons>,oz:2=Long Tons*35840;Pounds:2=Long*2240;Stone:2=Long*160;CWT:2=Long*20;Ton(short):2=Pounds/2000;(Ton(long)):2=Long;Kg:2=Long*1016.047;Tonnes:2=Kg/1000

Kg>,oz:2=kg*35.27395;Pounds:2=Kg*2.20462;Stone:2=Kg*.157473;CWT:2=Kg*.0196841;Ton(short):2=Pounds/2000;Ton(long):2=Kg*9.84206e-4;(Kg):2=Kg;Tonnes:2=Kg/1000

Tonnes>,oz:2=Tonnes*35273.95;Pounds:2=Tonnes*2204.62;Stone:2=Tonnes*157.473;CWT:2=Tonnes*19.6841;Ton(short):2=Pounds/2000;Ton(long):2=Tonnes*.984206;Kg:2=Tonnes*1000;(Tonnes):2=Tonnes

oz Fine or Troy>,(oz tr)=oz tr;oz av=oz tr*1.09714;Gram=oz tr*31.1035

oz Avoirdupois>,oz tr=oz av*.911458;(oz av)=oz av;Gram=oz av*28.3495

Gram>,oz tr=Gram*.0321507;oz av=Gram*.03527395;(Gram)=Gram

Sec of Arc>,(Sec of Arc):2=Sec Of Arc;Min of Arc:2=Sec/60;Degrees:2=Min/60;Radians:2=Sec*pi/648000

Min of Arc>,Sec of Arc:2=Min Of Arc*60;(Min of Arc):2=Min;Degrees:2=Min/60;Radians:2=Min*pi/10800

Degrees>,Sec of Arc:2=Degrees*3600;Min of Arc:2=Degrees*60;(Degrees):2=Degrees;Radians:2=Degrees*pi/180

Radians>,Sec of Arc:2=Radians*648000/pi;Min of Arc:2=Radians*10800/pi;Degrees:2=Radians*180/pi;(Radians):2=Radians

Seconds>,(Seconds):2=Seconds;Minutes:2=Seconds/60;Hours:2=Minutes/60;Days:2=Hours/24;Weeks:2=Days/7;Tropical Year:2=Seconds*3.1689e-8

Minutes>,Seconds:2=Minutes*60;(Minutes):2=(Minutes);Hours:2=Minutes/60;Days:2=Hours/24;Weeks:2=Days/7;Tropical Year:2=Minutes*1.9013e-6

Hours>,Seconds:2=Hours*3600;Minutes:2=Hours*60;(Hours):2=Hours;Days:2=Hours/24;Weeks:2=Days/7;Tropical Year:2=Hours*1.1408e-4

Days>,Seconds:2=Days*86400;Minutes:2=Days*1440;Hours:2=Days*24;(Days):2=Days;Weeks:2=Days/7;Tropical Year:2=Days*2.7379E-3

Weeks>,Seconds:2=Weeks*604800;Minutes:2=Weeks*10080;Hours:2=Weeks*168;Days:2=Weeks*7;(Weeks):2=Weeks;Tropical Year:2=Weeks*.019165

Years>,Seconds:2=Years*3.1557e7;Minutes:2=Years*525950;Hours:2=Years*8765.8;Days:2=Years*365.24;Weeks:2=Days/7;(Tropical Year):2=Years

MPH>,(MPH):2=MPH;Feet/Sec:2=MPH*22/15;KPH:2=MPH*1.609343;Metres/Sec:2=KPH*5/18;Knots:2=MPH*33/38

FPS>,MPH:2=FPS*15/22;(Feet/Sec):2=FPS;KPH:2=FPS*1.09728;Metres/Sec:2=KPH*5/18;Knots:2=MPH*33/38

KPH>,MPH:2=KPH*.621372;Feet/Sec:2=MPH*22/15;(Km/Hour):2=KPH;Metres/Sec:2=KPH*5/18;Knots:2=MPH*33/38

Metres/Sec>,MPH:2=Metres per Sec*2.23694;Feet/Sec:2=MPH*22/15;KPH:2=Metres*18/5;(Metres/Sec):2=Metres;Knots:2=MPH*33/38

Knots>,MPH:2=Knots*38/33;Feet/Sec:2=MPH*22/15;KPH:2=Knots*1.8532;Metres/Sec:2=KPH*5/18;(Knots):2=Knots

MilesUKg>,(MilesUKgall):2=MilesUKgallon;MilesUSgall:2=MilesUK*.83267;KmLitres:2=MilesUK*.35401

MilesUSg>,MilesUKgall:2=MilesUSgallon*1.20095;(MilesUSgall):2=MilesUS;KmLitres:2=MilesUS*.42514

KmLitres>,MilesUKgall:2=KmL*2.82481;MilesUSgall:2=KmL*2.35215;(KmLitres):2=KmLitres

Poundals>,(Poundals)=Poundals;lbf=Poundals*.031081;Newtons=Poundals*.138255

lbf>,Poundals=lbf*32.17404;(lbf)=lbf;Newtons=lbf*4.448222

Newtons>,Poundals=Newtons*7.233011;lbf=Newtons*.224809;(Newton)=Newtons

Dynes>,Newtons=Dynes*1e-5;(Dynes)=Dynes

Newtons>,Dynes=Newtons*1e5;(Newtons)=Newtons

Joules>,(Joules)=Joules;Ergs=Joules*1e7;Calories=Joules*.238846;Therms=Joules*9.4787e-9;Btu=Therms*1e5;KWH=Joules/3.6e6

Ergs>,Joules=Ergs*1e-7;(Ergs)=Ergs;Calories=Ergs*.238846e-7;Therms=Ergs*9.4787e-16;Btu=Therms*1e5;KWH=Joules/3.6e6

Calories>,Joules=Calories*4.1868;Ergs=Joules*1e7;(Calories)=Calories;Therms=Calories*3.9685e-8;Btu=Therms*1e5;KWH=Calories*1.163e-6

Therms>,Joules=Therms*1.055e8;Ergs=Joules*1e7;Calories=Therms*2.5198e7;(Therms)=Therms;Btu=Therms*1e5;KWH=Therms*29.306

Btu>,Joules=Btu*1.055e3;Ergs=Joules*1e7;Calories=Btu*251.98;Therms=Btu*1e-5;(Btu)=Btu;KWH=Btu*2.9306e-4

KWH>,Joules=KWH*3.6e6;Ergs=Joules*1e7;Calories=KWH*8.5986e5;Therms=KWH*.034123;Btu=Therms*1e5;(KWH)=KWH

Joules>,(Joules)=Joules;eVolts=Joules*6.242e18;Hertz=Joules*1.509e33;Kelvin=Joules*7.244e22;Kg=Joules*1.113e-17

eVolts>,Joules=eVolts*1.602e-19;(eVolts)=eVolts;Hertz=eVolts*2.418e14;Kelvin=eVolts*1.16e4;Kg=eVolts*1.783e-36

Hertz>,Joules=Hertz*6.626e-34;eVolts=Hertz*4.136e-15;(Hertz)=Hertz;Kelvin=Hertz*4.8e-11;Kg=Hertz*7.375e-51

Kelvin>,Joules=Kelvin*1.381e-23;eVolts=Kelvin*8.62e-5;Hertz=Kelvin*2.084e10;(Kelvin)=Kelvin;Kg=Kelvin*1.537e-40

Kg>,Joules=kg*8.988e16;eVolts=kg*5.61e35;Hertz=kg*1.356e50;Kelvin=kg*6.511e39;(Kg)=kg

PSI>,(Pounds/Sq Inch)=PSI;Pascals=PSI*6894.8;mmHg=PSI*51.714;inHg=PSI*2.036;Millibars=Pascal/100;Atmosphere=PSI*.06805

Pascals>,PSI=Pascals*1.4504e-4;(Pascals)=Pascals;mmHg=Pascals*7.501e-3;inHg=Pascals*2.953e-4;Millibars=Pascals/100;Atmosphere=Pascals*9.869e-6

mmHg>,PSI=mmHg*.01934;Pascals=mmHg*133.3;(mmHg)=mmHg;inHg=mmHg*.03937;Millibars=Pascals/100;Atmosphere=mmHg/760

inHg>,PSI=inHg*.4911;Pascals=inHg*3386;mmHg=inHg*25.4;(inHg)=inHg;Millibars=Pascals/100;Atmosphere=inHg*.03342

Millibars>,PSI=Millibars*.014504;Pascals=Millibars*100;mmHg=Millibars*.7501;inHg=Millibars*.02953;(Millibars)=Millibars;Atmosphere=Millibars*9.869e-4

Atmosphere>,PSI=Atmosphere*14.7;Pascals=Atmosphere*1.013e5;mmHg=Atmosphere*760;inHg=Atmosphere*29.9;Millibars=Atmosphere*1013;(Atmosphere)=Atmosphere

Gauss>,(Gauss):2=Gauss;Tesla:2=Gauss*1e4

Tesla>,Gauss:2=Tesla*1e-4;(Tesla):2=Tesla

Curies>,(Curies)=Curies;Becquerels:2=Curies*3.7e10

Becquerels>,Curies:2=Becquerels*2.7e-11;(Becquerels)=Becq

Rads>,(Rads):2=Rads;Grays=Rads/100

Grays>,Rads:2=Grays*100;(Grays)=Grays

Watts>,(Watts)=Watts;Horsepower=Watts*1.341E-3

Horsepower>,Watts=Horsepower*745.7;(Horsepower)=Horsepower

RPM>,(RPM):2=Revs per Minute;Hertz:2=Revs/60

Hertz>,RPM:2=Hertz*60;(Hertz)=Hertz

Fahrenheit>,(Fahrenheit)=Fahrenheit;Celsius:2=(Fahrenheit-32)*5/9;Kelvin:2=Celsius+273.15

Celsius(Centigrade)>,Fahrenheit:2=32+Celsius*9/5;(Celsius)=Celsius;Kelvin:2=Celsius+273.15

Kelvin>,Fahrenheit:2=32+(Kelvin-273.15)*9/5;Celsius:2=Kelvin-273.15;(Kelvin):2=Kelvin

em>,(Electron Masses)=Electron M;pm=Electron M*5.4463e-4;nm=Electron M*5.4388e-4;kg=Electron M*9.1091e-31

pm>,em=Proton Masses*1836.1;(Proton Masses)=Proton M;nm=Proton M*.99863;kg=Proton M*1.6725e-27

nm>,em=Neutron Masses*1838.6;pm=Neutron M*1.001375;(Neutron Masses)=Neutron M;kg=Neutron M*1.6748e-27

Kg>,em=kg*1.0978E30;pm=kg*5.979e26;nm=kg*5.9708e26;(kg)=kg

Watts=Amps*Volts

Watts=Amps*Amps*Ohms

Watts=Volts*Volts/Ohms

Joules=Farads*Volts*Volts/2

Farads=Coulombs/Volts

Volts=Amps*Ohms

Amps=Volts/Ohms

Ohms=Volts/Amps

Const Acc,Final Velocity=Initial Velocity+Acceleration*Time;Distance=Init*Time+Acc*Time*Time/2

Const Acc,Final Velocity=sqr(Initial Velocity*Initial V+2*Acceleration*Distance)

Const Acc,Distance=(Initial Velocity+Final Velocity)*Time/2

Const Acc,Energy=Mass*(-Initial Velocity*Initial V+Final Velocity*Final V)/2

Force=Mass*Acceleration

Momentum=Mass*Velocity

Final Speed=(Initial Speed 1*Mass 1+Initial Speed 2*Mass 2)/(Mass 1+Mass 2)

Circular Motion,Acceleration=Velocity*Velocity/Radius

Circular Motion,Centripetal Force=Mass*Velocity*Velocity/Radius;Acceleration=Cent/Mass

Joules=Newtons*Metres

Newtons=kg*MetresPerSec2

Focal Length=1/(1/Object Dist+1/Image Dist)

Image Dist=1/(1/Focal Length-1/Object Dist)

Pendulum Period(sec),:2=2*pi*sqr(Metres/9.807)

Pendulum Period(sec),:2=2*pi*sqr(Feet/32.17)

Earth Satellite,R:=6370+Km Height;Speed(Kms/sec):2=6370*sqr(9.8e-3/R);Period(Hours):2=2*pi*R/Speed/3600

Resistance2,:2=1/(1/Resistance 1+1/Resistance 2)

Resistance3,:2=1/(1/Resistance 1+1/Resistance 2+1/Resistance 3)

Resistance4,:2=1/(1/Resistance 1+1/Resistance 2+1/Resistance 3+1/Resistance 4)

RC Circuit constant V,Charge Growth=Farads*Voltage*(1-exp(-Seconds/(Ohms*Farads)))

RC Circuit,Charge Decay=Farads*Init Voltage*exp(-Seconds/(Ohms*Farads))

RL Circuit constant V,Amps Growth=Voltage/Ohms*(1-exp(-Ohms*Seconds/Henrys))

RL Circuit,Amps Decay=Init Amps*(exp(-Ohms*Seconds/Henrys))

AC Series Circuit,Radians:=Frequency*2*pi;Volts=Peak Volts*sin(Radians*Seconds)

AC Series Circuit,Radians:=Frequency*2*pi;Amps=Peak Volts/sqr(Ohms*Ohms+(Radians*Henrys-1/(Radians*Farads))**2)*cos(Radians*Seconds-atan((Radians*Henrys-1/(Radians*Farads))/Ohms))

AC Series Circuit,Radians:=Frequency*2*pi;Impedance=sqr(Ohms*Ohms+(Radians*Henrys-1/(Radians*Farads))**2)

Resonant Frequency=1/(sqr(Farads*Henrys)*2*pi)

Coulombs Law,Force=-Charge 1*Charge 2*8.98e9/(Permittivity*Radius*Radius)

Coulombs Law,Energy=Charge 1*Charge 2*8.98e9/Radius

Coulombs Law,Voltage=Charge*8.98e9/(Permittivity*Radius)

Boyles Law,Pressure=Gas Constant/Volume

Boyles Law,Volume=Gas Constant/Pressure

Adiabatic Gas Law,X:=Init Vol/Final Vol;Pressure=Init Pressure*(X**Gamma);Kelvin=Init Kelvin*(X**(Gamma-1));Work=(Final V*Pressure-Init V*Init P)/(1-Gamma)

Ideal Gas Law,Cubic Metres:2=8.31*Moles*Kelvin/Pascal

Ideal Gas Law,Pascal:2=8.31*Moles*Kelvin/Cubic Metres

Expanding Gas (Isothermal),Joules=8.31*Moles*Kelvin*(ln(Final Cu M/Init Cu M))

Expanding Gas (Adiabatic),Joules=(Final Pascals*Final Cu M-Init Pascals*Init Cu M)/(Gamma-1)

Deniers=9e6*Kg/Metres

Kg=Deniers*Metres/9e6

Metres=9e6*Kg/Deniers

Rads/Hour(approx),:2=Curies*MeVs/(2*Metres*Metres)

Radiation:2=Init Radiation*exp(-ln(2)*Time/Half Life)

Radar range,Nmiles:1=1.22*sqr(Height in Feets);Km:1=1.85*Nmiles

Radar range,Nmiles:1=2.21*sqr(Height in Metres);Km:1=1.85*Nmiles

Sea Horizon,Nmiles:1=1.17*sqr(Height in Feet);Km:1=1.85*Nmiles

Sea Horizon,Nmiles:1=2.12*sqr(Height in Metres);Km:1=1.85*Nmiles

Extreme range,Nmiles:1=1.17*(sqr(Observer Height in Feet)+sqr(Object Height in Feet));Km:1=1.85*Nmiles

Extreme range,Nmiles:1=2.12*(sqr(Observer Height in Metres)+sqr(Object Height in Metres));Km:1=1.85*Nmiles

Barometer Correction to Mean Sea Level,approx:1=Feet/26-Celsius*Feet/7000

Barometer Correction to Mean Sea Level,approx:1=Metres/8-Celsius*Metres/2100

A:=App Speed;B:=App Bear;C:=Drift Speed;D:=Drift Bear;X:=pi-rad(B-D);True Speed:2=sqr(A*A+C*C-2*A*C*cos(X));Y:=B+(1+2*(((D<B)and(D+180>B))or((D>B)and(D>B+180))))*deg(atan(sqr((1/(1-(sin(X)*C/True Speed)**2))-1)));True Bear:0=Y+360*((Y>=360)-(Y<0))

A:=True Speed;B:=True Bear;C:=Drift Speed;D:=Drift Bear;X:=rad(D-B);App Speed:2=sqr(A*A+C*C-2*A*C*cos(X));Y:=B-(1+2*(((D<B)and(D+180>B))or((D>B)and(D>B+180))))*deg(atan(sqr((1/(1-(sin(X)/App Speed*C)**2))-1)));App Bear:0=Y+360*((Y>=360)-(Y<0))

Photo printing,New Exposure:2=Old exposure*(New Height/Old Height)**2

Rectangular room,Wall Area=2*Height*(Width+Length);Ceiling/Floor=Width*Length;Total Area=Wall+2*Ceiling

Abbreviations Aborting a Calculation, (2) Accuracy Analysing a Formula Calculator Memories Colons Commas Comms Link Copying Formulae Data File (XFORM), (2) Decimal Places Editing Formulae, (2) Equals Sign Erasing Formulae Errors circular reference, (2) repeated result too many names Examples Finding Formulae find all find next FIND option quick find Formulae multiple-calculation single-calculation Input types Intermediate Results Keyboard mode, (2) ON/CLEAR Main Menu Memory Usage OPL functions and calls the XFORM extension Order of calculation, (2) of prompts Overwriting Formulae Prompts Quitting the Program Removing the Datapak, (2) Result List, (2) Result Names Running the Program Saving Formulae Search Text, (2) Semicolons Speed of Calculation Supplied Formulae, (2) copying functions provided Titles Troubleshooting