File:Regression quadratique lineaire donnees gander.svg
Une page de Wikimedia Commons, la médiathèque libre.
Aller à la navigation
Aller à la recherche
- Fichier
- Historique du fichier
- Utilisations locales du fichier
- Utilisations du fichier sur d’autres wikis
- Métadonnées
![File:Regression quadratique lineaire donnees gander.svg](https://upload.wikimedia.org/wikipedia/commons/thumb/3/3c/Regression_quadratique_lineaire_donnees_gander.svg/452px-Regression_quadratique_lineaire_donnees_gander.svg.png?20180524122944)
Taille de cet aperçu PNG pour ce fichier SVG : 452 × 369 pixels. Autres résolutions : 294 × 240 pixels | 588 × 480 pixels | 941 × 768 pixels | 1 254 × 1 024 pixels | 2 509 × 2 048 pixels.
Fichier d’origine (Fichier SVG, nominalement de 452 × 369 pixels, taille : 27 kio)
Informations sur le fichier
Données structurées
Légendes
Légendes
Ajoutez en une ligne la description de ce que représente ce fichier
Description
[modifier]DescriptionRegression quadratique lineaire donnees gander.svg |
English: Fitting the data with a quadratic function (conic section). Data points from Gander, W., Golub, Gene, H. and Strebel, R., Least-Squares Fitting of Circles and Ellipses, BIT 34 (1994), 558-578.
The result is an ellipse.
Français : Régression par une fonction quadratique (conique). Nuage de points de Gander, W., Golub, Gene, H. and Strebel, R., Least-Squares Fitting of Circles and Ellipses, BIT 34 (1994), 558-578.
Le résultat est une ellipse. |
Date | |
Source | Travail personnel |
Auteur | Cdang |
Parameters of the ellipse:
- cartesian equation: x2 + 0.815xy + 0.719y2 – 14.0x – 10.1 = 0;
- geometrical parameters:
- center C(5.38, 4.00),
- semi-axes: a = 2.80, b = 5.10,
- tilt: φ = 35.5°.
Scilab source
![]() |
This media was created with Scilab, a free open-source software. Here is a listing of the Scilab source used to create this file. |
// **********
// Initialisation
// **********
clear;
// **********
// Données
// **********
X0 = [1, 2, 5, 7, 9, 6, 3, 8];
Y0 = [7, 6, 8, 7, 5, 7, 2, 4];
// **********
// Fonctions
// **********
function [a] = regression_quadratique(X, Y)
// méthode de la distance algébrique
// X, Y : points expérimentaux, matrices colonnes réelles
// a : coefficients de la formule quadratique (matrice colonne réelle)
YY = (X.*X);
XX = [(X.*Y) ; (Y.*Y) ; X ; Y];
[aa, b] = reglin(XX, YY);
a = [-aa, -b];
endfunction
function [phi]=trouve_rotation(A)
// A : coefficients de la formule quadratique (matrice colonne réelle)
// phi : angle que fait un axe de l'ellipse avec x (radians)
delta = 1 - 1/(1 + (A(3) - A(1))^2/A(2)^2);
absphi = acos(sqrt((1 + sqrt(delta))/2));
cap = cos(absphi); sap = sin(absphi);
signephi = sign(A(2)*(cap*cap - sap*sap)/(A(1) - A(3)));
phi = signephi*absphi;
endfunction
function [x,y]=trouve_centre(A)
// A : coefficients de la formule quadratique (matrice colonne réelle)
// x, y : coordonées du centre de l'ellipse (réels)
delta = A(2)*A(2) - 4*A(1)*A(3);
x = (2*A(3)*A(4) - A(2)*A(5))/delta;
y = (2*A(1)*A(5) - A(2)*A(4))/delta;
endfunction
function [rx, ry]=trouve_rayons(a, phi, xc, yc)
// a : coefficients de la formule quadratique (matrice colonne réelle)
// phi : angle que fait un axe de l'ellipse avec x
// xc, yc : coordonnées du centre de l'ellipse
// rx, ry : rayons (grand et petit demi-grands axes) de l'ellipse
A = [a(1), a(2)/2 ; a(2)/2, a(3)];
Q = rotate([1, 0 ; 0, 1], phi); // matrice de rotation
t = [xc ; yc]; // matrice de translation
Abar = Q'*A*Q;
b = [a(4) ; a(5)];
bbar = (2*t'*A + b')*Q;
c = a(6);
cbar = t'*A*t + b'*t + c;
rx = sqrt(abs(cbar/Abar(1,1)));
ry = sqrt(abs(cbar/Abar(2,2)));
endfunction
function [d]=conique(a, x, y)
d = a(1)*x'*x + a(2)*x'*y + a(3)*y'*y + a(4)*x + a(5)*y + a(6);
endfunction
function [] = trace_conique(a)
epsilon = 1.5e-1;
Xbase = 0:0.1:10;
Ybase = 1:0.1:9;
i = 1;
for x = Xbase
for y = Ybase
if abs(conique(a, x, y)) <= epsilon then
X(i) = x;
Y(i) = y;
i = i + 1;
end
end
end
Xmoy = mean(X); Ymoy = mean(Y); // détermination d'un point intérieur
theta = atan(Y-Ymoy, X-Xmoy); // angle des vecteurs
posMat = gsort([theta, X, Y], "lr"); // classement dans le sens trigo
[m, k] = max(abs(diff(posMat(:, 1)))); // saut de point
X = [posMat(k+1:$, 2) ; posMat(1:k, 2)]; // décalage circulaire
Y = [posMat(k+1:$, 3) ; posMat(1:k, 3)];
plot2d(X, Y, style = 5);
endfunction
// **********
// Programme principal
// **********
// lecture des données
Xdef = X0;
Ydef = Y0;
// Régression
Aopt = regression_quadratique(Xdef, Ydef);
aopt = [1, Aopt];
// affichage des paramètres
disp(aopt)
phi = trouve_rotation(aopt);
phideg = phi*180/%pi;
[xc, yc] = trouve_centre(aopt);
[a, b] = trouve_rayons(aopt, phi, xc, yc);
disp("phi = "+string(phi)+" rad = "+string(phideg)+"°.");
disp("C("+string(xc)+" ; "+string(yc)+").");
disp("a = "+string(a)+" ; b = "+string(b)+".");
// tracé
clf;
plot(Xdef, Ydef, "b+")
replot([0, 10 ; 1, 9]);
plot(xc, yc, "r+")
trace_conique(aopt)
Conditions d’utilisation
[modifier]Moi, en tant que détenteur des droits d’auteur sur cette œuvre, je la publie sous les licences suivantes :
![]() |
Vous avez la permission de copier, distribuer et modifier ce document selon les termes de la GNU Free Documentation License version 1.2 ou toute version ultérieure publiée par la Free Software Foundation, sans sections inaltérables, sans texte de première page de couverture et sans texte de dernière page de couverture. Un exemplaire de la licence est inclus dans la section intitulée GNU Free Documentation License.http://www.gnu.org/copyleft/fdl.htmlGFDLGNU Free Documentation Licensetruetrue |
![w:fr:Creative Commons](https://upload.wikimedia.org/wikipedia/commons/thumb/7/79/CC_some_rights_reserved.svg/90px-CC_some_rights_reserved.svg.png)
![paternité](https://upload.wikimedia.org/wikipedia/commons/thumb/1/11/Cc-by_new_white.svg/24px-Cc-by_new_white.svg.png)
![partage à l’identique](https://upload.wikimedia.org/wikipedia/commons/thumb/d/df/Cc-sa_white.svg/24px-Cc-sa_white.svg.png)
Ce fichier est sous licence Creative Commons Attribution – Partage dans les Mêmes Conditions 3.0 (non transposée), 2.5 Générique, 2.0 Générique et 1.0 Générique.
- Vous êtes libre :
- de partager – de copier, distribuer et transmettre cette œuvre
- d’adapter – de modifier cette œuvre
- Sous les conditions suivantes :
- paternité – Vous devez donner les informations appropriées concernant l'auteur, fournir un lien vers la licence et indiquer si des modifications ont été faites. Vous pouvez faire cela par tout moyen raisonnable, mais en aucune façon suggérant que l’auteur vous soutient ou approuve l’utilisation que vous en faites.
- partage à l’identique – Si vous modifiez, transformez, ou vous basez sur cette œuvre, vous devez distribuer votre contribution sous la même licence ou une licence compatible avec celle de l’original.
Vous pouvez choisir l’une de ces licences.
Historique du fichier
Cliquer sur une date et heure pour voir le fichier tel qu'il était à ce moment-là.
Date et heure | Vignette | Dimensions | Utilisateur | Commentaire | |
---|---|---|---|---|---|
actuel | 24 mai 2018 à 12:29 | ![]() | 452 × 369 (27 kio) | Cdang (d | contributions) | continuous line |
20 décembre 2012 à 10:10 | ![]() | 452 × 364 (39 kio) | Cdang (d | contributions) | {{Information |Description ={{en|1=Fitting the data with a quadratic function (conic section). Data points from Gander, W., Golub, Gene, H. and Strebel, R., ''Least-Squares Fitting of Circles and Ellipses'', BIT 34 (1994), 558-578. The result is an... |
Vous ne pouvez pas remplacer ce fichier.
Utilisations locales du fichier
Aucune page n’utilise ce fichier.
Utilisations du fichier sur d’autres wikis
Les autres wikis suivants utilisent ce fichier :
- Utilisation sur fr.wikipedia.org
Métadonnées
Ce fichier contient des informations supplémentaires, probablement ajoutées par l'appareil photo numérique ou le numériseur utilisé pour le créer.
Si le fichier a été modifié depuis son état original, certains détails peuvent ne pas refléter entièrement l'image modifiée.
Largeur | 452.09177 |
---|---|
Hauteur | 368.58301 |