MathGroup Archive 2008

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

Search the Archive

Re: transformation rule (some


Daniel Lichtblau <danl at wolfram.com> wrote:

[cut]

: If you are not averse to using a global flag variable, you can do it as 
: follows.

: Unprotect[Integrate];

: globalIntegrateFlag = True;

: Integrate[args__] := Block[
:    {globalIntegrateFlag=False, res},
:    res = Integrate[args];
:    If [FreeQ[res,EllipticF], res, HoldForm[Integrate[args]]]
:    ] /; globalIntegrateFlag===True

: Examples:

: In[7]:= InputForm[Integrate[1/Sqrt[1 - m*Sin[phi]^2], phi]]
: Out[7]//InputForm= HoldForm[Integrate[1/Sqrt[1 - m*Sin[phi]^2], phi]]

: In[8]:= Integrate[1/Sqrt[1 - phi^2], phi]
: Out[8]= ArcSin[phi]

Many thanks.  This is what I was after.

Cheers
Tom.

Ps. The Email address in the header is just a spam-trap.
-- 
Tom Crane, Dept. Physics, Royal Holloway, University of London, Egham Hill,
Egham, Surrey, TW20 0EX, England. 
Email:  T.Crane at rhul dot ac dot uk
Fax:    +44 (0) 1784 472794


  • Prev by Date: Re: Select from list
  • Next by Date: Re: Select from list
  • Previous by thread: Re: Re: Deleting Integrate[] transformation rule (some
  • Next by thread: A kernel, multiple notebooks, and Global?