资源预览内容
第1页 / 共8页
第2页 / 共8页
第3页 / 共8页
第4页 / 共8页
第5页 / 共8页
第6页 / 共8页
第7页 / 共8页
第8页 / 共8页
亲,该文档总共8页全部预览完了,如果喜欢就下载吧!
资源描述
实验6 线性代数方程组的数值解法实验目的1. 1. 学会用MATLAB软件数值求解线性代数方程组,对迭代法的收敛性和解的稳定性作初步分析;2. 2. 通过实例学习用线性代数方程组解决简化的实际问题。实验内容5-5 输电网络:一种大型输电网络可简化为图5.5(见书)所示电路,其中R1,R2,Rn表示负载电阻,r1,r2,rn表示线路内阻,I1,I2,In表示负载上的电流。设电源电压为V。(1)列出求各负载电阻R1,R2,Rn的方程;(2)设I1=I2=In=I,r1=r2=rn=r,在r=1,I=0.5,V=18,n=10的情况下求R1,R2,Rn及总电阻R0。问题分析、模型建立及求解(1) 设电源负极为电势为0,电阻R1上对应节点电压为V1,对于任意节点,根据KCL定律列出方程:而,可得: k=2,3,n-1;k=1时 ,为与上式形式一致,化为k=m()时 k=n时 设以上方程组的矩阵形式为:则 (2)代入参数:,V=18,n=10,在命令窗口输入MATLAB程序如下:clear all;n=10; %由题目要求设定A11=sparse(1:n-1,1:n-1,-1,n,n); %定义A的对角元素,除(n,n)A12=sparse(n,n,-0.5,n,n); %定义(n,n)A1=A11+A12; %对角元素A2=sparse(1:n-1,2:n,0.5,n,n); %输入A的上次对角元素A3=sparse(2:n,1:n-1,0.5,n,n); %输入A的下次对角元素A=A1+A2+A3;b1=0.5*ones(n,1); %b的除第一项元素b2=sparse(1,1,18,n,1); %b的第一项元素b=b1-b2; R=Ab输出结果如下:R = 26.0000 17.0000 9.0000 2.0000 -4.0000 -9.0000 -13.0000 -16.0000 -18.0000 -19.0000所以各阻值为(R1,R2,R10)=(26,17,9,2,-4,-9,-13,-16,-18,-19)总电阻R0(即输入等效电阻)为,又得到 5-6有5个反应器连接如图5.6(见书),各个Q表示外部输入、输出及反应器间的流量(m3/min),各个c表示外部输入及反应器内某物质的浓度(mg/m3)。假定反应器内的浓度是均匀的,利用质量守恒准则建立模型,求出各反应器内的浓度c1c5,并讨论反应器j外部输入改变个单位(mg/min)所引起的反应器i浓度的变化。问题分析、模型建立及求解当反应容器中反应物浓度稳定时,输入物质质量与输出物质质量平衡,即输入物质质量等于输出物质质量。由此分析,分别对15容器列质量平衡方程,以输入物质为“+”,输出物质为“”,代入数据整理为由矩阵表示:,编写MATLAB程序如下:A=-6,0,1,0,0 3,-3,0,0,0 0,1,-9,0,0 0,1,8,-11,2 3,1,0,0,-4;b=-50,0,-160,0,0;c=Ab %计算并输出cpause;dQc01=1,0,0,0,0;dQc02=0,0,1,0,0; c11=A(b+dQc01); %01的输入减少1个单位dc11=c-c2;c12=A(b-dQc01); %01的输入增加1个单位dc12=c-c1;c21=A(b+dQc02); %03的输入减少1个单位dc21=c-c4;c22=A(b-dQc02) ; %03的输入增加1个单位dc22=c-c3;c,c11,dc11,c12,dc12,c21,dc21,c22,dc22%外部输入改变引起的 %反应器浓度变化列表比较MATLAB给出结果如下:c = 11.5094 11.5094 19.0566 16.9983 11.5094所以改变前各反应器浓度为(c1,c2,c3,c4,c5)=( 11.5094,11.5094,19.0566,16.9983,11.5094)改变容器01或容器03的外部输入,得到各容器平衡时浓度及其增量如下表:浓度原值C001 减少1单位001增加1单位003 减少1单位003增加1单位C11C12C21 C22C111.509411.33960.169811.6792-0.169811.49060.018911.5283-0.0189C211.509411.33960.169811.6792-0.169811.49060.018911.5283-0.0189C319.056619.03770.018919.0755-0.018918.94340.113219.1698-0.1132C416.998316.93830.060017.0583-0.060016.91080.087517.0858-0.0875C511.509411.33960.169811.6792-0.169811.49060.018911.5283-0.0189改进做法上面这种做法显得有些麻烦,由可得,表明容器平衡浓度c对外部输入b是线性的,所以当b增加1个单位(记作)时,c的增量为,若外部输入增加一个单位,时,为的第一列, 时,为的第三列。外部输入减少1个单位时,取其负值即可。故改用矩阵求逆的方法来计算:A=-6,0,1,0,0 3,-3,0,0,0 0,1,-9,0,0 0,1,8,-11,2 3,1,0,0,-4;b=-50,0,-160,0,0;dx=inv(A) %求A的逆矩阵输出结果为:dx = -0.1698 -0.0063 -0.0189 0 0 -0.1698 -0.3396 -0.0189 0 0 -0.0189 -0.0377 -0.1132 0 0 -0.0600 -0.0746 -0.0875 -0.0909 -0.0455 -0.1698 -0.0896 -0.0189 0 -0.2500红色部分显示为所求,此结果与前面的方法计算的一致,但工作量明显少了许多。5-8 种群的繁殖与稳定收获:种群的数量因繁殖而增加,因自然死亡而减少,对于人工饲养的种群(比如家畜)而言,为了保证稳定的收获,各个年龄的种群数量应维持不变,种群因雌性个体的繁殖而改变,为方便起见以下种群数量均指其中的雌性。种群年龄记作k=1,2,n,当年年龄k的种群数量记作xk,繁殖率记作bk(每个雌性个体1年繁殖的数量),自然存活率记作sk(sk=1-dk,dk为1年的死亡率),收获量记作hk,则来年年龄k的种群数量应为,要求各个年龄的种群数量每年维持不变就是要使。(1)若已知bk,sk,给定收获量hk,建立求个年龄的稳定种群数量xk的模型(用矩阵、向量表示)。(2)设n=5,b1=b2=b5=0,b3=5,b4=3,s1=s4=0.4,s2=s3=0.6,如果要求h1h5为500,400,200,200,100,求(3)要使h1h5均为500, 如何达到?问题分析、模型建立及求解(1)要使各年龄种群数量每年维持不变即,依题意得 用矩阵形式表示原方程组为:, (2)代入题中数据 , 编写MATLAB程序如下:format bank;A=0.4,-1,0,0,0 0,0.6,-1,0,0 0,0,0.6,-1,0 0,0,0,0.4,-1 -1,0,5,3,0;h=500,400,200,100,0; x=Ah MATLAB输出结果如下:x = 8481.01 2892.41 1335.44 601.27 140.51第5年龄段:x5=140.5100=h5 ,说明收获量h5可以达到100。(3)要使h1h5均为500,则h变为:其他参数不变,程序变为:format bank;A=0.4,-1,0,0,0 0,0.6,-1,0,0 0,0,0.6,-1,0 0,0,0,0.4,-1 -1,0,5,3,0;h=500,500,500,500,0;x=AhMATLAB输出结果如下:x = 10981.01 3892.41 1835.44 601.27 -259.49从结果看出,x5为-259.49,但种群数量不可能为负数,在本题所给条件下,无法使h1h5均为500。为达到h1h5均为500,对题中参数b1,b2,b3,b4,b5, s1,s2,s3,s 4的值作了一些改动。经过分析比较发现,当s1,s2,s3,s 4值较大,而b1=b2=b5=0,b3,b4值较小时,可以达到。例如,设s1=s4=0.6,s2=s3=0.8,b1=b2=b5=0,b3=1,b4=2,输入:format bank;A=0.6,-1,0,0,0 0,0.8,-1,0,0 0,0,0.8,-1,0 0,0,0,0.6,-1 -1,0,1,2,0;h=500,500,500,500,0;x=Ah 结果为:x = 13467.74 7580.65 5564.52 3951.61 1870.97x5=1870500=h5,说明收获量h5可达到500,从而h1h5均可达到500。这里所设的参数只是满足条件的情况之一,但真正意义上来说参数的选取还得符合实际情况,如存活率不可能非常大,繁殖率也不可能只有1,所以要实现获得均为500是有一定困难的。 结果分析第3问要求h1h5均为500,但在本题所给参数下,结果出现负数,不符合实际。要维持种群的发展,就要有足够多的“年轻”种群数量;而要求各个年龄的种群数量每年维持
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号