Re: TI-M: Calculator Envy
[Prev][Next][Index][Thread]
Re: TI-M: Calculator Envy
The TI-85 does have the feature you describe, but as far as I know, this
is how it works:
Given a polynomial f(x) and its coefficients you can write a matrix A
that has its characteristic polynomial equivalent to f(x). That is to say
det(A-xI) = f(x). Using a numerical method of finding eigenvalues, you
obtain x_1, ..., x_n where n is the degree of the polynomial. These
eigenvalues are the roots to the characteristic polynomial and thus your
polynomial as well.
--
Andy Selle <aselle@ticalc.org>
Programming and System Administration, Survey Editor, Accounts Manager
the ticalc.org project - http://www.ticalc.org/
On Tue, 3 Oct 2000, Tony Morgan wrote:
>
> Yes, my friends, I am suffering from Calculator Envy... and you're not
> going to like it... yes, I'm envious of *gulp* the Hewlett Packard HP38G's
> (or is that HP38's ?).
>
> Here in Australia, high school students are given the option of using a
> TI-83(+), an HP38 or a Casio thingamajigg... naturally, I went for the best
> of the choices - the TI-83.
>
> But, it seems everyone else has this neat function on their HP38's. It's
> called PolyRoot.
>
> For instance, let's say we want to find the root of:
> y=3x^4 + 2x^3 - 7x^2 + x - 5
>
> Looking at the co-efficients of that polynomial, we have 3, 2, -7, 1 and -5
> in order.
>
> On the HP's you type in the command "PolyRoot(3,2,-7,1,-5) and it will
> return all possible roots of the function.
>
> The closest I can get to that is the Solver on the TI-83, but that only
> gives one root, and you'll never know if maybe - just maybe - there is
> another root out there that you don't know of.
>
> Anyway, my question for you all: Does anybody know an algorithm that'd work
> so I could make a program to do a similar job on my TI-83? (only needs to
> be in TI-BASIC, no fancy ASM stuff) ?
>
>
> This is what I have attempted:
> The solve function: Solve(expression, variable, guess, [{upper, lower}] )
>
> let's use expression 0=x^2 -1 (ie, obvious roots of x = 1 , x = -1 )
> Step 1: solve(X^2 - 1 , X , -1e99 , { -1e99 , 1e99 } )
> Calculator finds an answer (HOPEFULLY -1)
> Step 2: solve(X^2 - 1 , X , -1 , { -1 , 1e99 } )
> Calculator finds an answer (HOPEFULLY 1)
> Step 3: solve(X^2 - 1 , X , 1 , { 1 , 1e99 } )
> Calculator finds no answer.
>
> Problem 1: When the calculator finds no more answers, it returns an error
> message, even though this is the result I *want*. I can't work around the
> error message, and my program halts there
> Problem 2: The first answer (where I was ecpecting the '-1' above) turned
> out to give +1 :( DESPITE the fact that my "guess" value of -1e99 is far
> closer to -1 than it is to +1... hrmph!
>
>
> If it helps anyone else at all out there thinking over this one, The HP38
> function looks something like this:
> [note: I don't have a HP38, so, it's VERY hard for me to remember this]
>
> for solving 0=X^2 - 5X + 4 (which will give roots X=4, X=1)
>
> POLYROOT ( [ [ 1 , -5 , 4 ] ] )
> Response: [ 4 1 ]
>
> I may have the brackets wrong around there - but, I KNOW it involved the
> square-like brackets - the ones that imply matrices. My impression is that
> whatever algorithm the HP38's are using, it involves matrices - and,
> unfortunately, I'm not very strong with matrix operations. Little help?
>
> thanx for any help ppl
>
> Tony
>
>
>
References: