Fourier coefficients: fourier_an and fourier_bn or fourier_cn

### 5.26.1 Fourier coefficients: fourier_an and fourier_bn or fourier_cn

Let f be a T-periodic continuous function on ℝ except perhaps at a finite number of points. One can prove that if f is continuous at x, then;

f(x) |
= |
a0
2
| + |
+∞
∑
n=1
| an cos( |
2π nx
T
| )+bn sin( |
2π nx
T
| )
= |
+∞
∑
n=−∞
| cn e |
2iπ nx
T

where the coefficients an, bn, n∈ N, (or cn, n ∈ Z) are the Fourier coefficients of f. The fourier_an and fourier_bn or fourier_cn commands compute these coefficients.

#### fourier_an

- fourier_an takes four mandatory and one optional argument:
  - expr, an expression depending on a variable.
  - x, the name of this variable.
  - T, the period.
  - n, a non-negative integer.
  - Optionally, a a real number (by default a=0).
- fourier_an(expr,x,T,n ⟨,a⟩) returns the Fourier coefficient an of a function f of variable x defined on [a,a+T) by f(x)=expr and such that f is periodic with period T:

  an= |
  2
  T
  | ∫ |
  a+T
  a
  | f(x)cos( |
  2π nx
  T
  | )dx

To simplify the computations, you should input assume(n,integer) (see Section 4.4.8) before calling fourier_an with an unspecified n to specify that it is an integer.

#### Example

Let the function f, with period T=2, be defined on [−1,1) by f(x)=x2.
Input (to have the coefficient a0):

fourier_an(x^2,x,2,0,-1)

Output:

1
3

Input (to have the coefficient an (n≠ 0)):

assume(n,integer)
fourier_an(x^2,x,2,n,-1)

Output:

4 | ⎛ ⎝ | −1 | ⎞ ⎠ | n
n2 π 2

#### fourier_bn

- fourier_bn takes four mandatory and one optional argument:
  - expr, and expression depending on a variable.
  - x, the name of this variable.
  - T, the period.
  - n, an integer.
  - Optionally, a a real number (by default a=0).
- fourier_bn(expr,x,T,n ⟨,a⟩) returns the Fourier coefficient bn of a function f of variable x defined on [a,a+T) by f(x)=expr and such that f is periodic with period T:

  bn= |
  2
  T
  | ∫ |
  a+T
  a
  | f(x)sin( |
  2π nx
  T
  | )dx

To simplify the computations, you should input assume(n,integer) (see Section 4.4.8) before calling fourier_bn to specify that n is an integer.

#### Examples

- Let the function f, with period T=2, defined on [−1,1) by f(x)=x2.
  Input (to get the coefficient bn (n≠ 0)):

  assume(n,integer)
  fourier_bn(x^2,x,2,n,-1)

  Output:

  0

- Let the function f, with period T=2, defined on [−1,1) by f(x)=x3.
  Input (to get the coefficient b1):
  fourier_bn(x^3,x,2,1,-1)
  Output:

  2 π 2−12
  π 3

#### fourier_cn

- fourier_cn takes four mandatory and one optional argument:
  - expr, and expression depending on a variable.
  - x, the name of this variable.
  - T, the period.
  - n, an integer.
  - Optionally, a a real number (by default a=0).
- fourier_cn(expr,x,T,n ⟨,a⟩) returns the Fourier coefficient cn of a function f of variable x defined on [a,a+T) by f(x)=expr and such that f is periodic with period T:

  cn= |
  1
  T
  | ∫ |
  a+T
  a
  | f(x)e |
  −2iπ nx
  T
  | dx

To simplify the computations, you should input assume(n,integer) (see Section 4.4.8) before calling fourier_cn to specify that n is an integer.

#### Examples

- Find the Fourier coefficients cn of the periodic function f of period 2 and defined on [−1,1) by f(x)=x2.
  Input (to get c0):
  fourier_cn(x^2,x,2,0,-1)
  Output:

  1
  3

  Input (to get cn):

  assume(n,integer)
  fourier_cn(x^2,x,2,n,-1)

  Output:

  2 | ⎛ ⎝ | −1 | ⎞ ⎠ | n
  n2 π 2

- Find the Fourier coefficients cn of the periodic function f, of period 2, and defined on [0,2) by f(x)=x2.
  Input (to have c0):
  fourier_cn(x^2,x,2,0)
  Output:

  4
  3

  Input (to get cn):

  assume(n,integer)
  fourier_cn(x^2,x,2,n)

  Output:

  π · 2 i n+2
  n2 π 2

- Find the Fourier coefficients cn of the periodic function f of period 2π and defined on [0,2π) by f(x)=x2.
  Input:

  assume(n,integer)
  fourier_cn(x^2,x,2*pi,n)

  Output:

  π · 2 i n+2
  n2

  You must also compute cn for n=0: Input:
  fourier_cn(x^2,x,2*pi,0)
  Output:

  4
  3
  | π 2

  Hence for n= 0, c0=4π2/3.

Remarks.

- Input purge(n) (see Section 4.4.9) to remove the hypothesis done on n.
- Input about(n) or assume(n), to know the hypothesis done on the variable n.