Méthode moindre carré non polynomiale.
Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

Méthode moindre carré non polynomiale.



  1. #1
    invitedf3ab61e

    Méthode moindre carré non polynomiale.


    ------

    Bonjour, merci d'avance de votre aide.

    Bon dans le cadre de mon stage je dois effectuer un modèle chimique de spectre (Raman). J'ai dégagé un modèle fait mes spectres et maintenant je dois comparer mon modèle avec le spectre que je dois obtenir.
    Pour faire simple j'ai un nombre n de spectre que je dois additionner implémentés de leurs coefficients et faire "fitter" cette somme avec la courbe que je veux obtenir. Le modèle mathématique étant :

    a1S1(1)+a2S2(1)+...+anSn(1) = S(1) (environ =)
    a1S1(2)+a2S2(2)+...+anSn(2) = S(2) etc ...

    Ce modèle est supposé avec les mêmes valeurs de x puisque les valeurs des spectres sont stockées sous fichier texte en 2 colonnes x et y. Sachant qu'il y a plus de 5000 points de mesures à chaque fois.

    Je sais effectuer un fit à partir d'une forme polynomiale mais là je n'y arrive pas à partir de cette forme linéaire. Je ne trouve ni la fonction ni la forme des moindre carrés à utiliser. Le logiciel utilisé est Matlab.

    Merci de votre aide.

    Voila le début du programme pour stocker les données de fichiers d'un dossier dans une matrice :

    function [ x, y ] = spectre_fit( dir_name, ls, hs )

    files = dir(dir_name);
    fileIndex = find(~[files.isdir]);
    for i = 1:length(fileIndex);
    fileName = files(fileIndex(i)).name;
    names{i} = fileName;
    fid = fopen([dir_name fileName],'r');
    data=fscanf(fid,'%f',[2 inf]);
    x(ls:hs,i)=data(1,ls:hs)';
    y(ls:hs,i)=data(2,ls:hs)';
    fclose(fid);
    end
    for i = 1:length(ls:hs);
    somme(i) = sum(y(i,);
    end
    somme = somme';
    plot(x(:,1),somme);
    end

    -----

  2. #2
    KerLannais

    Re : Méthode moindre carré non polynomiale.

    Salut,

    Si j'ai bien compris ce sont les paramètres a_i que tu peut faire varier et tu connais la fonction S. Je suppose que tu peux calculer les valeurs de S dans un vecteur colonne. Je pense (j'espère ne pas me tromper) que dans ce cas tu as juste à utiliser l'intruction

    a=y\S;
    Les mathématiques ne s'apprennent pas elles se comprennent.

  3. #3
    invitebe0cd90e

    Re : Méthode moindre carré non polynomiale.

    Je ne comprends pas bien tes notations... que signifie S(1) ? S1(1) ? sont-ce des fonctions ou des valeurs connues ? J'imagine que tu veux determiner les a_i, mais ou sont les valeurs mesurées ? quelle est la formule mathématique de ton modèle ?

    Sinon, Matlab doit avoir des fonctions qui permettent de faire de la regression non lineaire. Sous octave elle s'appelle leasqr, sous Matlabl je ne sais pas. Sinon, tu peux trouver des codes de cette fonction sur le web gratuitement...

Discussions similaires

  1. nuage de points et méthode des moindre carrés
    Par invite5f0e335f dans le forum Mathématiques du supérieur
    Réponses: 3
    Dernier message: 05/01/2009, 16h26
  2. Moindre carré
    Par Newenda dans le forum Mathématiques du supérieur
    Réponses: 7
    Dernier message: 27/11/2008, 01h09
  3. moindre carré et polynome
    Par hterrolle dans le forum Mathématiques du supérieur
    Réponses: 4
    Dernier message: 02/10/2008, 23h13
  4. Moindre Carré ?
    Par einstein123 dans le forum Mathématiques du supérieur
    Réponses: 1
    Dernier message: 01/11/2007, 01h02
  5. Si racine carré de n est rationnelle alors n est un carré parfait
    Par invite67614aac dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 24/09/2005, 21h07