Re: Integrals of Fourier Series
- Subject: [mg3243] Re: Integrals of Fourier Series
- From: BobHanlon at aol.com
- Date: 20 Feb 1996 06:50:42 -0600
- Approved: usenet@wri.com
- Distribution: local
- Newsgroups: wri.mathgroup
- Organization: Wolfram Research, Inc.
- Sender: daemon at wri.com
"Mma doesn't know that Sum and Integrate commute, and that Sin[n Pi] = 0 for all integer n. How to do this?" ____________________ Unprotect[Sin, Cos]; Clear[Sin, Cos]; Sin[n_ Pi /; IntegerQ[n]] = 0; Cos[n_ Pi /; IntegerQ[n]] := (-1)^n; Protect[Sin, Cos]; Examples: n/: IntegerQ[n] = True; Print[StringForm["`` = ``\n", #, ToExpression[#] // Simplify]]& /@ {"Sin[n Pi]", "Sin[(2n+1) Pi/2]", "Cos[n Pi]", "Cos[(2n+1) Pi/2]"}; Sin[n Pi] = 0 n Sin[(2n+1) Pi/2] = (-1) n Cos[n Pi] = (-1) Cos[(2n+1) Pi/2] = 0 (* sumSquared converts square of sum to nested sums *) sumSquared = {Sum[term_, {n_, lower_, upper_}]^2 :> Sum[term (term /. n :> m), {n, lower, upper}, {m, lower, upper}]}; Example of using sumSquared: Print[StringForm["`` = ``", temp = Sum[A[n] x^n/n!, {n, 1, Infinity}]^2, temp /. sumSquared]] n x A[n] 2 Sum[-------, {n, 1, Infinity}] = n! m + n x A[m] A[n] Sum[----------------, {n, 1, Infinity}, m! n! {m, 1, Infinity}] (* commuteIntegrateSum converts integral of sum to sum of integrals -- single or double sums *) commuteIntegrateSum = { Integrate[Sum[term_, {n_, lower_, upper_}], x_] :> Sum[Integrate[term, x], {n, lower, upper}], Integrate[Sum[term_, {n1_, lower1_, upper1_}, {n2_, lower2_, upper2_}], x_] :> Sum[Integrate[term, x], {n1, lower1, upper1}, {n2, lower2, upper2}] }; Example of using commuteIntegrateSum: Print[StringForm["`` = ``", temp = Integrate[Sum[A[n] x^n/n!, {n, 1, Infinity}], x], temp /. commuteIntegrateSum /. n! -> (n+1)!/(n+1)]] n x A[n] Integrate[Sum[-------, {n, 1, Infinity}], x] = n! 1 + n x A[n] Sum[-----------, {n, 1, Infinity}] (1 + n)! Example of using both sumSquared and commuteIntegrateSum: Print[StringForm["`` = ``", temp = Integrate[Sum[A[n] x^n/n!, {n, 1, Infinity}]^2, x], temp /. sumSquared /. commuteIntegrateSum]] n x A[n] 2 Integrate[Sum[-------, {n, 1, Infinity}] , x] = n! 1 + m + n x A[m] A[n] Sum[--------------------, {n, 1, Infinity}, (1 + m + n) m! n! {m, 1, Infinity}]