This program provides a GUI front-end for the python "Uncertainties" library. The motivation of the project was to provide a user friendly access to this python library such that users with little-to-no Python experience can use it to easily propagate errors.

The program evaluates native Python code. If the user is not familiar with python they can access the correct formatting for a function (or mathematical constant) by click on the provided buttons. This is the reason why the "ln()" button produces "log()" in the equation box. Natively Python uses "log()" to denote the natural logarithm while the common base-10 log is denoted as "log10()"

The interface is kept very simple. On the right there is a table where the users can enter the values and corresponding errors for each variable definition (A,B,C,...Z). On the left, an equation can be entered by the user in native Python syntax, substituting the variable letter (row name; A-Z) for the raw values. If the user does not know the native python syntax they can use the buttons below the equation field much like they would on a standard graphing calculator. The result of hitting a button to produce an operation will be that operation with a '?' character embedded where it must be substituted with a value. For instance, if the user wants to calculate "ln(variable K)" they would hit the "ln()" button which produces "log(?)" in the equation field. Substitution of '?' with 'K' (I.E. "log(K)") will yield the appropriate syntax. Hitting the "Compute" button will evaluate the expression and out put both the resulting nominal value and error in the designated fields.

Below is an example of using this program for the Gibbs Free Energy Equation: ΔG = -RTln(K), where R is the gas constant.

File/Clear Table = Removes all elements of the table

File/Clear Equation = Resets the equation input field

File/Exit = Closes the program

Help.../Instructions... = Provides a Message box with instructions for use

'shift' = Moves cell selection left

'alt+shift' = Moves cell selection right

arrow 'up' = Moves cell selection up

arrow 'down' = Moves cell selection down

arrow 'left' = Moves cell selection left

arrow 'right' = Moves cell selection right

right click = Displays OS standard menu for that action

double left click = Copies contents to system clipboard

The GUI for this software is dependent on wxPython and wxWidgets.

The interface code was generated using wxFormBuilder

All calculations are dependent on the uncertainties package (Uncertainties: a Python package for calculations with uncertainties, Eric O. LEBIGOT, http://pythonhosted.org/uncertainties/)