Bonjour,
J'ai les données suivantes :
Comment je peux déterminer v qui correspond à 0.5, 1.5,… 27.5 °C ?
Merci d'avance
Bonjour,
J'ai les données suivantes :
Comment je peux déterminer v qui correspond à 0.5, 1.5,… 27.5 °C ?
Merci d'avance
Bonjour,
Ce que tu demandes s'appelle faire une interpolation. Tu peux commencer comme dans ton topic de hier par déterminer l'équation de ta courbe à l'aide de polyfit. Cela te donne les coefficients de ton polynôme qui te permettra ensuite de déterminer les points d'interpolation.
Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!
j'ai commencé par :
Mais comment déterminer v pour 0.5, 1.5,… 27.5 °C
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 x = [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28] ; y = [1.79 1.73 1.67 1.62 1.57 1.52 1.47 1.43 1.39 1.33 1.31 1.27 1.24 1.20 1.17 1.14 1.11 1.08 1.06 1.03 1.01 0.983 1.960 0.938 0.917 0.896 0.876 0.857 0.839] ; plot (x,y); %courbe du second degré. Il nous faut donc déterminer les trois coefficients c1, c2 et c3 de léquation suivante : y = c1x^2+c2x+c3 C2=polyfit(x,y,2)
Maintenant que tu as les coefficients de ton polynôme, tu peux faire ceci:
c1x^2+c2x+c3
Code : Sélectionner tout - Visualiser dans une fenêtre à part y = C1*(27.5^2) + C2*27.5 + C3
Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!
Je n'avais pas vu la syntaxeIci tu as
Code : Sélectionner tout - Visualiser dans une fenêtre à part C2=polyfit(x,y,2)
C2(1) = C1
C2(2) = C2
C2(3) = C3
Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!
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 x = [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28] ; y = [1.79 1.73 1.67 1.62 1.57 1.52 1.47 1.43 1.39 1.33 1.31 1.27 1.24 1.20 1.17 1.14 1.11 1.08 1.06 1.03 1.01 0.983 1.960 0.938 0.917 0.896 0.876 0.857 0.839] ; figure (1) plot (x,y); xlabel('x') ylabel('y') grid on legend('Données') %courbe du second degré. Il nous faut donc déterminer les trois coefficients c1, c2 et c3 de léquation suivante : y = c1x^2+c2x+c3 % Cela peut être résolu en posant le problème comme un système déquations % où les inconnues sont c1, c2 et c3 %interpolation de degré 2 p=polyfit(x,y,2) y2=polyval(p,x) C1=p(1) C2=p(2) C3=p(3) y = C1*(x.^2) + C2*x + C3
Pourquoi tu as pris x=27.5 ?
PS: je ne sais pas quel est ton niveau de connaissance en mathématiques mais ici la fonction polyfit va effectuer une approximation polynomiale de ton ensemble de couple de points x y. Cela veut dire que la fonction va tenter de déterminer les coefficients P qui régissent au mieux l'équation P(1)*X^n + P(2)*X^(n-1) + ... + P(n)*X + P(n+1) = Y
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 x = [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28] ; y = [1.79 1.73 1.67 1.62 1.57 1.52 1.47 1.43 1.39 1.33 1.31 1.27 1.24 1.20 1.17 1.14 1.11 1.08 1.06 1.03 1.01 0.983 1.960 0.938 0.917 0.896 0.876 0.857 0.839] ; figure (1) plot (x,y); xlabel('x') ylabel('y') grid on legend('Données') %courbe du second degré. Il nous faut donc déterminer les trois coefficients c1, c2 et c3 de l’équation suivante : y = c1x^2+c2x+c3 % Cela peut être résolu en posant le problème comme un système d’équations % où les inconnues sont c1, c2 et c3 %interpolation de degré 2 p=polyfit(x,y,2) y2=polyval(p,27.5)C1=p(1) C2=p(2) C3=p(3) y = C1*(x.^2) + C2*x + C3
Cela veut dire que pour tout points compris entre min(X) et max(X), tu peux trouver le point Y associer en remplaçant dans ton équation X par une valeur.
Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!
comment déterminer y pour 0.5, 1.5,… 27.5 °C ?
Il suffit de remplacerla valeur de x dans l'argument de polyval ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part y2=polyval(p,27.5)
Oui.
L'explication sur le post édité ci-dessus.
Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!
A voir également la fonction interp1. La doc ici.
Gooby s'il te plait comment je peux écrire pour les mêmes données une fonction qui admet pour entrer deux vecteurs X et Y et qui permet de retourner les coefficients de régression?
Bah c'est la fonction polyfit?
Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!
Oui je sais ; mais je veux créer une fonction permettant tout ça
J'ai essayé ; Mais j'ai un message d'erreur
Je crains qu'il faille nous en dire un peu plusEnvoyé par ghadata97
Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager