|
Apprendre Maple Site dédié au logiciel de calcul formel Maple
|
Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
dady Invité
|
Posté le: 04 Avr 2005 22:25 Sujet du message: merci als |
|
|
en fait il s'agit de ce type d'approximation.
1
f(x) = a0(x) + -----------------------------
1
a1(x) + ------------------
1
a2(x) + --------
. . .
f(x) est une focntion irrationnelle du type (racine de x)
ai(x) dont des fonctions rationnelle du type polynôme.
je ne suis pas trsè branché de ce côté, c'est pourqoui je sollicite de l'aide, de nimporte quelle nature. (cite interessants, ou documents . . . )
merci encore une autre fois |
|
Revenir en haut de page |
|
|
ALS Invité
|
Posté le: 05 Avr 2005 8:12 Sujet du message: Re: merci als |
|
|
Bonjour, je ne peux vous aider car je ne connais pas ce genre d'écriture mais je vous invite à poser cette question sur le forum du site http://www.les-mathematiques.net/ o๠j'interviens aussi de temps à autre. Je pense qu'il y aura bien une réponse à cette question d'un intervenant plus pointu dans ce domaine. |
|
Revenir en haut de page |
|
|
dady Invité
|
Posté le: 05 Avr 2005 12:24 Sujet du message: merci als |
|
|
merci pour tout. au plaisir |
|
Revenir en haut de page |
|
|
ALS Invité
|
Posté le: 06 Avr 2005 13:49 Sujet du message: Re: approximants de Padé |
|
|
Bonjour,
Voici une procédure calculant l'approximant de Padé d'ordres (l,m) pour une fonction f développable en série entière au voisinage de x=0.
Elle ne fonctionne pas à 100% (pour des fonctions développables en série de Laurent, on a qqs pbs)
Code: |
> restart;
> approx_pade:=proc(f,x,l,m)
> local A,P,Q,p,q,sys,vars,L1,L2,M,B,S,i,j,k;
> A:=convert(series(f(x),x=0,l+m+2),polynom);
> P:=sum(p[i]*x^i,i=0..l);
> Q:=1+sum(q[j]*x^j,j=1..m);
> L1:=[seq(coeff(expand(A*Q),x,k),k=0..l+m+1)];
> L2:=[seq(`if`(k<=l,p[k],0),k=0..l+m+1)];
> sys:={seq(L2[k]=L1[k],k=1..l+m+1)};
> vars:=[seq(p[k],k=0..l),seq(q[k],k=1..m)];
> M:=linalg[genmatrix](sys,vars);
> B:=matrix([seq([coeff(A,x,k)],k=0..l+m)]);
> S:=convert(evalm(linalg[inverse](M) &* B),listlist);
> for k from 0 to l do p[k]:=op(S[k+1]) od:
> for k from 1 to m do q[k]:=op(S[l+1+k]) od:
> eval(P/Q)
> end proc:
> f:=x->tan(x): approx_pade(f,x,5,9);
34 3 106 5
x - --- x + ----- x
273 45045
-------------------------------------------------
125 2 4 6 8
1 - --- x + 5/231 x - 2/15015 x - 1/2837835 x
273
> # On vérifie avec la fonction Maple existante:
> numapprox[pade](f(x), x=0, [5,9]);
34 3 106 5
x - --- x + ----- x
273 45045
-------------------------------------------------
125 2 4 6 8
1 - --- x + 5/231 x - 2/15015 x - 1/2837835 x
273
|
|
|
Revenir en haut de page |
|
|
|
|
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum
|
Développé par phpBB © 2001, 2006 phpBB Group
Traduction par : phpBB-fr.com
Apprendre Maple - ©
- Alain Le Stang - Navigation optimisée pour une résolution 1024 x 768.
|