Matlab中的积分

Matlab中的积分,matlab,Matlab,我有3个方程式: f=(exp(-x.^2)).*(log(x))。^2 g=exp(-x.^2) h=(log(x))。^2 时间间隔为: x=0.05:10 我能正确地画出方程式,但当我试图找到一个积分时,它说有一个错误 我用来求积分的代码是: 积分(f,0,Inf) 积分(g,0,inf) 积分(h,0,10) f和g的积分从0到无穷大,h的积分从0到10。我的所有求积分的代码都不起作用。您需要将f、g、h定义为如下所示的函数。请参阅integral()的文档,它将函数作为第一个参数 x=

我有3个方程式:

f=(exp(-x.^2)).*(log(x))。^2
g=exp(-x.^2)
h=(log(x))。^2

时间间隔为:

x=0.05:10

我能正确地画出方程式,但当我试图找到一个积分时,它说有一个错误

我用来求积分的代码是:

积分(f,0,Inf) 积分(g,0,inf) 积分(h,0,10)


f和g的积分从0到无穷大,h的积分从0到10。我的所有求积分的代码都不起作用。

您需要将f、g、h定义为如下所示的函数。请参阅integral()的文档,它将函数作为第一个参数

x=0.05:10
f=@(x)(exp(-x.^2)).*(log(x))。^2
g=@(x)exp(-x.^2)
h=@(x)(对数(x))。^2
积分(f,0,Inf)%1.9475
积分(g,0,inf)%0.8862
积分(h,0,10)%26.9673
这种语法称为匿名函数,基本上它们是无名函数。在上述情况下,它将x作为输入并返回log(x)平方。 从现在起,h是一个函数,可以这样使用

h(1)  % will be equal 0
有关匿名函数的更多信息,请参阅《matlab匿名函数指南》:

h(1)  % will be equal 0