kill(all)$

maxima : use fourint and definition found ,version 1.0
peter.vlasschaert@gmail.com,08/07/2022

load package,option:
---------------------------

load(fourie),ratprint:false$

? fourie;

input prompt: ?? fourie then you get below menu

 0: Functions and Variables for Fourier series
 1: Introduction to fast Fourier transform
 2: Introduction to Fourier series
 3: fourier  (Functions and Variables for Fourier series)
 4: fourier_elim  (Functions and Variables for to_poly_solve)
 5: totalfourier  (Functions and Variables for Fourier series)

→  given :function :

p1:exp(-x^2);

p1x:listofvars(p1);

→ Fourier Transform (fourie)

p1a:fourint(exp(-x^2),x);

p1b:rhs(ev(args(p1a)[1],nouns));

p1c:listofvars(p1b);

→ info :

float(%pi);

p1d:1/(π)*'integrate(p1*'exp(%i*p1c[1]*p1x[1]),p1x[1],-∞,∞) =1/(π)*integrate(p1*exp(%i*p1c[1]*p1x[1]),p1x[1],-∞,∞) ;

check :p1b ? p1d

p1e: is(p1b=rhs(p1d));

find : Definition Fourier Transform ( used package: fourie)
-----------------------------------------------------------------------------

-∞ < x1 < ∞ :      space 
z1                         .freq.
f1 : function(x1)   ,example : f(x) = p1

p2a:myFT(f1,x1,z1):= (assume(z1>0),
    1/(π)*ev(integrate(f1*exp(%i*x1*z1),x1,-∞,∞),nouns))$

p2aa:grind(myTF)$/*no block statement used : see programming*/

for the function : p1 , "above"

→ definition : fourie  ( = some definitions (use : π → 2*π))

p2b:myFT(f(x),p1x[1],p1c);

→ example : p1

p2c:myFT(p1,p1x[1],p1c);

check : p1b ? p2c

is(p1b=p2c[1]);

other : example 

p3:cos(v)*exp(-abs(v));

p3a:fourint(p3,v);

p3b:myFT(p3,v,z);

why : integrate problems with abs values inside : integrandum
(see : p3b)
rem : fourint have no problems with the absolute values.