Bonjour
Je dois faire un fit sur des données. Le fit est très simple (en y=ax+b). Le problème, c'est que Matlab me sort un résultat qui ne convient pas et je ne sais pas trop d'où le problème peut venir. N'étant pas informaticien, je m'en remet à vous pour savoir si je peux corriger ce problème ou pas.
Voici le code :
Normalement, je ne devrais pas avoir le facteur 1e-14 lors de la création de WaveLength. Si je ne le met pas, Matlab me sort ce résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 c=299792458; e=1.60217653e-19; %632.8 -> longueur d'onde en nanomètre Freq = (c./([632.8 578 546 532 435.8]*1e-9)).*1e-14; Freq(2,:)=1 Vo = [0.57 0.5 0.65 0.46 1.03]; a = Freq'\Vo' plot(Freq(1,:),Vo) Y=Freq'*a; hold on plot(Freq(1,:),Y','r')
ce qui est faux.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 a = 1.0e-014 * 0.11692099244259 0
Lorsque je rajoute ce facteur, Matlab me sort ceci :
ce qui est juste (mis à part a(1) que je dois remultiplier pas 1e-14).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 a = 0.23792870545507 -0.68703670902849
Je me demandais s'il vous saviez d'où venait ce problème (problème due à Matlab, ou à la machine que j'utilise...)
Merci
Partager