# Background

CalcPM grew out of my experience teaching physics to undergraduate students. An important part of any laboratory experiment is to evaluate measurement uncertainties (or errors - as used by some). During introductory laboratory experiments we expect students to be able to asses these uncertainties (which should never-ever be half the smallest division on the measurement device) and then combine them to come up with some meaningful result. While I would expect students to be able to make these calculations, I would not expect them to do repeated calculations by hand - hence the development of a calculator to facilitate this.

I first wrote a Java version of such a calculator around the year 2000. This functioned well but required access to a web browser on a computer and hence was not particularly portable. With the advent of smart phones and tablets, it became a hobby of mine to develop my programming skills so that I could adapt the calculator for use with both iOS and Android. The first version of CalcPM for iOS has been completed and became available on the Apple App store in October 2012. The Android version was subsequently released in January 2013.

# Quick Start Guide

CalcPM operates exactly like a standard calculator but allows the association of an uncertainty with each number in the calculation. The only major difference between a standard calculator and CalcPM is the addition of an input for the uncertainty. The user swaps between inputting a number and inputting an uncertainty by the use of the "--/--" button. An example calculation would be as follows

56 --/-- 3 x 22 --/-- 1 =

This gives an answer which is 1230 +/- 90 (to one significant figure in the uncertainty). Other functions are (hopefully) self-explanatory.

The same calculation can be performed in RPN mode (selected within the Settings panel) as

56 --/-- 3 Enter 22 --/-- 1 x

# Lite Version

The free version, CalcPMLite, functions in the same way as the full version except that it is limited to standard mathematical operations (+,-,x,/). The full version includes a range of scientific functions, and can be operated in the standard BOMDAS mode and in reverse polish notation (RPN). A small charge is associated with the full version - I'm not expecting to get rich, simply trying to recover some of the charges Apple and Google inforce on me to be a developer.

# Sum Calculator

The full version includes a special "Sum" operating mode. This allows for one touch summation of digits 1-9 as well as the numbers 10 and 0.5. I originally wrote this to assist with totalling exam marks - but it can be of use anyway where the quick summation of a set of numbers is required.

# Reference

Calculations are performed based on the method of combining random uncertainties. Given a function, p, of the form

$p=p\left(x,y\right)$

the uncertainty, Δp, is calculated by

${\left(\Delta p\right)}^{2}={\left(\frac{\partial p}{\partial x}\Delta x\right)}^{2}+{\left(\frac{\partial p}{\partial y}\Delta y\right)}^{2}$

Hence for

$p=x+y$

we have

$\Delta p=\sqrt{{\left(\Delta x\right)}^{2}+{\left(\Delta y\right)}^{2}}$

Functions are calculated in a similar way. For example, given

$y=\mathrm{sin}\theta$

The uncertainty is given by

$\Delta y=\left|\mathrm{cos}\theta \right|\Delta \theta$

where angles are given in radians.

# Settings

The following settings are available

• Uncertainties: Uncertainties can be turned on or off - when uncertainties are off then the CalcPM functions as a normal calculator.
• Reverse Polish Notation: Determines the input mode of the calculator (BOMDAS or RPN).
• Sleep Disabled: Disables the iPad/iPod/iPhone sleep function.
• Sound: Turns sound on or off.
• Operating Mode: Selects the operating mode which is one of -Full- (all available scientific functions displayed, -Simple- (Only basic functions display) or -Sum- (a one touch summation tool).
• Trigonometric Units: Trigonometric alculations can be performed using degrees or radians.
• Significant Figures: Rounds the uncertainty to the specified number of significant figures and then truncates the associated value to the same precision.