Advanced Math Tools For The TI-89
Advanced Math Tools For The TI-89
Advanced Math Tools For The TI-89
Featuring
(This is my robot. It has nothing to do with this program, but I like it.)
Eric Beltt
belt0033@tc.umn.edu
http://home.earthlink.net/~ebeltt/
October 26, 2002
Disclaimer
The topics addressed by this program are relatively complicated. The functions
simply perform a set of operations on the input parameters, so the answer is only as good
as the input. As such, you should take this program for what it is. I designed it as a set of
tools to check my answers on homework and exams. It won’t do the problems for you,
and it won’t replace the good old-fashioned hard work required to succeed in whatever
application you are using the program for.
I spent a good deal of time checking the functions to make sure I could get the
correct answer on sample problems. This doesn’t mean that the program is bug free.
Since it is written in basic, it’s very unlikely that it will damage your calculator, but it
may not produce the correct answer under certain circumstances. If you are going to
blame me for incorrect answers, please don’t use this program. If you believe you found
a mistake, please email me so I can fix it immediately. Check to make sure I haven’t
already fixed it in a new version as well. The same goes for this document.
Lastly, I would like to point out that this document isn’t a math textbook. If you
don’t know what the functions are for, you probably won’t learn by reading through this.
The notation I used might also be different than what you are used to. If you would like
to know more about a formula that I used, you can consult the specific textbook where I
found it. Each of them is listed at the end of this document.
My motivation for designing the set of functions that this program is based on was
rather selfish. I just wanted to make it a little easier to get through multivariable calculus.
I decided to release the set of functions, hoping it would do the same for some other
people. Since then, I have had several people email me asking for a better explanation of
how the functions work, and I suspect that a lot more people just gave up without asking
for help. That’s why I decided to write this program. My hope was that by making the
functions easier to use, they would be more useful to people. I sincerely hope that I have
accomplished that.
If you get a lot of use out of this program, I would love to hear from you. As I
say in the “About” section of the program, questions, comments and requests are
welcome and appreciated. If you find a bug or if there is something you would like me
to add to the next release, please let me know. I hope this document answers all of your
questions, but feel free to email me if you still have some.
Installation
You need to install the program and all of the functions into a folder called mv.
Beyond that, there is nothing special you need to do.
Entering Parameters
Almost every parameter you will enter while using this program needs to be in the
form of a vector. Even if there is only one element, you still need to put brackets [ ]
around it. You can determine the proper form from the input example in the dialog box.
If there are brackets, you need to use them. If there are none, you shouldn’t use them. I
would have made it simpler, but the nature of advanced math requires the use of vectors.
Results
Each time a computation is performed, the result is temporarily stored to a
variable called mv_ans. If you want to save the result permanently, use the “Save
Result” feature under the “Tools” menu. Remember that your saved variable will be in
the mv folder unless you specify the folder you want in the variable name (ex: main\var).
Notes
You may notice that there is an annoying “feature” built into the TI-89. Every
time a dialog box appears, Alpha-Lock is turned on. If you want to disable this, there is
at least one program out there to do it. The one I found is called autoaoff. I haven’t tried
it and I am not associated with it, nor do I take any responsibility for what it does to your
calculator. If you really find auto Alpha-Lock annoying though, this is the way to disable
it.
Tools
Clean Up
This feature deletes all of the unnecessary variables that are generated while using
the program. The program saves the information you enter into a dialog box as various
strings to save you from unnecessary repetition. If you want the dialog boxes for a
function to start empty, just use Clean Up before hand. This does not delete saved
variables. Clean Up also clears the screen.
This feature allows you to save the previous result to a permanent variable. If you
want the result saved to a folder other than mv, you need to specify that in the variable
name. For example, main\temp would save the contents of mv_ans to a variable in the
main folder called temp.
About
About displays what is shown in the picture above. Notice that the program’s
version number is listed in the title of the dialog box.
Evaluate takes the previous result and evaluates it at the given point. It uses the
function fofg to accomplish this. The result is stored in a variable called mv_eval.
Notice that title of the previous computation is displayed in the dialog box. You will
need to know the appropriate number of coordinates for the point.
Mode
Mode is where you choose what set of functions will be displayed in the toolbar.
The default is Vector Calculus. If you want to change the default mode, you will need to
edit the program. There is a variable responsible for the default mode is called
mv_mode, and it is located near the top of the code.
Derivatives
Gradient
r r ∂f r ∂f r ∂f r
∇f ( x ) = ( x ), ( x ),..., ( x )
∂
1x ∂x 2 ∂x n
r
grad ( f , x )
Directional Derivative
r r r r
D f ( x ) = ∇f ( x ) ⋅ u
r
u
r r
dirder ( f , x , u )
Divergence
r r ∂F ∂F ∂F
div( F ( x )) = 1 + 2 + 3
∂x1 ∂x 2 ∂x3
r r
div ( F , x )
Jacobian Matrix
r ∂f r
Jf = i (x )
∂x j
r r
jacobian ( F , x )
Hessian Matrix
v ∂2 f r
Hf ( x ) = ( x )
∂
j i
x ∂x
r
hessian ( f , x )
Laplacian
r2 r ∂2 f r ∂2 f r ∂2 f r
∇ f (x) = 2 (x) + 2 (x) + 2 (x)
∂x ∂y ∂z
r
laplace ( f , x )
Line Integral
r r r r r
∫ F ⋅ dx = ∫ F ( f (t )) ⋅ f ′(t )dt
C L
r r r
vline ( F , x , f , t , L)
Arc Length
r
L(C ) = ∫ f ′(t ) dt
C
r
arclngth ( f , t , C )
Surface Integral
r r
r ∂f ∂f
∫∫M gdσ = ∫∫R g ( f ( s, t )) ∂s × ∂t dsdt
r r
vsurface( g , σ , f , [ s t ], Rs , Rt )
Surface Area
r r
∂f ∂f
σ ( M ) = ∫∫ × dsdt
R
∂s ∂t
r
surfarea( f , [ s t ], Rs , Rt )
Gauss’s Theorem
r r r
∫∫
∂S
F ⋅ n = ∫∫∫ div
S
( F )dV
Green’s Theorem
∂F2 ∂F1
∫∂R F1 dx + F 2 dy = ∫∫R ∂x − ∂y dA
r r
green ( F , x , R1 , R2 )
Stokes’ Theorem
r r
r r r r r r ∂f ∂f
∫∂MF ⋅ dx = ∫∫M curl ( F ) ⋅ ndσ = ∫∫R curl ( F ( f ( s, t )) ⋅ ∂s × ∂t dsdt
r r r
stokes ( F , x , f , [s t ]R1 , R2 )
Nth Integral
Matrix
rref ( A) (TI-89)
Determinant
det([A]) = ∏ λi
det ( A) (TI-89)
Trace
tr ([ A]) = ∑ λi
trc ( A)
Inverse
[A] ⋅ [A]−1 = 1
Eric Alan Beltt Page 14 October 26, 2002
belt0033@tc.umn.edu
A −1 (TI-89)
Eigenvalues
[A]vr = λvr
eigenval ( A)
Vector
r
x : ℜn → ℜm
Dot Product
r r
dotP ( x, y ) = x ⋅ y
r r
dotP ( x , y ) (TI-89)
Cross Product
r r
crossP ( x, y ) = x × y
r r
crossP ( x , y ) (TI-89)
Magnitude
r r r
x = x⋅x
r
mag (x )
Unit Vector
r
x
u xr = r
x
r
unitV (x )
Curve
α (t ) : I → ℜ 3
Frenet Frame
α′
T α′
N = α ′ × α ′′ × α ′
α ′ × α ′′ α ′
B
α ′ × α ′′
α ′ × α ′′
frenet (α , t )
Curvature
α ′ × α ′′
κ=
α′
3
frenet _ k (α , t )
τ=
(α ′ × α ′′) ⋅ α ′′′
α ′ × α ′′
2
frenet _ t (α , t )
Involute
α ′(t ) t α ′(t )
Ι(t ) = α (t ) − s(t ) = α (t ) − ∫ α ′(u ) du
α ′(t ) 0 α ′(t )
involute (α , t )
Plane Evolute
1
ε (t ) = α (t ) + N (t )
κ (t )
evolute (α , t )
Note: This function is only valid for plane curves.
Arclength Function
t
s(t ) = ∫ α ′(u ) du
0
arcl ngth (α , u , t )
Note: This function doesn’t exist as it is shown above. The third parameter of the
arclngth function is actually the integration bounds. The main program uses the arclngth
function and, in the place of t above, supplies the bounds [0,t].
Surface
r r r r r
r 3 r ∂x r ∂x r ∂2x r ∂2x r ∂2x
x (u , v) : D → ℜ , xu = , xv = , xuu = 2 , xuv = , xvv = 2
∂u ∂v ∂u ∂u∂v ∂v
Shape Operator
r d d d
S p (v ) = −∇ vrU = − (u1 (α (t )), (u 2 (α (t )), (u 3 (α (t )) t =0
dt dt dt
r
shape( x, [u v])
Gaussian Curvature
ln − m2
K ( p ) = det( S p ) =
EG − F 2
r
gauss _ k ( x , [u v])
Mean Curvature
1 Gl + En − 2 Fm
H ( p) = trace ( S p ) =
2 (
2 EG − F 2 )
r
mean _ h( x , [u v])
Christoffel Symbols
Eu Ev
−
Γuuu Γuuv 2 E 2G
u E Gu
Γuv Γuvv = v
Γvvu 2E 2G
Γvvv Gu Gv
− 2 E 2G
r
christof ( x , [u v])
Vector Calculus
Barr, Thomas H. Vector Calculus. Upper Saddle River, NJ: Prentice Hall, 1997
Linear Algebra
Golubitsky, Martin, and Michael Dellnitz. Linear Algebra and Differential Equations
using Matlab. New York: Brooks/Cole, 1999
Differential Geometry
Opera, John. Differential Geometry and its Applications. Upper Saddle River, NJ:
Prentice Hall, 1997