Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: complex roots of complex polynomials
Replies: 4   Last Post: Oct 25, 2007 12:50 AM

 Messages: [ Previous | Next ]
 carel Posts: 161 Registered: 12/12/04
complex roots of complex polynomials
Posted: Oct 24, 2007 7:12 AM

Dear Group

As an exercise I wrote a little program that can extract complex roots
from a polynomial with complex coeficients.

I used Newton's method.

See example below

y = f(z) = + ( 1 + i 1 ) *z^ 8 + ( 0 + i 1 ) *z^ 7 + ( 0 + i 0 ) *z^
6 + ( 0 + i 0 ) *z^ 5 + ( 3 + i 0 ) *z^ 4 + ( 0 + i 4 ) *z^ 3 + ( 0 +
i 0 ) *z^ 2 + ( 0 + i 0 ) *z^ 1 + ( -9 + i 0 ) *z^ 0
Possible root found after 6 itterations. Z = 1.069307 + i 0.875699
Function value f(z) now = 0 + i 0
New f(z) = Old F(z)/root = ( 1 + i 1 ) z^ 7 + ( 0.193608621637674 + i
2.94500696944417 ) z^ 6 + ( -2.37191296188047 + i 3.31866182037765 )
z^ 5 + ( -5.44245443505229 + i 1.47158873400472 ) z^ 4 +
( -4.10832799297092 + i -3.19237154767991 ) z^ 3 + ( -1.59751002242726
+ i -3.01128721176539 ) z^ 2 + ( 0.928751803292141 + i
-4.61893109709512 ) z^ 1 + ( 5.03791568942519 + i -4.12575184228611 )
z^ 0
Possible root found after 13 itterations. Z = -1.177335 + i
-0.149761
Function value f(z) now = 0 + i 0
New f(z) = Old F(z)/root = ( 1 + i 1 ) z^ 6 + ( -0.833965549674346 + i
1.61791026253298 ) z^ 5 + ( -1.14775547314777 + i 1.53873446901562 )
z^ 4 + ( -3.86071841619441 + i -0.168128572967428 ) z^ 3 +
( 0.411853470604644 + i -2.41624173577162 ) z^ 2 + ( -2.44425913475065
+ i -0.228239884686332 ) z^ 1 + ( 3.77228321051329 + i
-3.98416084538419 ) z^ 0
Possible root found after 13 itterations. Z = 1.054125 + i -0.206007
Function value f(z) now = 0 + i 0
New f(z) = Old F(z)/root = ( 1 + i 1 ) z^ 5 + ( 0.426167265295815 + i
2.46602820591003 ) z^ 4 + ( -0.190501595724937 + i 4.05044376107932 )
z^ 3 + ( -3.22710944996303 + i 4.14079173775212 ) z^ 2 +
( -2.13689061391048 + i 2.61348046768698 ) z^ 1 + ( -4.15841335373898
+ i 2.96691156022645 ) z^ 0
Possible root found after 9 itterations. Z = 0.024865 + i 0.996257
Function value f(z) now = 0 + i 0
New f(z) = Old F(z)/root = ( 1 + i 1 ) z^ 4 + ( -0.545224518245523 + i
3.48715126528192 ) z^ 3 + ( -3.6781592789571 + i 3.59397002913541 ) z^
2 + ( -6.89908854080709 + i 0.565764616214435 ) z^ 1 +
( -2.87208804921282 + i -4.24571959428631 ) z^ 0
Possible root found after 10 itterations. Z = -0.193156 + i
-1.326724
Function value f(z) now = 0 + i 0
New f(z) = Old F(z)/root = ( 1 + i 1 ) z^ 3 + ( 0.588343626282406 + i
1.96727033762996 ) z^ 2 + ( -1.18177578475271 + i 2.43340926485081 )
z^ 1 + ( -3.44235721656272 + i 1.66362699321063 ) z^ 0
Possible root found after 9 itterations. Z = -1.19198 + i -0.776612
Function value f(z) now = 0 + i 0
New f(z) = Old F(z)/root = ( 1 + i 1 ) z^ 2 + ( 0.172975392654237 + i
-0.00132223450651336 ) z^ 1 + ( -1.3889859263858 + i
2.30065054755379 ) z^ 0
Possible root found after 10 itterations. Z = -0.893811 + i 1.129814
Function value f(z) now = 0 + i 0
New f(z) = Old F(z)/root = ( 1 + i 1 ) z^ 1 + ( -1.85064986540746 + i
0.234680707766138 ) z^ 0
Possible root found after 2 itterations. Z = 0.807984 + i -1.042665
Function value f(z) now = 0 + i 0

Could anyone verify the result?
Carel

Date Subject Author
10/24/07 carel
10/24/07 Dweeb
10/24/07 Gerry
10/25/07 carel
10/25/07 Gerry