如何使用matlab编写求积分的程序

如何使用matlab编写求积分的程序,第1张

假设以矩形或梯形面积来拟合吧;

function yanshi(fname,a,b,n)

%定积分演示程序

xi(1)=a

xi(n+1)=b

for i=1:n-1

xi(i+1)=a+(i+rand(1))*(b-a)/n

end

I=0

for i=1:length(xi)-1

sxi=xi(i)+rand(1)*(xi(i+1)-xi(i))

syi=feval(fname,sxi)

I=I+syi*(xi(i+1)-xi(i))

xx=[xi(i) xi(i) xi(i+1) xi(i+1) xi(i)]

yy=[0 syi syi 0 0]

fill(xx,yy,'c')

hold on

end

x=a:(b-a)/100:b

y=feval(fname,x)

plot(x,y,'r','markersize',20)

fprintf('n=%6d I=%12.5f\n',n,I)

hold off

function y=lirui(x)

y=1+x.^2

t = (1/16:1/8:1)'*2*pi

x = sin(t)

y = cos(t)

fill(x,y,'r')

axis square

感觉不需要使用m文件,根据你给的代码,函数f(x)的参数x没有作用啊。具体需求是什么?

下面是求积分

f=@(x) exp(0.5*x).*sin(x+pi/6)

s=quad(f,0,pi)

clc

clear

syms x y

f=zeros(10,10)

for i=1:1:10

for j= 1:1:10

f(i,j)=int(int(200*exp(x*y),x,i-1,i),y,j-1,j)

end

end

double(f)

按上面语句试试


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7891702.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存