elliptic2D_cart Module Procedure

module procedure elliptic2D_cart module function elliptic2D_cart(srcterm, sig0, sigP, Vminx1, Vmaxx1, Vminx3, Vmaxx3, dx1, dx1i, dx3all, dx3iall, flagdirich, perflag, gridflag, it)

SOLVE IONOSPHERIC POTENTIAL EQUATION IN 2D USING MUMPS.

ASSUME THAT: * WE ARE RESOLVING THE POTENTIAL ALONG THE FIELD LINE * POTENTIAL VARIES IN X1 AND X3. X2 IS NOMINALLY JUST ONE ELEMENT. * LEFT AND RIGHT BOUNDARIES (IN X3) USE DIRICHLET BOUNARY CONDITIONS * TOP (ALTITUDE) CAN BE NEUMANN OR DIRICHLET. * BOTTOM (ALTITUDE) IS ALWAYS DIRICHLET.

This subroutine solves equations of the form:

d/dx1(sig0 dV/dx1) + d/dx3(sigP dV/dx3) = srcterm

(LOGICAL) BOTTOM GRID POINTS + CORNER, USE NEUMANN HERE, PRESUMABLY ZERO. ZZZ - potential problem here if we have inverted grid... force bottom current to zero SOLVE (ALL WORKERS NEED TO SEE THIS CALL)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in), dimension(:,:,:):: srcterm
real(kind=wp), intent(in), dimension(:,:,:):: sig0
real(kind=wp), intent(in), dimension(:,:,:):: sigP
real(kind=wp), intent(in), dimension(:,:):: Vminx1
real(kind=wp), intent(in), dimension(:,:):: Vmaxx1
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:):: dx3all
real(kind=wp), intent(in), dimension(:):: dx3iall
integer, intent(in) :: flagdirich
logical, intent(in) :: perflag
integer, intent(in) :: gridflag
integer, intent(in) :: it

Return Value real(kind=wp), dimension(size(sig0,1),1,size(sig0,3))


Calls

proc~~elliptic2d_cart~~CallsGraph proc~elliptic2d_cart elliptic2D_cart mumps_exec mumps_exec proc~elliptic2d_cart->mumps_exec proc~check_mumps_status check_mumps_status proc~elliptic2d_cart->proc~check_mumps_status mumps_perm mumps_perm proc~elliptic2d_cart->mumps_perm proc~quiet_mumps quiet_mumps proc~elliptic2d_cart->proc~quiet_mumps

Called by

proc~~elliptic2d_cart~~CalledByGraph proc~elliptic2d_cart elliptic2D_cart interface~elliptic2d_cart elliptic2D_cart interface~elliptic2d_cart->proc~elliptic2d_cart program~test_potential2d test_potential2d program~test_potential2d->interface~elliptic2d_cart proc~potential2d_fieldresolved potential2D_fieldresolved proc~potential2d_fieldresolved->interface~elliptic2d_cart interface~potential2d_fieldresolved potential2D_fieldresolved interface~potential2d_fieldresolved->proc~potential2d_fieldresolved proc~potential_root_mpi_curv potential_root_mpi_curv proc~potential_root_mpi_curv->interface~potential2d_fieldresolved interface~potential_root_mpi_curv potential_root_mpi_curv interface~potential_root_mpi_curv->proc~potential_root_mpi_curv interface~potential_root_mpi potential_root_mpi interface~potential_root_mpi->interface~potential_root_mpi_curv proc~electrodynamics_curv electrodynamics_curv proc~electrodynamics_curv->interface~potential_root_mpi interface~electrodynamics electrodynamics interface~electrodynamics->proc~electrodynamics_curv program~gemini3d Gemini3D program~gemini3d->interface~electrodynamics

Contents

None