我试图用matlab绘制菲涅耳积分。
x(t) =∫cos(v^2)dv界:a= 0,b=t(T)=∫sin(u^2)du界:a= 0,b=t
情节: x(t) vs y(t) for -4 4pi <= t <= 4 4pi
我一直在网上寻找如何做到这一点,但无法获得任何有用的方法,甚至开始这个问题。任何事情都会有帮助,即使它只是指向正确的方向。提前谢谢。
发布于 2015-06-05 00:52:27
这是一个棘手的图(我假设它来自一个数值方法分配)。要集成的函数是高度振荡的:这是区间0到4*pi上的sin(x^2)。

在这个范围内,使用固定的步骤大小进行集成仍然是可行的,但是它需要非常小:我会选择h=0.001。此外,为了提高精度,我建议修改cumsum (它对应于“左/右端点”的集成方法),以便实现梯形方法。这意味着移除和中使用的最左和最右边值的1/2。
作为一个例子,我给出了一个从0到4*pi的样例程序,让你适应你的范围。(如果使用积分为偶数的事实,则不必计算更多的积分。)
h = 0.001;
t = 0:h:4*pi;
x = cos(t.^2);
y = sin(t.^2);
X = h*(cumsum(x)-x(1)/2-x/2);
Y = h*(cumsum(y)-y(1)/2-y/2);
plot(X,Y)

备注
https://stackoverflow.com/questions/30639497
复制相似问题