Sunday, July 10, 2016

HP 42S Programming Part III: Numerical Derivative, Recurring Sequences, Fractions

HP 42S Programming Part III: Numerical Derivative, Recurring Sequences, Fractions

Click here for Part I:  Matrix Column Sum, GCD, Error Function


HP 42S:  Numerical Derivative

The program DERVX is based off my numerical derivative program for the HP 15C.  To see the HP 15C program, click here:  http://edspi31415.blogspot.com/2011/11/numerical-derivatives-in-part-9-we-will.html

DERVX calculates numerical derivatives of f(x), given a small increment h. Generally, the smaller h is, the better the calculation. However with certain methods, if h is too small, the final result may be unexpected.

This program uses a five-point formula:

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

The error is of the order of h^4. 

Source: Burden, Richard L. and J. Douglas Faires. "Numerical Analysis 8th Edition" Thomson Brooks/Cole Belton, CA 2005

Labels Used:
Label DERVX: Main routine
Label 00: f(X).  This function starts with X on the X register. 

Numerical memory registers will be used, and they are the following:
R00 = the numerical derivative
R01 = X
R02 = h

Radians mode is automatically set.

HP 42S:  Program DERVX
00 {“70+”-Byte Prgm}  \\ number varies depends on what is f(X)
01 LBL “DERVX”
02 RAD
03 STO 02  \\ store h
04 R↓ \\ roll down
05 STO 01 \\ store x
06 2
07 RCL* 02
08 –
09 XEQ 00 \\ subroutine
10 STO 00
11 RCL 01
12 RCL- 02
13 XEQ 00
14 8
15 +/-
16 *
17 STO+ 00
18 RCL 01
19 RCL+ 02
20 XEQ 00
21 8
22 *
23 STO+ 00
24 RCL 01
25 2
26 RCL* 02
27 +
28 XEQ 00
29 +/-
30 STO+ 00
31 RCL 00
32 RCL÷ 02
33 12
34 ÷
35 STO 00
36 “d/dX =”   \\ lower case d:  [shift] { D } in ALPHA
37 ARCL ST X
38 RTN \\ main program ends

39 LBL 00
…
NN RTN \\ end f(X) with RTN
NN+1 END

How to run DERVX:

1.  If desired, edit the function by [shift] [XEQ] (GTO) 00, [shift] [R/S] (PRGM).  Remember you start with x in the X stack.  End f(x) with RTN. 
2.  Input x, press [ENTER].
3.  Input h, press [XEQ] {DERVX}.


Test 1:  f(x) = x^2 + x*sin x, where x = π/4, h = 1E-5

The code for f(x) would look like this:

39 LBL 00
40 X^2
41 LASTX
42 ENTER
43 SIN
44 *
45 +
46 RTN
47 END

π [ENTER] 4 [÷]  1 [E] -5 [XEQ] {DERVX}
Result:  2.8333

Test 2:  f(x) = x*e^x, where x = 1.75, h = 1E-5

The code for f(x) would look like this:

39 LBL 00
40 ENTER
41 E^X
42 *
43 RTN
44 END

1.75 [ENTER] 1 [E] -5 [XEQ] {DERVX}
Result:  15.8252

HP 42S: Recurring Sequence Matrix

The program RECUR builds a table for the sequence f(n, u(n-1)).  The table is stored in the matrix MAT.  At the completion of the program, you will be to see the elements of MAT in matrix edit mode.

LBL 00 holds the sequence function. 
R00 = u(n-1)

Specify as many entries as you like, up to 999.

To use the counter in the sequence function, use RCL 02, IP. 

Other registers that are used are:
R01 = n
R02 = counter, in the form of 2.nnn

HP 42S Program RECUR
00 {“95+” Byte Prgm}  \\ varies depending on the sequence function
01 LBL “RECUR”
02 “U(1)=”
03 PROMPT
04 STO 00  \\ store the initial condition
05 “# TERMS:”
06 PROMPT
07 STO 01  \\ store n
08 2
09 DIM “MAT” \\ create the matrix MAT (n x 2)
10 1E-3
11 RCL* 01
12 2
13 +
14 STO 02 \\ set up counter
15 INDEX “MAT” \\ index the matrix
16 1
17 ENTER
18 STOIJ  \\ set index counters at I=1 (row), J=1 (col)
19 1
20 STOEL  \\  store 1 into MAT(1,1)
21 J+  \\  XEQ “J+” 
22 RCL 00
23 STOEL  \\ store U(1) into MAT(1,2)
24 J-  \\ XEQ “J-“, set column pointer back to 1
25 LBL 10  \\ main loop
26 I+ \\ XEQ “I+”, go to the next row
27 RCL 02
28 IP
29 STOEL
30 J+  \\ XEQ “J+”
31 RCL 00  \\ recall u(n-1)
32 XEQ 00 \\ calculate f(n, u(n-1))
33 STO 00 \\ store u(n) for the next loop
34 STOEL
35 J-  \\ XEQ “J-“
36 ISG 02  \\ increase counter
37 GTO 10
38 RCL “MAT”
39 EDIT \\ put MAT in viewing/editing mode
40 RTN  \\ main program ends

41  LBL 00
…
NN RTN \\ end sequence function with RTN
NN+1 END

How to run RECUR:

1.  If desired, edit the function by [shift] [XEQ] (GTO) 00, [shift] [R/S] (PRGM).  Remember you start with u(n-1) in the X stack.  End f(x) with RTN. 
2.  Press [XEQ] {RECUR}.  You will be prompted for U(1) and the number of rows desired.

Test 1:  u(n) = 2*u(n-1),  u(1) = 1, 5 rows wanted

41 LBL 00
42 2
43 *
44 RTN
45 END

[XEQ] {RECUR} 1 [XEQ] 5 [XEQ]

MAT =
1
1
2
2
3
4
4
8
5
16

Test 2:  u(n) = u(n-1)^2 – u(n-1)^3/6,  u(1) = 1.5,  5 rows wanted

41 LBL 00
42 ENTER
43 X^2
44 X<>Y
45 3
46 Y^X
47 6
48 ÷
49 –
50 RTN
51 END

MAT =
1
1.5000
2
1.6875
3
2.0468
4
2.7602
5
4.1138


 HP 42S: Fractions

The program FRACT provides three calculations involving fractions:

ADD:  add two fractions
W/X + Y/Z = (W*Z + X*Y)/(X*Z)

MULT: multiply two fractions
W/X * Y/Z = (W*Y)/(X*Z)

POWER: take a fraction to a power
(W/X)^Y = W^Y/X^Y

The end of the program stores the resulting numerator in N and the resulting denominator in D.  FRACT simplifies the fraction after calculation.  Note:  FRACT sets the HP 42S to FIX 0 mode. Mixed fractions are not included.

HP 42S:  Program FRACT
00 {255-Byte Prgm}
01 LBL “FRACT”
02 FIX 00
03 LBL 99 \\ start menu
04 CLMENU
05 LBL 00
06 “ADD”
07 KEY 1 GTO 01  \\ KEYG
08 “MULT”
09 KEY 2 GTO 02
10 “POWER”
11 KEY 3 GTO 03
12 MENU
13 STOP
14 GTO 99  \\ end menu
15 LBL 01  \\ addition routine
16 CLMENU
17 “W/X + Y/Z”
18 AVIEW
19 PSE
20 INPUT “W”
21 INPUT “X”
22 INPUT “Y”
23 INPUT “Z”
24 RCL “W”
25 RCL* “Z”
26 RCL “X”
27 RCL* “Y”
28 +
29 STO “N”
30 RCL “X”
31 RCL* “Z”
32 STO “D”
33 GTO 10 \\ go to GCD routine
34 LBL 02 \\ multiply routine
35 CLMENU
36 “W/X x Y/Z”
37 AVIEW
38 PSE
39 INPUT “W”
40 INPUT “X”
41 INPUT “Y”
42 INPUT “Z”
43 RCL “W”
44 RCL* “Y”
45 STO “N”
46 RCL “X”
47 RCL* “Z”
48 STO “D”
49 GTO 10 \\ go to GCD routine
50 LBL 03 \\ power routine
51 CLMENU
52 “(W/X)/\Y”  \\ the power symbol is made of two symbols: / and \
53 AVIEW
54 PSE
55 INPUT “W”
56 INPUT “X”
57 INPUT “Y”
58 RCL “W”
59 RCL “Y”
60 Y^X
61 STO “N”
62 RCL “X”
63 RCL “Y”
64 Y^X
65 STO “D”
66 GTO 10  \\ go to GCD routine
67 LBL 10 \\ GCD routine
68 RCL “N”
69 RCL “D”
70 X<Y?
71 X<>Y
72 STO 01
73 X<>Y
74 STO 00
75 LBL 11
76 RCL 01
77 ENTER
78 RCL÷ 00
79 IP
80 RCL* 00
81 –
82 X=0?
83 GTO 12
84 X<>Y
85 STO 01
86 X<>Y
87 STO 00
88 GTO 11
89 LBL 12 \\ ending and display
90 CLA \\ clear ALPHA register
91 RCL “N”
92 RCL÷ 00 \\ GCD = R00
93 STO “N”
94 ARCL ST X
95 ├ “/”   \\ ├ is the attach symbol, press [shift] [ENTER] (ALPHA) [ENTER]
96 RCL “D”
97 RCL÷ 00
98 STO “D”
99 ARCL ST X
100 AVIEW
101 END

Test 1:  Addition (ADD)
12/19 + 8/17 = 356/323
W = 12, X = 19, Y = 8, Z = 17
Result:  “356./323.”   Y: 356, X: 323

Test 2: Multiplication (MULT)
12/19 * 8/17 = 96/323
W = 12, X = 19, Y = 8, Z = 17
Result:  “96./323.”   Y: 96, X: 323

Test:  Power (POWER)
(2/7)^3 = 8/343
W = 2, X = 7, Y = 3
Result:  “8./343.”,  Y: 8, X: 343

That is Part III, I am happy I was able to post this a lot sooner than I thought.  

Eddie

This blog is property of Edward Shore, 2016.






Saturday, July 9, 2016

A Quick Look at the Casio fx-50FH Plus (and quick comparison to the fx-3650p)


A Quick Look at the Casio fx-50FH Plus (and quick comparison to the fx-3650p)

Recently I purchased a Casio fx-50FH Plus solar programming calculator on eBay.  I purchased a used model in the United States.  The Casio fx-50FH Plus is a solar programming calculator, that is unfortunately, not available in stores in the United States. 

The fx-50FH Plus and its variants are H.K.E.A.A. approved, meaning that they are approved for certain certification exams in Hong Kong.  As far as I could tell from Casio’s worldwide site, (link:  http://www.casio-intl.com/asia-mea/en/calc/scientific/programmable/fx50fh/?m_no=166  ), the variants are the same. 

I really like these solar programming calculators from Casio and wish they did sell here in the U.S.  I am also really like the screen on the fx-50FH Plus: the text on both lines are BIG! (see the picture above)

The Basics

It is a two line calculator (no math print) that allows up to four programs.  What is an outstanding feature of the fx-50FH is its library of 40 constants and 23 built in formulas.  The fx-50FH also has the standard base conversions and operations (DEC, BIN, OCT, HEX), complex number arithmetic, seven memory registers (A,B,C,D,X,Y,M), and fractions.

The fx-50FH vs. the fx-3650P

So what are the differences?
Casio fx-3650P on the left, fx-50FH Plus on the right


Calculus:  The fx-3650p has a numerical integration function while the fx-50FH doesn’t. 

Statistics:  Both have the following regression models: Linear, Logarithmic, Power, Inverse, and Quadratic.  The fx-50FH has two types of exponential:  e  (y = a*e^(b*x)) and ab (y = a*b^x).  The fx-3650p has the ab type. 

Programming:  The fx-50FH Plus has 680 program steps allocated to as many as four program areas, opposed to the 360 for the fx-3650p.  Only the fx-50FH has the If-Then-Else-IfEnd structure, While-WhileEnd structure, and the For-To-Step-Next structures.  Powerful stuff for a programmable non-graphing calculator (like the Casio fx-5800p).

At first site, I am impressed and am looking forward to playing with the fx-50FH in the future.  If am not mistaken, the fx-50FH Plus an updated of the fx-50F.  (a 680 byte memory is a big step up from just 29 for the 1987 original).




Until next time,

Eddie



This blog is property of Edward Shore, 2016.

HP 42S Programming Part II: Dew Point, Ellipse Area and Eccentricity, Easy Transverse

HP 42S Programming Part II:  Dew Point, Ellipse Area and Eccentricity, Easy Transverse

Click here for Part I:  Matrix Column Sum, GCD, Error Function

(I plan to post Part III next week.)

As mentioned in Part I, you can download an emulator for the HP 42S, Free42 here: http://thomasokken.com/free42/ .  The emulator is for many operating systems including Windows, Mac, iOS, and Android.  



HP 42S:  Dew Point (°C)


00 {99-Byte Prgm}
01 LBL “DEW”
02 “TEMP °C:”
03 PROMPT
04 STO “T”
05 “HUMIDITY %”
06 PROMPT
07 STO “H”
08 LN
09 17.27
10 RCL* “T”
11 237.3
12 RCL+ “T”
13 ÷
14 +
15 17.27
16 ÷
17 STO “V”
18 237.3
19 RCL* “V”
20 1
21 RCL- “V”
22 ÷
23 “DEW POINT °C”
24 ARCL ST X
25 AVIEW
26 STOP
27 END

Instructions:  Execute GTO DEW from Home.  Press [R/S].

Test:  Input:  T:  20°C, H = 0.50
Result:  9.2696°C

 HP 42S:  Area and Eccentricity of an Ellipse

The program ELLIPSE calculates the area and eccentricity of an ellipse. 

Formulas:
Assume a>b, where a and b represent the lengths of semi-diameters, respectively
Area:  A = π*a*b
Eccentricity:  ϵ = √(1 – (b/a)^2)

00 {76-Byte Prgm}
01 LBL “ELLIPSE”
02 “LARGE S-D:”  \\ S-D:  semi-diameter
03 PROMPT
04 STO “A”
05 “SMALL S-D:” 
06 PROMPT
07 STO “B”
08 RCL “A”
09 RCL* “B”
10 PI  \\ π
11 *
12 “AREA:”
13 AVIEW
14 PSE
15 STOP \\ R/S
16 1
17 RCL “B”
18 RCL÷ “A”
19 X^2
20 –
21 SQRT
22 “ECC:”
23 AVIEW
24 PSE
25 END

HP 42S Easy Transverse

Calculates the new point knowing the original coordinates, direction, and angle of travel.  The angle 0° comes from due east and rotates counterclockwise.  The program sets the HP 42S to degrees mode.  We make use of the Programmable Menu. 

00 {183-Byte Prgm}
01 LBL “EASYTRV”
02 DEG
03 0
04 STO “T”   \\ initialize total distance counter
05 “INITIAL EASTING”
06 PROMPT
07 STO “E”
08 “INIT. NORTHING”
09 PROMPT
10 STO “N”
11 LBL 00 \\ main label
12 XEQ 01 \\ go to calculation sub loop
13 LBL 03 \\ start menu label
14 CLMENU
15 “NEXT”
16 KEY 1 XEQ 01 \\ KEYX command
17 “QUIT”
18 KEY 2 GTO 02 \\ KEYG command
19 MENU
20 STOP
21 GTO 03 \\ end menu loop
22 LBL 01 \\ main calculation loop
23 CLRMENU \\ make both lines available for viewing
24 “ANGLE (0°-360°)”
25 PROMPT
26 STO “A”
27 “DISTANCE”
28 PROMPT
29 STO “D”
30 STO+ “T”
31 →REC
32 STO+ “E”
33 X<>Y
34 STO+ “N”
35 RCL “E”
36 “EAST:”
37 ARCL ST X
38 AVIEW
39 STOP
40 RCL “N”
41 “NORTH:”
42 ARCL ST X
43 AVIEW
44 RTN
45 LBL 2  \\ finalization sub routine
46 CLMENU
47 RCL “T”
48 “ΣDIST:”   \\  Σ is from the ALPHA-MATH menu
49 ARCL ST X
50 AVIEW
51 STOP
52 RCL “N”
53 RCL “E”
54 END

Test:
Initial Data Coordinates:  N = 1,000,  E = 1,000
Travel #1:  170 units at 118°  (28° NW)
Travel #2:  162 units at 45°  (45° NE)

Input:
[XEQ] {EASYT}
1000 [R/S] [R/S]
118 [R/S] 170 [R/S]

Result:
EAST: 920.1898 [R/S],  NORTH: 1,150.1011

{NEXT} 45 [R/S] 162 [R/S]

EAST:  935.5061 [R/S], NORTH:  1,192.4143

{QUIT} ΣDIST:  215 [R/S], N on Y stack, E on X stack. 


 This blog is property of Edward Shore, 2016.


HP 42S Programming Part I: Matrix Column Sum, GCD, Error Function

HP 42S Programming Part I:  Matrix Column Sum, GCD, Error Function

Continuing with calculators from the 1980s, this series will present one of the most beloved scientific calculators and one of the most sought after: the Hewlett Packard HP 42S from the late 1980s.  If you want one, you might want to save up because HP 42S calculators are valuable, and often cost over $100.

It is one of my most favorite calculators of all time. 

Free42

However, you can use an emulator for the HP 42S for free, check out the Free42 by Thomas Oakken.  It is a rewrite of the HP 42S code and the emulator is available on many platforms including Widows, Mac, iOS, and Android.  Link:  http://thomasokken.com/free42/   

Oakken accepts donations.





Part III hopefully to come next week.  

As usual, anything that comes after the double-backslash is a comment only.

HP 42S: Column Sums of a Matrix

This could potentially had been a medium to long sized programs involving loops, but thanks to the powerful function RSUM (found in CATALOG-FUNC or executed by XEQ RSUM) this program will be quite short.  RSUM is the row sum function, or the sum of each row of a matrix.

Just put a matrix on the stack and run CSUM.  When the program is finished, press [shift] [ 9 ] (MATRIX), {EDIT} to see the sums.

00 {12-Byte Prgm}
01 LBL “CSUM”
02 TRANS \\ transpose
03 RSUM
04 END

Test:  MAT1 = [ [4, 3, 1], [5, 8, 2], [7, 6, 3]]
Result:  [16, 17, 6]

HP 42S:  GCD (Greatest Common Divisor) by Euclid Division

Enter the two integers on the Y stack and X stack.  Order doesn’t matter.

00 {42-Byte Prgm}
01 LBL “GCD”
02 X<Y?
03 X<>Y
04 STO 01  \\ store maximum in R01
05 X<>Y
06 STO 00  \\ store minimum in R00
07 LBL 00 \\ main loop
08 RCL 01
09 ENTER
10 RCL÷ 00
11 IP
12 RCL* 00
13 –
14 X=0?  \\ is max – IP(min/max)*min = 0?
15 GTO 01
16 X<>Y
17 STO 01
18 X<>Y
19 STO 00
20 GTO 00
21 LBL 01 \\ display GCD
22 RCL 00
23 “GCD:”
24 ARCL ST X
25 AVIEW
26 END


Test:   Find the GCD of 485 and 175.
485 [ENTER] 175 [XEQ] {GCD}   Result:  5
Alternatively:
175 [ENTER] 485 [XEQ] {GCD}   Result:  5


HP 42S:  Error (erf) Function


ERF(X) = ∫ 2/√π * (e^(-T^2)) dT, from T = 0 to T = x

Integrand:
00 {22-Byte Prgm}
01 LBL “ERF”
02 MVAR “T”
03 RCL “T”
04 X^2
05 +/-
06 E^X
07 2
08 *
09 PI
10 SQRT
11 ÷
12 END

Instructions:

Press [(shift)] [ 8 ] (∫ f(x) )
Choose ERF at the “Select ∫f(x) Program”
Select T at Set Vars; Select ∫var
Store 0 in LLIM, X in ULIM, a suitable accuracy factor (10^-n) in ACC
Press the ∫ soft key.

Test: erf(1.2) with ACC of 1E-6  (LLIM = 0, ULIM = 1.2) 
Result:  0.9103


 This blog is property of Edward Shore, 2016.

Wednesday, July 6, 2016

TI-55 III Programs Part III: Area and Eccentricity of Ellipses, Determinant and Inverse of 2x2 Matrices, Speed of Sound/Principal Frequency

TI-55 III Programs Part III:  Area and Eccentricity of Ellipses, Determinant and Inverse of 2x2 Matrices, Speed of Sound/Principal Frequency



TI-55 III:  Area and Eccentricity of the Ellipse

Formulas:
Assume a>b, where a and b represent the lengths of semi-diameters, respectively
Area:  A = π*a*b
Eccentricity:  ϵ = √(1 – (b/a)^2)

Program: 
Partitions Allowed: 1-5
STEP
CODE
KEY
COMMENT
00
71
RCL
R0 = a
01
00
0

02
65
*

03
71
RCL
R1 = b
04
01
1

05
65
*

06
91
π

07
95
=

08
12
R/S
Display A
09
53
(

10
01
1

11
75
-

12
53
(

13
71
RCL

14
01
1

15
55
÷

16
71
RCL

17
00
0

18
54
)

19
18
X^2

20
54
)

21
95
=

22
13
√

23
12
R/S
Display ϵ

Input:  a [STO] 0, b [STO] 1, [RST] [R/S]
Result:  Area, [R/S] Eccentricity

Test:  a = 7.06, b = 3.78
Result: A ≈ 83.839055, ϵ ≈ 0.8445918

TI-55 III:  Determinant and Inverse of 2 x 2 Matrices

This program will require 4 registers. 
Input Matrix:  M = [[ R0,  R1 ] [ R2 , R3 ]]
Output Matrix:  M^-1 = [[ R3/det, -R1/det ] [ -R2/det, R0/det ]]
Where det = R0 * R3 – R1 * R2  (determinant). 

Program: 
Set 4 partitions:  [2nd] [LRN] (Part) 4
STEP
CODE
KEY
COMMENT
00
71
RCL
Calculate determinant
01
00
0

02
65
*

03
71
RCL

04
03
3

05
75
-

06
71
RCL

07
02
2

08
75
*

09
71
RCL

10
01
1

11
95
=

12
12
R/S
Display determinant
13
61
STO
Calculate inverse
14
55
÷

15
00
0

16
61
STO

17
55
÷

18
03
3

19
94
+/-

20
61
STO

21
55
÷

22
01
1

23
61
STO

24
55
÷

25
02
2

26
01
1
Display 1 to indicate “done”
27
12
R/S


Input:  Store:
M(1,1) [STO] 0
M(1,2) [STO] 1
M(2,1) [STO] 2
M(2,2) [STO] 3
Press [R/S] to calculate the determinant of M.  If M≠0, continue and press [R/S].
You will see a 1 in the display, this is used as an indicator that the program is done. 

Result Inverse Matrix:
M^-1[1,1] stored in R3
M^-1[1,2] stored in R1
M^-1[2,1] stored in R2
M^-1[2,2] stored in R0

Test: 
M =  [ [ -1.4,  3.0 ], [ 2.8, 6.4 ] ]
Determinant = -17.36
M^-1 ≈  [ [ -.3686635945, .1728110599 ], [ .1612903226, .0806451613 ] ]

TI-55 III: Speed of Sound/Fundamental Resonant Frequency

Formulas:

Speed of Sound (m/s):  v = t*0.6 + 331.4
Where t = temperature (°C)

Fundamental Resonant Frequencies in an Open Pipe:  fn = v/(2*L)
Where fn = frequency (Hz), v = speed of sound (m/s), L = length of pipe (m)

Program:
Partitions allowed:  1-5
STEP
CODE
KEY
COMMENT
00
65
*

01
93
.
Decimal point
02
06
6

03
85
+

04
03
3

05
03
3

06
01
1

07
93
.
Decimal point
08
04
4

09
95
=

10
12
R/S
Display speed of sound
11
55
÷

12
02
2

13
55
÷

14
12
R/S
Prompt for L
15
95
=

16
12
R/S
Display frequency

Speed of Sound in Dry Air: 
Input:  Enter temperature in °C [F1]
Result:  Speed of sound (m/s), press [R/S]

Fundamental Resonant Frequencies:
Store the length of the open pipe (m) then press [R/S]
Result:  Fundamental Resonant Frequency (Hz)

Test:
Open pipe of 0.45, where the temperature of the air is 39°C (102.2°F). 

Input:  39 [R/S]
Result:  354.8 m/s (speed of sound), [R/S]
394.22222 Hz (fundamental resonant frequency)

Source:  Browne Ph. D, Michael.  “Schaum’s Outlines:  Physics for Engineering and Science”  2nd Ed.  McGraw Hill: New York, 2010

 Eddie

I hope you are enjoying this series of programs for calculators from the 1980s.  The next series, I plan to stay in the 1980s when I work with the 1988 HP 42S.

This blog is property of Edward Shore.  

TI-84 Evo BASIC: Hydraulic Radius and Chezy-Manning (Circular Pipes)

TI-84 Evo BASIC: Hydraulic Radius and Chezy-Manning (Circular Pipes) Introduction The program, HYDRAD makes three calculations...