马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
先贴上代码吧
- x=linspace(0,1000,100);
- y=linspace(-100,100,100);
- [X,Y]=meshgrid(x,y);
- y1=0.04*X.*(1+0.0001*X).^(-0.5);%y1,z1为扩散参数
- z1=0.016*X.*(1+0.0003*X).^(-1);
- Q=1000;u=2;H=5;z=0; h =1; %模型计算参数
- c1=1;c2=2;c3=3; %警戒浓度
- C=Q./(3.14*u*y1.*z1).*exp(-Y.^2./(2*y1.^2)).*(exp(-(z-H)^2./(2*z1.^2))+exp(-(z+H)^2./(2*z1.^2)));%高斯烟羽扩散模型
- [G]=contour(x,y,C,[c1,c2,c3]) ;
- clabel(G)
- grid on
- xlabel('x'),ylabel('y')
- title('特定浓度的等值线C');
- grid on
- hold on
复制代码
结果绘制出来的图是这样的
但是我想绘制的图是类似与这样的图:
想要绘制的图
也就是说,我上面的代码绘制的等值线图偏离的坐标原点0,自己查了下原因,原以为问题出在:计算出来的C值中有NaN,所以在计算C值之前对它的分母,也就是(3.14*u*y1.*z1),加上了个esp,但是得到的图形还是偏离了坐标原点0的,而且得到的C值偏大了很多了,最大值为9(原来最大值4,这个才是对的)。
现在不知道怎么解决了,求助各位大神帮帮啊,小女子感激不尽啊! |