作业帮 > 综合 > 作业

用matlab作含有积分的三维图

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/04/28 21:26:08
用matlab作含有积分的三维图
这样一个函数,想用matlab画出Φ与e、h的坐标图,横坐标是e、h,纵坐标是Φ,Io=1,r=0.01,具体编的程序是:
clc;
clear all;
i=1;
r=0.01;
g=0;
for a=0:0.001:0.01
    k=0;
    g=g+1;
   for  b=0:0.001:0.02
    k=k+1;
    f=@(x) 1-cos(2*atan((sqrt(r^2-a^2*(sin(x)).^2)-a*cos(x))./b));
    e(g)=a;
    h(k)=b;
    y(k)=1/8.*i.*quad(f,0,2*pi);
   end
end
[e,h] = meshgrid(a,b);
surf(e,h,y)
 画不出来 错误信息很多
用matlab作含有积分的三维图
clear all; close all
i = 1;
r = 0.01;
g = 0;
es = [0:0.001:0.01].'; % 变量e的采样序列
hs = [0:0.001:0.02].'; % 变量h的采样序列
[ES, HS] = meshgrid(es, hs);
YS = 0*ES;
for g = 1:length(es)
    e = es(g);
    for  k = 1:length(hs)
        h = hs(k);
        f = @(x) 1-cos(2*atan((sqrt(r^2-e^2*sin(x).^2)-e*cos(x))/h));
        YS(k, g) = quad(f,0,2*pi);
    end
end
YS = 1/8*i*YS;
surf(ES,HS,YS);运行结果如下:

再问: 非常感谢你!!!!但是请问一下为什么会有那么多警告呢?要紧吗? 请问初学者如何学习matlab好呢?
再答: 警告有两种,一种是运行时的警告,一种是editor静态语法检测的警告。 但其实两类警告都是一样的处理方法:仔细读警告内容,自己判断是不是有必要修改。这里实在无法细说,建议自己慢慢研究,不懂的可以问google百度。 毕竟程序已经可以跑了,可以尝试进行修改,改前备份就好。
再问: 那请问初学者学习matlab有啥推荐的书呢?通俗易懂的,谢谢
再答: 我学的时候是学校有课程教,所以没太用什么特殊的教材。自己多百度一下吧,有很多电子书可以看的。