Re: NIntegrate with change of variables

*To*: mathgroup at smc.vnet.net*Subject*: [mg77494] Re: NIntegrate with change of variables*From*: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>*Date*: Sun, 10 Jun 2007 07:23:46 -0400 (EDT)*Organization*: The Open University, Milton Keynes, UK*References*: <f4drmk$gli$1@smc.vnet.net>

chuck009 wrote: > Hi, > > I'm working on contour integrals using NIntegrate. Can I specify a transformation rule that would replace both the variable of integration as well as the differential? For example, suppose I wish to integrate f(z)dz around the unit circle, that is z=Exp[i t]. Well I could make the transformation: > > NIntegrate[f[z] /. z->Exp[i t],{t,-pi, pi}] but that does not replace dz with its equivalent in terms of t, that is: > > dz=i Exp[i t] dt > > The correct form to integrate would be: > > NIntegrate[f[Exp[i t]] i Exp[i t],{t,-pi, pi}] > > Is there a way to define a transformation rule that would make both those substitutions for unspecified z=g(t)? You can define a function that handles both the change of variable and the chain rule [1]. For instance, In[1]:= ContourIntegrate[f_, par : (z_ -> g_), {t_, a_, b_}] := NIntegrate[Evaluate[(f /. par)*D[g, t]], {t, a, b}] ContourIntegrate[1/(z - 1/2), z -> Exp[I*t]*(2*Cos[t] + 1), {t, -Pi, Pi}] Out[2]= -17 -5.55112 10 + 12.5664 I Regards, Jean-Marc [1] "Contour integral" http://forums.wolfram.com/mathgroup/archive/1998/Feb/msg00100.html