文档库 最新最全的文档下载
当前位置:文档库 › 传热学MATLAB温度分布大作业完整版

传热学MATLAB温度分布大作业完整版

传热学MATLAB温度分布大作业完整版
传热学MATLAB温度分布大作业完整版

传热学大作业(第四章)

姓名:张宝琪学号:03110608

一、题目及要求

1.各节点的离散化的代数方程

2.源程序

3.不同初值时的收敛快慢

4.上下边界的热流量(λ=1W/(m℃))

5.计算结果的等温线图

6.计算小结

题目:已知条件如下图所示:

二、方程及程序

(1)各温度节点的代数方程

ta=(300+b+e)/4 ; tb=(200+a+c+f)/4; tc=(200+b+d+g)/4; td=(2*c+200+h)/4 te=(100+a+f+i)/4; tf=(b+e+g+j)/4; tg=(c+f+h+k)/4 ; th=(2*g+d+l)/4

ti=(100+e+m+j)/4; tj=(f+i+k+n)/4; tk=(g+j+l+o)/4; tl=(2*k+h+q)/4

tm=(2*i+300+n)/24; tn=(2*j+m+p+200)/24; to=(2*k+p+n+200)/24; tp=(l+o+100)/12 (2)源程序

【G-S迭代程序】

【方法一】

函数文件为:

function [y,n]=gauseidel(A,b,x0,eps)

D=diag(diag(A));

L=-tril(A,-1);

U=-triu(A,1);

G=(D-L)\U;

f=(D-L)\b;

y=G*x0+f;

n=1;

while norm(y-x0)>=eps

x0=y;

y=G*x0+f;

n=n+1;

end

命令文件为:

A=[4,-1,0,0,-1,0,0,0,0,0,0,0,0,0,0,0;

-1,4,-1,0,0,-1,0,0,0,0,0,0,0,0,0,0;

0,-1,4,-1,0,0,-1,0,0,0,0,0,0,0,0,0;

0,0,-2,4,0,0,0,-1,0,0,0,0,0,0,0,0;

-1,0,0,0,4,-1,0,0,-1,0,0,0,0,0,0,0;

0,-1,0,0,-1,4,-1,0,0,-1,0,0,0,0,0,0;

0,0,-1,0,0,-1,4,-1,0,0,-1,0,0,0,0,0;

0,0,0,-1,0,0,-2,4,0,0,0,-1,0,0,0,0;

0,0,0,0,-1,0,-1,0,4,0,0,0,-1,0,0,0;

0,0,0,0,0,-1,0,0,-1,4,-1,0,0,-1,0,0;

0,0,0,0,0,0,-1,0,0,-1,4,-1,0,0,-1,0;

0,0,0,0,0,0,0,-1,0,0,-2,4,0,0,0,-1;

0,0,0,0,0,0,0,0,-2,0,0,0,24,-1,0,0;

0,0,0,0,0,0,0,0,0,-2,0,0,-1,24,-1,0;

0,0,0,0,0,0,0,0,0,0,-2,0,0,-1,24,-1;

0,0,0,0,0,0,0,0,0,0,0,-1,0,0,-1,12];

b=[300,200,200,200,100,0,0,0,100,0,0,0,300,200,200,100]';

[x,n]=gauseidel(A,b,[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]',1.0e-6) xx=1:1:4;

yy=xx;

[X,Y]=meshgrid(xx,yy);

Z=reshape(x,4,4);

Z=Z'

contour(X,Y,Z,30)

Z =

139.6088 150.3312 153.0517 153.5639

108.1040 108.6641 108.3119 108.1523 84.1429 67.9096 63.3793 62.4214 20.1557 15.4521 14.8744 14.7746 【方法2】>> t=zeros(5,5);

t(1,1)=100;

t(1,2)=100;

t(1,3)=100;

t(1,4)=100;

t(1,5)=100;

t(2,1)=200;

t(3,1)=200;

t(4,1)=200;

t(5,1)=200;

for i=1:10

t(2,2)=(300+t(3,2)+t(2,3))/4 ;

t(3,2)=(200+t(2,2)+t(4,2)+t(3,3))/4;

t(4,2)=(200+t(3,2)+t(5,2)+t(4,3))/4;

t(5,2)=(2*t(4,2)+200+t(5,3))/4;

t(2,3)=(100+t(2,2)+t(3,3)+t(2,4))/4;

t(3,3)=(t(3,2)+t(2,3)+t(4,3)+t(3,4))/4; t(4,3)=(t(4,2)+t(3,3)+t(5,3)+t(4,4))/4; t(5,3)=(2*t(4,3)+t(5,2)+t(5,4))/4;

t(2,4)=(100+t(2,3)+t(2,5)+t(3,4))/4;

t(3,4)=(t(3,3)+t(2,4)+t(4,4)+t(3,5))/4;

t(4,4)=(t(4,3)+t(4,5)+t(3,4)+t(5,4))/4;

t(5,4)=(2*t(4,4)+t(5,3)+t(5,5))/4;

t(2,5)=(2*t(2,4)+300+t(3,5))/24;

t(3,5)=(2*t(3,4)+t(2,5)+t(4,5)+200)/24;

t(4,5)=(2*t(4,4)+t(3,5)+t(5,5)+200)/24;

t(5,5)=(t(5,4)+t(4,5)+100)/12;

t'

end

contour(t',50);

ans =

100.0000 200.0000 200.0000 200.0000 200.0000 100.0000 136.8905 146.9674 149.8587 150.7444 100.0000 102.3012 103.2880 103.8632 104.3496 100.0000 70.6264 61.9465 59.8018 59.6008 100.0000 19.0033 14.8903 14.5393 14.5117

【Jacobi迭代程序】

函数文件为:

function [y,n]=jacobi(A,b,x0,eps)

D=diag(diag(A));

L=-tril(A,-1);

U=-triu(A,1);

B=D\(L+U);

f=D\b;

y=B*x0+f;

n=1;

while norm(y-x0)>=eps

x0=y;

y=B*x0+f;

n=n+1;

end

命令文件为:

A=[4,-1,0,0,-1,0,0,0,0,0,0,0,0,0,0,0;

-1,4,-1,0,0,-1,0,0,0,0,0,0,0,0,0,0; 0,-1,4,-1,0,0,-1,0,0,0,0,0,0,0,0,0; 0,0,-2,4,0,0,0,-1,0,0,0,0,0,0,0,0;

-1,0,0,0,4,-1,0,0,-1,0,0,0,0,0,0,0; 0,-1,0,0,-1,4,-1,0,0,-1,0,0,0,0,0,0; 0,0,-1,0,0,-1,4,-1,0,0,-1,0,0,0,0,0;

0,0,0,-1,0,0,-2,4,0,0,0,-1,0,0,0,0;

0,0,0,0,-1,0,-1,0,4,0,0,0,-1,0,0,0;

0,0,0,0,0,-1,0,0,-1,4,-1,0,0,-1,0,0;

0,0,0,0,0,0,-1,0,0,-1,4,-1,0,0,-1,0;

0,0,0,0,0,0,0,-1,0,0,-2,4,0,0,0,-1;

0,0,0,0,0,0,0,0,-2,0,0,0,24,-1,0,0;

0,0,0,0,0,0,0,0,0,-2,0,0,-1,24,-1,0;

0,0,0,0,0,0,0,0,0,0,-2,0,0,-1,24,-1;

0,0,0,0,0,0,0,0,0,0,0,-1,0,0,-1,12];

b=[300,200,200,200,100,0,0,0,100,0,0,0,300,200,200,100]'; [x,n]=jacobi(A,b,[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]',1.0e-6); xx=1:1:4;

yy=xx;

[X,Y]=meshgrid(xx,yy);

Z=reshape(x,4,4);

Z=Z'

contour(X,Y,Z,30)

n =97

Z =

139.6088 150.3312 153.0517 153.5639

108.1040 108.6641 108.3119 108.1523

84.1429 67.9096 63.3793 62.4214

20.1557 15.4521 14.8744 14.7746

三、不同初值时的收敛快慢

1、[方法1]在Gauss 迭代和Jacobi 迭代中,本程序应用的收敛条件均为norm(y-x0)>=eps ,即使前后所求误差达到e 的-6次方时,跳出循环得出结果。 将误差改为0.01时,只需迭代25次,如下

[x,n]=gauseidel(A,b,[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]',0.01)运行结果为 将误差改为0.1时,需迭代20次,可见随着迭代次数增加,误差减小,变化速度也在减小。 [方法2]通过 i=1:10判断收敛,为迭代10次,若改为1:20,则迭代20次。

2、在同样的误差要求下,误差控制在e 的-6次方内,Gauss 迭代用了49次达到要求,而Jacobi 迭代用了97次,可见,在迭代中尽量采用最新值,可以大幅度的减少迭代次数,迭代过程收敛快一些。

在Gauss 中,初值为100,迭代46次达到精确度1.0e-6,初值为50时,迭代47次,初值为0时,迭代49次,初值为200时迭代50次,可见存在一个最佳初始值,是迭代最快。这一点在jacobi 迭代中表现的尤为明显。 四、上下边界热流量:

上边界t=200℃,∞t =10℃,所以,

热流量Φ1=λ*[

2

*

100-200x y

??+

x y

a

??t -200+

x y

??b

t -200+

x y

??c

t -200+

2

*

t -200d

x y

??]

=1*(100/2+(200-139.6088)+(200-150.3312)+(200-153.0517)+(200-153.5639)/2) =230.2264W 下边界

热流量Φ2=|λ*[

x y

??m i t -t +

x y

??o j t -t +

x y

??p k t -t +

2

*

t -t q l x y

??]-

h*(

2

*

10-100x y

??+

x *t -t n ??∞y

+

x *t -t o ??∞y

+

x *t -t m ??∞y

+

2

*

t -t p x y

??∞)|

=|1*((84.1429-20.1557)+(67.9096-15.4521)+(63.3793-14.8744)+(62.4214-

14.7746)/2)-10*(90/2+(20.1557-10)+(15.4521-10)+(14.8744 -10)+(14.7746-10)/2)| = |-489.925|W =489.25W

五、温度等值线

Gauss:

Yacobi:

六、计算小结

导热问题进行有限差分数值计算的基本思想是把在时间、空间上连续的温度场用有限个离散点温度的集合来代替,即有限点代替无限点,通过求解根据傅里叶定律和能量守恒两大法则建立关于控制面内这些节点温度值的代数方程,获得各个离散点上的温度值。

要先划分查分网格,在建立差分代数方程组,用MATLAB或者其他软件编程求解。

高斯-赛德尔迭代法和雅克比迭代法区别在于使用新植和旧值进行下一次迭代,而采用新值迭代的高斯-赛德尔迭代收敛的更快些,但其求解代数方程是不一定得到收敛的解,其原因可能由于迭代方式不合适造成。

在计算热流量过程中,主要是正确利用傅里叶定律和牛顿冷却公式,本题中需要特别注意的一点是后边界是绝热的,因而左右方向上几乎不存在热量的传递,所以看似是二维稳态问题实际上是一维稳态的问题。求解也比较简单。程序运行出来的等温线结果也很好的说明了这一点,温度总体是从上向下递减,热量传递方向是自上而下。

matlab期末大作业

电气学科大类 Modern Control Systems Analysis and Design Using Matlab and Simulink Title: Automobile Velocity Control Name: 巫宇智 Student ID: U200811997 Class:电气0811

电气0811 巫宇智 Catalogue Preface (3) The Design Introduction (4) Relative Knowledge (5) Design and Analyze (6) Compare and Conclusion (19) After design (20) Appendix (22) Reference (22)

Automobile Velocity Control 1.Preface: With the high pace of human civilization development, the car has been a common tools for people. However, some problems also arise in such tendency. Among many problems, the velocity control seems to a significant challenge. In a automated highway system, using the velocity control system to maintain the speed of the car can effectively reduce the potential danger of driving a car and also will bring much convenience to drivers. This article aims at the discussion about velocity control system and the compensator to ameliorate the preference of the plant, thus meets the complicated demands from people. The discussion is based on the simulation of MATLAB. Key word: PI controller, root locus

matlab绘制温度场

通过在室内的某些位置布置适当的节点,采集回来室内的温湿度以及空气质量等实际参数。首先对室内空间建模,用一个无限细化的三维矩阵来模拟出室内的温度分布情况,针对采集回来的数据,采用插值法和适当次数的拟合函数的拟合,得出三维矩阵的实际值的分布,最后结合matlab软件绘制出计算出的温度场的三维图像。 一.数据的采集与处理 因为影响人的舒适感的温度层只是室内的某一高度范围内的温度,而温度传感器虽然是布置在一个平面内,但是采用插值法和拟合函数法是可以大致再现出影响人的舒适感的温度层的温度变化的。同时,在构建出的三维模型中,用第三维表示传感器层面的温度。 在传感器层面,传感器分布矩阵如下: X=【7.5 36.5 65.5】(模型内单位为cm) Y=【5.5 32.5 59.5】 Z=【z1 z2 z3; z4 z5 z6; z7 z8 z9;】(传感器采集到的实时参数) 采用meshgrid(xi,yi,zi,…)产生网格矩阵; 首先按照人的最小温度分辨值,将室内的分布矩阵按照同样的比例细化,均分,使取值点在坐标一定程度上也是接近于连续变化的,从而才能最大程度上使处理数据得来的分布值按最小分辨值连续变化! 根据人体散热量计算公式:C=hc(tb-Ta) 其中hc为对流交换系数; 结合Gagge教授提出的TSENS热感觉指标可以计算出不同环境下人的对环境温度变化时人体温度感知分辨率,作为插值法的一个参考量,能使绘制出的温度场更加的符合人体的温度变化模式。 例如按照10cm的均差产生网格矩阵(实际上人对温度的分辨率是远远10cm大于这个值的,但是那样产生的网格矩阵也是异常庞大的,例如以0.5cm为例,那么就可以获得116*108=12528个元素,为方便说明现已10cm为例): [xi yi]=meshgrid(7.5:10:65.5,5.5:10:59.5) xi = 7.5000 17.5000 27.5000 37.5000 47.5000 57.5000 7.5000 17.5000 27.5000 37.5000 47.5000 57.5000 7.5000 17.5000 27.5000 37.5000 47.5000 57.5000 7.5000 17.5000 27.5000 37.5000 47.5000 57.5000 7.5000 17.5000 27.5000 37.5000 47.5000 57.5000 7.5000 17.5000 27.5000 37.5000 47.5000 57.5000

西安交通大学——温度场数值模拟(matlab)

温度场模拟matlab代码: clear,clc,clf L1=8;L2=8;N=9;M=9;% 边长为8cm的正方形划分为8*8的格子 T0=500;Tw=100; % 初始和稳态温度 a=0.05; % 导温系数 tmax=600;dt=0.2; % 时间限10min和时间步长0.2s dx=L1/(M-1);dy=L2/(N-1); M1=a*dt/(dx^2);M2=a*dt/(dy^2); T=T0*ones(M,N); T1=T0*ones(M,N); t=0;l=0;k=0; Tc=zeros(1,600);% 中心点温度,每一秒采集一个点 for i=1:9 for j=1:9 if(i==1|i==9|j==1|j==9) T(i,j)=Tw;% 边界点温度为100℃ else T(i,j)=T0; end end end if(2*M1+2*M2<=1) % 判断是否满足稳定性条件 while(t

end i=1:9;j=1:9; [x,y]=meshgrid(i); figure(1); subplot(1,2,1); mesh(x,y,T(i,j))% 画出10min 后的温度场 axis tight; xlabel('x','FontSize',14);ylabel('y','FontSize',14);zlabel('T/℃','FontSize',14) title('1min 后二维温度场模拟图','FontSize',18) subplot(1,2,2); [C,H]=contour(x,y,T(i,j)); clabel(C,H);axis square; xlabel('x','FontSize',14);ylabel('y','FontSize',14); title('1min 后模拟等温线图','FontSize',18) figure(2); xx=1:600; plot(xx,Tc,'k-','linewidth',2) xlabel('时间/s','FontSize',14);ylabel('温度/℃','FontSize',14);title('中心点的冷却曲线','FontSize',18) else disp('Error!') % 如果不满足稳定性条件,显示“Error !” end 实验结果: 时间/s 温度/℃ 中心点的冷却曲线

春MATLAB仿真期末大作业

MATLAB仿真 期末大作业 姓名:班级:学号:指导教师:

2012春期末大作业 题目:设单位负反馈控制系统前向通道传递函数由)()(21s G s G 和串联,其中: ) 1(1)()(21++==s A s G s K s G A 表示自己学号最后一位数(可以是零),K 为开环增益。要求: (1)设K=1时,建立控制系统模型,并绘制阶跃响应曲线(用红色虚线,并标注坐标和标题);求取时域性能指标,包括上升时间、超调量、调节时间、峰值时间; (2)在第(1)问中,如果是在命令窗口绘制阶跃响应曲线,用in1或者from workspace 模块将命令窗口的阶跃响应数据导入Simulink 模型窗口,用示波器显示阶跃响应曲线;如果是在Simulink 模型窗口绘制阶跃响应曲线,用out1或者to workspace 模块将Simulink 模型窗口的阶跃响应数据导入命令窗口并绘制阶跃响应曲线。 (3)用编程法或者rltool 法设计串联超前校正网络,要求系统在单位斜坡输入信号作用时,速度误差系数小于等于0.1rad ,开环系统截止频率s rad c /4.4''≥ω,相角裕度大于等于45度,幅值裕度大于等于10dB 。

仿真结果及分析: (1)、(2)、将Simulink模型窗口的阶跃响应数据导入命令窗口并绘制阶跃响应曲线 通过在Matlab中输入命令: >> plot(tout,yout,'r*-') >> title('阶跃响应曲线') 即可得出系统阶跃响应曲线,如下: 求取该控制系统的常用性能指标:超调量、上升时间、调节时间、峰值时间的程序如下: G=zpk([],[0,-1],5)。 S=feedback(G,1)。

《科学计算与MATLAB》期末大作业

杭州电子科技大学信息工程学院《科学计算与MATLAB》期末大作业

给出程序、图、作业分析,程序需加注释。 1. 试编写名为fun.m 的MATLAB 函数,用以计算下述的值: ?? ? ??-<->=t t n t t t n t f 的)4/sin()(si 对所有)4/sin(其他情况)sin(的)4/sin()(si 对所有)4/sin()(ππππ 绘制t 关于函数f(t)的图形,其中t 的取值范围为ππ66≤≤-t ,间距为10/π。 function y=fun()%定义函数 % t=-6*pi:pi/10:6*pi; %定义变量范围 y = (sin(pi/4)).*(sin(t)>sin(pi/4))+(sin(-pi/4)).*(sin(t)=sin(-pi/4)));%函数表示 plot(t,y); %画图 end

2.解以下线性方程组 ??? ??=+=++=--3 530 42231 321321x x x x x x x x A=[2 -1 -1;1 1 4;3 0 5];%输入矩阵 B=[2;0;3]; %输入矩阵 X = A\B %计算结果 3.已知矩阵? ? ??? ???? ???=44434241 3433323124232221 14131211A 求: (1)A(2:3,2:3) (2)A(:,1:2) (3)A(2:3,[1,3]) (4)[A,[ones(2,2);eye(2)]]

A=[11 12 13 14;21 22 23 24;31 32 33 34;41 42 43 44];%输入矩阵A(2:3,2:3) %输出矩阵 A(:,1:2) %输出矩阵 A(2:3,[1,3]) %输出矩阵 [A,[ones(2,2);eye(2)]] %输出矩阵

MATLAB大作业

选 题 说 明 本人选做第2、4、5、9、11、12、13、14、16、19、24 题。 作业内容题目2:问题描述:在[0 , 2π]范围内绘制二维曲线图y=cos(5x)*sin(x) (1)问题分析 这是一个二维绘图问题,先写出x的取值范围,再用plot函数画出y的图像。 (2)软件说明及源代码 >> x = 0:pi/100:2.*pi; y=cos(5*x).*sin(2*x); >> plot(x,y) (3)实验结果 题目4:问题描述:创建符号函数并求解,要求写出步骤和运行结果 (1)创建符号函数f=ax2+bx+c

(2)求f=0的解 (1)问题分析 这是符号计算问题,首先要确定符号变量,然后创建符号函数,最后利用subs函数求解特值。 (2)软件说明及源代码 >> syms a b c x f; f=a*x^2+b*x+c; subs(f,0) (3)实验结果 ans = c 题目5:问题描述:求积分 (1)问题分析 这是符号计算的积分求解问题,首先需要确定符号变量,然后利用int函数计算积分。 (2)软件说明及源代码 >> syms x y; y=sqrt(1-2*sin(2*x)); >> int(y,x,0,pi/2) (3)实验结果 ans = ellipticE(-pi/4, 4)*1i - ellipticE(pi/4, 4)*1i - ellipticE(-pi/6, 4)*2i + ellipticE(pi/6, 4)*2i 题目9:问题描述:按水平和竖直方向分别合并下述两个矩阵:

(1)问题分析 这是考查矩阵的基本操作,首先定义矩阵,然后合并矩阵。 (2)软件说明及源代码 >> A=[1,0,0;1,1,0;0,0,1]; B=[2,3,4;5,6,7;8,9,10]; >> a=[A,B],b=[A;B] (3)实验结果 a = 1 0 0 2 3 4 1 1 0 5 6 7 0 0 1 8 9 10 b = 1 0 0 1 1 0 0 0 1 2 3 4 5 6 7 8 9 10 题目11:问题描述:计算z=yx2+3y2x+2y3的和: (1)问题分析 这是符号计算问题,首先确定符号变量,然后构造函数,最后利用diff函数进行求导。 (2)软件说明及源代码 >> syms x y z; >> z=y*x^2+3*y^2*x+2*y^3; >> diff(z,y,1),diff(diff(z,y,1),x,1) (3)实验结果 ans = x^2 + 6*x*y + 6*y^2

MATLAB 画等温线

测量到不同坐标点的高度值,如何用matlab画三维图 附上部分数据: A=[-210.6627 -33391.1192 5.0273 -221.3052 -33387.7415 4.5969 -210.9391 -33393.0068 5.5647 -221.8901 -33390.7396 5.0077 -211.384 -33394.7093 5.6505 -222.6117 -33392.778 5.0554 -212.7074 -33397.5459 5.7381 -225.8973 -33397.5869 5.5587]; 解:代码在matlab2009a版以上均可运行。 A=[-210.6627 -33391.1192 5.0273 -221.3052 -33387.7415 4.5969 -210.9391 -33393.0068 5.5647 -221.8901 -33390.7396 5.0077 -211.384 -33394.7093 5.6505 -222.6117 -33392.778 5.0554 -212.7074 -33397.5459 5.7381 -225.8973 -33397.5869 5.5587]; xData = A(:,1); yData = A(:,2); zData = A(:,3); fitresult = fit( [xData, yData], zData, 'linearinterp'); figure( 'Name', '三维图' ); plot( fitresult, [xData, yData], zData ); xlabel( 'x' ); ylabel( 'y' ); zlabel( 'z' ); grid on view( -53, 50 );

(完整版)有限元大作业matlab---课程设计例子

有限元大作业程序设计 学校:天津大学 院系:建筑工程与力学学院 专业:01级工程力学 姓名:刘秀 学号:\\\\\\\\\\\ 指导老师:

连续体平面问题的有限元程序分析 [题目]: 如图所示的正方形薄板四周受均匀载荷的作用,该结构在边界 上受正向分布压力, m kN p 1=,同时在沿对角线y 轴上受一对集中压 力,载荷为2KN ,若取板厚1=t ,泊松比0=v 。 [分析过程]: 由于连续平板的对称性,只需要取其在第一象限的四分之一部分参加分析,然后人为作出一些辅助线将平板“分割”成若干部分,再为每个部分选择分析单元。采用将此模型化分为4个全等的直角三角型单元。利用其对称性,四分之一部分的边界约束,载荷可等效如图所示。

[程序原理及实现]: 用FORTRAN程序的实现。由节点信息文件NODE.IN和单元信息文件ELEMENT.IN,经过计算分析后输出一个一般性的文件DATA.OUT。模型基本信息由文件为BASIC.IN生成。 该程序的特点如下: 问题类型:可用于计算弹性力学平面问题和平面应变问题 单元类型:采用常应变三角形单元 位移模式:用用线性位移模式 载荷类型:节点载荷,非节点载荷应先换算为等效节点载荷 材料性质:弹性体由单一的均匀材料组成 约束方式:为“0”位移固定约束,为保证无刚体位移,弹性体至少应有对三个自由度的独立约束 方程求解:针对半带宽刚度方程的Gauss消元法

输入文件:由手工生成节点信息文件NODE.IN,和单元信息文件ELEMENT.IN 结果文件:输出一般的结果文件DATA.OUT 程序的原理如框图:

Matlab程序设计大作业(终审稿)

M a t l a b程序设计大作 业 公司内部档案编码:[OPPTR-OPPT28-OPPTL98-OPPNN08]

Matlab程序设计 课程大作业 题目名称:_________________________________ 班级:_________________________________ 姓名:_________________________________ 学号:_________________________________ 课程教师:温海骏 学期: 2015-2016学年第2学期 完成时间:

MATLAB优化应用 §1 线性规划模型 一、线性规划问题: 问题1:生产计划问题 假设某厂计划生产甲、乙两种产品,现库存主要材料有A类3600公斤,B类2000公斤,C类3000公斤。每件甲产品需用材料A类9公斤,B类4公斤,C类3公斤。每件乙产品,需用材料A类4公斤,B类5公斤,C类10公斤。甲单位产品的利润70元,乙单位产品的利润120元。问如何安排生产,才能使该厂所获的利润最大。 问题2:投资问题 某公司有一批资金用于4个工程项目的投资,其投资各项目时所得的净收益(投入资金百分比)如下表:工程项目收益表 由于某种原因,决定用于项目A的投资不大于其他各项投资之和而用于项目B和C的投资要大于项目D的投资。试确定该公司收益最大的投资分配方案。 问题3:运输问题

有A 、B 、C 三个食品加工厂,负责供给甲、乙、丙、丁四个市场。三个厂每天生产食品箱数上限如下表: 四个市场每天的需求量如下表: 从各厂运到各市场的运输费(元/每箱)由下表给出: 求在基本满足供需平衡的约束条件下使总运输费用最小。 §2 多目标规划模型 多目标规划定义为在一组约束下,多个不同的目标函数进行优化设计。 数学模型: 12min ()() ().()0,1,2, ,m j f x f x f x st g x j k ???? ≤= 其中x=(x 1 ,x 2 , … ,x n )为一个n 维向量;f i (x)为目标函数,i=1, 2, … ,m; g j (x)为系统约束, j=1, 2, … ,k 。

MATLAB结课作业

4.10 上机操作步骤 1在MatLab 的命令窗口输入如下命令序列: clf subplot(1,2,1) hold on grid on n=1:1000; m=1./n.*cos(n*pi/2); plot(n,m,'k.') 观察数列的散点图22,当n 趋于无穷大时,数列趋于 0 subplot(1,2,2) hold on grid on n=500:10000; m=1./n.*cos(n*pi/2); plot(n,m,'k.') fplot('0.001',[500,10000]) fplot('-0.001',[500,10000]) axis([500,10000,-0.005,0.005]) 观察图23,当001.0=ε时,可以取N= 1000 ,当n>N 时有επε<< -2 co s n 1n . 图22 图23 2 在MatLab 的命令窗口输入如下命令序列: clf subplot(1,2,1) hold on grid on fplot('x.*x',[1,3])

观察函数图24, 当2x →时,2x y =的极限是 4 subplot(1,2,2) hold on grid on fplot('x.*x',[1.9,2.1]) fplot('4.001',[ 1.9,2.1]) fplot('3.999',[ 1.9,2.1]) axis([1.9997,2.0005,3.9989,4.0011]) % 调整显示图形的范围是该实验的重点 观察图25,当001.0=ε时, δ取 0.003 δ<-<2 0x 时,001.04<-y ? 图24 图25 3 在MatLab 的命令窗口输入: syms x limit((2.^x-log(2.^x)-1)./(1-cos(x)),x,0) 运行结果为 ans = log(2)^2 理论上用洛必达法则计算该极限: x x x cos 112ln 2lim 0x ---→= 1 4 在MatLab 的命令窗口输入如下命令序列: (1)syms x y=sqrt(x+2)*(3-x)^4/(x+1)^5 diff(y,x) %求一阶导数 运行结果 =y'1/2/(x+2)^(1/2)*(3-x)^4/(x+1)^5-4*(x+2)^(1/2)*(3-x)^3/(x+1)^5-5*(x+2)^(1/2)*(3-x )^4/(x+1)^6 x=1; eval(y) %求导数在x =1处的值 运行结果 1'=x y = 0.8660

北航_现代控制理论结课大作业

1. 控制系统任务的物理描述 为了满足飞机品质的要求,飞机的纵向运动和横侧向运动都需要有能够连续工作的阻尼器,以用来调整飞机的飞行姿态,避免其出现不必要的俯仰和倾斜。维持飞机纵向运动的阻尼器称为俯仰阻尼器,维持飞机横侧向运动的阻尼器称为偏航阻尼器。本次课程大作业旨在通过运用Matlab 的经典控制系统设计工具对某型飞机偏航阻尼器进行控制系统的设计。 2. 控制系统对象的数学模型 巡航状态下,某型飞机侧向运动的状态空间模型为: 111 12131411122212223242122131 3233343132234142434441424()1()()()()2()()()3()()4t x t a a a a b b t x t a a a a b b u t a a a a b b u t x t t a a a a b b x t t x x x x ??????????????????????????????????=+???????????????????????? ?????????? 111121314122122 2324234()()()()()()x t c c c c y t x t c c c c y t x t x t ??????????=?????????????? 式中: 1()x t :侧滑角(单位为rad ) 2()x t :偏航角速度(单位为/rad s ) 3()x t :滚转角速度(单位为/rad s ) 4()x t :倾斜角(单位为rad ) 输入向量及输出向量分别为: 1()u t :方向舵偏角(单位为rad ) 2()u t :副翼偏角(单位为rad )

matlab绘制温度场复习过程

m a t l a b绘制温度场

通过在室内的某些位置布置适当的节点,采集回来室内的温湿度以及空气质量等实际参数。首先对室内空间建模,用一个无限细化的三维矩阵来模拟出室内的温度分布情况,针对采集回来的数据,采用插值法和适当次数的拟合函数的拟合,得出三维矩阵的实际值的分布,最后结合matlab软件绘制出计算出的温度场的三维图像。 一.数据的采集与处理 因为影响人的舒适感的温度层只是室内的某一高度范围内的温度,而温度传感器虽然是布置在一个平面内,但是采用插值法和拟合函数法是可以大致再现出影响人的舒适感的温度层的温度变化的。同时,在构建出的三维模型中,用第三维表示传感器层面的温度。 在传感器层面,传感器分布矩阵如下: X=【7.5 36.5 65.5】(模型内单位为cm) Y=【5.5 32.5 59.5】 Z=【z1 z2 z3; z4 z5 z6; z7 z8 z9;】(传感器采集到的实时参数) 采用meshgrid(xi,yi,zi,…)产生网格矩阵; 首先按照人的最小温度分辨值,将室内的分布矩阵按照同样的比例细化,均分,使取值点在坐标一定程度上也是接近于连续变化的,从而才能最大程度上使处理数据得来的分布值按最小分辨值连续变化! 根据人体散热量计算公式:C=hc(tb-Ta) 其中hc为对流交换系数;

结合Gagge教授提出的TSENS热感觉指标可以计算出不同环境下人的对环境温度变化时人体温度感知分辨率,作为插值法的一个参考量,能使绘制出的温度场更加的符合人体的温度变化模式。 例如按照10cm的均差产生网格矩阵(实际上人对温度的分辨率是远远10cm 大于这个值的,但是那样产生的网格矩阵也是异常庞大的,例如以0.5cm为例,那么就可以获得116*108=12528个元素,为方便说明现已10cm为例): [xi yi]=meshgrid(7.5:10:65.5,5.5:10:59.5) xi = 7.5000 17.5000 27.5000 37.5000 47.5000 57.5000 7.5000 17.5000 27.5000 37.5000 47.5000 57.5000 7.5000 17.5000 27.5000 37.5000 47.5000 57.5000 7.5000 17.5000 27.5000 37.5000 47.5000 57.5000 7.5000 17.5000 27.5000 37.5000 47.5000 57.5000 7.5000 17.5000 27.5000 37.5000 47.5000 57.5000 yi = 5.5000 5.5000 5.5000 5.5000 5.5000 5.5000 15.5000 15.5000 15.5000 15.5000 15.5000 15.5000 25.5000 25.5000 25.5000 25.5000 25.5000 25.5000 35.5000 35.5000 35.5000 35.5000 35.5000 35.5000 45.5000 45.5000 45.5000 45.5000 45.5000 45.5000 55.5000 55.5000 55.5000 55.5000 55.5000 55.5000 产生网格矩阵之后,就可以在测得的实时数据的基础上,通过相关的温度场的专业的估算函数,以及相关的数值处理函数来估计整个分布面(有最小的分辨率)上的温度了。即在这些函数的基础之上,对参数进行一些必要的处理。

MATLAB期末大作业模板

MATLAB应用技术 期末大作业 专业: 姓名: 学号: 分数

一、在一个图形窗口中以子图形式同时绘制正弦、余弦、正切、余切曲线。请写下完整代码,展示图形结果。(请标注题图和坐标轴,用不同颜色和不同线型分别绘制以上曲线)。(15分) 二、某公司员工的工资计算方法如下。 (1)工作时数超过120小时者,超过部分加发15%。 (2)工作时数低于60小时者,扣发700元。 (3)其余按每小时84元发。 根据员工的工时数,计算应发工资。请写下完整的程序代码,并任意输入一工时数(使用input 函数),将结果展示(使用disp 函数)利用该代码进行计算工资,请写下计算结果。(15分) 三、编写一个函数文件,使其能够产生如下的分段函数: ?? ? ??≥<<≤-=66225.0,25.05.15.0)(x x x x x x f 请编写完整的函数文件(保存函数文件名为hanshu.m ),并编写脚本文件代码,任意输入x 值(使用input 函数),在脚本文件中调用函数文件求)(x f ,展示结果(使用disp 函数),请写下计算结果。(15分) 四、将5个学生的6门功课的成绩存入矩阵P 中,进行如下处理: (1)分别求每门课的最高分、最低分及相应学生的序号。 (2)分别求每门课的平均分和标准差。 (3)5门课总分的最高分、最低分及相应学生序号。 (4)将5门课总分按从大到小顺序存入score 中,相应学生序号存入num 。 请将各小题的运行代码完整写下来,并写下运行结果。(20分) 五、请利用所学的MATLAB 知识,自主设计一个图形用户界面,请完整记录它的设计过程,需提供文字、代码和图片,以充分说明设计的图形用户界面可实现

matlab综合大作业(附详细答案)

m a t l a b综合大作业(附详细 答案) 标准化文件发布号:(9312-EUATWW-MWUB-WUNN-INNUL-DQQTY-

《MATLAB语言及应用》期末大作业报告1.数组的创建和访问(20分,每小题2分): 1)利用randn函数生成均值为1,方差为4的5*5矩阵A;实验程序:A=1+sqrt(4)*randn(5) 实验结果: A = 2)将矩阵A按列拉长得到矩阵B; 实验程序:B=A(:) 实验结果: B =

3)提取矩阵A的第2行、第3行、第2列和第4列元素组成2*2的 矩阵C; 实验程序:C=[A(2,2),A(2,4);A(3,2),A(3,4)] 实验结果: C = 4)寻找矩阵A中大于0的元素;] 实验程序:G=A(find(A>0)) 实验结果: G = 5)求矩阵A的转置矩阵D; 实验程序:D=A' 实验结果: D = 6)对矩阵A进行上下对称交换后进行左右对称交换得到矩阵E; 实验程序:E=flipud(fliplr(A)) 实验结果: E =

7)删除矩阵A的第2列和第4列得到矩阵F; 实验程序:F=A; F(:,[2,4])=[] 实验结果: F = 8)求矩阵A的特征值和特征向量; 实验程序:[Av,Ad]=eig(A) 实验结果: 特征向量Av = + - + - - + + - 特征值Ad = 0 0 0 0 0 + 0 0 0 0 0 - 0 0 0 0 0 0 0 0 0 0 9)求矩阵A的每一列的和值; 实验程序:lieSUM=sum(A) 实验结果: lieSUM = 10)求矩阵A的每一列的平均值; 实验程序:average=mean(A) 实验结果: average = 2.符号计算(10分,每小题5分): 1)求方程组20,0 uy vz w y z w ++=++=关于,y z的解; 实验程序:S = solve('u*y^2 + v*z+w=0', 'y+z+w=0','y,z'); y= S. y, z=S. z

实验2 Matlab绘图操作

实验2 Matlab 绘图操作 实验目的: 1、 掌握绘制二维图形的常用函数; 2、 掌握绘制三维图形的常用函数; 3、 掌握绘制图形的辅助操作。 实验内容: 1. 设sin .cos x y x x ?? =+ ??+?? 23051,在x=0~2π区间取101点,绘制函数的曲线。 2. 已知: y x =21,cos()y x =22,y y y =?312,完成下列操作: (1) 在同一坐标系下用不同的颜色和线性绘制三条曲线; (2) 以子图形式绘制三条曲线; (3) 分别用条形图、阶梯图、杆图和填充图绘制三条曲线。 3. 已知:ln(x x e y x x ?+≤??=??+>??2 0102 ,在x -≤≤55区间绘制函数曲线。 4. 绘制极坐标曲线sin()a b n ρθ=+,并分析参数a 、b 、n 对曲线形状的影响。 5.在xy 平面内选择区域[][],,-?-8888, 绘制函数z =的三种三维曲面图。 6. 用plot 函数绘制下面分段函数的曲线。 ,(),,x x f x x x x ?+>? ==??+

(1).y x =-205 (2)sin()cos ,sin()sin x t t t y t t π=?≤≤? =?303 详细实验内容: 1.设sin .cos x y x x ?? =+ ??+?? 23051,在x=0~2π区间取101点,绘制函数的曲线。 >> x=(0:2*pi/100:2*pi); >> y=(0.5+3*sin(x)/(1+x.^2))*cos(x); >> plot(x,y) 2.已知: y x =2 1,cos()y x =22,y y y =?312,完成下列操作: (1)在同一坐标系下用不同的颜色和线性绘制三条曲线; >> x= linspace(0, 2*pi, 101); >> y1=x.*x; >> y2=cos(2x); >> y3=y1.*y2; plot(x,y1,'r:',x,y2,'b',x,y3, 'ko')

MATLAB期末大作业模版

《MATLAB》期末大作业 学院土木工程与建筑学院 专业 班级 姓名 指导教师李琳 2018 年 5 月16 日

明 作业内容题目2:问题描述:在[0 2π]范围内绘制二维曲线图y=cos(5x)*sin(x) (1)问题分析 这是一个二维绘图问题,先划定x的范围与间距,再列出y的表达式,利用plot函数绘制二维曲线。 (2)软件说明及源代码 >> x = 0:pi/10:2*pi; >>y = cos(5*x).*sin(x); >>plot(x,y) (3)实验结果 题目4:问题描述:创建符号函数并求解,要求写出步骤和运行结果 (1)创建符号函数f=ax2+bx+c (2)求f=0的解 (1)问题分析 这是一个符号函数显示以及符号函数的求解问题,第一问先定义常量与变量,在写出f表达式,利用pretty函数显示f。第二问利用solve函数求解f=0时的解。 (2)软件说明及源代码

第一问 >> syms a b c x; >> f=a*x^2+b*x+c; >> pretty(f) 第二问 >>syms a b c x; >>f=a*x^2+b*x+c; >> solve(f) (3)实验结果 1、 2、 题目5:问题描述:求积分 (1)问题分析 这是一个利用符号函数求积分的问题,先定义变量x,再列出I1表达式,利用int函数求在范围0到Pi/2上的积分。 (2)软件说明及源代码 >> syms x; >> I1=(1-2*sin(2*x))^0.5; >> int(I1,0,0.5*pi) (3)实验结果 题目6:问题描述:分别随机产生一个6×6的整数矩阵(元素可在[-20,20]之间),求该随机阵的秩,特征值和特征向量。 (1)问题分析 这是一个矩阵运算问题,先利用rand函数产生一个6*6的元素在-20到20

MATLAB期末大作业

学号:姓名: 《Matlab/Simulink在数学计算与仿真中的应用》大作业1.假设地球和火星绕太阳运转的半径分别为r和2r,利用comet指令动画显示从地球 到火星的转移轨迹(r可以任意取值,要求实时显示探测器、太阳、地球和火星的位置)。 解函数function comet(varargin) [ax,args,nargs] = axescheck(varargin{:}); error(nargchk(1,3,nargs,'struct')); % Parse the rest of the inputs if nargs < 2, x = args{1}; y = x; x = 1:length(y); end if nargs == 2, [x,y] = deal(args{:}); end if nargs < 3, p = 0.10; end if nargs == 3, [x,y,p] = deal(args{:}); end if ~isscalar(p) || ~isreal(p) || p < 0 || p >= 1 error('MATLAB:comet:InvalidP', ... 'The input ''p'' must be a real scalar between 0 and 1.'); End 指令 %particle_motion t = 0:5:16013; r1=6.7e6;%随便给定参数 %--------------------------- r2=2*r1; g=9.8; R=6.378e6; m=g*R^2; %内轨道 v_inner=sqrt(m/r1); w_inner=v_inner/r1; x_inter=r1*cos(w_inner*t); y_inter=r1*sin(w_inner*t); %外轨道 v_outer=sqrt(m/r2); w_outer=v_outer/r2;

基于MATLAB的焊接温度场数值计算

C W T 中国水运 2019·02 75 基于MATLAB 的焊接温度场数值计算 DOI 编码:10.13646/https://www.wendangku.net/doc/028114106.html,ki.42-1395/u.2019.02.027 于有生 (广东南方职业学院,广东 江门 529040) 摘 要:本文利用高斯数值积分原理得到厚大焊件点状连续移动热源温度场高斯数值积分表达式,在MATLAB 平台的基础上编写了该温度场的数值计算程序,并通过Q235钢的焊接实例进行数值计算,计算结果说明,利用高斯积分法求解焊接温度场的数值解可以在焊接工程实践中应用。关键词:焊接温度场;高斯数值积分;MATLAB 中图分类号:TG44 文献标识码:A 文章编号:1006—7973(2019)02-0075-02 1前言 焊接温度场特性对提高焊接质量具有重要意义。焊接温度场的计算属于非线性瞬态热传导问题,焊接过程温度场的急剧变化造成温度分布的不均匀,分析计算比一般的热过程要困难。焊接温度场研究始于20世纪40年代,近年来随着焊接温度场研究的逐渐深入, 有限元法逐渐应用于焊接温度场的数值模拟过程,研究方向逐渐转向三维焊接模拟,并实现温度、相变及热应力进行多场耦合计算。但解析法在焊接传热计算中仍然发挥重要的作用。本文在MATLAB 平台下,通过编程对厚大焊件点状连续移动热源温度场的解析表达式,利用高斯积分法进行数值分析计算。 2点状连续移动热源温度场的高斯积分 厚大焊件点状连续移动热源温度场的解析表达式为: 式中: ; '"t t t ?=; C:比热容(J/g ?°C);Cρ:容积比热容(J/cm ?°C);a:热扩散率(cm 2/s);v:焊接速度(cm/s)。 式(1)的积分要利用高斯数值积分公式进行变换得到式(2): 式中:p 为高斯积分总步数;n=3——二次三点高斯积分;Δt 为高斯积分步长;t=p*Δt——高斯积分总时间;Ζi 为高斯求积节点;H i 为高斯求积节点处的高斯积分系数。 3 MATLAB 程序和算例 利用高斯积分公式(2)通过MATLAB 平台编程计算焊接温度场,程序由主程序和整体坐标和局部坐标变换子程序,高斯积分和迭代子程序等组成。计算时取被焊材料为Q235,则其热物理常数为热扩散率a=0.1(cm 2/s)、导热系数λ=0.42(W/cm.oC)、比热容C=0.68(J/g. oC)、密度ρ=7.8(g/cm 3)。高斯计分时间步长取Δt=6(s)、积分总步数N=40,取三节点二次单元的高斯计分算法,则高斯求积节点和求积系数如表1所示。 表1 ζi , H i 的取值 ξi H i -0.77459666920.55555555560.00000000000.88888888890.7745966692 0.5555555556 焊接工艺参数取焊接电流I=350A、电弧电压U=25V、焊接热效率η=0.82(焊条电弧焊)。焊件尺寸设定为焊件长度L=30cm、焊件宽度B=14cm,为了减少计算时间采用间距为0.1cm 空间网格划分,计算焊件上表面的温度场分布,则z=0。计算结果由MATLAB 程序输出如图1所示。 (1) (2)

matlab综合大作业(附详细答案)

《MATLAB语言及应用》期末大作业报告 1.数组的创建和访问(20分,每小题2分): 1)利用randn函数生成均值为1,方差为4的5*5矩阵A; 实验程序:A=1+sqrt(4)*randn(5) 实验结果: A = 0.1349 3.3818 0.6266 1.2279 1.5888 -2.3312 3.3783 2.4516 3.1335 -1.6724 1.2507 0.9247 -0.1766 1.1186 2.4286 1.5754 1.6546 5.3664 0.8087 4.2471 -1.2929 1.3493 0.7272 -0.6647 -0.3836 2)将矩阵A按列拉长得到矩阵B; 实验程序:B=A(:) 实验结果: B = 0.1349 -2.3312 1.2507 1.5754 -1.2929 3.3818 3.3783 0.9247 1.6546 1.3493 0.6266 2.4516 -0.1766 5.3664 0.7272 1.2279 3.1335 1.1186 0.8087 -0.6647 1.5888 -1.6724 2.4286 4.2471

-0.3836 3)提取矩阵A的第2行、第3行、第2列和第4列元素组成2*2的矩阵C;实验程序:C=[A(2,2),A(2,4);A(3,2),A(3,4)] 实验结果: C = 3.3783 3.1335 0.9247 1.1186 4)寻找矩阵A中大于0的元素;] 实验程序:G=A(find(A>0)) 实验结果: G = 0.1349 1.2507 1.5754 3.3818 3.3783 0.9247 1.6546 1.3493 0.6266 2.4516 5.3664 0.7272 1.2279 3.1335 1.1186 0.8087 1.5888 2.4286 4.2471 5)求矩阵A的转置矩阵D; 实验程序:D=A' 实验结果: D = 0.1349 -2.3312 1.2507 1.5754 -1.2929 3.3818 3.3783 0.9247 1.6546 1.3493 0.6266 2.4516 -0.1766 5.3664 0.7272 1.2279 3.1335 1.1186 0.8087 -0.6647 1.5888 -1.6724 2.4286 4.2471 -0.3836 6)对矩阵A进行上下对称交换后进行左右对称交换得到矩阵E; 实验程序:E=flipud(fliplr(A)) 实验结果:

相关文档