cancel
Showing results for 
Search instead for 
Did you mean: 
GabrielM8
Level 3
37 24 1 5
Message 1 of 7
761
Flag Post

Wrong result PROOT()

HP Recommended
HP Prime

I was trying to find the roots of a function, so i try to get it directly and it gave me a wrong result.

As you can see in the image below, using 2000(=0.00005*40e6) i can get right result.

 

 

wrong.gif

 

 

I hope this error is corrected in the next update.


Taking advantage of this topic, how can I achieve the result of this simplification (2000=0.00005*40e6) directly in CAS?

 

0 Kudos
6 REPLIES 6
Maké
Level 9
3,551 3,490 180 541
Message 2 of 7
Flag Post
HP Recommended

Hi!, @GabrielM8 :

Check this images ...

1) Select Apps - Solve

Root_1.JPG 

2) Press Num Key and after, press Solve ...

Proot.JPG

Kind Regards !.
Have a nice day !.
@Maké (Technical Advisor Premium - HP Program Top Contributor).
Provost in HP Spanish Public Forum ... https://h30467.www3.hp.com/
0 Kudos
GabrielM8
Author
Level 3
37 24 1 5
Message 3 of 7
Flag Post
HP Recommended

Hi @Maké

Solve app works for all kinds of function?

 

Let me know why PROOT() gave me a wrong result, if you know it.

0 Kudos
Maké
Level 9
3,551 3,490 180 541
Message 4 of 7
Flag Post
HP Recommended

Hi!, @GabrielM8 :

Syntax

proot(Vect||Poly)

Description

Returns all computed roots of a polynomial given by its coefficients (may not work if roots are not simple).

Example :

proot([1,0,-2]) returns [-1.41421356237,1.41421356237]

 

Kind Regards !.
Have a nice day !.
@Maké (Technical Advisor Premium - HP Program Top Contributor).
Provost in HP Spanish Public Forum ... https://h30467.www3.hp.com/
0 Kudos
Ciro_Bruno
Level 4
137 122 6 17
Message 5 of 7
Flag Post
HP Recommended

Hello Gabriel.

 

I guess there's nothing wrong with PROOT result. The root in fact is u=-5000, calculated manually.

In HP Prime you can obtain it by PROOT as well as by SOLVE. Remember that SOLVE requires an equation (...=0 in this case) and the declaration of the free variable, except when it is "x" (",u" in this case). Please take a look:

proot.png

 

The ratio IM/RE=5000/0.004 is smaller then 10^-7. It means the imaginary term has very low significance.

 

This calculation is obtained by successive iterations untill the difference between the last two results are "small enough". This is defined at the second page of CAS definitions. I've been using the ones in the picture bellow, motivated by some specific demand long time ago. As it works fine for everything and doesn't take much processing time, I keep using them.

CAS defs.png

 

When you're sure all roots are real, or you don't care the imaginary roots, simply disable the complex results:

CAS defs 1.png

 

The simplification you can obtain by simply typing the expression to be simplified:

proot 2.png

 

Regards,

Ciro.

0 Kudos
Tim_Wessman
Level 8
Level 8
747 744 121 187
Message 6 of 7
Flag Post
HP Recommended

Yes, that is a perfectly acceptable and correct resuly for a NUMERIC only alogrithm. If you want exact results with no error, I'd recommed first converting your expression into symbolic exact values and try again.

 

Type: 0.00005*(u+50000)^2*40000000 and hit ENTER

 

Then tap the [a b/c] key next to the delete button. You will get exact(0.00005*(u+50000)^2*40000000) and an exact fractional ratio as a result. Then run PROOT on that and you will see the imginary part "gone". This is becasue the input gets converted into exact, integery symbolic values, whiche allows different methods and techniques in the calculation to be done.

TW

Although I work for the HP calculator group as a head developer of the HP Prime, the views and opinions I post here are my own.
GabrielM8
Author
Level 3
37 24 1 5
Message 7 of 7
Flag Post
HP Recommended

Hi @Tim_Wessman

I don't think that result is acceptable. Because if you test u=(-50000-0.004*i) in the function 0.00005*(u+50000)^2*40000000 you can see that is not equal to zero.

 

With bugs like that I'm not confident in using HP Prime, honestly. Because how will I know how much I have to simplify to get correct results in the functions. I hope it's fixed.

 

And Thanks about the tip of the key [a b/c] to get exact result.

 

 

0 Kudos
† The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the Terms of Use and Rules of Participation