作业帮 > 综合 > 作业

matlab的问题.之前使用这个公式,我采用[x,y] =meshgrid(0:1:2000,-200:1:200);b

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/25 21:42:26
matlab的问题.

之前使用这个公式,我采用
[x,y] =meshgrid(0:1:2000,-200:1:200);
by0 =0.32*x.*(1+0.0004.*x).^(-1/2);
bz0 =0.24*x.*(1+0.0001.*x).^(-1/2);
tempy1 =(-1/2).*((y.*y./by0./by0)+(H^2.by0.bz0));
tempy2 =2.718282.^(tempy1);
c =Q/pi/u.*((by0.*bz0).^(-1)).*tempy2;
meshc(x,y,c);
xlabel('x轴向距离(m)');
ylabel('y轴向距离(m)');
title('铅')
这个编程.数据代入啥的我自己输入.
但是建模的时候,我对这个式子进行了改动

变成了这个样子,就是说好几个一样的式子,但是得乘以个频率,然后加一块,水平不够,因为要画图,上面X.Y已经用了矩阵了,再算的时候就用不了矩阵了,能帮我解决下这个问题吗,

式中X(x,y,0,H)为下风向x米、横向y米、地面处的扩散的气体浓度,单位为kg/m;

Q为源强(即源释放速率),单位为kg/s;
u为平均风速,单位为m/s;
σy为水平扩散系数,计算公式为0.16*x.*(1+0.0001.*x).^(-1/2)    
σz为垂直扩散系数,计算公式为0.12x 
H为泄漏源有效高度,单位为m;y为横向距离,单位为m;z为垂直方向距离,单位为m.
因为风速的关系,我们按频率来对式子进行修正,就变成了
 

其中Hi和fi分别是风速为ui是对应的高度和频率

数据:
Q=0.015079644737231kg/s
风速的倒数1/u=[0.763762     1.013766     0.805282    1.981871   0.435155   0.502842    0.861758    0.431514]
频率f=[0.067692   0.033846    0.070769   0.043076  0.080000   0.233846
0.083076    0.387692]
请说清你的问题,你是数学有问题还是语文有问题?你这个问题的表述谁看谁不明白.先把你的已知参数列出,并最好具体赋值,再把已知的变量和要计算的变量列出,最后你的求和公式是从多少求到多少个啊,是i在循环吗,有递推吗?要画图最多可有4个变量,也就是说X,x,y和o或H,o和H最好为定值,不是变量,或起码一个不是变量.这样连X,x,y和另一个变量o或H,总共4个,多一个都没法画图了.fi是变量还是参数?怎么其它数学建模的都做得挺顺利,这里的问题就层出不穷呢?挺简单一问题搞这么复杂呀!
再问: 还有一部分放在问题补充上面了
H=[209.981728 245.982304 215.960608 385.389424 162.662320
172.409248 224.093152 162.138016]
主要就是因为加了个累加,所以这个式子列不出来了。。图就是以这个函数画个地面上各处的浓度图出来
谢谢啊。略菜,麻烦你了
再答: 你确定
σy为水平扩散系数,计算公式为0.16*x.*(1+0.0001.*x).^(-1/2)
σz为垂直扩散系数,计算公式为0.12x
这可和你自己编的程序不同哦?你确定了我就开始做了,最终X(x,y,0,H)在你的新表达式中没有z,于是就变成了X(x,y,H)=......,然后代入你的H已知参数数组(还有u和f),就变成了X(x,y),于是最终计算的是X与x,y的关系,成图。如果我的理解无误,就等一会吧,不过先确认σy和σz表达式对不对?

我已经计算了,σy和σz可能不对,算出X的值很小,已超出了能小的最小范围了,请确认σy和σz。
再问: 应该对的。污染物浓度X的单位是KG/M3,一般算的时候是mg/m3,所以麻烦你在X的式子后面再乘以个1000000,这样应该就差不多了。真心谢谢了。还有,该怎么联系你
再答: 我也懒得给你乘了,你自己玩吧,已经成图了保存了,把下面程序中的X2的表达式改为X2=1000000*X(:,:,s(2));就行。你小子把我坑苦了,写公式不认真,最后一个exp是有“-”号的,其它的提问都是这样,结果导致我苦想了1个多小时。clear all;
[x,y]=meshgrid(0:20:5000,-2000:20:2000); %设定网格Q=0.015079644737231;%源强
sigy=0.16*x.*(1+0.0001*x).^(-0.5);
sigz=0.12*x;%
H=[209.981728 245.982304 215.960608 385.389424 162.662320 172.409248 224.093152 162.138016];%泄漏源有效高度
u=1./[0.763762 1.013766 0.805282 1.981871 0.435155 0.502842 0.861758 0.431514];
f=[0.067692 0.033846 0.070769 0.043076 0.080000 0.233846 0.083076 0.387692];
s=size(u);%计算u的元素个数,以便设置循环次数for i=1:s(2)
    Qpi=Q./(pi*u(i)*sigy.*sigz+eps);%计算公式第一部分
    ex1=exp(-0.5*(y./(sigy+eps)).^2);%计算公式第二部分
    ex2=exp(-0.5*(H(i)./(sigz+eps)).^2);%计算公式第三部分
    X1(:,:,i)=Qpi.*ex1.*ex2*f(i);%计算扩散气体浓度高维数组
end
X=X1;
for j=2:s(2)
    X(:,:,j)=X(:,:,(j-1))+X(:,:,j);%计算扩散气体浓度高维数组各二维数组之和
endX2=X(:,:,s(2));%计算求和后最终扩散气体浓度mesh(x,y,X2);
xlabel('x轴向距离(m)'),ylabel('y轴向距离(m)'),zlabel('气体扩散浓度'),
title('铅') 下风向可以看到5000米之外都有扩散:垂直风向很快就落下了,2000米就没了:搞这有啥用啊,拿学生寻开心,又不关停污染,累死朕了!
再问: 真不好意思。跪谢啊。
再答: 这是哪搞的数学建模啊?中学还是大学?