Solver for the HP-15C - Printable Version +- HP Forums (https://archived.hpcalc.org/museumforum) +-- Forum: HP Museum Forums (https://archived.hpcalc.org/museumforum/forum-1.html) +--- Forum: Old HP Forum Archives (https://archived.hpcalc.org/museumforum/forum-2.html) +--- Thread: Solver for the HP-15C (/thread-213353.html) Solver for the HP-15C - Thomas Klemm - 03-04-2012 There was a recent discussion comparing the HP-35s and the HP-15c: 33s, 35s or 15cLE--which to buy? Then we were reminded of Valentin's 48-step routine for the HP-35s to find real and/or complex roots: 35s - find roots of 3rd and higher order equations Only when I asked myself how would I do that for the HP-15C I realized its biggest drawback: there's no easy way to store complex numbers. My first idea was to use matrices but it turned out that it was easier to use plain registers. The step-size h is stored in register 0, while the name/number of the program is specified in the variable I. So let's assume we want to solve program B with step-size h = 10-4 and starting guess 2: EEX 4 CHS STO 0 RCL MATRIX B STO I 2 A Intermediate values of |dz| are displayed: (( running )) 0.148589460 (( running )) 0.002695411 (( running )) 0.000000017 (( running )) 0.000000000 (( running )) 1.854105968 Should that annoy you just remove the PSE-command in line 058. Kind regards Thomas Some definitions: z = x + i y F+ = F(z + h) = F+x + i F+y F-- = F(z - h) = F--x + i F--y F = F(z) = Fx + i Fy Intermedidate results are kept in these registers: 0: h 1: x 2: y 3: F-x 4: F-y 5: Fx 6: Fy 001 - 42,21,11 LBL A 026 - 43 36 LASTx 051 - 10 ÷ 002 - 44 1 STO 1 027 - 30 - 052 - 45 0 RCL 0 003 - 42 30 Re<>Im 028 - 2 2 053 - 20 × 004 - 44 2 STO 2 029 - 10 ÷ 054 - 44,30, 1 STO - 1 005 - 42,21, 0 LBL 0 030 - 34 x<>y 055 - 42 30 Re<>Im 006 - 45 0 RCL 0 031 - 45 5 RCL 5 056 - 44,30, 2 STO - 2 007 - 16 CHS 032 - 45 6 RCL 6 057 - 43 16 ABS 008 - 32 1 GSB 1 033 - 42 25 I 058 - 42 31 PSE 009 - 44 3 STO 3 034 - 36 ENTER 059 - 45 0 RCL 0 010 - 42 30 Re<>Im 035 - 40 + 060 - 43 11 x^2 011 - 44 4 STO 4 036 - 30 - 061 - 43,30, 8 TEST 8 012 - 0 0 037 - 1 1 062 - 22 0 GTO 0 013 - 32 1 GSB 1 038 - 43 36 LASTx 063 - 45 1 RCL 1 014 - 44 5 STO 5 039 - 43 33 R-^ 064 - 45 2 RCL 2 015 - 42 30 Re<>Im 040 - 10 ÷ 065 - 42 25 I 016 - 44 6 STO 6 041 - 43 33 R-^ 066 - 43 32 RTN 017 - 45 0 RCL 0 042 - 43 36 LASTx 067 - 42,21, 1 LBL 1 018 - 32 1 GSB 1 043 - 10 ÷ 068 - 45 1 RCL 1 019 - 36 ENTER 044 - 34 x<>y 069 - 45 2 RCL 2 020 - 36 ENTER 045 - 20 × 070 - 42 25 I 021 - 45 3 RCL 3 046 - 43 36 LASTx 071 - 40 + 022 - 45 4 RCL 4 047 - 33 R-v 072 - 36 ENTER 023 - 42 25 I 048 - 30 - 073 - 36 ENTER 024 - 40 + 049 - 11 SQRT x 074 - 36 ENTER 025 - 34 x<>y 050 - 40 + 075 - 22 25 GTO I These are examples from Valentin's paper "Boldly Going ... Going Back to the Roots": 076 - 42,21,12 LBL B 081 - 42,21,13 LBL C 105 - 42,21,14 LBL D 113 - 42,21,15 LBL E 077 - 14 y^x 082 - 2 2 106 - 43 11 x^2 114 - 2 2 078 - 43 26 PI 083 - 36 ENTER 107 - 6 6 115 - 40 + 079 - 30 - 084 - 3 3 108 - 30 - 116 - 20 × 080 - 43 32 RTN 085 - 42 25 I 109 - 20 × 117 - 1 1 086 - 20 × 110 - 2 2 118 - 0 0 087 - 1 1 111 - 30 - 119 - 40 + 088 - 36 ENTER 112 - 43 32 RTN 120 - 20 × 089 - 2 2 121 - 2 2 090 - 42 25 I 122 - 0 0 091 - 30 - 123 - 30 - 092 - 20 × 124 - 43 32 RTN 093 - 3 3 094 - 36 ENTER 095 - 4 4 096 - 42 25 I 097 - 30 - 098 - 20 × 099 - 6 6 100 - 36 ENTER 101 - 8 8 102 - 42 25 I 103 - 30 - 104 - 43 32 RTN For those using nonpareil: