using the trapz function
显示 更早的评论
hey, I am trying to understand how the trapz works. I am trying to compare its results to an exact solution, but for some reason can't get the same results.
clear all
close all
clc
syms x1 y1
y1=x1^2;
y1_int=int(y1);
y1_int_f=matlabFunction(y1_int)
y_int_exact=[];
del=0.1;
x=[-5:del:5];
y=x.^2;
counter=0;
for Xval=x
counter=counter+1;
y_int_exact(counter)=y1_int_f(Xval)-y1_int_f(x(1));
y_temp=y(1:counter);
y_int_calc(counter)=trapz(y_temp);
end
plot(x,y,'b',x,y_int_calc,'--r',x,y_int_exact,'g')
采纳的回答
更多回答(1 个)
Walter Roberson
2018-10-11
0 个投票
You are not telling it what spacing to the trapz() call. Also your y_int_exact should probably be taking into account the spacing between values.
类别
在 帮助中心 和 File Exchange 中查找有关 Numerical Integration and Differentiation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!