Bonus Project 1

Bonus Project 1
Math 338 – Differential Equations II
Professor Alexei Cheviakov
Ashton Seth Reimer
11050307
Explanation
For this project, two dimensional Fourier series were studied. More specifically, the convergence
of the series at a discontinuity was studied. In a one dimensional Fourier series, the series converges to
the average of the upper and lower extremes of the discontinuity, and so it was posited that in a two
dimensional Fourier series this would also be the case. Two cases were studied: one using a piecewise
discontinuous function consisting of four functions, and one using a piecewise discontinuous function
consisting of three functions.
Method
To study the convergence at the discontinuity, the functions were decomposed and then
reconstructed using a certain number of terms. Each piecewise function was designed so that they had
a discontinuity at the point (1,1). Therefore the convergence at this point was studied. Using the ideas
about the convergence of the one dimensional Fourier series at a discontinuity as a guide, the average
value of the function within a rectangle of very small side lengths centred at (1,1) was studied as the
number of terms in the series was increased. As one can see from the following maple code and plots,
the Fourier series converged to the average value of the extremes of the functions that made up the
piecewise functions as expected at the discontinuity.
Conclusion
As seen by the maple code and plots, the two dimensional Fourier series converges in the same
way as the one dimensional Fourier series at a discontinuity. Furthermore, it is supposed that an ndimensional Fourier series would behave in the same way and would be interesting to study.
> restart; with(plots):
> f:=(x,y) ->piecewise(y>1 and y<2 and x>1 and x<2, 1,y>1 and y<2 and x>0 and x<1,
2,y>0 and y<1 and x>1 and x<2, 3,y>0 and y<1 and x>0 and x<1, 4);A:=2;B:=2;assume(n,
integer):assume(m, integer):
(1)
> plot3d(f(x,y),x=0..A,y=0..B,axes=boxed,numpoints=1000);
> evalf(f(1,1));
(2)
> Anm:=4/(A*B)*int(int(f(x,y)*cos(Pi*n*x/A)*cos(Pi*m*y/B),x=0...A),y=0...B);
(3)
> Bnm:=4/(A*B)*int(int(f(x,y)*sin(Pi*n*x/A)*sin(Pi*m*y/B),x=0...A),y=0...B);
(4)
> g:=sum(sum(Anm*cos(Pi*n*x/A)*cos(Pi*m*y/B)+Bnm*sin(Pi*n*x/A)*sin(Pi*m*y/B),n=1..50),m=1..50):
> plot3d(g,x=0...A,y=0...B,axes=boxed,numpoints=1000);
> s:=100:dx:=0.00001:evalf(int(int(sum(sum(Anm*cos(Pi*n*x/A)*cos(Pi*m*y/B)+Bnm*sin(Pi*n*x/A)*sin(Pi*m*y/B),n=1...s),m=1...s),x=1dx...1+dx),y=1-dx...1+dx)/(2*dx*2*dx));
(5)
> (4+3+2+1)/4;
(6)
> p1:=plot([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,100],[4.05
> h:=(x,y) ->piecewise(y>0 and y<1 and x>1 and x<2, -1,y>1 and y<2 and x>1 and x<2,
0,y>0 and y<2 and x>0 and x<1, -2);A:=2;B:=2;assume(n, integer):assume(m, integer):
(7)
> plot3d(h(x,y),x=A..0,y=B..0,axes=boxed,numpoints=1000);
> evalf(h(1,1));
(8)
> Cnm:=4/(A*B)*int(int(h(x,y)*cos(Pi*n*x/A)*cos(Pi*m*y/B),x=0...A),y=0...B);
(9)
> Dnm:=4/(A*B)*int(int(h(x,y)*sin(Pi*n*x/A)*sin(Pi*m*y/B),x=0...A),y=0...B);
(10)
> k:=sum(sum(Cnm*cos(Pi*n*x/A)*cos(Pi*m*y/B)+Dnm*sin(Pi*n*x/A)*sin(Pi*m*y/B),n=1..50),m=1..50):
> plot3d(k,x=A..0,y=B..0,axes=boxed,numpoints=1000);
> t:=100:dx:=0.00001:evalf(int(int(sum(sum(Cnm*cos(Pi*n*x/A)*cos(Pi*m*y/B)+Dnm*sin(Pi*n*x/A)*sin(Pi*m*y/B),n=1..t),m=1..t),x=1dx...1+dx),y=1-dx...1+dx)/(2*dx*2*dx));
(11)
> (-1-2-2)/4;
(12)
> p3:=plot([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,100],[2.026423625,-2.026423625,-.9006327105,-.9006327105,-1.522069291,-1.522069291,-1.061643785,-1.061643785,-1.412604632,-1.412604632,-1.121733225,-1.121733225,1.365675062,-1.365675062,-1.152873214,-1.152873214,-1.339704637,-1.339704637,-1.171879285,-1.171879285,-1.323237578,-1.323237578,-1.184676050,-1.184676050,1.311870718,-1.311870718,-1.193875499,-1.193875499,-1.303554632,-1.303554632,-1.200806148,-1.200806148,-1.297207398,-1.297207398,-1.206214536,-1.206214536,1.292204280,-1.292204280,-1.210552250,-1.210552250,-1.288159434,-1.288159434,-1.214108426,-1.214108426,-1.284821733,-1.284821733,-1.217076732,-1.217076732,1.282020716,-1.282020716,-1.234286054]):p4:=plot([1,100],[-1.25,-1.25],color=green):display({p3,p4});
>
(13)
>