今天我们要说的就是线性方程组应用举例,本文是《科学计算与MATLAB语言》专题六第3小节的学习笔记,如果大家有时间的话,可以去听听课,没有的话,可以看看我的笔记,还是很不错的。
桁架是工程中常用的一种结构,各构件在同一平面内的桁架称为平面桁架。一个平面桁架结构由连接于A、B、C、D、E、F、G、H共8个结点的13根杆件构成。在结点B、E和G上施加指定载荷,求桁架每根杆件上的轴力。
对于静态平衡的衍架而言,它的各个结点也一定是平衡的,即在任何结点上水平方向或垂直方向受力之和都必须为零。因此,可以对每一个结点列出两个独立的平衡方程,从而可求出杆件的轴力。对于8个结点,可以列出16个方程,方程数多于待定的13个未知量。为使该衍架静定,即为使问题存在唯一解,我们假定:
1.结点A在水平和垂直方向上刚性固定
2.结点H仅在垂直方向刚性固定。
以结点E为例,其受力如图所示。
写出平衡方程,有:
水平方向:
f 5 c o s 45 ° + f 6 = f 9 c o s 45 ° + f 10 f_5cos45°+f_6=f_9cos45°+f_{10} f5cos45°+f6=f9cos45°+f10
垂直方向:
f 5 s i n 45 ° + f 7 + f 9 s i n 45 ° = 15 f_5sin45°+f_7+f_9sin45°=15 f5sin45°+f7+f9sin45°=15
定义参数 a = 2 / 2 a=\sqrt{2}/2 a=2/2,
则可得到E点的平衡方程。
{ a f 5 + f 6 = a f 9 + f 10 a f 5 + f 7 + a f 9 = 15 \left\{ \begin{aligned} af_5+f_6&=a f_9+f_{10}\\ a f_5+f_7+af_9&=15 \end{aligned} \right. {af5+f6af5+f7+af9=af9+f10=15
结点B:
{ f 2 = f 6 f 3 = 10 \left\{ \begin{aligned} f_2=f_6\\ f_3=10 \end{aligned} \right. {f2=f6f3=10
结点C:
{ a f 1 = f 4 + a f 5 a f 1 + f 3 + a f 5 = 0 \left\{ \begin{aligned} af_1&=f_4+af_5\\ af_1+f_3+af_5&=0 \end{aligned} \right. {af1af1+f3+af5=f4+af5=0
结点D:
{ f 4 = f 8 f 7 = 0 \left\{ \begin{aligned} f_4&=f_8\\ f_7&=0 \end{aligned} \right. {f4f7=f8=0
结点E:
{ a f 5 + f 6 = a f 9 + f 10 a f 5 + f 7 + a f 9 = 15 \left\{ \begin{aligned} af_5+f_6&=af_9+f_{10}\\ af_5+f_7+af_9&=15 \end{aligned} \right. {af5+f6af5+f7+af9=af9+f10=15
结点F:
{ f 10 = f 13 f 11 = 20 \left\{ \begin{aligned} f_{10}&=f_{13}\\ f_{11}&=20 \end{aligned} \right. {f10f11=f13=20
结点G:
{ f 8 + a f 9 = a f 12 a f 9 + f 11 + a f 12 = 0 \left\{ \begin{aligned} f_8+af_9&=af_{12}\\ af_9+f_{11}+af_{12}&=0 \end{aligned} \right. {f8+af9af9+f11+af12=af12=0
结点H:
f 13 + a f 12 = 0 f_{13}+af_{12}=0 f13+af12=0
结点H在垂直方向刚性固定,只有水平方向平衡方程。
这是一个包含13个未知数的线性方程组,利用MATLAB很容易求出杆件轴力向量f。
alpha=sqrt(2)/2;
A=[0,1,0,0,0,-1,0,0,0,0,0,0,0;
0,0,1,0,0,0,0,0,0,0,0,0,0;
alpha,0,0,-1,-alpha,0,0,0,0,0,0,0,0;
alpha,0,1,0,alpha,0,0,0,0,0,0,0,0;
0,0,0,1,0,0,0,-1,0,0,0,0,0;
0,0,0,0,0,0,1,0,0,0,0,0,0;
0,0,0,0,alpha,1,0,0,-alpha,-1,0,0,0;
0,0,0,0,alpha,0,1,0,alpha,0,0,0,0;
0,0,0,0,0,0,0,0,0,1,0,0,-1;
0,0,0,0,0,0,0,0,0,0,1,0,0;
0,0,0,0,0,0,0,1,alpha,0,0,-alpha,0;
0,0,0,0,0,0,0,0,alpha,0,1,alpha,0;
0,0,0,0,0,0,0,0,0,0,0,alpha,1];
b=[0;10;0;0;0;0;0;15;0;20;0;0;0];
f=A\b;
disp(f')
-28.2843 20.0000 10.0000 -30.0000 14.1421 20.0000 0 -30.0000 7.0711 25.0000 20.0000 -35.3553 25.0000
桁架杆件主要承受轴向拉力或压力,当杆件受拉时,轴力为拉力,其指向背离截面;当杆件受压时,轴力为压力,其指向指向截面。答案中的正数表示拉力,负数表示压力。
现在已经在5个不同时刻对某颗小行星进行了5次观测,测得轨道上的5个点的坐标数据如表所示,其单位为天文测量单位。试确定小行星的轨道方程。
i | 1 | 2 | 3 | 4 | 5 |
---|---|---|---|---|---|
x i x_i xi | 1.02 | 0.87 | 0.67 | 0.44 | 0.16 |
y i y_i yi | 0.39 | 0.27 | 0.18 | 0.13 | 0.13 |
(1)模型分析
由开普勒第一定律知,小行星运行轨道为椭圆方程:
a 1 x 2 + 2 a 2 x y + a 3 y 2 + 2 a 4 x + 2 a 5 y + 1 = 0 a_1x^2+2a_2xy+a_3y^2+2a_4x+2a_5y+1=0 a1x2+2a2xy+a3y2+2a4x+2a5y+1=0
需要确定系数 a i ( i = 1 , 2 , 3 , 4 , 5 ) 。 a_i(i=1,2,3,4,5)。 ai(i=1,2,3,4,5)。
利用已知的数据,不妨设测得的5个点坐标为 ( x i , y i ) ( i = 1 , 2 , 3 , 4 , 5 ) , (x_i,y_i)(i=1,2,3,4,5), (xi,yi)(i=1,2,3,4,5),确定系数 a i a_i ai等价于求解下列线性方程组。
{ a 1 x 1 2 + 2 a 2 x 1 y 1 + a 3 y 1 2 + 2 a 4 x 1 + 2 a 5 y 1 + 1 = 0 a 1 x 2 2 + 2 a 2 x 2 y 1 + a 3 y 2 2 + 2 a 4 x 2 + 2 a 5 y 2 + 1 = 0 a 1 x 3 2 + 2 a 2 x 3 y 1 + a 3 y 3 2 + 2 a 4 x 3 + 2 a 5 y 3 + 1 = 0 a 1 x 4 2 + 2 a 2 x 4 y 1 + a 3 y 4 2 + 2 a 4 x 4 + 2 a 5 y 4 + 1 = 0 a 1 x 5 2 + 2 a 2 x 5 y 1 + a 3 y 5 2 + 2 a 4 x 5 + 2 a 5 y 5 + 1 = 0 \left\{ \begin{aligned} a_1x_1^2+2a_2x_1y_1+a_3y_1^2+2a_4x_1+2a_5y_1+1=0\\ a_1x_2^2+2a_2x_2y_1+a_3y_2^2+2a_4x_2+2a_5y_2+1=0\\ a_1x_3^2+2a_2x_3y_1+a_3y_3^2+2a_4x_3+2a_5y_3+1=0\\ a_1x_4^2+2a_2x_4y_1+a_3y_4^2+2a_4x_4+2a_5y_4+1=0\\ a_1x_5^2+2a_2x_5y_1+a_3y_5^2+2a_4x_5+2a_5y_5+1=0 \end{aligned} \right. ⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧a1x12+2a2x1y1+a3y12+2a4x1+2a5y1+1=0a1x22+2a2x2y1+a3y22+2a4x2+2a5y2+1=0a1x32+2a2x3y1+a3y32+2a4x3+2a5y3+1=0a1x42+2a2x4y1+a3y42+2a4x4+2a5y4+1=0a1x52+2a2x5y1+a3y52+2a4x5+2a5y5+1=0
将方程改写为:
xi=[1.02,0.87,0.67,0.44,0.16];
yi=[0.39,0.27,0.18,0.13,0.13];
A=zeros(length(xi));
for i=1: length(xi)
A(i,:)=[ xi(i)* xi(i),2* xi(i)* yi(i), yi(i)* yi(i),2* xi(i),2* yi(i)];
end
b=-ones(length(xi),1);
ai=A\b
ai =
2.4645
-0.4423
6.4917
-0.6819
-3.6008
因此小行星的轨道方程为:
2.4645 x 2 − 0.8846 x y + 6.4917 y 2 − 1.3638 x − 7.2016 y + 1 = 0 2.4645x^2-0.8846xy+6.4917y^2-1.3638x-7.2016y+1=0 2.4645x2−0.8846xy+6.4917y2−1.3638x−7.2016y+1=0
绘制小行星运行轨道:
f=@(x,y) 2.4645*x.^2-0.8846*x.*y+6.4917*y.^2-1.3638*x-7.2016*y+1;
h=ezplot(f,[-0.5,1.2,0,1.2]);