Bonjour à tous
Je m'entraîne à coder sur Matlab pour mon examen de demain mais je n'arrive pas à faire les régressions non-linéaires.
Mon problème :
a) Trouver les paramètres NA, KA et NB, KB pour les deux gaz en utilisant la régression non-linéaire pour l'isotherme de Langmuir:
ni=Ni*Ki*pi/(1+Ki*pi)
Voilà mon code:
1 2 3 4 5 6 7
| nA=[0;4.21*10^-3;7.91*10^-3;1.17*10^-2;1.48*10^-2;1.82*10^-2;2.12*10^-2;2.43*10^-2;2.71*10^-2;2.95*10^-2;3.28*10^-2];
pA=[0;8.435;17.559;26.547;36.39;45.934;56.002;66.013;76.238;87.175;101.3];
model=@(n,k,p) (n*k*p)/(1+k*p);
beta0_non=[0.001,0.01];
beta_nonA=nlinfit(pA,nA,model,beta0_non); |
j'ai choisi les beta0 car rien n'est spécifié dans ma donnée.
Quand je lance mon programme un message erreur apparaît toujours:
Error using nlinfit (line 205)
Error evaluating model function
'@(n,k,p)(n*k*p)/(1+k*p)'.
Error in langmuir (line 17)
beta_nonA=nlinfit(pA,nA,model,beta0_non);
Caused by:
Error using *
Inner matrix dimensions must agree.
Ca fait 3h que j'essaie de comprendre où est l'erreur mais je n'y arrive pas ... Est-ce que qqn pourrait m'aider SVP
Partager