INTRODUCTION……………………………………………………………………………………………. 2
PARTIE I : L’AJUSTEMENT D’UN COURBE………………………………………………………. 3
1)-Définition de l'ajustement d’un courbe…………………………………………….. 4
2)-Deux catégories d'ajustement de courbe…………………………………………… 5
A) -Ajustement affine (un lissage)……………………………………………………… 5
B) -Ajustement exact (interpolation)…………………………………………………. 6
3)-Statistiques de données……………………………………………………………………. 7
A) -L'écart-type 𝝈………………………………………………………………………………. 7
B) -La moyenne…………………………………………………………………………………. 7
PARTIE II :LA REGRESSION LINEAIRE PAR LA METHODE DES
MOINDRES CARRES………………………………………………………………………………………. 8
1)-La régression linéaire simple……………………………………………………………… 9
A) -L’objectif de la régression linéaire simple…………………………………….. 9
2)-Énoncé du problème…………………………………………………………………………. 10
3)-Les résidus………………………………………………………………………………………… 11
4)-Critères pour le meilleur ajustement…………………………………………………. 12
5)-Ajustement par la méthode des moindres carrés………………………………. 13
A) -Exemple………………………………………………………………………………………. 15
6)-La régression linéaire multiple…………………………………………………………… 17
A) -Formulation de l'équation matricielle………………………………………….. 17
B) -Formulation géométrique de la méthode des moindres carrés…….. 19
C)-Visualisation de la méthode des moindres carrés………………………….. 22
D)- Exemple………………………………………………………………………………………. 23
PARTIE III : LA REGRESSION POLYNOMIAL PAR LA METHODE DES
MOINDRES CARRES………………………………………………………………………………………. 25
1)- La définition et l’objectif de la régression polynomial………………………. 26
2)- Énoncé du problème………………………………………………………………………… 26
3)-La forme Matricielle et le calcul des estimations……………………………….. 26
A) - Ajustement par la méthode des moindres carrés…………………………. 28
4)-Équation de régression quadratique………………………………………………….. 29
A) - Ajustement par la méthode des moindres carrés…………………………. 29
B) - Exemple : le coefficient d'expansion de longueur pour le fer……….. 32
PARTIE IV : CODE FORTRAN………………………………………………………………………….. 37
1)- Code Fortran de la régression linéaire simple…………………………………… 38
2)-Explication du code Fortran………………………………………………………………. 40
3)- Code Fortran de la régression linéaire quadratique………………………….. 50
INTRODUCTION
La méthode des « moindres carrés » est une forme d'analyse de
régression mathématique utilisée pour déterminer la ligne de meilleur
ajustement pour un ensemble de données, fournissant une démonstration
visuelle de la relation entre les points de données. Chaque point de
données représente la relation entre une variable indépendante connue
et une variable dépendante inconnue.
La méthode des moindres carrés fournit la justification globale du
placement de la ligne de meilleur ajustement parmi les points de données
étudiés. L'application la plus courante de cette méthode, parfois appelée
"linéaire" ou "ordinaire", vise à créer une ligne droite qui minimise la
somme des carrés des erreurs générées par les résultats des équations
associées, telles comme le carré des résidus résultant des différences
dans la valeur observée et la valeur anticipée, sur la base de ce modèle.
Cette méthode d'analyse de régression commence par un ensemble de
points de données à tracer sur un graphique d'axes x et y. Un analyste
utilisant la méthode des moindres carrés générera une ligne de meilleur
ajustement qui explique la relation potentielle entre les variables
indépendantes et dépendantes.
Dans l'analyse de régression, les variables dépendantes sont illustrées
sur l'axe y vertical, tandis que les variables indépendantes sont illustrées
sur l'axe x horizontal. Ces désignations formeront l'équation de la ligne de
meilleur ajustement, qui est déterminée à partir de la méthode des
moindres carrés.
Contrairement à un problème linéaire, un problème de moindres carrés
non linéaire n'a pas de solution fermée et est généralement résolu par
itération. La découverte de la méthode des moindres carrés est attribuée
à Carl Friedrich Gauss, qui a découvert la méthode en 1795.
Si les données montrent une relation plus mince entre deux variables, la
ligne qui correspond le mieux à cette relation linéaire est connue sous le
nom de ligne de régression des moindres carrés, qui minimise la distance
verticale entre les points de données et la ligne de régression. Le terme «
moindres carrés » est utilisé car il s'agit de la plus petite somme de carrés
d'erreurs, également appelée « variance ».
PARTIE I :
L’AJUSTEMENT D’UN COURBE
1)-Définition de l'ajustement d’un courbe
L'ajustement de courbe est le processus de construction d'une courbe,
ou fonction mathématique, qui s'adapte le mieux à une série de points de
données, éventuellement soumis à des contraintes. L'ajustement de
courbe peut impliquer soit une interpolation, où un ajustement exact
aux données est requis, soit un lissage, dans lequel une fonction « lisse
» est construite qui correspond approximativement aux données (la
régression linéaire ou polynomial). L’analyse de régression, se
concentre davantage sur des questions d'inférence statistique telles que
le degré d'incertitude présent dans une courbe qui est adaptée aux
données observées avec des erreurs aléatoires. Les courbes ajustées
peuvent être utilisées comme une aide pour la visualisation des données,
pour déduire les valeurs d'une fonction là où aucune donnée n'est
disponible et pour résumer les relations entre deux ou plusieurs variables.
3.5
2.5
Axe des Y
1.5
0.5
0
0 1 Axe des X 2 3
5
Axe des Y
0
0 0.5 1 1.5 2 2.5 3
Axe des X
B) -Ajustement exact (interpolation)
L’interpolation est une opération mathématique permettant de remplacer
une courbe ou une fonction par une autre courbe (ou fonction) plus simple,
mais qui coïncide avec la première en un nombre fini de points (ou de
valeurs) donnés au départ
8
7
6
Axe des Y
5
4
3
2
1
0
0 0.5 1 1.5 2 2.5 3
Axe des X
3)-Statistiques de données
A) - L'écart-type 𝝈
L'écart type est une mesure de la dispersion dans les statistiques. La «
dispersion » vous indique à quel point vos données sont répandues. Plus
précisément, il vous montre à quel point vos données sont réparties autour
de la moyenne.
L'écart-type 𝝈 est un paramètre de dispersion. Il mesure la dispersion de
la série de points 𝐲𝐢 par rapport à la moyenne 𝒚. Plus les éléments de la
série sont éloignés de la moyenne, plus l'écart-type est élevé.
La formule de l'écart type :
𝟏 𝐌
𝝈= (𝐲𝐢 − 𝐲)𝟐
𝑴 𝟏
Où :
𝐲𝐢 = valeur du 𝒊è𝒎𝒆 point de l'ensemble de données
𝐲 = la valeur moyenne de l'ensemble de données
𝐌 = le nombre de points de données dans l'ensemble de données.
Dans le cas d’ajustement affine (𝐲𝐢 − 𝐲)𝟐 égale à le carré de la différence
entre la valeur de la variable dépendante 𝒚𝒊 pour chaque point et la valeur
du modèle de régression estimé 𝒚.
L'écart-type mesure l'écart moyen entre les valeurs mesurées 𝒚𝒊 et la ligne
de régression 𝒚. En d'autres termes, il nous indique l'erreur de prédiction
moyenne en utilisant le modèle d’ajustement 𝒚.
B) – La moyenne
Moyenne = Somme de toutes les valeurs d'observation ÷ nombre
d'observations.
On calcule la moyenne d'une variable numérique en additionnant les
valeurs de toutes les observations incluses dans un ensemble de
données, puis en divisant cette somme par le nombre d'observations qui
font partie de l'ensemble. Ce calcul permet d'obtenir la valeur moyenne de
toutes les données. 𝑴
𝟏
𝑦 = 𝒚𝒊
𝑴
𝟏
PARTIE II :
LA REGRESSION LINEAIRE PAR
LA METHODE DES MOINDRES
CARRES
1)-La régression linéaire simple
A) -L’objectif de la régression linéaire simple
Dans la régression linéaire simple, nous prédisons les données sur une
variable à partir des données sur une seconde variable. La variable que
nous prédisons s'appelle la variable dépendante et est appelée 𝒀. La
variable sur laquelle nous basons nos prédictions s'appelle la variable
indépendante et est appelée 𝑿. Lorsqu'il n'y a qu'une seule variable
prédictive, la méthode de prédiction est appelée régression simple. Dans
la régression linéaire simple, le sujet de cette section, les prédictions de 𝒀
lorsqu'elles sont tracées en fonction de 𝑿 forment une ligne droite.
La régression linéaire simple consiste à trouver la ligne droite la mieux
ajustée passant par les points. La ligne la mieux ajustée est appelée ligne
de régression. La ligne diagonale verte de la figure est la droite de
régression et se compose de la donnée prévue sur 𝒀 pour chaque valeur
possible de 𝑿. Considérer les distances verticales entre chaque point et la
droite de régression comme les erreurs de prédiction.
Une ligne droite fournit un ajustement suffisamment raisonnable pour
faire des prédictions. Puisque l'équation d'une ligne droite générique est
toujours donnée par 𝒚 = 𝒂𝟏 𝒙 + 𝒂𝟎 , la question devient : qu'est-ce que 𝒂𝟏
et 𝒂𝟎 nous donnerons la meilleure ligne d'ajustement pour les données.
Une ligne qui fournit une erreur minimale peut être considérée comme la
meilleure ligne droite.
(𝒙𝟏 , 𝒚𝟏 ), (𝒙𝟐 , 𝒚𝟐 ), … … . (𝒙𝑴 , 𝒚𝑴 ) 𝒚 = 𝒂𝟏 𝒙 + 𝒂𝟎
5
Axe des Y
0
0 0.5 1 1.5 2 2.5 3
Axe des X
2)-Énoncé du problème
La première chose que nous allons faire est d'écrire cette équation de la
ligne pour chacun de nos points, donc, par exemple, nous avons le point
1 donc nous avons l'indice 1 ici et, nous avons une valeur de 𝒚𝟏 , et une
valeur de 𝒙𝟏 et bien sûr nous avons le 𝒂𝟎 et le 𝒂𝟏 qui sont les paramètres
de la ligne, 𝒂𝟎 et 𝒂𝟏 ne changent pas pour tout cela, quand nous passons
à notre deuxième point et nous avons un indice 2 sur 𝒚 et sur 𝒙 mais 𝒂𝟎
et 𝒂𝟏 ils restent les mêmes.
𝒚𝟏 = 𝒂𝟏 𝒙𝟏 + 𝒂𝟎
𝒚𝟐 = 𝒂𝟏 𝒙𝟐 + 𝒂𝟎
𝒚𝑴 = 𝒂𝟏 𝒙𝑴 + 𝒂𝟎
Par conséquent, c'est la même équation pour la ligne que nous mettons
juste dans les coordonnées 𝒙 , 𝒚 pour chacun de nos points mesurés
séparément, et nous obtenons une énorme liste d'équations. Si nous
avons 20 points, nous obtiendrons 20 équations d'une ligne.
Pour écrire ces équations en reconnaissant exactement que ces points
contiennent du bruit, nous devons ajouter une sorte de terme d'erreur 𝒆𝒎 ,
nous les appellerons les résidus afin que nous sachions que 𝒙𝟏 et 𝒚𝟏 ne
correspondent pas exactement au ligne, donc en ajoutant cette constante
ici, nous écrivons que la distance vertical entre ce point et la ligne est
caractérisée par ce terme 𝒆 si le point tombe juste sur cette ligne, le terme
𝒆 sera 0 pour cette équation.
𝒚𝟏 = 𝒂𝟏 𝒙𝟏 + 𝒂𝟎 + 𝒆𝟏
𝒚𝟐 = 𝒂𝟏 𝒙𝟐 + 𝒂𝟎 + 𝒆𝟐
𝒚𝑴 = 𝒂𝟏 𝒙𝑴 + 𝒂𝟎 + 𝒆𝑴
3)-Les résidus
Les résidus sont les variations restantes des données après prise en
compte de l'ajustement du modèle :
𝑳𝒂 𝒗𝒂𝒍𝒆𝒖𝒓 𝒅𝒐𝒏𝒏é𝒆 = 𝑭𝒐𝒏𝒄𝒕𝒊𝒐𝒏 𝒂𝒕𝒕𝒆𝒏𝒅𝒖𝒆 + 𝑹é𝒔𝒊𝒅𝒖𝒆𝒍
Chaque observation aura un résidu. Si une observation est au-dessus de
la droite de régression, alors son résidu, la distance verticale de
l'observation à la ligne, est positif. Les observations en dessous de la ligne
ont des résidus négatifs. L'un des objectifs du choix du bon modèle linéaire
est que ces résidus soient aussi petits que possible.
Si nous avons ajouté tous les résidus serait-ce bien, il s'avère que ce n'est
pas bon parce que nous aurons des résidus positifs et négatifs et ils
pourraient être relativement grands, mais si nous les additionnons, nous
trouverons une somme globale proche de zéro, et ce n'est pas un bon
ajustement de courbe, donc la somme des résidus n'est pas très bonne.
𝐸 = ∑𝑴
𝟏 |𝒆𝒊 |
Ce que nous voulons faire maintenant est de le différencier deux fois parce
que nous avons 2 paramètres , (𝒂𝟎 , 𝒂𝟏 ) , si nous avons trois ou quatre
nous prendrons trois ou quatre dérivés, on prend une dérivée partielle de
fonction d'erreur 𝑬 par rapport à chaque paramètre pour lequel nous
essayons de résoudre, donc nous prendrons la dérivée par rapport à 𝒂𝟎
et nous apportons la dérivée, nous retrouvons avec une expression et
nous faisons la même chose pour 𝒂𝟏 .
Nous allons amener la dérivée à l'intérieur de la sommation.
𝒅𝑬
𝟏) =𝟎
𝒅𝒂𝟎
𝒅𝑬 𝒅 ∑𝑴
𝟏 |𝒚𝒎 − 𝒂𝟏 𝒙𝒎 − 𝒂𝟎 |
𝟐
=
𝒅𝒂𝟎 𝒅𝒂𝟎
𝑴
𝟎 = −𝟐 (𝒚𝒎 − 𝒂𝟏 𝒙𝒎 − 𝒂𝟎 )
𝟏
𝒅𝑬
𝟐) =𝟎
𝒅𝒂𝟏
𝒅𝑬 𝒅 ∑𝑴
𝟏 |𝒚𝒎 − 𝒂𝟏 𝒙𝒎 − 𝒂𝟎 |
𝟐
=
𝒅𝒂𝟏 𝒅𝒂𝟏
𝑴
𝟎 = −𝟐 (𝒚𝒎 − 𝒂𝟏 𝒙𝒎 − 𝒂𝟎 ) 𝒙𝒎
𝟏
Donc nous avons maintenant ces 2 dérivées partielles elles se
ressemblent mais elles sont un peu différentes car nous la différencions
avec des variables différentes, bien la prochaine étape, nous mettons ces
dérivées égales à zéro, donc nous prenons les expressions que nous
avions précédemment fixées égales à zéro.
𝑴 𝑴 𝑴
𝟏) 𝟎 = 𝒚𝒎 − 𝒂𝟎 − 𝒂𝟏 𝒙𝒎
𝟏 𝟏 𝟏
𝑴 𝑴
𝟎= 𝒚𝒎 − 𝑴𝒂𝟎 − 𝒂𝟏 𝒙𝒎
𝟏 𝟏
𝑴 𝑴 𝑴
𝟐) 𝟎 = 𝒚𝒎 𝒙𝒎 − 𝒂𝟎 𝒙𝒎 − 𝒂𝟏 𝒙𝟐𝒎
𝟏 𝟏 𝟏
𝟏 𝑴 𝑴
𝟏) 𝒂𝟎 = 𝒚𝒎 + 𝒂 𝟏 𝒙𝒎
𝑴 𝟏 𝟏
𝑴 𝑴 𝑴
𝟐) 𝒂𝟏 𝒙𝟐𝒎 = 𝒚𝒎 𝒙𝒎 − 𝒂𝟎 𝒙𝒎
𝟏 𝟏 𝟏
𝑴 𝑴 𝑴 𝑴 𝑴 𝟐
𝒂𝟏 𝑴 𝒙𝟐𝒎 =𝑴 𝒚𝒎 𝒙 𝒎 − 𝒚𝒎 𝒙𝒎 − 𝒂𝟏 𝒙𝒎
𝟏 𝟏 𝟏 𝟏 𝟏
𝑴 𝑴 𝟐 𝑴 𝑴 𝑴
𝒂𝟏 𝑴 𝒙𝟐𝒎 + 𝒙𝒎 =𝑴 𝒚𝒎 𝒙 𝒎 − 𝒚𝒎 𝒙𝒎
𝟏 𝟏 𝟏 𝟏 𝟏
𝑴 ∑𝑴 𝑴 𝑴
𝟏 𝒚𝒎 𝒙𝒎 ∑𝟏 𝒚𝒎 ∑𝟏 𝒙𝒎
𝟏 𝟐
𝑴 ∑𝑴 𝟐
𝟏 𝒙𝒎 ∑𝑴
𝟏 𝒙𝒎
𝟏 𝑴
𝒚𝒎𝒐𝒚 = 𝒚𝒎
𝑴 𝟏
𝒂𝟎 = 𝒚𝒎𝒐𝒚 − 𝒂𝟏 𝒙𝒎𝒐𝒚 𝟏 𝑴
𝒙𝒎𝒐𝒚 = 𝒙𝒎
𝑴 𝟏
𝟏 𝟎
A) -Exemple : une chute libre verticale à travers un fluide donné
Déterminer une relation fonctionnelle précise entre la force (la variable
dépendante) et la vitesse (la variable indépendante) pour un certain objet
de 0,5 kg lorsqu'il subit une chute libre verticale à travers un fluide
donné. Le tableau-D1 présente un ensemble de données expérimentales
d'accélération en fonction de la vitesse et les valeurs de force
correspondantes qui ont été calculées à partir de la deuxième loi de
Newton.
𝒅𝑽
𝑭 = 𝒎𝒂𝒔𝒔𝒆.
𝒅𝒕
𝐌 𝟏𝟒 𝟐
Avec : (𝐅𝐢 − 𝐅) = 𝑭𝒊 − (−𝟎. 𝟎𝟖𝟑𝟓𝟓 ∗ 𝑽𝒊 + 𝟒. 𝟏𝟔𝟔𝟐)
𝟏
Donc : 𝒅 =18.4977
Représentation de
force en fonction de la
vitesse
6)-La régression linéaire multiple
La régression linéaire multiple fait référence à une technique statistique
utilisée pour prédire le résultat d'une variable en fonction de la valeur de
deux variables ou plus. On l'appelle parfois simplement régression
multiple et c'est une extension de la régression linéaire. La variable que
nous voulons prédire est connue sous le nom de variable dépendante,
tandis que les variables que nous utilisons pour prédire cette valeur sont
appelées variables indépendantes ou explicatives.
Dans la régression linéaire multiple, il existe 𝑵 variables indépendants et
la relation entre la variable dépendante et les variables indépendants est
représentée par l'équation suivante :
𝒚𝒊 = 𝒂𝟎 + 𝒙𝟏.𝒊 𝒂𝟏 + ⋯ + 𝒙𝑵.𝒊 𝒂𝑵 + 𝒆𝒊
Avec : 𝒂𝟎 est le terme constant et 𝒂 𝟏 à 𝒂𝑵 sont les coefficients reliant les
𝑵 variables indépendantes aux variables d'intérêt.
Ainsi, la régression linéaire multiple peut être considérée comme une
extension de la régression linéaire simple, où il y a 𝑵 variables
indépendantes, ou la régression linéaire simple peut être considérée
comme un cas particulier de régression linéaire multiple, où 𝑵 = 𝟏. Le
terme « linéaire » est utilisé parce que dans la régression linéaire multiple,
nous supposons que 𝒚 est directement lié à une combinaison linéaire des
variables indépendants.
A) -Formulation de l'équation matricielle
Supposons qu'un échantillon de 𝑴 ensembles d'observations, et on
obtient :
Nombre Les variables Les variables
d'observations dépendants indépendants
. .
. .
. .
. .
En supposant que le modèle de régression est :
𝒚𝒊 = 𝒂𝟎 + 𝒙𝟏.𝒊 𝒂𝟏 + ⋯ + 𝒙𝑵.𝒊 𝒂𝑵 + 𝒆𝒊
On commence par écrire la fonction 𝒚𝒎 pour chacune de noter 𝑴
mesures, on inclut également les termes résiduels.
𝒚𝟏 = 𝒂𝟎 + 𝒙𝟏.𝟏 𝒂𝟏 + ⋯ + 𝒙𝟏.𝑵 𝒂𝑵 + 𝒆𝟏
𝒚𝟐 = 𝒂𝟎 + 𝒙𝟐.𝟏 𝒂𝟏 + ⋯ + 𝒙𝟐.𝑵 𝒂𝑵 + 𝒆𝟐
⋮ Avec : 𝑀≫𝑁
⋮
𝐲𝐌 = 𝐚𝟎 + 𝒙𝑴.𝟏 𝐚𝟏 + ⋯ + 𝒙𝑴.𝑵 𝐚𝐍 + 𝐞𝐌
. .
. .
. .
. .
La matrice 𝑨𝑵,𝑴 ,on peut l’écrire sous la forme de ses vecteurs colonnes
donc :
𝒂𝟏
⎡ 𝒂𝟐 ⎤
⎢ ⋮ ⎥ ⃗
𝑨⃗𝟏 𝑨⃗𝟐 ⋯ ⋯ 𝑨⃗𝑴 ⎢ ⎥=𝒃
⎢ ⋮ ⎥
⎣𝒂 𝑴 ⎦
𝒂𝟏 𝑨⃗𝟏 + 𝒂𝟐 𝑨⃗𝟐 + ⋯ ⋯ + 𝒂𝑴 𝑨⃗𝑴 = 𝒃⃗
Qu’est-ce que ça veut dire il n’y a pas de solution à cette équation donc,
𝒃⃗ ne peut pas s’écrire comme une combinaison linéaire des vecteurs
colonnes de la matrice 𝑨𝑵,𝑴 , car les vecteurs 𝒃⃗ et 𝒙⃗ n’ont pas le même
nombre des lignes, (𝑵 ≠ 𝑴)
Le vecteur 𝒃⃗
Le vecteur (𝑨𝑵,𝑴 𝒙∗⃗ − 𝒃⃗)
L’image de 𝑨𝑵,𝑴
Le vecteur 𝒗⃗ : la projection de
vecteur 𝒃⃗sur l’image de 𝑨𝑵,𝑴
𝑨 𝑨𝑵,𝑴 𝒙∗⃗ = 𝑨 𝒃⃗
Notre objectif est de trouver les estimations des paramètres :
𝒙∗⃗ = (𝒂𝟎 , 𝒂𝟏 , … , 𝒂𝑵 )
Donc, l'estimation par la méthode des moindres carrés de 𝒙∗⃗ est (sous
forme vectorielle) :
∗ 𝟏
𝑵,𝑴
C)-Visualisation de la méthode des moindres carrés
On a initialement une équation matricielle avec plus d’équations que
d’inconnues.
∗ ∗ ∗ ∗
⎡∗ ∗ ∗⎤ ⎡∗⎤
⎢∗ ∗ ∗⎥ ∗ ⎢∗⎥
⎢∗ ∗ ∗⎥ ∗ = ⎢∗⎥
⎢∗ ∗ ∗⎥ ∗ ⎢∗⎥
⎢∗ ∗ ∗⎥ ⎢∗⎥
⎣∗ ∗ ∗⎦ ⎣∗⎦
∗ ∗ ∗ ∗
⎡∗ ∗ ∗⎤ ⎡∗ ⎤
∗ ∗ ∗ ∗ ∗ ∗ ∗ ⎢∗ ∗ ∗⎥ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ⎢∗ ⎥
∗ ∗ ∗ ∗ ∗ ∗ ∗ ⎢∗ ∗ ∗⎥ ∗ = ∗ ∗ ∗ ∗ ∗ ∗ ∗ ⎢∗ ⎥
∗ ∗ ∗ ∗ ∗ ∗ ∗ ⎢∗ ∗ ∗⎥ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ⎢∗ ⎥
⎢∗ ∗ ∗ ⎥ ⎢∗ ⎥
⎣∗ ∗ ∗⎦ ⎣∗ ⎦
∗
D)-Exemple
On va prendre des données arbitraires sur un diagramme (𝑿, 𝒀) et on va
essayer d’estimer le modèle de régression qui représente mieux ces
données en utilisant la méthode de l’équation matricielle.
2
6.91, 1.57
1.5
4.98, 1.13
1
0.5
3.01, 0.16
0
0 2 4 6 8 10
𝟏 𝟎
𝑦 = 𝒂𝟏 𝑥 + 𝒂𝟎 𝑦 𝑥 1
𝑦 = 𝒂𝟏 𝑥 + 𝒂𝟎 𝑦 𝑥 1 𝒂𝟏
𝑦 = 𝑥
1 𝒂𝟎
𝑦 = 𝒂 𝟏 𝑥 + 𝒂𝟎 𝑦 𝑥 1
𝑦 = 𝒂𝟏 𝑥 + 𝒂𝟎
𝑥⃗ = (𝐴 𝐴) 𝐴 𝑏⃗
Application numérique :
3.01 1 0.16
3.01 4.98 6.91 8.76 4.98 1 𝒂𝟏 3.01 4.98 6.91 8.76 1.13
1 𝒂𝟎 =
1 1 1 1 6.91 1 1 1 1 1.57
8.76 1 2.35
3
8.76, 2.35
2.5
2
6.91, 1.57
1.5 4.98, 1.13
1
PARTIE III :
LA REGRESSION POLYNOMIAL
PAR LA METHODE DES
MOINDRES CARRES
1)-La définition et l’objectif de la régression polynomial
En statistique, la régression polynomiale est une forme de régression
linéaire dans laquelle la relation entre la variable indépendante 𝑿 et la
variable dépendante 𝒀 est modélisée comme un polynôme d'ordre 𝑵. La
régression polynomiale correspond à une relation non linéaire entre la
valeur de 𝑿 et la moyenne conditionnelle correspondante de 𝒀, Bien que
la régression polynomiale ajuste un modèle non linéaire aux données,
mais elle est linéaire, en ce sens que la fonction de régression 𝒀 est
linéaire en fonction des paramètres inconnus qui sont estimés à partir des
données. Pour cette raison, la régression polynomiale est considérée
comme un cas particulier de régression linéaire multiple.
2)-Énoncé du problème
En général, nous pouvons modéliser la valeur attendue de 𝒀 comme un
polynôme d'ordre 𝒏, donnant le modèle général de régression polynomiale
𝒚𝒊 = 𝒂𝟎 + 𝒙𝒊 𝒂𝟏 + 𝒙𝟐𝒊 𝒂𝟐 + ⋯ ⋯ + 𝒙𝑵
𝒊 𝒂𝑵 + 𝒆𝒊
De manière pratique, ces modèles sont tous linéaires du point de vue de
l'estimation, puisque la fonction de régression est linéaire en termes de
paramètres inconnus (𝒂𝟎 , 𝒂𝟏 , 𝒂𝟐 , … , 𝒂𝑵 ) .Par conséquent, pour l'analyse
des moindres carrés, le problème de calcul de la régression polynomiale
peut être complètement abordé en utilisant les techniques de régression
multiple. Cela se fait en traitant (𝒙𝒊 , 𝒙𝟐𝒊 , … , 𝒙𝑵
𝒊 ) comme étant des variables
indépendantes distinctes dans un modèle de régression multiple.
3)-La forme Matricielle et le calcul des estimations
Le modèle de régression polynomiale peut être écrit comme un système
d'équations linéaires pour chaque point des données :
𝒚𝟏 = 𝒂𝟎 + 𝒙𝟏.𝟏 𝒂𝟏 + 𝒙𝟐𝟏.𝟐 𝒂𝟐 + ⋯ ⋯ + 𝒙𝑵
𝟏.𝑵 𝒂𝑵 + 𝒆𝟏
𝒚𝟐 = 𝒂𝟎 + 𝒙𝟐.𝟏 𝒂𝟏 + 𝒙𝟐𝟐.𝟐 𝒂𝟐 + ⋯ ⋯ + 𝒙𝑵
𝟐.𝑵 𝒂𝑵 + 𝒆𝟐
𝒚𝑴 = 𝒂𝟎 + 𝒙𝑴.𝟏 𝒂𝟏 + 𝒙𝟐𝑴.𝟐 𝒂𝟐 + ⋯ ⋯ + 𝒙𝑵
𝑴.𝑵 𝒂𝑵 + 𝒆𝑴
Ce système peut être exprimé sous forme matricielle en termes : d'une
matrice 𝑨𝑵,𝑴 , d'un vecteur de réponse 𝒃⃗, d'un vecteur de paramètres 𝒙⃗ et
d'un vecteur 𝒆 d'erreurs aléatoires. La 𝒊è𝒎𝒆 ligne de 𝑨𝑵,𝑴 contient les
valeurs 𝑿 et 𝒀 pour le 𝒊è𝒎𝒆 coordonnée de données.
. . .
. . .
. . .
. . .
𝑨𝑵,𝑴 . 𝒙⃗ = 𝒃⃗
𝒚𝒊 = 𝒂𝟎 + 𝒙𝒊 𝒂𝟏 + 𝒙𝟐𝒊 𝒂𝟐 + ⋯ ⋯ + 𝒙𝑵
𝒊 𝒂𝑵
Le résidu à chaque point de données est donné par :
𝝏𝑬 𝑴
= 𝟐 𝒚𝒊 − 𝒂𝟎 − 𝒂𝒊 𝒙𝒊 − ⋯ ⋯ − 𝒂𝒎 𝒙𝑴
𝒊 (−𝟏) = 𝟎
𝝏𝒂𝟎 𝒊
𝝏𝑬 𝑴
= 𝟐 𝒚𝒊 − 𝒂𝟎 − 𝒂𝒊 𝒙𝒊 − ⋯ ⋯ − 𝒂𝒎 𝒙𝑴
𝒊 (−𝒙𝒊 ) = 𝟎
𝝏𝒂𝟏 𝒊
⋮
⋮
⋮
𝝏𝑬 𝑴
= [𝟐(𝒚𝒊 − 𝒂𝟎 − 𝒂𝒊 𝒙𝒊 − ⋯ ⋯ − 𝒂𝒎 𝒙𝒎 𝒎
𝒊 )](−𝒙𝒊 ) = 𝟎
𝝏𝒂𝒎 𝒊
𝑴 𝑴 𝑴
⎡ 𝑀 𝒙𝒊 … 𝒙𝒎
𝒊 ⎤ ⎡ 𝒚𝒊 ⎤
⎢ 𝒊 𝒊 ⎥ 𝒂 ⎢ 𝒊 ⎥
⎢ 𝑴 𝑴 𝑴 ⎥ 𝟎 ⎢ 𝑴 ⎥
⎢ 𝒙𝒊 𝒙𝟐𝒊 … 𝒙𝒎 𝟏
⎥ 𝒂 𝟏 𝒚𝒊 𝒙𝒊 ⎥
𝒊 =⎢
⎢ 𝒊 𝒊 𝒊
⎥ ⋮ ⎢ 𝒊
⎥
⎢ ⋮ ⋮ ⋮ ⎥ 𝒂 𝒎 ⎢ ⋮ ⎥
𝑴 𝑴 ⋱ 𝑴 𝑴
⎢ 𝒙𝒎 𝒙𝒎 𝟏
𝒙𝟐𝒎 ⎥ ⎢ 𝒚𝒊 𝒙𝒎 ⎥
𝒊 𝒊 … 𝒊 𝒊
⎣ 𝒊 𝒊 𝒊 ⎦ ⎣ 𝒊 ⎦
4)-Équation de régression quadratique
La régression quadratique est un moyen de modéliser une relation entre
deux ensembles de variables. Le résultat est une équation de régression
qui peut être utilisée pour faire des prédictions sur les données. L'équation
a la forme :
𝒚 = 𝒂𝟐 𝒙𝟐 + 𝒂𝟏 𝒙 + 𝒂𝟎
La première étape de la régression consiste à créer un nuage de points.
Si votre nuage de points est en forme de «𝑼», concave vers le haut
(comme la lettre 𝑼) ou concave vers le bas (∩), vous recherchez
probablement un type d'équation quadratique comme le meilleur
ajustement pour vos données. Un quadratique n'a pas besoin d'être une
forme en «𝑼» complet ; vous pouvez avoir juste une partie (disons un quart
ou 3/4).
La régression quadratique est une extension de la régression linéaire
simple. Alors que la régression linéaire peut être effectuée avec aussi peu
que deux points (c'est-à-dire suffisamment de points pour tracer une ligne
droite), la régression quadratique présente l'inconvénient qu'elle nécessite
plus de points de données pour être certain que vos données tombent en
forme de «𝑼». Il peut techniquement être effectué avec trois points de
données qui correspondent à une forme en «𝑽», mais plus de points sont
souhaitables.
A) -Ajustement par la méthode des moindres carrés
Comme pour un ajustement linéaire, le concept de « meilleur ajustement
» nécessite la définition d'une certaine mesure de l'erreur entre les
données et la courbe d'ajustement. La forme fonctionnelle de l'erreur est
une simple généralisation de la fonction d'erreur linéaire :
1) 𝜕𝑬 𝑴
= 2 𝒚𝒊 − 𝒂 − 𝒂𝒊 𝒙𝒊 − 𝒂𝟐 𝒙𝒊 (−1) = 0
𝜕𝒂 𝒊
𝑴 𝑴
𝟐 𝒂 + 𝒂𝒊 𝒙𝒊 + 𝒂𝟐 𝒙𝒊 − 𝑦 =0
𝒊 𝒊
𝑴 𝑴
𝑴𝒂𝟎 + 𝒂𝒊 𝒙𝒊 + 𝒂𝟐 𝒙𝒊 = 𝒚𝒊
𝒊 𝒊
2)
𝜕𝑬 𝑴
= 2 𝒚𝒊 − 𝒂 − 𝒂𝒊 𝒙𝒊 − 𝒂𝟐 𝒙𝒊 (−𝒙𝒊 ) = 0
𝜕𝒂 𝒊
𝑴 𝑴 𝑴
𝟐 𝒂 𝒙𝒊 + 𝒂𝟏 𝒙𝒊 + 𝒂𝟐 𝒙𝟑𝒊 − 𝒚𝒊 𝒙 𝒊 = 0
𝒊 𝒊 𝒊
𝑴 𝑴 𝑴
𝒂 𝒙𝒊 + 𝒂𝟏 𝒙𝒊 + 𝒂𝟐 𝒙𝟑𝒊 = 𝒚𝒊 𝒙 𝒊
𝒊 𝒊 𝒊
3)
𝜕𝑬 𝑴
= 2 𝒚𝒊 − 𝒂 − 𝒂𝒊 𝒙𝒊 − 𝒂𝟐 𝒙𝒊 −𝒙𝒊 = 0
𝜕𝒂 𝒊
𝑴 𝑴 𝑴
𝟐 𝒂 𝒙𝒊 + 𝒂𝟏 𝒙𝟑𝒊 + 𝒂𝟐 𝒙𝟒𝒊 − 𝒚𝒊 𝒙𝒊 = 0
𝒊 𝒊 𝒊
𝑴 𝑴 𝑴
𝒂 𝒙𝒊 + 𝒂𝟏 𝒙𝟑𝒊 + 𝒂𝟐 𝒙𝟒𝒊 = 𝒚𝒊 𝒙𝒊
𝒊 𝒊 𝒊
Ces trois équations peuvent s’écrire sous la forme matricielle :
𝑴 𝑴 𝑴
⎡ 𝑴 𝒙𝒊 𝒙𝟐𝒊 ⎤ ⎡ 𝒚𝒊 ⎤
⎢ 𝒊 𝒊 ⎥ 𝒂𝟎 ⎢ 𝒊 ⎥
⎢ 𝑴 𝑴 𝑴 ⎥ ⎢ 𝑴 ⎥
⎢ 𝒙𝒊 𝒙𝟐𝒊 𝒙𝟑𝒊 ⎥ 𝒂𝟏 =⎢ 𝒚𝒊 𝒙𝒊 ⎥
⎢ 𝒊
𝑴
𝒊
𝑴
𝒊
𝑴
⎥ 𝒂𝟐 ⎢ 𝒊
𝑴
⎥
⎢ 𝒙𝟐𝒊 𝒙𝟑𝒊 𝒙𝟒𝒊 ⎥ ⎢ 𝒚𝒊 𝒙𝟐𝒊 ⎥
⎣ 𝒊 𝒊 𝒊 ⎦ ⎣ 𝒊 ⎦
∑ 𝑥 𝑦 ∗ ∑ 𝑥 − ∑ 𝑥 𝑦 ∗ ∑ 𝑥
𝑎 =
[(∑ 𝑥 ) ∗ (∑ 𝑥 )] − ∑ 𝑥
∑ 𝑥 𝑦 ∗ ∑ 𝑥 − ∑ 𝑥 𝑦 ∗ ∑ 𝑥
𝑎 =
[(∑ 𝑥 ) ∗ (∑ 𝑥 )] − ∑ 𝑥
∑ 𝑦 ∑ 𝑥 ∑ 𝑥
𝑎 = − 𝑎 ∗ − 𝑎 ∗
𝑀 𝑀 𝑀
B) -Exemple : le coefficient d'expansion de longueur pour le fer
Définition de la dilatation thermique :
En physique, la dilatation thermique peut être définie comme le
changement de la longueur, de la largeur, de la hauteur ou du volume de
tout matériau lors du changement de température. La dilatation thermique
est très évidente dans les solides car les atomes sont densément remplis.
C'est un phénomène bien connu maintenant que les substances se
dilatent lors du chauffage et se contractent lors du refroidissement. Si vous
chauffez un corps, cela modifie ses dimensions. Selon la forme du corps.
L'expansion peut se produire en longueur, auquel cas elle est appelée
expansion linéaire.
Formule d'expansion thermique linéaire :
La formule correspondante est donnée ci-dessous avec les termes
pertinents :
𝚫𝑳
= 𝜶𝑳 . ∆𝑻
𝑳𝟎
Où,
𝑳𝟎 : est la longueur initiale du solide.
𝜟𝑳 : est le changement de longueur.
𝜶𝑳 : est le coefficient d'expansion de longueur.
𝜟𝑻 : est la différence de température.
Le coefficient de dilatation linéaire :
Le coefficient de dilatation thermique décrit comment la taille d'un objet
change avec un changement de température. Plus précisément, il mesure
le changement fractionnaire de taille par degré de changement de
température à une pression constante. Plusieurs types de coefficients ont
été développés : volumétrique, surfacique et linéaire. Le choix du
coefficient dépend de l'application particulière et des dimensions
considérées comme importantes. Pour les solides, on pourrait ne se
préoccuper que du changement sur une longueur ou sur une certaine
zone. Si le changement de la taille est le long d'une dimension (longueur)
sur le volume, on parle alors de dilatation linéaire.
Le coefficient de dilatation linéaire peut s'écrire mathématiquement
comme suit :
𝒅𝑳
𝜶𝑳 =
𝒅𝑻
Où,
𝜶𝑳 : est le coefficient de dilatation linéaire.
𝒅𝑳 : est le changement d'unité de longueur
𝒅𝑻 : est le changement d'unité de température.
L'unité au S.I est : (𝒑 𝒎⁄𝒑 𝒎⁄°𝑪)
𝜶𝑳 = 𝐚 𝑻𝟐 + 𝐛 𝑻 + 𝐜
La température Le coefficient de
(°𝑪) dilatation
(𝒑𝒎⁄𝒑 𝒎⁄°𝑪)
80 6.47
60 6.36
40 6.24
20 6.12
0 6.00
-20 5.86
-40 5.72
-60 5.58
-80 5.43
-100 5.28
-120 5.09
-140 4.91
-160 4.72
-180 4.52
-200 4.30
-220 4.08
Calcule les coefficients du polynôme (𝐚, 𝐛, 𝐜)
𝑴 𝑴 𝑴 𝑴
𝟒 𝟑 𝟐 𝟐
𝒊 𝒊 𝒊 𝒊 𝒊
𝒊 𝒊 𝒊 𝒊
𝑴 𝑴 𝑴 𝑴
𝟑 𝟐
𝒊 𝒊 𝒊 𝒊 𝒊
𝒊 𝒊 𝒊 𝒊
𝑴 𝑴 𝑴
𝟐
𝒊 𝒊 𝒊
𝒊 𝒊 𝒊
Réponse :
PROGRAM RLS_par_MMC
IMPLICIT NONE
INTEGER, PARAMETER:: SIZE=100
REAL:: a,b,d
INTEGER:: n,m
REAL:: X(0:SIZE), Y(0:SIZE)
print *, 'Ce programme calcule la régression linéaire '
print *, 'simple par la méthode des moindres carrés, '
print *, 'correspondent à un ensemble de data donnés. '
print *, ' '
print *, 'INSTRUCTIONS '
print *, '-------------'
print *, ' '
n = 0
do while (n < 3)
print *, 'Le nombre de données doit être '
print *, 'supérieur à deux. Sinon une erreur '
print *, 'de division par zéro peut résulter.'
print *, ' '
write (*,"('Nombre de points de données: ')", advance='no')
read *, n
print *, ' '
end do
print *, ' Saisissez d-abord les valeurs '
print *, ' des variables indépendantes puis'
print *, ' saisissez les variables dépendantes.'
do m = 0, n-1
write(*,25,advance='no') m+1
read *, X(m)
end do
print *, ' '
do m = 0, n-1
write(*,25,advance='no') m+1
read *, Y(m)
end do
! Appel du subroutine MMC(n,X,Y,a,b,d)
CALL MMC(n,X,Y,a,b,d)
! Afficher les résultats a, b et d
print *, ' '
print *, 'l-équation ajustée est :'
write(*,50) b, a
print *, ' '
write(*,60) d
print *, ' '
STOP
25 FORMAT(' ',I2,' ')
50 FORMAT(' Y = ',F10.6,' +',F10.6,' X')
60 FORMAT(' l-écart type d-ajustement:',F10.6)
END
SUBROUTINE MMC(n,X,Y,a,b,d)
IMPLICIT NONE
INTEGER, PARAMETER :: SIZE=100
INTEGER:: n,m
REAL:: a,b,d,X(0:SIZE),Y(0:SIZE)
REAL:: a1,a2,b0,b1,d1
a1 = 0
a2 = 0
b0 = 0
b1 = 0
DO m = 0, n-1
a1 = a1 + X(m)
a2 = a2 + X(m) **2
b0 = b0 + Y(m)
b1 = b1 + Y(m) * X(m)
END DO
d = (n * a2)+(a1**2)
a = (n * b1)-(a1 * b0)
a = a / d
b = (b0/n) - a*(a1/n)
b = b
! Évaluation de l'écart type d
d = 0
DO m = 0, n-1
d1 = Y(m) - a - b * X(m)
d = d + d1 * d1
END DO
d = SQRT(d / (n - 2))
RETURN
END
2)-Explication du code Fortran :
La présence des (: : ) est souvent facultative ; cela dit, comme elle est
obligatoire dans certains types de déclaration, il est de coutume de les
mettre systématiquement.
Fortran reconnaît cinq types de variables et de constantes. Nous avons
besoin de Just deux, « INTEGER » et « REAL », leurs définitions de base
sont les suivantes.
« INTEGER » : représentation exacte d'un nombre entier positif ou négatif.
« REAL » : représentation approximative d'un nombre décimal positif ou
négatif.
Dans notre programme on a les instructions suivantes :
𝐑𝐄𝐀𝐋: : 𝐚, 𝐛, 𝐝
Cela signifie que 𝐚, 𝐛, 𝐝 seront des nombres décimaux positifs ou négatifs.
A partir du modèle de la régression utilisée 𝒚 = 𝒂𝟏 𝒙 + 𝒂𝟎 , (𝐚)
représente le paramètre (𝒂𝟏 ) et (𝐛) représente le paramètre (𝒂𝟎 ).
La commande :
print ∗, une expression quelconque
Le 𝐬𝐮𝐛𝐫𝐨𝐮𝐭𝐢𝐧𝐞 :
Une 𝐬𝐮𝐛𝐫𝐨𝐮𝐭𝐢𝐧𝐞 est une séquence d’instructions appelable d’un point
quelconque du programme. Elle peut être appelée depuis le programme
principal ou depuis une autre 𝐬𝐮𝐛𝐫𝐨𝐮𝐭𝐢𝐧𝐞.
Une 𝐬𝐮𝐛𝐫𝐨𝐮𝐭𝐢𝐧𝐞 est définie par :
– un nom
– des arguments, qui ont comme les variables un nom et un type.
SUBROUTINE MMC(n, X, Y, a, b, d)
IMPLICIT NONE
INTEGER, PARAMETER ∷ SIZE = 100
INTEGER ∷ n
REAL ∷ a, b, d, X(0: SIZE), Y(0: SIZE)
REAL ∷ a1, a2, b0, b1, d1
INTEGER: : m
𝐷𝑂 𝑚 = 0, 𝑛 − 1
𝑎1 = 𝑎1 + 𝑋(𝑚)
𝑎2 = 𝑎2 + 𝑋(𝑚) ∗∗ 2
𝑏0 = 𝑏0 + 𝑌(𝑚)
𝑏1 = 𝑏1 + 𝑌(𝑚) ∗ 𝑋(𝑚)
𝐸𝑁𝐷 𝐷𝑂
Ces calcules vont être effectuer pour toutes les points n de notre
échantillon de données.
C’est que reste est trouver les paramètres 𝒂𝟏 et 𝒂𝟎 pour l’équation
𝒚 = 𝒂𝟏 𝒙 + 𝒂𝟎 ,pour les calculer on utilise les instructions suivantes :
d = (n ∗ a2) + (a1 ∗∗ 2)
a = (n ∗ b1) − (a1 ∗ b0)
a =a d
b = b0 n − a ∗ a1 n
b = b
Calcule de 𝒂𝟏
On a l’expression mathématique de 𝒂𝟏 :
𝑴 ∑𝑴 𝑴 𝑴
𝟏 𝒚𝒎 𝒙𝒎 − ∑𝟏 𝒚𝒎 ∑𝟏 𝒙𝒎
𝒂𝟏 =
𝑴 ∑𝑴 𝟐 𝑴
𝟏 𝒙𝒎 + (∑𝟏 𝒙𝒎 )
𝟐
d = 0
DO m = 0, n − 1
d1 = Y(m) − a − b ∗ X(m)
d = d + d1 ∗ d1
END DO
d = SQRT d (𝑛 − 2)
RETURN
END
CALL MMC(n, X, Y, a, b, d)
! afficher les résultats a, b et d
print ∗, L′équation ajustée est:
write (∗ ,50) b, a
print ∗,
write (∗ ,60) d
STOP
25 FORMAT(′ , I2, )
50 FORMAT(′ Y = , F10.6, + , F10.6, X )
60 FORMAT(′ L′écart type d′ajustement: , F10.6)
END
On a d’abord l’instruction « CALL MMC(n, X, Y, a, b, d) » qui va nous permet
d’appeler les résultats de SUBROUTINE MMC(n, X, Y, a, b, d),et les utiliser
dans notre programme.
Le rôle de ces instructions est d’afficher l'équation ajustée 𝒚 = 𝒂𝟏 𝒙 + 𝒂𝟎
et l’écart type d’ajustement 𝐝 sur l’écran.
Résultat :
On utilise les données qu’on a pour l’exemple de la chute libre verticale
et on obtient l'équation ajustée :
Y = 4.043177 - 0.054313 X
Écart type d’ajustement : 18.49778
B) -Ce programme calcule un ajustement parabolique des moindres
carrés à un ensemble de données de l’expérience de la dilatation
thermique linéaire.
Program RLQ_par_MMC
implicit none
integer, parameter :: SIZE = 100
real:: x(0:SIZE), y(0:SIZE)
integer:: n,m
real:: a,b,c,d
PRINT*,' '
PRINT*,' Ce programme calcule l-ajustement'
PRINT*,' par les moindres carrés quadratique'
PRINT*,' à ensemble de données donné '
PRINT*,' '
PRINT*,' INSTRUCTIONS'
PRINT*,' ------------'
PRINT*,' Le nombre de données doit être '
PRINT*,' supérieur à quatre Sinon, une erreur'
PRINT*,' de division par zéro peut résulter.'
PRINT*,' '
Write(*,100,advance='no')
read *, n
do while (n < 4)
Write(*,200,advance='no')
read *, n
end do
PRINT*,' '
PRINT*,'Saisissez d-abord les valeurs '
PRINT*,'des variables indépendantes puis'
PRINT*,'saisissez les variables dépendantes'
PRINT*,' '
DO m = 0, n - 1
Write(*,300,advance='no') m+1
read *, x(m)
END DO
PRINT*,' '
DO m = 0, n - 1
Write(*,300,advance='no') m+1
read *, y(m)
END DO
!Appeller le subroutine des moindres carrés
paraboliques
Call S2000(n,x,y,a,b,c,d)
PRINT*,' '
PRINT*,' l-équation ajustée est::'
Write(*,400,advance='no')a,b,c
PRINT*,' '
PRINT*,' l-écart type d-ajustement:'
Write(*,500,advance='no')d
STOP
100 Format(' Le nombre de points de données: ')
200 Format(' Le nombre de coordonnées de données
fournies doit être supérieur à quatre.')
300 Format(' ',I2,' ')
400 Format(' Y = ',f18.9,'X^2'' + ',f18.9,'X'' +
',f18.9,'')
500 Format(' ',f18.9,' ')
END Program
!* le subroutine des moindres carrés paraboliques
Subroutine S2000(n,x,y,a,b,c,d)
implicit none
integer, parameter :: SIZE = 100
real:: x(0:SIZE), y(0:SIZE)
integer:: n,m
real:: a,b,c,d,a1,a2,a3,a4,b0,b1,b2,d1
a1 = 0
a2 = 0
a3 = 0
a4 = 0
b0 = 0
b1 = 0
b2 = 0
DO m = 0, n - 1
a1 = a1 + x(m)
a2 = a2 + x(m) * x(m)
a3 = a3 + x(m) * x(m) * x(m)
a4 = a4 + x(m) * x(m) * x(m) * x(m)
b0 = b0 + y(m)
b1 = b1 + y(m) * x(m)
b2 = b2 + y(m) * x(m) * x(m)
END DO
d = (a2 * a4) - (a3 * a3)
a = (b2 * a2) - (b1 * a3)
a = a / d
b = (b1 * a4) - (b1 * a3)
b = b / d
c = (b0/n) - (b * (a1/n)) - (a * (a2/n))
! l’évaluation de l'écart type d
d = 0
DO m = 0, n - 1
d1 = y(m) - c - b * x(m) - a * x(m) * x(m)
d = d + d1 * d1
END DO
d = SQRT(d / (n - 3))
Return
END
Résultat :
L'équation ajustée est :