MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

hadamard finite part

  • To: mathgroup at smc.vnet.net
  • Subject: [mg67961] hadamard finite part
  • From: dimmechan at yahoo.com
  • Date: Tue, 18 Jul 2006 05:51:04 -0400 (EDT)
  • Sender: owner-wri-mathgroup at wolfram.com

I work in the field of applied mathematics and I am interested in the
symbolical/numerical integration of integrals in the Hadamard sense
(that is, the finite part of divergent integrals).
My integrals are much more complicated but here I use some trivial
examples to show the point.
[For clarity, I have converted the output expressions to
InputForm]

5.2 for Microsoft Windows (June 20, 2005)

Consider first the integral,

Integrate[1/x,{x,0,1}]
                             1
Integrate::idiv: Integral of - does not converge on {-1, 2}.
More�
                             x

Integrate[x^(-1), {x, -1, 2}]


which does not exist in the Reimann sense, since it has a
non-integrable singularity at x=0.

However in the Cauchy sense the integral exists,

Integrate[1/x,{x,-1,2},PrincipalValue->True]
Log[2]

N[%]

0.6931471805599453

which is equivalent to

Integrate[1/x,{x,-1,-e1},Assumptions0<e1<1]+Integrate[1/x,{x,e2,2},Assumptions->0<e2<2]

Log[e1] + Log[2/e2]

PowerExpand[%]

Log[2] + Log[e1] - Log[e2]

and then taking e1=e2

%/.e1->e2

Log[2]

Limit[%,e2->0,Direction->-1]

Log[2]

Of course the Mathematica is also able to evaluate numerically the
principal value of
this integral,

Needs["NumericalMath`"]

CauchyPrincipalValue[1/x,{x,-1,{0},2}]

NIntegrate::ploss: Numerical integration stopping due to loss of
precision. Achieved neither the requested PrecisionGoal nor
     AccuracyGoal; suspect one of the following: highly oscillatory
integrand or the true value of the integral is 0. If your
     integrand is oscillatory on a (semi-)infinite interval try using
the option Method->Oscillatory in NIntegrate. More�

0.6931471805602387

So everything is good up to now.

Next, suppose the integral

Integrate[1/x^2,{x,-1,2}]

                              -2
Integrate::idiv: Integral of x   does not converge on {-1, 2}.
More�

Integrate[x^(-2), {x, -1, 2}]

There is a again non-integrable singularity at x=0. Due to the kind of
the singularity (double pole) the integral does not exist even in the
Cauchy sense.

Integrate[1/x2,{x,-1,-e1},Assumptions->0<e1<1]+Integrate[1/x2,{x,e2,2},Assumptions->0<e2<=2]

-3/2 + e1^(-1) + e2^(-1)

%/.e1->e2

-3/2 + 2/e2

Limit[%,e2->0,Direction->-1]

Infinity


Nevertheless, the integral exists in the Hadamard sense and is equal to
finite part of the previous result

%%%-( e1^(-1) + e2^(-1))

-3/2

Mathematica is able to provide previous result:

Integrate[1/x^2,{x,-1,2},GenerateConditions->False]

-3/2

My first question now:
Is it a way to get the finite part of a divergent integral through
performing
numerical integration (e.g. using NIntegrate) in Mathematica?
I have seen some papers presenting some propper algorithms dealing with
numerical integration of Hadamard finite part integrals but I cannot
find any related work in connection with Mathematica.

There are also some other questions.

Consider the integral,


Integrate[1/x,{x,0,2}]

                             1
Integrate::idiv: Integral of - does not converge on {0, 2}. More�
                             x

Integrate[x^(-1), {x, 0, 2}]


The integral does not exist neither in the Reimann sense nor in the
Cauchy
sense. However it does exist in the Hadamard sense and is equal to the
finite part of

Integrate[1/x,{x,e,2},Assumptions->0<x<2]//PowerExpand

Log[2] - Log[e]

%-Log[e]

Log[2]

Mathematica 3.0 and 4.0 suceeds in providing this result:

Integrate[1/x,{x,0,2},GenerateConditions->False]  (*version 3.0 and
4.0*)

Log[2]

However Mathematica 5.1 and 5.2 gives the result

Integrate[1/x,{x,0,2},GenerateConditions->False]  (*version 5.1 and
5.2*)

Infinity

Why exists this difference?
I can trust that for divergent integrals
Integrate[integrand,{x,a,b},GenerateConditions->False]
provides the desirable result in the Hadamard sense?
Is it a way to get Integrate to give always the finite part of a
divergent integral?
Are there any other alternative methods (such as the implementation of
aymptotic techniques in mathematica) to get the finite part of a
divergent integral?
Is there any book that connect Mathematica with distribution theory?

I really appreciate any assistance.

P.S. The finite part of a divergent integral is of great importance in
the area of applied mathematics. For example, the vertical displacement
at the surface of an elastic linear isotropic half space acted upon by
an applied line load (the so called Flamant problem) is given by the
Fourier cosine transform of the function 1/ξ, which does not exist in
the Reimann sense (the integral has a non integrable singularity at
ξ=0). Indeed,

Series[Cos[j]/j,{j,0,3}]//Normal

\!\(TraditionalForm\`x\^3\/24 - x\/2 + 1\/x\)

However in the Hadamard sense it does exist and is equal to

Cancel[PowerExpand[Integrate[(1/Î?Î?)Cos[
    Î?Î? x],{Î?Î?,0,βÂ?Â?},GenerateConditions\[Rule]False]]]

-EulerGamma - Log[x]

or

FullSimplify[Sqrt[Pi/2]FourierCosTransform[1/j,j,x],x>0]

-EulerGamma - Log[x]

This is a common practice to elasticity problems and the "loss" of
infinity correcponds to rigid-body displacement (cf. e.g. Horacio A.
Sosa and Leon Y. Bahar: "Transition from airy stress function to state
space formulation of elasticity"  Journal of the Franklin Institute,
Volume 329, Issue 5, September 1992, Pages 817-828)


  • Prev by Date: RE: Best testing framework?
  • Next by Date: writing ASCII-files in UNIX-format from Windows
  • Previous by thread: Re: LogLogErrorListPlot?
  • Next by thread: Re: hadamard finite part