MATLAB 程序问题 80

各位程序如下m函数为function[]=expand(k,Q,C,s,r,ws,wa,wd)x0=0;y0=1787;z0=4;p0=176.4125;R=sqrt((... 各位 程序如下
m函数为
function []=expand(k,Q,C,s,r,ws,wa,wd)
x0=0;
y0=1787;
z0=4;
p0=176.4125;
R=sqrt((-4)*k*s*log((C/((1-r)*Q)).*(4*pi*k*s)^(1.5)));
for i=0:100:s/100
if (wd*(i/100))<=R
R=R-wd;
R0=R;
s1=0:100:1000*pi;
p=0:100:2000*pi;
wsx=ws*cos(wa)*i;
wsy=ws*sin(wa)*i;
[theta,phi]=meshgrid(s1,p);
x=R.*sin(theta).*cos(phi)+wsx;
y=R.*sin(theta).*sin(phi)+wsy;
z=R.*cos(theta);
hold on
surfc(x,y,z)
end
end
R0=R0; %%绘制其它相关信息
view(30,60) %%观察角度
title('污染源扩散图形'); %%图形标题
xlabel('x'); %%x轴标记
ylabel('y'); %%y轴标记\
zlabel('z'); %%z轴标记
axis([-150,200,-200,150,0,200])
x=x0-ws*cos(wa)*s/100;
y=y0-ws*sin(wa)*s/100;
R1=sqrt((x0-x)^2+(y0-y)^2);
end
输入k=0.1;Q=100000;C=100;s=3000;r=2700;wd=200;ws=350;wa=400;
运行下面
>> expand(k,Q,C,s,r,ws,wa,wd)
结果为
Error using surf (line 75)
X, Y, Z, and C cannot be complex

Error in surfc (line 56)
hs = surf(cax, args{:});

Error in expand (line 20)
surfc(x,y,z)
应该如何改进 MATLAB 新手
展开
 我来答
fptan
2014-08-24 · TA获得超过983个赞
知道大有可为答主
回答量:1150
采纳率:100%
帮助的人:702万
展开全部
R1=sqrt((x0-x)^2+(y0-y)^2); 或

R=sqrt((-4)*k*s*log((C/((1-r)*Q)).*(4*pi*k*s)^(1.5)))
产生复数(虚数)了。

检查程序吧!
追问
如何解决  虚数  这个问题  这是高斯扩散模型 应用来找污染源
追答
高斯扩散模型。
问题在:
(C/((1-r)*Q)) = -3.7051e-07
log((C/((1-r)*Q)).*(4*pi*k*s)^(1.5)) = -2.4562 + 3.1416i
R = -1.3782e+02 - 3.0314e+01i
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
雅至且陶然M
2020-05-28 · TA获得超过194个赞
知道答主
回答量:2346
采纳率:0%
帮助的人:119万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式