线性代数应用举例16829

上传人:汽*** 文档编号:568468897 上传时间:2024-07-24 格式:PPT 页数:36 大小:358.05KB
返回 下载 相关 举报
线性代数应用举例16829_第1页
第1页 / 共36页
线性代数应用举例16829_第2页
第2页 / 共36页
线性代数应用举例16829_第3页
第3页 / 共36页
线性代数应用举例16829_第4页
第4页 / 共36页
线性代数应用举例16829_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《线性代数应用举例16829》由会员分享,可在线阅读,更多相关《线性代数应用举例16829(36页珍藏版)》请在金锄头文库上搜索。

1、线性代数应用实例取自线性代数机算与应用指导(MATLAB)版2011.12例例 1 平板稳态温度的计算平板稳态温度的计算为了计算平板形导热体的温度分布,将平板划分为许多方格,每一个节点上的稳态温度将等于其周围四个节点温度的平均值。由此可得出阶数与节点数相同的线性方程组,方程的解将取决于平板的边界条件。 这个方法可以用来计算飞行器的蒙皮温度等。T1T2T3T4平板温度计算的模型整理为A=4,-1,-1,0; -1,4,0,-1; -1,0,4,-1; 0,-1,-1,4;b=30; 50; 60; 80;U=rref(A,b)MATLAB 程序运行结果为:U = 1.0000 0 0 0 21.

2、2500 0 1.0000 0 0 26.2500 0 0 1.0000 0 28.7500 0 0 0 1.0000 33.7500向高阶系统扩展则要解 25 阶的线性方程组。运行书上的程序得温度分布如下 将平板分割得愈细,求出的解就愈精确。如果把上述区域分成 25 个点如右例例 2 交通流的建模交通流的建模对于一个有双向车流的十字路口,根据流出流入车数相等的规则,可以列出下列方程组:节点A:x1360x2260节点B:x2220x3292节点C:x3320x4357节点D:x4260x1251相应的矩阵方程为:A=1,-1,0,0;0,1,-1,0;0,0,1,-1;-1,0,0,1;b=

3、-100;72;37;-9;U=rref(A,b)MATLAB 程序运行结果为:U = 1 0 0 -1 9 0 1 0 -1 109 0 0 1 -1 37 0 0 0 0 0 由于 U 的最后一行为全零,也就是说,四个方程中实际上只有三个独立。x4 可以任设,因为如果有一些车沿此路口环行,对方程无影响,故方程组的解可如上表示.把上述模型扩展到多个十字路,乃至整个城市,就构成高阶的线性代数方程组。例如下面的 6 节点交通流图,它就要由 6 个方程和 7 个变量来描述。用行最简型方法可以知道,它的解将包括两个自由变量。其物理意义类推。向高阶系统扩展左图描述了四个城市之间的航空航线图,其中1、2

4、、3、4 表示四个城市;带箭头线段表示两个城市之间的航线。设行号表示起点城市,列号为到达城市,则定义邻接矩阵 A 为:例例 3 飞机航线问题飞机航线问题转机航线的数学模型不难证明:矩阵 A2=A*A 表示一个人连续坐两次航班可以到达的城市,矩阵 A3=A*A*A 表示连续坐三次航班可以到达的城市:其中,第 i 行描述从城市 i 出发,可以到达各个城市的情况,若能到达第 j 个城市,记 A(i,j)=1,否则 A(i,j)=0,规定 A(i,i)=0 (其中 i=1,2,3,4)。如第 2 行表示:从城市 2出发可以到达城市 3 和城市 4 而不能到达城市 1 和 2。多次转机到达的城市分析矩阵

5、 A3 的第二行,可以得出:某人从城市 2 出发,连续坐三次航班可以到达城市 2、3 和城市4,不能到达城市 1,而到达城市 3 和城市 4 的方法各有两种。 不难看出,转机两次以下的航线的航路矩阵为At2= A+ A2 + A3程序为:A=0,1,1,1; 0,0,1,1; 0,0,0,0; 1,1,0,0;At2=A+A2+A3例例 4 行列式的几何应用行列式的几何应用二阶行列式的几何意义是两个二维向量构成的平行四边形的面积,三阶行列式的几何意义是三个 3 维向量构成的平行六面体的体积。如下图所示,用 MATLAB 软件来实现面积和体积的运算。由向量 和 所构成的平行四边形的面积为行列式

6、的绝对值。计算的MATLAB语句为: S=abs(a1*b2-a2*b1)如果给出的是三角形三个顶点坐标a1,b1, a2,b2,a3,b3,求该三角形面积,则有:MATLAB写成S=abs(det(a2-a1,b2-b1; a3-a1,b3-b1)平行四边形面积计算多边形可以划分为多个三角形来计算。先对三角形面积计算构成一个函数程序;这个子程序名为:cal_area3(A,B,C)A,B,C为三个顶点的二维坐标向量凸多边形面积只需多次调用这个函数程序;例如五边形ABCDE,可由S5= cal_area3(A,B,C)+ cal_area3(A,C,D)+ cal_area3(A,D,E)求得

7、。也可由多边形面积子程序cal_arean(A)计算。扩展至多边形面积计算MATLAB 程序程序function s=cal_area3(a,b,c)% a,b,c 应为同形的 2 维行向量或列向量,% 格式检验语句略去 ab=b-a; % 计算向量ABac=c-a; % 计算向量ACif size(ab)=1,2 % 判读向量AB是否为行向量 A=ab;ac; % 构造矩阵Aelse A=ab,ac;ends=abs(det(A)/2; % 根据公式计算三角形面积成药1号成药2号成药3号成药4号成药5号成药6号成药7号成药A10214122038100B1201225356055C53110

8、5140D79255154735E012255336F255355355550G94172523925H651610103510I821200620例例 5 药方配置问题药方配置问题(1)某医院要购买这 7 种特效药,但药厂的第 3号和第 6 号特效药已经卖完,请问能否用其它特效药配制出这两种脱销的药品。分析:即 3, 6 向量与其他向量是否线性相关(2)现在该医院想用这 7 种中草药配制三种新的特效药,下表为新药所需的成分质量 (单位: 克) 。请问如何配制。分析:这是新药向量与原来药向量是否线性相关的问 题。问题及分析思路1号新药2号新药3号新药A4016288B6214167C14278

9、D4410251E53607F5015580G7111838H416821I145230新药的成分要求新药的成分要求u1=10;12;5;7;0;25;9;6;8;u2=2;0;3;9;1;5;4;5;2;u3=14;12;11;25;2;35;17;16;12;u4=12;25;0;5;25;5;25;10;0;u5=20;35;5;15;5;35;2;10;0;u6=38;60;14;47;33;55;39;35;6;u7=100;55;0;35;6;50;25;10;20;U1=u1,u2,u3,u4,u5,u6,u7V1,r=rref(U1)问题 (1) 的 MATLAB 程序运行结果

10、运行结果V1 = 1 0 1 0 0 0 0 0 1 2 0 0 3 0 0 0 0 1 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0r = 1 2 4 5 7可见这七种特效药是“相关的”, 3、6 两种药可用其它 5种药线性配制出来, 但第1 、2 、 4、5 、7 种药“无关”。因此,8,9 两种药可以配出,第 10 种药则不能配出。V2 = 1 0 1 0 0 0 0 1 3 0 0 1 2 0 0 3 0 3 4 0 0 0 0 1 0 1 0 2 2

11、0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0s = 1 2 4 5 7 10为求第二个问题, 把 3 种新药与 7 种原药组成矩阵 U2,求 rref,得:假设一个城市的总人口数是固定不变,但人口的分布情况变化如下:每年都有 5 的市区居民搬到郊区;而有 15 的郊区居民搬到市区。若开始有 700000 人口居住在市区,300000 人口居住在郊区。请分析:(1)10 年后市区和郊区的人口各是多少?

12、(2)30 年后、50 年后市区和郊区的人口各是多少?(3)分析(2)中数据相似的原因。例例 6 人口迁徙问题人口迁徙问题解 这个问题可以用矩阵乘法来描述。令人口变量其中 xn 为市区人口所占比例,yn 为郊区人口所占比例。在 n+1年的人口分布状态为:用矩阵乘法可写成:A=0.95,0.15;0.05,0.85;X0=700000;300000;X10=A10*X0 开始市区和郊区的人口数为 可以得到 n 年后市区和郊区的人口分布:因此 (1) 10 年后的人口可用程序计算如下:运行结果为:故市区和郊区人口数约为:744630和255370。 无限增加时间 n,市区和郊区人口之比将趋向常数0

13、.75/0.25。为了弄清为什么它趋向于一个稳态值,需要可以求 Ak, 为此可先将 A 对角化, 然后求其幂。对角矩阵的幂次可以化为元素的幂次 余下很容易计算。令其中为对角矩阵,则有% 分析 n 年后城市人口分布clearA=0.95,0.15; 0.05,0.85;X0=700000; 300000;P,lambda=eig(A);syms n % 定义符号变量 nXn=P*lamda.n*inv(P)*X0 MATLAB 程序显然, 随 n 增大 (4/5)n 趋近于零, 而 Xn 趋于运行结果为:750000250000x01234y-270210-75例例 7 多项式插值与拟合多项式插

14、值与拟合求: (1) 过这五个点作一个四次多项式函数(2) 请根据这五个点,拟合一个二次多项式函数下表给出了平面坐标系中五个点的坐标。并求 x=5 时的函数值 p4(5)。用 MATLAB 绘制多项式函数 p4(x) 的曲线、已知点及插值点 (5, p4(5)。并用 MATLAB 绘制 p2(x) 的曲线及已知的五个点。其中矩阵:解:(1) 根据已知条件,把五个点的坐标值分别代入四次多项式函数,可以得到如下线性方程组:系数矩阵 A 的行列式为范德蒙 (Vandermonde) 行列式,且五个坐标点的横坐标各不相同,则该行列式不等于零,所以方程组有唯一解。 MATLAB 程序:x=0;1;2;3

15、;4; % 输入已知点坐标y=-27;0;21;0;-75;A=x.0, x.1, x.2, x.3, x.4; % 构造 vandermonde 矩阵a=Ay; % 得到适定方程组的唯一解 a运行程序,得到a(1)=-27, a(2)=12, a(3)=26, a(4)=-12, a(5)= 1. 把五个点的坐标值分别代入二次多项式函数,可以得到如下线性方程组:其中,(2) 多项式拟合要解一个超定方程该方程组有三个未知数,但有五个方程,进一步分析可以得到该方程组无解,即不存在一个二次多项式曲线刚好能过已知的五个点。MATLAB 软件提供了一个利用最小二乘法解决超定方程组解的方法。求系数的公式

16、也是 a = Ay,以找到一条二次曲线来近似地描述已知 5 个点的变化情况。对比插值和拟合的曲线如下图用平面坐标系中的一个闭合图形来描述刚体,用一个矩阵 X 来表示它。X 的一列表示刚体一个顶点的坐标。为了使图形闭合,X 的最后一列和第一列相同;为了实现刚体的平移运算,给矩阵 X 添加元素值都为 1 的一行,使 X 为 3n 矩阵。若有矩阵:则可以证明,矩阵 Y1 是刚体 X 沿 x 轴正方向平移 c1,沿 y 轴正方向平移 c2 后的结果;矩阵 Y2 是刚体 X 以坐标原点为中心逆时针转动 t 弧度的结果。例例 8 刚体的平面运动刚体的平面运动x04610853.56.1 6.53.220y

17、014140011664.54.500实 例用下列数据表示字母 A: 对 A 进行以下平面运动, 并绘制移动前后的图形。(1) 向上移动 15, 向左移动 30;(2) 逆时针转动 /3;(3) 先逆时针转动3 /4, 然后向上平移 30, 向右平移 20。解 构造刚体矩阵 X,平移矩阵及转动矩阵。M1=100010-30201M2=10001020301R1=00100R2=00100MATLAB 程序 X=0,4,6,10,8,5,3.5,6.1,6.5,3.2,2,0; 0,14,14,0,0,11,6,6,4.5,4.5,0,0; ones(1,12); % 构造刚体矩阵 X M1=1

18、,0,-30; 0,1,15; 0,0,1; % 构造平移矩阵 M1 Y1=M1*X; % 计算平移结果 fill(Y1(1, :), Y1(2, :), red); % 绘制平移后刚体 Y1 plot(X(1, :), X(2, :); % 绘制原来刚体 X hold on axis equal R1=cos(pi/3), -sin(pi/3), 0; sin(pi/3), cos(pi/3), 0; 0,0,1; % 构造转动矩阵 R1 Y2=R1*X; % 计算旋转结果 fill(Y2(1, :), Y2(2, :), blue); % 绘制转动后刚体 Y2 fill(Y3(1, :), Y3(2, :), black); % 绘制转动及平移后刚体 grid on hold off M2=1,0,20; 0,1,30; 0,0,1; % 构造转动矩阵 M2 R2=cos(3*pi/4), -sin(3*pi/4), 0; % 构造转动矩阵 R2 sin(3*pi/4), cos(3*pi/4), 0; 0,0,1; Y3=M2*R2*X; % 旋转平移后的结果 Y3运行的结果如下

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号