Calchemy  for Palm OS

User's Guide

Introduction

Thank you for purchasing Calchemy for Palm OS, the units calculator from Calchemy Software, Inc.

You can reach us at support@calchemy.com.  We value your comments regarding Calchemy.

This manual explains how to install Calchemy and use it to perform basic calculations.  Additional information about Calchemy is contained in the on-line help.

What is Calchemy?

Calchemy is an exciting new tool that makes real-world calculations simple.

Most real-world calculations are not conceptually difficult to understand; unfortunately, they have traditionally been very difficult to perform, because they involve the following tedious steps:

  1. Identify all known quantities.

  2. Use dimensional (or in some cases, physical) analysis to determine how the known quantities relate to one another.

  3. Convert known quantities from their native units to intermediate units to form a dimensionally coherent equation.

  4. Evaluate the equation.

  5. Convert the result from intermediate units to the desired units.

Calchemy is a tool that changes all of this.

Does this look familiar?

Estimate the drag force, in pounds, on a car traveling through air at 55 mph with a coefficient of drag of 0.32 and a frontal area of 25 square feet. Then estimate the horsepower required to maintain that speed.

Drag Force = 1/2 * Cd * Density * Velocity^2 * Area
Power = Force * Velocity

Note the density of air is 1.293 kg/m^3

Without Calchemy

First we must convert the parameters to a coherent system of units so we can actually use the equations

First convert speed to meters/sec

Then square feet to square meters...

Plug into the equation and get force in Newtons...

Then convert Newtons to pounds force...

Now calculate the horsepower...

The same calculations with Calchemy

 

Calchemy integrates a scientific calculator, a large units database, automatic dimensional analysis, and transparent unit conversions, to eliminate (in most cases) all but the first of these steps.  Calchemy truly makes real-world calculations simple.

Calchemy is particularly useful for estimations or quick calculations when you want to know a result in units you can relate to.  By reducing the effort required to get this intuitively understandable result, Calchemy both encourages and enables you to make calculations that you might have otherwise abandoned.

For example, Calchemy can be used to quickly calculate the mass, in tons, of a 7 foot by 6 foot by 8 inch waterbed as 0.874 tons!

We at Calchemy believe Calchemy is the next step in the logical progression of personal calculation tools -- from the abacus, to the slide rule, to mechanical machines that could actually divide, to the revolutionary handheld calculator, and now, to Calchemy on a Palm OS PDA -- each step making calculations simpler and faster, and you more productive.

Calchemy and SI

Throughout history, mankind has struggled with consistency of measurement. Differences in systems of units have made trade between cultures problematic and hindered the advancement of knowledge.  The necessity of a consistent and standard system of units has been acknowledged from the time of the Roman empire, but agreement has been elusive.

Even today as most nations of the world have adopted the System International (SI) as the official system of units for commerce and technology exchange, they continue to use traditional units in common practice and publication.

The fundamental units used by Calchemy are those of the SI.  As a result the fundamental dimensions used by Calchemy are those of an absolute system, namely, MASS, LENGTH, TIME, etc.  This gives Calchemy the unique ability to provide coherency in equations, even when they contain mixed systems of units.

We at Calchemy encourage the use of SI, and hope that Calchemy's unique ability to provide this coherency will assist in the transition.

Note About Units

Note that the term unit is used throughout this document to refer to both actual units of measure, like grams or gallons, as well as physical constants, physical properties, or any other items contained in a Calchemy database.

Note also that Calchemy is case sensitive and requires that unit names and abbreviations be entered in their proper case (UPPER/lower).

Installing Calchemy

Start the Palm Desktop application on your PC and click on the Install button, then click Add... and navigate to calchemy.prc.  Then click Open and Done.  Then perform a HotSync and Calchemy will be installed on your handheld.

Removing Calchemy

To remove Calchemy from your handheld (because, for example,  you are transferring your license to someone else), start the Application Launcher on your handheld and select Delete... from the App menu.  Then select Calchemy and tap Delete...  Confirm your intentions by tapping Yes.

Starting Calchemy

To start Calchemy, tap the Calchemy icon from the Application Launcher:

This icon starts Calchemy.

If Calchemy is not yet registered, it will prompt you for a registration key when it starts.  If you do not have a registration key, you may start Calchemy 15 times without any additional nagging.  After starting Calchemy 15 times, Calchemy will beep annoyingly when it starts -- short at first, and growing longer with more times.

When Calchemy starts, it displays its main window:

Enter equations to be evaluated into the Equation line at the bottom of the screen using either Calchemy's buttons, graffiti, or the keyboard. 

Evaluated equations and their results are displayed in the History list above the buttons.

Use the menus on the Menu bar to perform the following tasks:

 

Menu...

Tasks...

Edit

Cut and copy text to the clipboard and paste text from the clipboard; clear the history list.

Options

Select unit databases; select preferences; register Calchemy.

Help

Access Calchemy's on-line help.

On-line Help

Additional information on using Calchemy is contained in the on-line help.

The following topics are available directly from the Help menu:

Menu item...

Topic...

Introduction

One-screen brief introduction to Calchemy equation syntax.

Overview...

Overview of Calchemy's capabilities and features.

Buttons...

Describes Calchemy's buttons.

Accuracy...

Warnings about calculation accuracy.

Examples...

Example problems that demonstrate Calchemy's capabilities.

About Calchemy...

Calchemy revision and copyright

In addition, context-sensitive topics are available from within each dialog.  To access these topics, tap the dialog's "i" (information) button.

Exiting Calchemy

To exit Calchemy, switch to the Application Launcher, or launch another application using the hardware buttons..

Note that any new unit or variable definitions you have made will be lost, as will the contents of the Equation line.

Using Calchemy

Basic Calchemy equations are of the form:

expression ? unit

Where expression is the arithmetic expression you want evaluated, and unit is the unit you want the result expressed in.

Note that to evaluate an expression with a dimensionless result, simply omit the "? unit" from the above equation.

Operators, Functions, and Precedences

Equations may contain the following binary operators (listed in decreasing order of precedence):

Operator...

Meaning...

^

exponentiation

 

implied multiplication

* /

multiplication, division

+ -

addition, subtraction

;

solve by dimensional analysis

 

All operators except "^" are left associative; "^" is right associative.

"+" and "-" can also be used as high-precedence unary operators.

Side-by-side operands (with no intervening punctuation) are evaluated with an implied multiplication.  The precedence of the implied multiplication is just higher than that of "*" and "/".

Calchemy evaluates higher precedence operators before lower precedence operators.  Left associative operators of the same precedence are evaluated from left to right; right associative operators of the same precedence are evaluated from right to left.  The following table illustrates these rules:

This...

Is evaluated as...

2*3^4

2*(3^4)

2*3*4

(2*3)*4

2^3^4

2^(3^4)

3 meter / 2 seconds

(3 meter) / (2 seconds)

1/2 foot

1 / (2 foot)

1/2 foot pound

1 / (2 foot pound)

1/2 foot*3 pound

(1 / (2 foot)) * (3 pound)

3 meter^2

3 * (meter^2)

3 lbm meter^2

3 * lbm * (meter^2)

pi (3 foot)^2

pi * ((3 foot)^2)

1 / (4 foot)(3 foot)

1/((4 foot) * (3 foot))

Parentheses, braces, or brackets can be used to explicitly override the default precedences and associativities, and group operations.

When in doubt, it is always best to parenthesize!

For more information on how Calchemy evaluates equations like these, see the section Verifying Your Results later in this manual.

Calchemy also supports the following high-precedence functions accessible by tapping the Other button to pop up the Other Functions dialog box:

Function...

Meaning...

sqrt(x)

square root of x

log(x)

log base 10 of x

exp(x)

e to the x

ln(x)

natural log of x

sin(x)

sine of x (radians)

cos(x)

cosine of x (radians)

tan(x)

tangent of x (radians)

asn(x)

arc-sine (radians) of x

acs(x)

arc-cosine (radians) of x

atn(x)

arc-tangent (radians) of x

Note that the arguments to these functions should always be parenthesized to avoid precedence confusion.

The default base unit for trigonometric and inverse-trigonometric functions is the radian.  To enter arguments in or convert results to any other unit (e.g., degrees), you must explicitly specify the unit.  Explicitly specifying radians is recommended, but not required.  The following examples illustrate this:

sin(pi/2)
= 1
atn(1)
= 0.785398  
sin(90 degrees)
= 1  
atn(1) ? degrees
= 45 degrees

The square root function can work on arguments with any dimensions with even exponents.  Note also that "square root" is the same as exponentiation to the 1/2 power; similarly, "cube root" is the same as exponentiation to the 1/3 power.  The following examples illustrate this:

sqrt(2 acres) ? meters
= 89.9651 meters  
(2 acres)^(1/2) ? meters
= 89.9651 meters  
(10000 gallons)^(1/3) ? feet
= 11.016 feet

All other functions work only on dimensionless arguments and return dimensionless results.  The following examples illustrate this:

exp(1)
= 2.71828  
ln(2.71828)
= 0.999999  
log(100)
= 2

Calchemy also understands the following modifiers to allow you to enter units in a more natural format.

This...

Is the same as ...

square u

u^2

cubic u

u^3

For example, the following are both equivalent:

3 meters^2
3 square meters

Entering Equations

Enter and edit equations in the Equation line at the bottom of the main window using either Calchemy's buttons, graffiti, or the keyboard..  When you finish entering the equation, tap the "=" button to evaluate it.

If the equation is valid, both the equation and its result are displayed in the History list just above the Equation line and the Equation line is cleared.

For example, to calculate the kinetic energy in kJ (using the formula E = 1/2 m v2) of a 2000 lb car moving at 60 mph, enter:

 

And tap "=".  Calchemy will respond:

 

Indicating the result of 326.33275 kJ.

Invalid Equations

If the equation is not valid, an error dialog is displayed and the Equation line remains unchanged.

For example, if you had left out the "* 2000 lb" in the previous equation:

And then tapped "=", Calchemy would have responded with a Dimensional Mismatch dialog:

Indicating that the left hand side of the equation was missing a factor of mass.  The equation was not dimensionally correct, and therefore, could not be evaluated.

To return to the (unchanged) Equation line, select the "OK" button.

Incomplete Equations

If the equation is not dimensionless and you do not specify a result unit, both the equation and its dimension are displayed in the History list just above the Equation line and the Equation line is cleared.  You can use this feature to determine the dimension of an expression or unit.

For example, to determine the dimensions of the expression "3 feet * 2 lbf", enter:

And tap "=".  Calchemy will respond:

Indicating that the expression has dimensions of energy or torque.  (Note that both energy and torque have dimensions of force times length.  Only the unstated vector relationship differentiates them from each other.)

Recalling Previous Equations

You can recall previously entered equations or their results from the History list into the Equation line using the Recall button.  Additionally, if you select text in the History list, you can recall that explicitly using the Recall button. 

Solving by Dimensional Analysis

Unlike the "*" and "/" operators you use to explicitly tell Calchemy where to place operands in the equation (i.e., in the numerator or denominator), the ";" operator tells Calchemy to use dimensional analysis to determine where to place operands in the equation.

For example, if you wanted to calculate the required horsepower to raise a 2000 lb elevator to the top of a 120 foot building in one minute, you could ask Calchemy to combine 2000 lb, 120 feet, and 1 minute in such a way that the equation is dimensionally correct, and then express the final result in hp, by entering:

And tapping "=".  Calchemy would respond:

Indicating the result of 7.2727273 horsepower.

Calchemy determined that the 2000 lb and the 120 feet should be in the numerator of the equation and the 1 minute should be in the denominator (arriving at the formula P = F D/T).  Additionally, Calchemy also determined that the 2000 lb was necessarily pounds force, not pounds mass.

For more information on how Calchemy interprets equations like these, see the section Verifying Your Results later in this manual.

Note that Calchemy always requires that equations be dimensionally consistent, thereby double-checking your own dimensional analysis.

Accessing the Units Database

If you know the proper name or proper abbreviation of a particular unit, you can enter it directly in the Equation line.  For example:

Note that units may be entered in either their singular or plural forms.  SI units may also be prefixed with standard SI prefixes (e.g., k, kilo, m, milli).  This allows you to enter equations in a more natural format.

If you do not know the proper name or proper abbreviation of a particular unit, you can use one of the mechanisms below to help you find a particular unit...

Selecting Units

If you know the dimension or group of a particular unit, you can tap the "Select" button to find the unit and enter it into the Equation line.

Calchemy will display the Unit Select dialog:

Searching for Units

If you know the first part of the proper name of a particular unit, you can enter it in the Equation line, position the insertion point on the partial name, and then tap the "Search" button to find the unit and enter it into the Equation line.

Calchemy will display the Unit Search dialog:

This "Search" feature can be used to find "class units" that share a common first part of their name.  These class units are typically properties of materials and include:

Property...

Name...

density

d_<material>

electrical resistivity

r_<material>

heat of combustion by mass

hcm_<material>

heat of combustion by volume

hcv_<material>

heat of fusion by mass

hfm_<material>

heat of fusion by volume

hfv_<material>

heat of vaporization by mass

hvm_<material>

heat of vaporization by volume

hvv_<material>

specific heat by mass

shm_<material>

specific heat by volume

shv_<material>

speed of sound

ss_<material>

thermal conductivity

tc_<material>

viscosity

visc_<material>

 

This "Search" feature can also be used to quickly complete the name of a unit once you have entered enough of it for Calchemy to uniquely identify it.

When searching for units, you can also select the Exact match checkbox in the Unit Search dialog.  This causes Calchemy to only display units that exactly matches (as opposed to having a prefix that matches) what you have typed.

Unit Details

You can tap the "Details" button in either the Unit Select or Unit Search dialogs to obtain additional details on the selected unit, including:

Calchemy will display the Unit Details dialog:

Free Units

Free units are units which are not actually understood by Calchemy, except in that they are new and unique dimensions which must "cancel out" in the end.  For example, in the equation:

Both "wheel" and "wheels" are free units.  Calchemy does not understand these units, but it accepts them since they cancel out.

Free units allow you to enter equations in a more natural format.

Note that in the above example, the equation:

2000 lbf * 60 mph / 4 wheels ? hp/wheel

necessarily spanned two lines of the display.

Loading Optional Databases

By default only the standard and electro-magnetism databases are loaded on start-up.

The standard units database contains common units of measure and selected physical properties of water and air; the electro-magnetism database contains additional units derived from the base unit of Current.  For most calculations, these units are all you will ever need.

Calchemy also includes several optional units databases which you may load explicitly from the Calchemy Databases dialog, accessible from the Databases... selection of the Options menu.  These include:

Name...

Contents...

Standard Common units
Electro-magnetism Common units containing Current

Advanced

Units for the technically advanced user

Obscure

Less common units, like sidereal time

Physical properties

Physical properties of common materials

Fuels

Energy content of common fuels

To load an optional units database, select it in the Calchemy Databases dialog:

 

Once a database has been loaded, the units it contains can be displayed by selecting the category with the same name as the database in the Unit Select dialog.

Appendix A of this manual includes a list of the units contained in each of these databases.

Defining New Units or Variables

You can define new units or variables using the equation:

newunit = expression

Where newunit is the name of the new unit or variable, the "=" operator (not to be confused with the "=" button) can be selected from the Other Functions dialog, and expression is the arithmetic expression you want to assign to it.  You can then use these new units or variables in subsequent equations.

Note that new unit or variable definitions override previous definitions for the same unit or variable and will not be saved when you exit Calchemy.

For example, you could define a new unit, "mpd", to be miles per day, by entering:

And tapping "=".

You could define a new variable, "height" to be five foot and ten inches, by entering:

And tapping "=".

Ambiguous Definitions

If the expression being assigned to a new unit or variable is ambiguous, then by default, the new unit or variable will be ambiguous, also.  Some of these ambiguities can be eliminated by using the modified equation:

newunit = expression ? dimension

Which will result in the new unit being defined to all interpretations of expression which are of the specified dimension.

For example, if you enter:

And tap "=", "person" would be defined as both 150 lbm and 150 lbf, since "lb" is defined as both lbm and lbf.

If, on the other hand, you enter:

And tap "=", "person" would only be defined as 150 lbf.

Verifying Your Results

Calchemy often does a lot of work "behind the scenes" before it displays an answer to an equation.  You can request that Calchemy display the results of the "behind the scenes" work by choosing "Show interpretations" from the Preferences dialog from the "Options" menu:

 

You can use this information to verify that Calchemy interpreted your equation correctly.

For the example in the section Solving by Dimensional Analysis earlier in this manual, if "Show interpretations" had been turned on, Calchemy would have responded:

Indicating in the second and third history line:

Resolving Ambiguities in Equations

Many of Calchemy's advanced features can introduce a certain degree of ambiguity into the equations you enter.  These ambiguities may occasionally cause Calchemy to misinterpret an equation.  For this reason, you can turn off each of these features independently using the Preferences dialog from the "Options" menu:

 

Background

For example, the unit "ounce" may commonly refer to either a unit of mass, a unit of force, or a unit of volume.  Similarly, the unit "pa" may refer to either a unit of pressure (pascal), or a prefixed unit of current (picoamp).

Calchemy resolves these ambiguities by always evaluating all possible interpretations of each equation, and then using dimensional analysis to identify the correct interpretations.  This allows you to enter equations in a more natural format.

For example, if you enter:

And tap "=".  Calchemy will respond:

Indicating the result of 0.010790838 ounces..

Calchemy determined that "ounce" should be a unit of force, since none of the other interpretations were dimensionally consistent.  Similarly, Calchemy determined that "pa" should be a unit of pressure, since none of the other interpretations were dimensionally consistent.

If "Show interpretations" had been turned on, Calchemy would have made these determinations visible:

 

Additionally, when using the ";" operator, operands are not explicitly placed in the numerator or denominator of the equation.  Again, Calchemy resolves this ambiguity by always evaluating all possible interpretations of each equation, and then using dimensional analysis to identify correct ones.

Note that on occasion, more than one interpretation of an equation can be dimensionally consistent.  When this happens, Calchemy will print all  of the results.

For example, if you enter:

And press <Enter>.  Calchemy will respond:

Indicating four possible results.  Calchemy evaluated all possible interpretations of "2" in the numerator or denominator and "3" in the numerator or denominator.  All interpretations were dimensionally consistent (since we asked for a dimensionless result), so all results were printed.

Note that this example is contrived.  The ";" operator will always yield multiple results when used with a dimensionless operand.  We recommend you do not do this.

Free Units

Free units are units which are not actually understood by Calchemy, except in that they are new and unique dimensions which must "cancel out" in the end.  For example, in the equation:

Both "wheel" and "wheels" are free units.  Calchemy does not understand these units, but it accepts them since they cancel out.

To force Calchemy to treat free units as undefined units, turn off "Free units" in the "Options" menu.  You would then have to enter the above equation as:

Plurals

Calchemy understands a set of basic pluralization rules.  For example, in the equation:

 

"centuries" is the plural of "century".  Calchemy treats them as equivalent units.

To force Calchemy to only accept singular units, turn off "Plurals" in the "Options" menu.  You would then have to enter the above equation as:

 

Note, in general, Calchemy does not accept plural forms of abbreviations.

Prefixes

Calchemy understands SI prefix rules, including all of the SI prefix names and abbreviations.  For example, in the equation:

"mg" is 0.001 grams, "centimeter" is 0.01 meters, and "kg" is 1000 grams.

To force Calchemy to disallow combined prefixes and units, turn off "Prefixes" in the "Options" menu.  You would then have to enter the above equation as:

Note that you must use the proper prefix names (not abbreviations) and a space before the following unit when using them in this way.

Secondary Definitions

In the case of units which traditionally have more than one common use (such as "ounce", which can be a unit of mass, force, or volume), Calchemy understands all of the uses and the unit is said to be an overloaded unit.  One definition is always considered the primary definition (mass); the others are considered secondary definitions.

For example, in the equations:

"ounce" is first interpreted as a unit of volume because "cup" is a unit of volume; "ounce" is then interpreted as a unit of force because "newton" is a unit of force.

To force Calchemy to disallow secondary definitions of overloaded units, turn off "Secondary definitions" in the "Option" menu.  You would then have to enter the above equations as:

Note that Calchemy only defines four overloaded units in the primary units database.  These are:

Unit...

Primary (secondary) definition...

pound, lb

pounds mass (pounds force)

gram, g

grams mass (grams force)

ton

tons mass (tons force)

ounce, oz

ounces mass (ounces force, ounces fluid)

  Calchemy also defines non-overloaded units for each of these.  These are:

Unit...

Definition...

poundm, lbm

pounds mass

poundf, lbf

pounds force

gramm, gm

grams mass

gramf, gf

grams force

tonm

tons mass

tonf

tons force

ouncem, ozm

ounces mass

ouncef, ozf

ounces force

ouncefl, ozfl

ounces fluid

Too see how many definitions a particular unit has, enter the unit in the Equation line and then tap the Search button and select the Exact match checkbox and then tap Details.

Transferring Your Results to Other Applications

You can transfer Calchemy equations and results to and from other applications as plain text using the Palm OS clipboard.

To transfer equations or results from the Calchemy History list or Equation line to another application:

  1. Select the text in the Calchemy History list or Calchemy Equation line

  2. Choose "Copy" from Calchemy's "Edit" menu

  3. Choose "Paste" from the other application's "Edit" menu

To transfer equations or results from another application to the Calchemy Equation line:

  1. Select the text in the other application

  2. Choose "Copy" from the other application's "Edit" menu

  3. Choose "Paste" from Calchemy's "Edit" menu

Understanding Calchemy

In certain non-obvious situations, Calchemy may calculate a result that is both dimensionally consistent and mathematically correct, yet not the result of the equation you had in mind.  A few of these situations are described in the remainder of this section.

To help avoid these situations, we recommend that you always verify your results.  See the section Verifying Your Results earlier in this manual.

Dimensionless Factors

Calchemy ensures that the data you give it is dimensionally consistent.  However, there are more aspects to good data than simple dimensional consistency.  Many physical equations also include dimensionless factors like 2 pi, an efficiency, or 1/2.  Beware that Calchemy cannot tell if you have left out (or inadvertently included) one of these factors.

Physical Equations

You must know the physical equation for the problem you are trying to solve before entering it into Calchemy! And you must enter any dimensionless factors into Calchemy along with the other parameters of the physical equation.  These factors are part of the physical equation!

Note that true physical equations do not specify the units used for the parameters.  If your equation demands that parameters be entered in specific units, it is not a physical equation and cannot be used with Calchemy.  (These equations usually contain some unusual conversion factor that represents the combined conversions required to make the specific units of the equation coherent.)

Units of Angle and Revolution

You must pay special attention to dimensionless factors of 2 pi when dealing with parameters of revolution, frequency, period, angle, angular velocity, and angular acceleration.

Calchemy cannot perform its usual transparent unit conversions and automatic dimensional analysis for these parameters.  You must enter an appropriately corresponding unit for each of these.

The following table lists the units which correspond to each of these parameters.  Note especially that rpm is a unit of frequency.

Parameter...