如何在scilab中找到从极限-infinity到+ infinity的积分

时间:2010-05-15 14:36:26

标签: integration scilab

如何在 SCILAB 中找到从 -infinity到+ infinity 的限制积分? (要集成的表达式不能直接集成)

1 个答案:

答案 0 :(得分:2)

将积分变量从x =( - inf,inf)更改为z = atan(x)
X = TAN(Z),
dx / dz = 1 /(cos(z))^ 2

在新变量z中,积分限制是从 - %pi / 2 + eps到+%pi / 2-eps,其中eps是一个非常小的正数(否则你将无法除以cos (z))和
积分f(x)dx =
=积分f(x(z))d(x(z))
=积分f(z)dx / dz dz

例如,
函数y =高斯(x); Y = EXP(-x ^ 2/2)/ SQRT(2 * PI%); endfunction可写;
INTG(-10,10,高斯)

通过
实现相同的积分结果 函数y = Gmodified(z); X = TAN(Z); Y =高斯(X)/(COS(Z))^ 2; endfunction可写;
INTG(ATAN(-10),ATAN(10),Gmodified)

有趣的是,Scilab甚至会为上述积分 INTG( - %PI / 2,%PI / 2,Gmodified)
但这只是因为Scilab将1 / cos(%pi / 2)评估为1.633D + 16而不是无穷大。