Home Online Manual
Top
Back: timestep
Forward: PartitionVar
FastBack:
FastForward:
Up: finitediff_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.15.3.17 fouriersystem

Procedure from library finitediff.lib (see finitediff_lib).

Usage:
fouriersystem(M,A); M a list of matrices, A a list of approximations;

Return:
type list; each entry is some matrix obtained by performing the substitution of the single approximations into the system of pde's, partitioning the equation into the several timesteps and fouriertransforming these parts

Example:
 
LIB "finitediff.lib";
list D="Ut","Ux","Uy","U";
list V="t","x","y";
list P="a","b";
setinitials(V,D,P);
matrix M[2][2]=0,-a,-a,0;
list Mat=unitmat(2),M;
list Appr=forward(Ut,U,t),trapezoid(Ux,U,x);
def s=fouriersystem(Mat,Appr);s;
==> [1]:
==>    [1]:
==>       [1]:
==>          _[1,1]=(I*T*Sx+T*Cx)
==>          _[1,2]=0
==>          _[2,1]=0
==>          _[2,2]=(I*T*Sx+T*Cx)
==>       [2]:
==>          _[1,1]=(I*Sx+Cx)
==>          _[1,2]=(2*I*Sx*a*dt+2*Cx*a*dt-2*a*dt)/(dx)
==>          _[2,1]=(2*I*Sx*a*dt+2*Cx*a*dt-2*a*dt)/(dx)
==>          _[2,2]=(I*Sx+Cx)
==>    [2]:
==>       [1]:
==>          _[1]=(I*T*Sx+T*Cx)
==>       [2]:
==>          _[1]=(-2*I*Sx*a*dt+I*Sx*dx-2*Cx*a*dt+Cx*dx+2*a*dt)/(dx)
==>          _[2]=(2*I*Sx*a*dt+I*Sx*dx+2*Cx*a*dt+Cx*dx-2*a*dt)/(dx)
==> [2]:
==>    [1]:
==>       [1]:
==>          (T^2)
==>    [2]:
==>       [1]:
==>          (-8*Cx*a^2*dt^2+4*Cx*a*dt*dx+8*a^2*dt^2-4*a*dt*dx+dx^2)/(dx^2)
==>       [2]:
==>          (-8*Cx*a^2*dt^2-4*Cx*a*dt*dx+8*a^2*dt^2+4*a*dt*dx+dx^2)/(dx^2)