Bonjour, cliquez-ici pour vous inscrire et participer au forum.
  • Login:



+ Répondre à la discussion
Affichage des résultats 1 à 11 sur 11

Matlab Polynôme de Lagrange

  1. shadow90

    Date d'inscription
    janvier 2009
    Messages
    130

    Matlab Polynôme de Lagrange

    Bonjour,

    J'ai un fonction sur l'intervalle [-1,1], qui doit permettre de mettre en évidence le phénomène de RUNGE.
    Mon problème pour le moment est de déterminer le polynôme de Lagrange en utilisant au mieux les fonctions préprogrammées de Matlab. Je pensais donc aux fonctions "Polyfit" et "Polyval". J'ai beau eu à réfléchir ou chercher sur Internet, mais je n'ai rien trouvé.

    Pourriez vous m'aider ?

    Merci par avance
     


    • Publicité



  2. Scorp

    Date d'inscription
    février 2006
    Âge
    27
    Messages
    1 219

    Re : Matlab Polynome de Lagrange

    Le problème, c'est que je ne suis pa sûr que polyfit utilise les polynomes de Lagrange pour approximer ta fonction. Du coup, tu ne verras peut être pas (ou pas bien) le réel effet de Runge.

    Utilise plutôt une routine Matlab : tu te crée une fonction qui prend en entrée les coefficients ai, et te renvoie les polynomes de Lagrange Lj.

    Ensuite, tu fais une autre routine qui prend en entrée ta fonction f(x) (tu estimes au passage la valeur de ta fonction au point ai). Ainsi, tu peux utiliser ta première routine pour approximer ta fonction en faisant .

    tu pourras ainsi voir (avec un plot par exemple) l'évolution de l'approximation de ta fonction f(x) par les polynomes selon la façon dont tu choisi les coef ai (et donc le degré du polynome d'approximation). Notamment, tu pourras voir qu'en utilisant les ai comme les "les points de Tchebychev ", tu pourrais limiter le phénomène de Runge
     

  3. shadow90

    Date d'inscription
    janvier 2009
    Messages
    130

    Re : Matlab Polynome de Lagrange

    Merci pour ta réponse.Effectivement j'aurais pu essayer de faire ca.. Bon en fait j'ai réussi à faire ces polynômes de Lagrane avec polyfit et polyval.

    Par contre je suis sur les noeuds de Tchebychev. On me donne la formule à savoir, mais je n'arrive pas à mettre ca en forme (avec une boucle for je pense)..J'aurais juste besoin d'aide pour calculer ces noeuds..
     

  4. Scorp

    Date d'inscription
    février 2006
    Âge
    27
    Messages
    1 219

    Re : Matlab Polynome de Lagrange

    Les xi correspondent aux racines du polynome de Tchebychev de degré n. Or de mémoire, la formule que tu donnes est inexacte. J'aurais plutôt dit : (à confirmer)

    Pour répondre à ta question : je ne pense pas que tu aies besoin de for.
    Essaye de la facon suivante (je n'ai pas Matlab sous les mains, donc je ne peux pas garantir que ca marche bien) :

    Rq : j'utilise ma formule des xi, et non la tienne


    N= ### ; (met la valeur à la place de ###)
    y=1:2:2*N-1; (construit un vecteur de 1 à 2N-1 avec un pas de 2)
    y=y*.(3.14159/(2*N)); (multiplie chaque composante du vecteur par pi/2N )
    x=cos(y);
     

  5. shadow90

    Date d'inscription
    janvier 2009
    Messages
    130

    Re : Matlab Polynome de Lagrange

    Merci beaucoup pour ton explication. En fait j'ai utilisé les noeuds que l'on m'a donné dans le sujet, mais peut être y a t'il une erreur.
    En tout cas je te remercie pour ton aide.

    Pourrais je te demander une dernière chose : aurais tu une idée pour faire une interpolation à l'aide du polynôme de Hermite ?

    je pensais utiliser une relation démontrée en cours à savoir :

    où Li(x) est le polynôme de Lagrange et le polynôme de Hermite est la somme de i à n de

    Mais je n'arrive pas à programmer ca sur Matlab (problème de tailles de vecteurx..)
     


    • Publicité



  6. Scorp

    Date d'inscription
    février 2006
    Âge
    27
    Messages
    1 219

    Re : Matlab Polynome de Lagrange

    Je pense que le plus simple est de les construire par récurrence.
    On a H0(x)=1 et H1(x)=x

    Ensuite, tu utilises
     

  7. shadow90

    Date d'inscription
    janvier 2009
    Messages
    130

    Re : Matlab Polynome de Lagrange

    Excuse moi, je n'ai pas pu répondre tout de suite pour cause de soucis avec Internet. Je te remercie pour ton information, mais j'aurais une dernière question : comment réaliser dans Matlab une relation de récurrence, comme celle ci ?

    Merci et bonnes fêtes à tous !!
     

  8. Scorp

    Date d'inscription
    février 2006
    Âge
    27
    Messages
    1 219

    Re : Matlab Polynôme de Lagrange

    pour le coup, tu peux utiliser une boucle for sur n de 2 à N. Tu spécifies au début H0(x) et H1(x).
    Dans ta boucle, il suffit de placer la relation de récurrence.

    Au final, Matlab devrait te faire un vecteur avec en 1ere composante H0, en 2e H1 etc ... jusqu'à HN
     

  9. shadow90

    Date d'inscription
    janvier 2009
    Messages
    130

    Re : Matlab Polynôme de Lagrange

    Merci pour ton explication.Mais en fait je me demandais au niveau syntaxique sur Matlab ca donnerait quoi?
    Par exemple
    H[0]=1;
    H[1]=x
    ou cela se fait autrement ?
     

  10. Scorp

    Date d'inscription
    février 2006
    Âge
    27
    Messages
    1 219

    Re : Matlab Polynôme de Lagrange

    ha oui, le problème c'est que Matlab est conçu pour travailler avec des matrices. Et les polynômes n'échappent pas à la règle : l'objet polynome n'existe pas. Pour le définir, il faut en fait passer par sa matrice des coeffcients.
    Donc pour P(x)=1+2x+5x² il faut définir P=[5 2 1] (on commence par le degès le plus haut : donc ici 5)
    Pour estimer la valeur de ce polynome en un point, par exemple en x=8, il faut utiliser polyval(P, 8)

    La relation de recurrence que tu as à programmer est assez simple.
    Par exemple, pour x.Hn(x), il te suffira d'ajouter 1 à tous les coeffcients de Hn.
     

  11. shadow90

    Date d'inscription
    janvier 2009
    Messages
    130

    Re : Matlab Polynôme de Lagrange

    Merci pour ta réponse.
    En fait j'ai un problème :
    J'ai bien créé un vecteur h(1,N)..
    Pour initialiser h(0)=1, comment faire pour dire qu'il y a des 1 sur tous les coefficients??
     


    • Publicité




Poursuivez votre recherche :




Sur le même thème :




 

Discussions similaires

  1. Polynôme de Lagrange
    Par AlphaPrime dans le forum Mathématiques du supérieur
    Réponses: 9
    Dernier message: 26/12/2009, 17h03
  2. Polynome, Lagrange, SEV ... (à l'aide!)
    Par Lilia92 dans le forum Mathématiques du supérieur
    Réponses: 7
    Dernier message: 17/03/2008, 07h11
  3. Réponses: 1
    Dernier message: 14/03/2008, 11h03
  4. polynome, m paramètre , différentes valeurs degré du polynome
    Par monkeydluffy dans le forum Mathématiques du collège et du lycée
    Réponses: 8
    Dernier message: 15/10/2007, 17h54
  5. Polynome de Lagrange
    Par Lex59 dans le forum Mathématiques du supérieur
    Réponses: 4
    Dernier message: 26/12/2005, 19h04