SymDiff 1.2

Symbolic differentation for Palm OS 3.0+ with pretty output

Copyright 2002 Norbert Pozar


Register at www.handango.com 


User's Manual

  1. Description

  2. Installation

  3. Registration

  4. Getting started

  5. Symbolic evaluation

  6. Browsing and using results

  7. Preferences

  8. Menu commands

  9. Errors

  10. What's new

Description

SymDiff is program that computes the derivative of a given function and tries to find simpler form. The output function is then displayed in a pretty, easily readable form.

Simplification means that SymDiff tries various procedures to find the most common and the shortest form of expression.

Supported operators and functions:

Installation

Make sure you have removed an old version of SymDiff. 

SymDiff consists of one file "SymDiff.prc". This file can be installed using Palm Desktop Installer, just like any other application.

Registration

SymDiff is a shareware, you have 7 (seven) days to evaluate it. After that you need to register to continue to use SymDiff. Visit www.handango.com to register and to get a Registration Code. Enter it at the Register form, which is accesible from menu "Options->Register" or from Shareware info screen.

With registration you get also free upgrades.

Getting started

When you start SymDiff, you will be asked to register. If you have registered yet, you can enter Registration Code in register screen. Otherwise press Continue.

The main screen consists of an Output area, where results are shown, and of an Input area, which consists of an Input Field and buttons.

SymDiff accepts expressions in a standart mathematical infix notation.

Writing expression

For writing use your Graffiti input area or onscreen keyboard.

You can also use buttons at the bottom of the screen for entering common symbols +, -, *, /, ^, (, ).

When you are entering function names, write just one or more characters of the function. After that, a list of four relevant funcions appears just below the Input Field. You can select your function by hitting its name. If you can't find your function, hit the "..." button on the right to show other four functions starting with your characters.

Example

See "Prefereneces"

Variables

SymDiff uses two kinds of variables:

General variables

 You don't have to declare it anywhere (x means just x). Just use it. Variables are case-sensitive. 

Example

Symbolic variables

You have to declare them simply using operator =. Symbolic variables are during symbolic evaluation replaced by their declaration. They can be used to store expressions. See "Symbolic variables".

Example

  1. Declare velocity v=a*t. Since now every v in every expression will be replaced by a*t.

  2. Declare kinetic energy E=1/2*m*v^2. You will get 1/2*m*a^2*t^2. Since now every E in every expression will be replaced by 1/2*m*a^2*t^2.

Differentiation

Clearing Input Field

Symbolic evaluation of expression

Symbolic evaluation

When you want to do more than simple differentiate by d/dx button, you can use symbolic evaluation using <- button. By symbolic evaluation you are allowed to enter symbolic commands (functions) to control the differentation.

At the moment SymDiff contains one symbolic function:

diff(symexpr,var,order)

symexpr - the expression you want to differentiate

var - variable for differentation (when omitted default variable is used)

order (positive integer number) - order of differentation, mean how many times the expression is differentiated (when omitted one (1) is used)

Examples

standard differentation (like d/dx button): diff(sin(x)), hit <- and the result is cos(x)

differentation with respect to another variable: diff(sin(x)*y/z,y), hit <-, result sin(x)/z

second order differentation: diff(x^3,x,2), hit <-, result 6*x

differentation with respect to more variables: diff(diff(x^8*asin(y),y,1),x,2), hit <-, result 56*x^6/(1-y^2)^(1/2)

Note: When you tap d/dx, first of all the expression is evaluated the same way as when you tap <-, and then differentiated with respect to "x".

Note: Differentation of some expressions can lead to very long expressions. It can cause soft reset of your Palm in current SymDiff version. For example diff(asin(x)/x,x,4)

Symbolic variables

Symbolic variables are during symbolic evaluation of an expression replaced by their declaration. You can use them for storing expressions, numbers etc. They are saved into database, they persist even when you quit SymDiff. 

Managing varibles can be done either by special operator = or by Variables form.

Declaration of symbolic variable

Enter variable name, then =, then a declaration and hit <-. First of all, declaration is symbolicaly evaluated, then variable is declared using a result of symbolic evaluation.

Example

You want to declare a as sin(x)-tan(y):

  1. Clear Input Field using X button.

  2. Enter a=sin(x)-tan(y)

  3. Hit <- button

  4. Result is sin(x)-tan(y)

Now a is declared.

You want to enter (sin(x)-tan(y))^3.

  1. Clear Input Field using X button.

  2. Enter a^3

  3. Hit <- button

  4. Result is (sin(x)-tan(y))^3

You want to differentiate y*(sin(x)-tan(y)) with respect to y three times.

  1. Clear Input Field using X button.

  2. Enter diff(y*a,y,3)

  3. Hit <- button

  4. Result is quite long :).

Changing the declaration of symbolic variable

Just declare variable with another declaration.

Example

Redeclaration of a to x-y

  1. Clear Input Field using X button.

  2. Enter a=x-y

  3. Hit <- button

  4. Result is x-y

Deleting symbolic variable

In fact a variable can be only removed from symbolic variables and it becames a general variable.

To delete a symbolic variable write var=var and hit <-

Example

Deleting of variable a.

  1. Clear Input Field using X button.

  2. Enter a=a

  3. Hit <- button

  4. Result is a

Now a means just a.

Variables form

Menu command "SymDiff->Variables" opens a Variables form.

It shows a list of all variables (general and symbolic as well). You can scroll the list using a scroll bar to the right or PageUp/PageDown hard buttons.

By selecting of push buttons at the bottom of the form you can choose an operation with a variable.

Then select the variable you want to use, edit, inspect its proteperties or delete.

Operations

  1. Use - selected variable is entered at cursor position at Input Field, Variables form is closed.

  2. Edit - selected variable and its declaration are entered at Input Field, you can then edit its declaration

  3. Prop - shows properties form of selected variable

  4. Del - deletes a declaration of a selected symbolic variable 

Browsing and using results

Old inputs and results are stored, so you can watch them and reuse them for consecutive operations.

Browsing results

Reusing results

Preferences

At preferences form (accessible in Options menu) you can select:

Scrolling the expressions

Horizontal scrolling can be done either by draging it by your pen or by tapping a pen at a left or a right half of an expression. 

Draging

Select "Pen move". x2 or x3 means that the expression moves twice or three times faster than you move the pen.

Tapping

Select "Pen tap". Full, 90% and 2/3 means what portion of the expression is moved. 

Ins. right bracket

When checked, right bracket is inserted when you are entering functions. For example write s, tap sin and 'sin()' is inserted at a cursor position instead of standard 'sin(' (when Ins. right bracked unchecked).

Menu Commands

Errors

When you enter invalid expression, an error message appears just below the Input Field.

List of errors


Known bugs

I would appreciate bug reports, suggestions etc. My e-mail is berta@quick.cz.

What's new

Version 1.2, October 9, 2002

Version 1.1, September 23, 2002

Version 1.01, August 21, 2002

Version 1.0 beta, August 7, 2002


Copyright 2002 Norbert Pozar