Hello I'm trying to integrate the following function in MATLAB
but it's returing the wrong answer when I try something like
This is what I have tried so far:
fun = @(t,x,y) exp(1i.*(t.^4+x.*t.^2+y.*t));
P = @(x,y) integral(@(t)fun(t,x,y),-Inf,Inf);
P(1,1)
Any help appreciated and many thanks in advance

3 个评论

what’s the exact answer?
exp(i*(t^4+x*t^2+y*t)) does not tend to 0 as | t| -> Inf. Thus your integral does not exist (at least in the usual sense).
According to WolframAlpha the answer is 1.20759 + 0.601534 i
Keep in mind it's a complex exponential so there is a finite solution. This is know as the Pearcey Integral. I am more concerned that I have entered the formula incorrectly than the actual integral itself. Is this the correct way to approach the problem.

请先登录,再进行评论。

 采纳的回答

Torsten
Torsten 2019-2-15

0 个投票

format long
fun = @(t,x,y) exp(-t.^4 + 1i.*y.*t - x.*t.^2 + 1i*pi*0.125);
P = @(x,y) integral(@(t)fun(t,x*exp(-1i*pi*0.25),y*exp(1i*pi*0.125)),-Inf,Inf);
P(1,1)
Reference:
https://arxiv.org/pdf/1601.03615.pdf

更多回答(1 个)

Abhishek Hullur
Abhishek Hullur 2021-8-8

0 个投票

. Evaluate around the rectangle with vertices

类别

在 帮助中心 和 File Exchange 中查找有关 MATLAB 的更多信息

产品

版本

R2018b

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by