trapz(x, y) is the syntax. If isnan is either always true or is never true for f then the "x" coordinates would all be the same (all true or all false, and in that case, the output would be mean() of the "y" coordinates. But your "y" coordinates are your x variable and that happens to be symmetrical around zero, so the mean is zero and your result is 0
Numerical integration over a variable
1 次查看(过去 30 天)
显示 更早的评论
Hello all
I have a function as given below and i want to integrate it over a variable but i am getting answer "V1=0".
However V1 can not be equal to "0" .
What is wrong?
Vb=0.450; dz=1e-10;
Ltot = 20e-9;
z=-Ltot/2:dz:Ltot/2;
L = 10e-9; a=2e-9; x=-L/2:dz/2:L/2;
f=Vb.*real(x./sqrt(a^2-(x-z).^2));
V1=trapz(~isnan(f),x)
0 个评论
采纳的回答
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!