Post Reply 
(11C/15C) Extended power function
04-05-2021, 10:53 AM (This post was last modified: 04-05-2021 10:55 AM by Nihotte(lma).)
Post: #1
(11C/15C) Extended power function
(11C/15C) Extended power function

Hi,

A long time ago, I had to solve some equations like
f(t) = 2 + XROOT(3, (1 - 5t)) = 0
where XROOT(3, -8)=-2
But the HP15C (or the HP11C) could not handle -8^(1/3) without returning ERROR 0, out of the complex mode

So, I composed a function to compute Y^X with Y and X as decimal or natural numbers
It gave the following program for the HP15C
(The program also runs on the HP11C by using CF 0, SF 0 or F?0 instead of CF 8, SF 8 and F?8)


Code:

f LBL E
ENTER
g INT
x=y (5)
GTO .9
g CLx
g LSTx
f FRAC
1/x
g RND
g CF 8
2
÷
f FRAC
g x=0
GTO .9
g SF 8
R↓
x↔y
x>0 (1)
g CF 8
g ABS
g LN
x
e^x
g F? 8
CHS
g CF 8
g RTN
f LBL .9
R↓
y^x
g RTN

f LBA A
5
CHS
x
1
+
3
1/x
GSB E   // calls extended Y^X
2
+
g RTN


With this usage :

-8
ENTER
3 1/x
GSB E
returns -2

Further, A is the function to solve

So, 0 ENTER 0
f SOLVE A returns 1.8 after running near a minute

Keep you safe !
Find all posts by this user
Quote this message in a reply
04-23-2021, 03:50 PM (This post was last modified: 04-23-2021 04:25 PM by Nihotte(lma).)
Post: #2
RE: (11C/15C) Extended power function
(04-05-2021 10:53 AM)Nihotte(lma) Wrote:  (11C/15C) Extended power function

I have found out a copy of the decision tree which clarifies the process of the function. Here is a restitution, below:

Y^x
-----

Code:

x is a natural number (set of N)
    --> general case
x is a rational number (set of Q)
    1/x is even number  (as 1/ 1/2)
       Y >= 0
          --> general case
       Y < 0
           F?8 enabled
              --> Solution is a complex number (set of C)
           F?8 is disabled
              --> ERROR 0
   1/x is odd number   (as 1/ 1/3)
      --> -e^(x*ln(|Y|))   where  ln is natural logarithm and |Y| is abs function on Y

By extension, you can unterstand that you should generalize the use of the F?0 flag between HP11C and HP15C and just authorize g SF 8 before running the search, in the case you want to avoid the ERROR 0 and open the resulting to the complex solution (x is even and Y is negative).

So, just read CF 0, SF 0 and F?0 in the initial code !

Keep you safe !

Laurent
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: