DEFINE A MATRIX USING SPARSE STORAGE (CENTRALIZED ASSEMBLED MATRIX INPUT
SEE SECTION 4.5 OF MUMPS USER GUIDE).
LOAD UP MATRIX ELEMENTS
linear index referencing Phi(ix1,ix3) as a column vector. Also row of big matrix
BOTTOM GRID POINTS + CORNER, USE NEUMANN HERE, PRESUMABLY ZERO
force bottom current to zero
TOP GRID POINTS + CORNER
LEFT BOUNDARY
RIGHT BOUNDARY
INTERIOR
ix1,ix2,ix3-1 grid point in ix1,ix2,ix3 equation
ix1,ix2-1,ix3
ix1-1,ix2,ix3
ix1,ix2,ix3
ix1+1,ix2,ix3
ix1,ix2+1,ix3
ix1,ix2,ix3+1
INIT MUMPS
Arguments
Type
Intent
Optional
Attributes
Name
real(kind=wp),
intent(in),
dimension(:,:,:)
::
srcterm
real(kind=wp),
intent(in),
dimension(:,:,:)
::
Ac
real(kind=wp),
intent(in),
dimension(:,:,:)
::
Bc
real(kind=wp),
intent(in),
dimension(:,:,:)
::
Cc
real(kind=wp),
intent(in),
dimension(:,:,:)
::
Dc
real(kind=wp),
intent(in),
dimension(:,:,:)
::
Ec
real(kind=wp),
intent(in),
dimension(:,:,:)
::
Fc
real(kind=wp),
intent(in),
dimension(:,:)
::
Vminx1
real(kind=wp),
intent(in),
dimension(:,:)
::
Vmaxx1
real(kind=wp),
intent(in),
dimension(:,:)
::
Vminx2
real(kind=wp),
intent(in),
dimension(:,:)
::
Vmaxx2
real(kind=wp),
intent(in),
dimension(:,:)
::
Vminx3
real(kind=wp),
intent(in),
dimension(:,:)
::
Vmaxx3
real(kind=wp),
intent(in),
dimension(0:)
::
dx1
real(kind=wp),
intent(in),
dimension(:)
::
dx1i
real(kind=wp),
intent(in),
dimension(0:)
::
dx2all
real(kind=wp),
intent(in),
dimension(:)
::
dx2iall
real(kind=wp),
intent(in),
dimension(0:)
::
dx3all
real(kind=wp),
intent(in),
dimension(:)
::
dx3iall
integer,
intent(in)
::
flagdirich
logical,
intent(in)
::
perflag
integer,
intent(in)
::
it
Return Value real(kind=wp),
dimension(size(srcterm,1),size(srcterm,2),size(srcterm,3))
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.