> restart:

tp MAO n° 3

Newton

> a:='a': (x+a/x)/2; new:= unapply(%,x);

1/2*x+1/2*a/x

new := proc (x) options operator, arrow; 1/2*x+1/2*...

> Digits:= 40; a:=3; seq((new@@k)(1.), k=0..8); Digits:=10;

Digits := 40

a := 3

1., 2.000000000000000000000000000000000000000, 1.75...
1., 2.000000000000000000000000000000000000000, 1.75...
1., 2.000000000000000000000000000000000000000, 1.75...
1., 2.000000000000000000000000000000000000000, 1.75...

Digits := 10

A nouveau deux points fixes

> a:='a':so:= solve(new(x)=x, x);

so := sqrt(a), -sqrt(a)

Et alors ....

> (z-so[1])/(z-so[2]); phi:= unapply(%,z);

> Z= phi(new(zeta)), z= phi(zeta);

> solve({%}, {Z, zeta});

(z-sqrt(a))/(z+sqrt(a))

phi := proc (z) options operator, arrow; (z-sqrt(a)...

Z = (1/2*zeta+1/2*a/zeta-sqrt(a))/(1/2*zeta+1/2*a/z...

{zeta = -sqrt(a)*(z+1)/(z-1), Z = z^2}

>

>

Cercles et quotients (z-a)/(z-b)

> h:= unapply((z-I)/(z-1), z);

h := proc (z) options operator, arrow; (z-I)/(z-1) ...

si h(z) est connu

> h(z)= 3+I; solve(%, {z});

(z-I)/(z-1) = 3+I

{z = 6/5-3/5*I}

>

Si l'argument est connu

>

Si le module est connu

> h(z)= k* exp(I*t); eq_z:= (solve)(%, z);

(z-I)/(z-1) = k*exp(I*t)

eq_z := (-I+k*exp(I*t))/(-1+k*exp(I*t))

Tracer plusieurs lieux

> subs(k=2, eq_z); plots[complexplot](%, t=-Pi..Pi, scaling=constrained);

Puis expliquer

(-I+2*exp(I*t))/(-1+2*exp(I*t))

[Maple Plot]

> seq(plots[complexplot](subs(k=j, eq_z) , t=-Pi..Pi, color= black), j=[1/4,1/3,1/2,$1..4]):
display(pl2, %, view=[-2..3,-2..3], scaling=constrained);

[Maple Plot]

>

>

Valeur propre dominante d'une matrice

> with(linalg):

Warning, the protected name norm has been redefined and unprotected

> ma:= matrix(3, 3, [53,61,23,37,-31,34,42,-88,76]);

ma := matrix([[53, 61, 23], [37, -31, 34], [42, -88...

> v0:= [1.,1.,1.];

v0 := [1., 1., 1.]

> evalm(ma &* v0): v1:= evalm(%/norm(%) );

v1 := vector([1.000000000, .2919708029, .2189781022...

> evalm(ma &* v1): v2:= evalm(%/norm(%) );

v2 := vector([.9999999996, .4666538348, .4344143969...

> iter:= proc(v1); evalm(ma &* v1): evalm(%/norm(%) ); end;

iter := proc (v1) evalm(`&*`(ma,v1)); evalm(%/norm(...

> (iter@@30)(v0); iter(%); vp1:= norm(evalm(ma &* %));

vector([.9999999996, .4238499340, .3942844099])

vector([.9999999998, .4238499344, .3942844102])

vp1 := 87.92338742

> charpoly(ma, x); fso:= fsolve(%);

x^3-98*x^2-202*x+95658

fso := -28.32866003, 38.40527260, 87.92338743