求助matlab大神,怎样把一个变量带入3元方程中,做出3维图形~~~~~~~~~~~~~~~~

matlab大神有空的话帮我看看这个问题,呵呵http://hi.baidu.com/ioaymmdqzlcjowe/item/21625d19dadb2e3bd1d66... matlab大神有空的话帮我看看这个问题,呵呵
http://hi.baidu.com/ioaymmdqzlcjowe/item/21625d19dadb2e3bd1d66d02
展开
 我来答
tianxiawulang
2013-08-18 · TA获得超过2.7万个赞
知道大有可为答主
回答量:4732
采纳率:89%
帮助的人:2640万
展开全部

其实这个问题比较简单:在给定区间范围内绘制v=f(z,n)的曲面,公式是现成的,用meshgrid生成区域的座标点,然后代入公式计算,最后用mesh或surf之类的函数绘图即可。

 

唯一的问题是,v不仅是z和n的函数,还有一个自变量x。但x并非真正的独立变量,而是受另外两个三元方程约束的,对于给定的z,可以用question/577643560.html中的方法求出对应的x来。

 

你在空间贴出的代码是上述问题中的第一种方法。如果是用Maple内核的MATLAB(例如6.5或2007b,这两个版本上我做了测试),应考虑使用第二种方法,精度更高。

 

以下是代码,供参考(已作为附件上传):

% 绘图座标范围
ni = linspace(2, 100, 20);
zi = linspace(1, 20000, 30);

% 对于给定的z,求解对应的x
syms x y z 
eq1=-2.*pi.*0.05415.*0.0000002.*sin(x).*sin((5.*pi./6)+x)-4./3.*pi.* ... 
    0.0000002.^3.*2000.*z.*9.8+2./3.*pi.*z.*9.8.*0.0000002.^3.* ... 
    (1820-1000).*(cos(x)).^3-2./3.*pi.*z.*9.8.*0.0000002.^3.* ... 
    (1820+1000)-pi.*z.*9.8.*0.0000002.^2.*(y+0.0000002.*cos(x)).* ... 
    (1820-1000).*(sin(x)).^2;  
eq2=-sin((5.*pi./6)+x).*besselk(0,(z.*9.8.*(1820-1000)./0.05415).^ ... 
    0.5.*0.0000002.*sin(x))+(z.*9.8.*(1820-1000)./0.05415).^0.5.* ... 
    y.*besselk(1,(z.*9.8.*(1820-1000)./0.05415).^0.5.*0.0000002.*sin(x)); 
xi = sym( zi*0 ); 
yi = xi; 
for i = 1 : length(zi) 
    z0 = zi(i); 
    [xi(i), yi(i)] = solve(subs(eq1,z,z0), subs(eq2,z,z0)); 
end

% SOLVE的求解结果x位于要求的坐标范围之外,将其减小2*pi并转为数值类型
xi = double(xi-2*pi);

% 计算函数值
[n, z] = meshgrid(ni, zi);
[n, x] = meshgrid(ni, xi);
v = 2*0.05415*(-tan(5*pi/6+x-pi)./(((z*9.8*(1820-1000)/0.05415) ...
    .^0.5).*besselk(1,((z*9.8*(1820-1000)/0.05415).^0.5)*0.0000002 ...
    .*sin(x)))).^2.*((z*9.8*(1820-1000)/0.05415).^0.5).*besselk(1, ...
    ((z*9.8*(1820-1000)/0.05415).^0.5)*0.0000002.*n).*(1-1/3.* ...
    n.^-1+n.^-3-15/4.*n.^-4-4.46/1000.*(n-1.7).^-2.867)./(3*0.8937 ...
    /1000*0.0000002*1.0);


% 绘制曲面及标注图形
mesh(n, z, v)
view(30,15)
xlabel('n')
ylabel('z')
zlabel('v')

 

曲面效果如下图所示。

剑圣864
2013-08-17
知道答主
回答量:41
采纳率:0%
帮助的人:13.4万
展开全部
这么爱学习
追问
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式