**TI-74: Five Stencil Derivative, Vertical Height on a Hill, Solving Cubic Equations**

**TI-74 Program: Five Stencil Derivative**

This program estimates the numerical derivative of f(x) at x0 by the formula:

f'(x0) ≈ ( -f(x0+2h) + 8*f(x0+h) - 8*f(x0-h) + f(x0-2h) )/(12h)

Source: "Five Stencil Method" Wikipedia. Page last edited November 8, 2018. https://en.wikipedia.org/wiki/Five-point_stencil Retrieved April 14, 2019

Note: comments (after !) are for notes, and do not need to be typed.

500 PRINT "F(X) IS ON LINE 550.": PAUSE 1: RAD ! RAD sets radians mode

502 INPU T "X: ";A

504 INPUT "H: ";H

506 D=0: X=A+2*H: GOSUB 550

508 D=-F: X =A+H: GOSUB 550

510 D=8*F+D: X=A-H: GOSUB 550

512 D=D-8*F: X=A-2*H: GOSUB 550

514 D=(D+F)/(12*H)

516 PRINT "DF/DX =";D: PAUSE

518 END

550 F=5.2^X ! Insert F(X) here

552 END

Examples:

550 F=5.2^X

x0 = 1.2, h = 0.001, Result: 11.92160564

550 F=EXP(X)*SIN(X)

x0 = PI/3, h = PI/24, Result: 3.892851849

**TI-74 Program: Vertical Height on a Hill**

Variables:

H = height of the observer

L = horizontal length

V = vertical angle (entered in degrees-minutes-seconds, DD.MMSSSS)

G = ground slope (entered in degrees-minutes-seconds, DD.MMSSSS)

If G>0, the hill is at an elevation. If G<), the hill is at an depression.

T = total height = vertical difference + observer's height

T = L * (tan V - tan G) + H

Since there is no DMS to decimal conversion function in TI-74's basic, a conversion is necessary. The following is sample code where A is DMS format needed to be converted:

T = ABS(A)

D = INT(T)

M = INT((T-D)*100)

S = ((T-D)*100-M)*100

A = (D+M/60+S/3600)*SGN(A)

The program code is shown below:

600 INPUT "LENGTH: ";L

602 INPUT "OBSERVER'S HEIGHT: ";H ! ' is SHIFT + SPACE

604 DEG: PRINT "ANGELS IN DD.MMSSSS": PAUSE 1.5

606 INPUT "VERTICAL ANGLE: ";V: A=ABS(V)

608 D=INT(A): M=INT((A-D)*100): S=((A-D)*100-M)*100

612 V=(D+M/60+S/3600)*SGN(V)

614 INPUT "GROUND SLOPE: ";G: A=ABS(G)

616 D=INT(A): M=INT((A-D)*100): S=((A-D)*100-M)*100

618 G=(D+M/60+S/3600)*SGN(G)

620 T=L*(TAN(V)-TAN(G))+H

622 PRINT "TOTAL HEIGHT =";T: PAUSE

624 END

Examples:

Input: L: 10 m, V: 30°14'33", G: 10°30'00", H = 1.7780 m

Result: T = 5.754638129 m

Input: L: 10 m, V: 30°14'33", G: -10°30'00", H = 1.7780 m

Result: T = 9.461464028 m

Source:

F.A. Shepherd "Engineering Surveying: Problems and Solutions" 2nd Edition Edward Arnold Publishers Ltd. London, UK 1983 ISBN 0-7131-3478-X

**TI-74 Program: Solving Cubic Equations**

This program solves the cubic equation:

A*X^3 + B*X^2 + C*X + D = 0

This program uses Newton's method to get the first root, then divides the polynomial by (x - root). Finally the quadratic formula is used to find the other two roots. This program assumes the coefficients A, B, C, and D are real. An initial guess of 1 is used (can be changed, see line 710).

700 PRINT "A*X^3+B*X^2+C*X+D=0, REAL COEFS.": PAUSE 1.5

702 INPUT "A: ";A

704 INPUT "B: ";B

706 INPUT "C: ";C

708 INPUT "D: ";D

710 X=1

712 XN=X-(A*X^3+B*X^2+C*X+D)/(3*A*X^2+2*B*X+C)

714 IF ABS(XN-N)<1e-9 718="" font="" then="">

716 X=XN: GOTO 712

718 X1=XN

720 PRINT "X1 =";X1: PAUSE

722 J=-(A*X1+B)

724 K=(A*X1+B)^2-4*A*(A*X1^2+B*X1+C)

726 IF K<0 750="" font="" then="">

728 X2=(J+SQR(K))/(2*A): X3=(J-SQR(K))/(2*A)

730 PRINT "X2 =";X2: PAUSE

732 PRINT "X3 =";X3: PAUSE

734 END

750 XR=J/(2*A): XI=SQR(ABS(K))/(2*A)

752 PRINT XR;"+- ";XI;"I": PAUSE

754 END

Example:

A: 1, B: 1, C: -9, D: -9

Roots: -3, 3, 1

Eddie

All original content copyright, © 2011-2019. Edward Shore. Unauthorized use and/or unauthorized distribution for commercial purposes without express and written permission from the author is strictly prohibited. This blog entry may be distributed for noncommercial purposes, provided that full credit is given to the author.