一、正定矩阵与椭圆的关系
二维空间中椭圆最基本的形式为
x
2
a
2
+
y
2
b
2
=
1
\frac{x^{2}}{a^{2}} +\frac{y^{2}}{b^{2}} =1
a2x2+b2y2=1
上面的这个方程写成矩阵的形式为
[
x
y
]
T
[
1
a
2
0
0
1
b
2
]
[
x
y
]
=
x
T
A
x
=
1
\begin{bmatrix} x\\ y \end{bmatrix}^{T} \begin{bmatrix} \frac{1}{a^{2}} & 0\\ 0& \frac{1}{b^{2}} \end{bmatrix} \begin{bmatrix} x\\ y \end{bmatrix} =x^{T}Ax=1
[xy]T[a2100b21][xy]=xTAx=1
A
A
A的特征值为
λ
1
=
1
a
2
,
λ
2
=
1
b
2
\lambda _{1}=\frac{1}{a^{2}},\space \lambda _{2}=\frac{1}{b^{2}}
λ1=a21, λ2=b21
A
A
A的归一化特征向量为
μ
1
=
[
1
2
0
]
,
μ
2
=
[
0
1
2
]
\mu _{1}=\begin{bmatrix} \frac{1}{\sqrt{2} }\\ 0 \end{bmatrix},\space \mu _{2}=\begin{bmatrix} 0\\ \frac{1}{\sqrt{2} } \end{bmatrix}
μ1=[210], μ2=[021]
椭圆的长短轴分别沿着矩阵
A
A
A的两个特征向量的方向,而两个与之对应的特征值分别是半长轴和半短轴的长度的平方的倒数,即满足
a
=
1
λ
1
,
b
=
1
λ
2
a=\frac{1}{\sqrt{\lambda_{1} }},\space b=\frac{1}{\sqrt{\lambda_{2} }}
a=λ11, b=λ21
更一般的,对于如下方程所示椭圆
a
x
2
+
2
b
x
y
+
c
y
2
=
1
ax^{2}+2bxy+cy^{2}=1
ax2+2bxy+cy2=1
化为矩阵形式是
[
x
y
]
T
[
a
b
b
c
]
[
x
y
]
=
x
T
A
x
=
1
\begin{bmatrix} x\\ y \end{bmatrix}^{T} \begin{bmatrix} a & b\\ b & c \end{bmatrix} \begin{bmatrix} x\\ y \end{bmatrix} =x^{T}Ax=1
[xy]T[abbc][xy]=xTAx=1
二、椭圆的一般方程
椭圆的一般方程为
[
(
x
−
x
0
)
cos
θ
+
(
y
−
y
0
)
sin
θ
]
2
a
2
+
[
(
x
−
x
0
)
sin
θ
−
(
y
−
y
0
)
cos
θ
]
2
b
2
=
1
\frac{\left [\left (x-x_{0} \right ) \cos \theta +\left (y-y_{0} \right )\sin \theta \right ]^{2}}{a^{2}} +\frac{\left [\left (x-x_{0} \right )\sin \theta -\left (y-y_{0} \right )\cos \theta \right ]^{2}}{b^{2}} =1
a2[(x−x0)cosθ+(y−y0)sinθ]2+b2[(x−x0)sinθ−(y−y0)cosθ]2=1
其中
(
x
0
,
y
0
)
(x_{0},y_{0})
(x0,y0) 为椭圆中心点,θ为椭圆倾角,椭圆倾角如下图紫色线与黄色线所成锐角
文章来源:https://www.toymoban.com/news/detail-595124.html
将该椭圆变为矩阵形式为
[
x
−
x
0
y
−
y
0
]
T
[
cos
2
θ
a
2
+
sin
2
θ
b
2
cos
θ
sin
θ
a
2
+
cos
θ
sin
θ
b
2
cos
θ
sin
θ
a
2
+
cos
θ
sin
θ
b
2
sin
2
θ
a
2
+
cos
2
θ
b
2
]
[
x
−
x
0
y
−
y
0
]
=
1
\begin{bmatrix} x-x_{0}\\ y-y_{0} \end{bmatrix}^{T} \begin{bmatrix} \frac{\cos ^{2}\theta}{a^{2}}+\frac{\sin ^{2}\theta}{b^{2}} & \frac{\cos\theta\sin\theta}{a^{2}}+\frac{\cos\theta\sin\theta}{b^{2}}\\ \frac{\cos\theta\sin\theta}{a^{2}}+\frac{\cos\theta\sin\theta}{b^{2}} & \frac{\sin ^{2}\theta}{a^{2}}+\frac{\cos ^{2}\theta}{b^{2}} \end{bmatrix} \begin{bmatrix} x-x_{0}\\ y-y_{0} \end{bmatrix}=1
[x−x0y−y0]T[a2cos2θ+b2sin2θa2cosθsinθ+b2cosθsinθa2cosθsinθ+b2cosθsinθa2sin2θ+b2cos2θ][x−x0y−y0]=1文章来源地址https://www.toymoban.com/news/detail-595124.html
三、绘制一般椭圆的matlab程序
ellipse_l = 5; %椭圆半长轴
ellipse_s = 2; %椭圆半短轴
ellipse_theta = (10) / 180 * pi; %椭圆倾角
ellipse_center = [5, 4.5]; %椭圆中心点坐标
%椭圆展开后方程的各个参数
a = ellipse_l^2*sin(ellipse_theta)^2+ellipse_s^2*cos(ellipse_theta)^2;
b = 2*(ellipse_s^2-ellipse_l^2)*sin(ellipse_theta)*cos(ellipse_theta);
c = ellipse_l^2*cos(ellipse_theta)^2+ellipse_s^2*sin(ellipse_theta)^2;
d = -ellipse_l^2*ellipse_s^2;
%绘制椭圆图像
figure(1)
fimplicit(@(x,y)a.*(x-ellipse_center(1)).^2+b.*(x-ellipse_center(1)).*(y-ellipse_center(2))+c.*(y-ellipse_center(2)).^2+d,[0 10 0 10]);
hold on
scatter(ellipse_center(1),ellipse_center(2))
hold on
到了这里,关于一般情况下的椭圆方程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!