subroutine cld
! Variables
integer, intent(in) :: n1
integer, intent(in) :: m1
integer, intent(in) :: nf
integer, intent(in) :: nu
integer, intent(in) :: init
integer, intent(in) :: flag1
integer, intent(in) :: flag2
integer, intent(in) :: fdim1
integer, intent(in) :: fdim2
double precision, intent(in) :: rm
double precision, intent(in) :: beta
double precision, intent(in), dimension (fdim1,fdim1) :: e1
double precision, intent(in), dimension (fdim1-flag1,fdim1-flag1) :: e2
double precision, intent(in), dimension (fdim1) :: w1
double precision, intent(in), dimension (fdim1-flag1) :: w2
double precision, intent(inout), dimension (0:nu,0:m1) :: u
double precision, intent(inout), dimension (0:nf,0:m1) :: f
double precision, intent(inout), dimension (3*(m1-1),0:n1-2) :: ws
integer :: i
integer :: j
integer :: k
integer :: m
integer :: m2
integer :: n
integer :: n2
double precision, dimension (0:fdim1,0:fdim1) :: ainit1
double precision, dimension (0:fdim1-flag1,0:fdim1-flag1) :: ainit2
double precision, dimension (0:fdim1,0:fdim1) :: binit1
double precision, dimension (0:fdim1-flag1,0:fdim1-flag1) :: binit2
double precision, dimension (0:nf,0:m1) :: la
double precision :: pi
real, dimension (2) :: tt
end subroutine cld
subroutine cld(n1,m1,rm,beta,f,nf,u,nu,e1,e2,w1,w2,ws,init,flag1,flag2,fdim1,fdim2)
Solve the 2D Helmholtz equation rm*u -u_xx -beta u_yy = f with homogeneous Diriclet Boundary Conditions. in IxI by using the Chebychev-Legendre method presented in [paper here] Input in Chebychev - calls The legendre solver after transform. Output in Chebychev
Input:
Author: Jan Ivar Moldekleiv
Version: 0.8
integer, intent(in) :: n1
integer, intent(in) :: m1
integer, intent(in) :: nf
integer, intent(in) :: nu
integer, intent(in) :: init
integer, intent(in) :: flag1
integer, intent(in) :: flag2
integer, intent(in) :: fdim1
integer, intent(in) :: fdim2
double precision, intent(in) :: rm
double precision, intent(in) :: beta
double precision, intent(in), dimension (fdim1,fdim1) :: e1
double precision, intent(in), dimension (fdim1-flag1,fdim1-flag1) :: e2
double precision, intent(in), dimension (fdim1) :: w1
double precision, intent(in), dimension (fdim1-flag1) :: w2
double precision, intent(inout), dimension (0:nu,0:m1) :: u
double precision, intent(inout), dimension (0:nf,0:m1) :: f
double precision, intent(inout), dimension (3*(m1-1),0:n1-2) :: ws
integer :: i
integer :: j
integer :: k
integer :: m
integer :: m2
integer :: n
integer :: n2
double precision, dimension (0:fdim1,0:fdim1) :: ainit1
double precision, dimension (0:fdim1-flag1,0:fdim1-flag1) :: ainit2
double precision, dimension (0:fdim1,0:fdim1) :: binit1
double precision, dimension (0:fdim1-flag1,0:fdim1-flag1) :: binit2
double precision, dimension (0:nf,0:m1) :: la
double precision :: pi
real, dimension (2) :: tt