如何用MATLAB解决温度分布问题?

作者&投稿:侨肯 (若有异议请与网页底部的电邮联系)
matlab怎么做出这种温度分布图,传热学实验数据处理需要,求高手讲解~

[x,y]=meshgrid(0:1:10);
z=(x-5).^2+(y-5).^2;
pcolor(x,y,z)
shading interp;
colorbar

也可以
contourf(x,y,z)
colorbar


关键在于x,y,z的数据怎么来。
偏微分方程的边界条件之类的。你都要给。

使用contour函数可以做到。
例如:
[X,Y] = meshgrid(-2:.2:2,-2:.2:3);
Z = X.*exp(-X.^2-Y.^2);
[C,h] = contour(X,Y,Z);
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2)
colormap cool

函数功能:在MATLAB中,该函数用于绘制矩阵的等高线。
语法格式:
contour(Z)
绘制矩阵Z的等高线。在这里Z表示距X-Y平面的高度。Z必须至少是一个2行2列的矩阵,且矩阵中至少包含两个不等的数值。MATLAB会根据Z中最小值和最大值自动确定等高线的条数和等高线的值。绘图区间的x、y轴范围分别为:[1:n]、[1:m]。其中[m, n] = size(Z),m表示Z的行数,n表示Z的列数。
contour(Z,n)
这里n指定了等高线的条数。
contour(Z,v)
其中v(means vector)中数据指定了要在哪些数据处绘制等高线。因此,这种调用格式将绘制出length(v)条等高线。如果只想在高度i处画一条等高线, 使用countour(Z, [i i])。
contour(X,Y,Z)
contour(X,Y,Z,n)
contour(X,Y,Z,v)
这三种调用格式, 绘制的等高线被限定在由X、Y指定的区域内。X、Y和Z必须是同行同列的,且其中元素必须是递增的。
contour(...,LineSpec)
使用LineSpec指定的线型和颜色来绘制等高线。
contour(axes_handle,...)
该种格式可以使我们不在当前坐标系中绘制等高线,axes_handle指定了一个坐标系句柄,等高线将被绘制在这个坐标系中。
[C,h] = contour(...)
相关函数:clabel, contourf, contour3, contourc, quiver

手头正好有一个例子。

function pdemodel
[pde_fig,ax]=pdeinit;
pdetool('appl_cb',1);
set(ax,'DataAspectRatio',[1 6.5 1]);
set(ax,'PlotBoxAspectRatio',[15 10 1]);
set(ax,'XLim',[-15 15]);
set(ax,'YLim',[-10 120]);
set(ax,'XTickMode','auto');
set(ax,'YTickMode','auto');

% Geometry description:
pderect([0 1 100 0],'R1');
set(findobj(get(pde_fig,'Children'),'Tag','PDEEval'),'String','R1')

% Boundary conditions:
pdetool('changemode',0)
pdesetbd(4,'neu',1,'0','0')
pdesetbd(3,'dir',1,'1','0')
pdesetbd(2,'neu',1,'0','0')
pdesetbd(1,'dir',1,'1','100')

% Mesh generation:
setuprop(pde_fig,'Hgrad',1.3);
setuprop(pde_fig,'refinemethod','regular');
pdetool('initmesh')
pdetool('refine')
pdetool('refine')
pdetool('refine')
pdetool('refine')

% PDE coefficients:
pdeseteq(1,'1.0','0.0','0','1.0','0:10','0.0','0.0','[0 100]')
setuprop(pde_fig,'currparam',['1.0';'0.0';'0 ';'1.0'])

% Solve parameters:
setuprop(pde_fig,'solveparam',...
str2mat('0','18432','10','pdeadworst',...
'0.5','longest','0','1E-4','','fixed','Inf'))

% Plotflags and user data strings:
setuprop(pde_fig,'plotflags',[1 1 1 1 1 1 1 1 0 0 0 1 1 1 0 0 0 1]);
setuprop(pde_fig,'colstring','');
setuprop(pde_fig,'arrowstring','');
setuprop(pde_fig,'deformstring','');
setuprop(pde_fig,'heightstring','');

% Solve PDE:
pdetool('solve')

colormap(jet(100))
colorbar('yticklabel',{10:10:100},'location','east')


如何用matlab解一个二元方程
例子:解方程:9x+8y=10 式1 13x+14y=12 式2 matlab代码为:[x,y]=solve('9*x+8*y=10','13*x+14*y=12','x','y')这个方法适用于n元m次方程组的。

如何用matlab解方程
fsolve('fc',[10 10 10 10],optimset('TolCon',1e-15,'TolFun',1e-22,'MaxIter',1e8,'MaxFunEvals',1e12,'TolX',1e-10));vpa(ans,4)结果:ans = -2509.-1727..1150e7 .4911e-2 这是个数值解,改变初值结果会有变化,这可能是因为精度的问题。没办法,这是数值解法的缺陷。

怎样用matlab解偏微分方程
信号处理|MATLAB电子书|偏微分方程的MATLAB解法免费下载链接: https:\/\/pan.baidu.com\/s\/1IeHEWx1L4BfjGfavQwk2Og 提取码: 6puwpdetool是matlab的一个重要的工具箱,它可以用数值解法来求解各种繁琐的偏微分方程问题,并且操作非常便捷。

用MATLAB解这些题,需要步骤,谢谢
都是非常基本的东西,题主最好稍微花点时间把它搞明白。给你代码供参考:>> syms x>> limit((2*x^2+x-5)\/(3*x+1),2) ans = 5\/7>> y=(x^2-4)^3;>> diff(y) ans = 6*(x^2-4)^2*x>> A=[1 2 3;2 2 1;3 4 3];>> A.'ans = 1 2 3 2 2...

如何用matlab求二阶微分方程的图像解
如何用matlab求二阶微分方程的图像解。可以按下列方法来求解。1、自定义二阶微分方程函数,ode_fun(t,y),其格式 function dy=ode_fun(t,y)dy=[y(2);sin(y(1))\/(-0.02)-0.04*t];2、利用ode45函数求解[t,y]值 y0=[0.2,2.6];tspan=[0,10];[t,y]=ode45(@ode_fun,tspan,y0...

如何用matlab来求解一元三次方程
把你方程的系数降幂排列,写成一个向量,利用roots命令即可。>> p=[1,-6,9,-9];roots(p)ans =4.4260e+000 7.8701e-001 +1.1891e+000i 7.8701e-001 -1.1891e+000i

如何用matlab求解一元高次方程
如何用matlab解一元四次方程设该四次方程为 a0x^4+a1x^3+a2x^2+a3x+a4=0 输入roots([a0a1a2a3a4])即可 如何用matlab解一元四次方程急不带参数:solve('x^4-x^3+x^2=0')单引号内式子可以任意改变,但形式要与例子一致。带参数:symsabcx;solve('a*x^4-b*x^3+c*x^2=0',x),...

用matlab求非线性规划问题的最优解
题主给出的非线性规划问题,其最优解可以用matlab的fmincon函数求解,求解方法如下:1、根据条件,确定x、y、z的上下限 lb=[0,0,5];ub=[15,5,8];2、自定义目标函数,fmincon_fun(k),即 x=k(1);y=k(2);z=k(3);m=21.6*sqrt(5^2+(8-z)^2 )+7.2*(sqrt(x^2+(5-x)^2...

用matlab求解二阶微分方程
用matlab的dsolve函数计算该二阶微分方程的解析值是有一定的难度。只能用数值分析的方法来求解其数值解。当然求其数值解,必须还得已知a、θ的具体数值。该问题可以用matlab的ode45函数求得。求解方法如下:1、建立微分方程的自定义函数,odefun(x,y)2、当a=10、θ=π\/6时,执行下列代码 theta=pi...

为什么要用matlab解线性方程组
能得到思维锻炼、便捷精准。1、用MATLAB去解线性方程组,能使学生的思维能力和动手能力同时得到更好地锻炼。理论和数学软件的结合不仅能带给学生们新鲜感,调动他们的学习热情,更能使他们将所学到的数学思想灵活运用到各个领域中。2、在MATLAB中可以通过调用内置函数或者自定义函数来求解方程组,并得到最...

察哈尔右翼前旗19732981821: 如何用MATLAB解决温度分布问题? -
陈谢临泰: 手头正好有一个例子.function pdemodel [pde_fig,ax]=pdeinit; pdetool('appl_cb',1); set(ax,'DataAspectRatio',[1 6.5 1]); set(ax,'PlotBoxAspectRatio',[15 10 1]); set(ax,'XLim',[-15 15]); set(ax,'YLim',[-10 120]); set(ax,'XTickMode','auto'); set(ax,'...

察哈尔右翼前旗19732981821: matlab怎么做出这种温度分布图,传热学实验数据处理需要,求高手讲解 -
陈谢临泰: [x,y]=meshgrid(0:1:10); z=(x-5).^2+(y-5).^2; pcolor(x,y,z) shading interp; colorbar也可以 contourf(x,y,z) colorbar关键在于x,y,z的数据怎么来. 偏微分方程的边界条件之类的.你都要给.

察哈尔右翼前旗19732981821: 用MATLAB画温度分布和等深线怎么放在一个图上 -
陈谢临泰: 用MATLAB画温度分布和等深线如何放在一个图上,可以这样实现,在绘制温度分布图的代码后,增加 hold on 这个语句,然后再写绘制等深线代码.如还有疑问,可以将具体的要求(函数表达式)贴出来.或以私信方式给出.

察哈尔右翼前旗19732981821: 用matlab画一个求和函数 其中包括两个变量 -
陈谢临泰: 用matlab画出温度分布图的方法及思路. 1、利用for循环语句,求解θ(x,y)以及T的值(θ=(T-T1)/(T2-T1)). 2、根据x,y,T值,绘制温度分布图. 为了说明问题,n取20.计算后得到如下温度分布图.

察哈尔右翼前旗19732981821: Re:怎么用matlab画圆柱表面的温度分布 -
陈谢临泰: R=1;%半径 a=1;%原点x坐标 b=1;%原点y坐标 h=2;%圆柱高度 m=100;%分割线的条数 [x,y,z]=cylinder(R,m);%创建以(0,0)为圆心,高度为[0,1],半径为R的圆柱 x=x+a;%平移x轴 y=y+b;%平移y轴,改为(a,b)为底圆的圆心 z=h*z;%高度放大h倍 mesh(x,y,z)%重新绘图

察哈尔右翼前旗19732981821: 怎样用matlab画一个矩形或者其他形状中的温度分布图?例如,2013美国数学建模大赛A题中的温度分布图是怎 -
陈谢临泰: 用PDEToolbox解热传导方程,这是一个解偏微分方程的成熟的工具箱,现在已经独立与matlab了,

察哈尔右翼前旗19732981821: 一个用matlab解决物理问题的程序 -
陈谢临泰: 给你一个解决物理温度问题的程序,就是摄氏温度和华氏温度的相互转换问题.绝对原创,当然程序并不复杂.我是学通信的,关于电子方面的程序我有很多,网上也有很多,怕你说我copy.就给个关于温度的吧. k=input('选择转换方式(1--...

察哈尔右翼前旗19732981821: 求解matlab 图像温度处理 就一幅图他的表标识温度是20摄氏度在给一副图片求他的温度分布.在荧光测温里的 -
陈谢临泰: f=imread('medicine_pic.jpg'); g=imhist(f,256); %显示其直方图 g1=imadjust(f,[0 1],[1 0]); %灰度转换,实现明暗转换(负片图像) figure,imshow(g1)%将0.5到0.75的灰度级扩展到范围[0 1] g2=imadjust(f,[0.5 0.75],[0 1]); figure,imshow(g2) g=...

察哈尔右翼前旗19732981821: 2013美国数学建模大赛A题中的温度分布图是怎样用matlab画出来的,求matlab程序 -
陈谢临泰: 美国\数学建模大赛\分布图,matlab,温度美国\数学建模大赛\分布图,matlab,温度美国\数学建模大赛\分布图,matlab,温度

察哈尔右翼前旗19732981821: matlab 两个二维温度场如何通过插值重建三维温度场 -
陈谢临泰: 如果精度要求不高的话,可以直接线性插值.对于0<z<10的点来说,用z=0处和z=10处的同(x,y)位置的点上的温度值作加权平均即可.但是总体说来,仅用两个二维场重建三维场还是不太好,精度肯定不会高.建议有条件的话多取几个二维场.这样选择插值方法的余地也会更大.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网