Report Typos and Errors    
Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
Private Member Functions | Private Attributes | List of all members
poisson_2d_mudpack_curvilinear Type Reference

Derived type to solve Poisson equation on 2d curvilinear mesh. More...

Inheritance diagram for poisson_2d_mudpack_curvilinear:
Collaboration diagram for poisson_2d_mudpack_curvilinear:

Private Member Functions

procedure, pass(poisson) initialize => initialize_poisson_2d_mudpack_curvilinear
 
procedure, pass(poisson) compute_phi_from_rho => compute_phi_from_rho_2d_mudpack
 
procedure, pass(poisson) compute_e_from_rho => compute_e_from_rho_2d_mudpack
 
procedure l2norm_squared => l2norm_squarred_2d_mudpack
 Compute the squarred L_2 for given coefficients. More...
 
procedure compute_rhs_from_function => compute_rhs_from_function_2d_mudpack
 Compute the right hand side from a given function. More...
 
procedure free => delete_2d_mudpack
 Delete. More...
 

Private Attributes

real(kind=f64), dimension(:, :), pointer cxx_2d
 
real(kind=f64), dimension(:, :), pointer cxy_2d
 
real(kind=f64), dimension(:, :), pointer cyy_2d
 
real(kind=f64), dimension(:, :), pointer cx_2d
 
real(kind=f64), dimension(:, :), pointer cy_2d
 
real(kind=f64), dimension(:, :), pointer ce_2d
 
real(kind=f64), dimension(:), pointer cxx_1d
 
real(kind=f64), dimension(:), pointer cyy_1d
 
real(kind=f64), dimension(:), pointer cx_1d
 
real(kind=f64), dimension(:), pointer cy_1d
 
real(kind=f64), dimension(:), pointer cex_1d
 
real(kind=f64), dimension(:), pointer cey_1d
 
real(kind=f64) cxx
 
real(kind=f64) cyy
 
real(kind=f64) cx
 
real(kind=f64) cy
 
real(kind=f64) ce
 
integer(kind=i32) mudpack_case
 
class(sll_c_interpolator_2d), pointer cxx_2d_interp
 
class(sll_c_interpolator_2d), pointer cxy_2d_interp
 
class(sll_c_interpolator_2d), pointer cyy_2d_interp
 
class(sll_c_interpolator_2d), pointer cx_2d_interp
 
class(sll_c_interpolator_2d), pointer cy_2d_interp
 
class(sll_c_interpolator_2d), pointer ce_2d_interp
 
class(sll_c_interpolator_1d), pointer cxx_1d_interp
 
class(sll_c_interpolator_1d), pointer cyy_1d_interp
 
class(sll_c_interpolator_1d), pointer cx_1d_interp
 
class(sll_c_interpolator_1d), pointer cy_1d_interp
 
class(sll_c_interpolator_1d), pointer cex_1d_interp
 
class(sll_c_interpolator_1d), pointer cey_1d_interp
 
real(kind=f64), dimension(:), pointer work
 array for tmp data More...
 
integer(kind=i32), dimension(4) mgopt
 Option to control multigrid. More...
 
integer(kind=i32), dimension(16) iprm
 Indices to control grid sizes. More...
 
real(kind=f64), dimension(6) fprm
 Real to set boundary conditions. More...
 
integer(kind=i32) iguess
 Initial solution or loop over time. More...
 

Detailed Description

Derived type to solve Poisson equation on 2d curvilinear mesh.

Definition at line 84 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

Member Function/Subroutine Documentation

◆ compute_e_from_rho()

procedure, pass(poisson) compute_e_from_rho
private

Definition at line 160 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ compute_phi_from_rho()

procedure, pass(poisson) compute_phi_from_rho
private

Definition at line 158 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ compute_rhs_from_function()

procedure compute_rhs_from_function
private

Compute the right hand side from a given function.

Definition at line 166 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ free()

procedure free
private

Delete.

Definition at line 169 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ initialize()

procedure, pass(poisson) initialize
private

Definition at line 156 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ l2norm_squared()

procedure l2norm_squared
private

Compute the squarred L_2 for given coefficients.

Definition at line 163 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

Member Data Documentation

◆ ce

real(kind=f64) ce
private

Definition at line 119 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ ce_2d

real(kind=f64), dimension(:, :), pointer ce_2d
private

Definition at line 97 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ ce_2d_interp

class(sll_c_interpolator_2d), pointer ce_2d_interp
private

Definition at line 133 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cex_1d

real(kind=f64), dimension(:), pointer cex_1d
private

Definition at line 107 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cex_1d_interp

class(sll_c_interpolator_1d), pointer cex_1d_interp
private

Definition at line 143 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cey_1d

real(kind=f64), dimension(:), pointer cey_1d
private

Definition at line 109 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cey_1d_interp

class(sll_c_interpolator_1d), pointer cey_1d_interp
private

Definition at line 145 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cx

real(kind=f64) cx
private

Definition at line 115 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cx_1d

real(kind=f64), dimension(:), pointer cx_1d
private

Definition at line 103 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cx_1d_interp

class(sll_c_interpolator_1d), pointer cx_1d_interp
private

Definition at line 139 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cx_2d

real(kind=f64), dimension(:, :), pointer cx_2d
private

Definition at line 93 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cx_2d_interp

class(sll_c_interpolator_2d), pointer cx_2d_interp
private

Definition at line 129 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cxx

real(kind=f64) cxx
private

Definition at line 111 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cxx_1d

real(kind=f64), dimension(:), pointer cxx_1d
private

Definition at line 99 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cxx_1d_interp

class(sll_c_interpolator_1d), pointer cxx_1d_interp
private

Definition at line 135 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cxx_2d

real(kind=f64), dimension(:, :), pointer cxx_2d
private

Definition at line 87 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cxx_2d_interp

class(sll_c_interpolator_2d), pointer cxx_2d_interp
private

Definition at line 123 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cxy_2d

real(kind=f64), dimension(:, :), pointer cxy_2d
private

Definition at line 89 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cxy_2d_interp

class(sll_c_interpolator_2d), pointer cxy_2d_interp
private

Definition at line 125 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cy

real(kind=f64) cy
private

Definition at line 117 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cy_1d

real(kind=f64), dimension(:), pointer cy_1d
private

Definition at line 105 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cy_1d_interp

class(sll_c_interpolator_1d), pointer cy_1d_interp
private

Definition at line 141 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cy_2d

real(kind=f64), dimension(:, :), pointer cy_2d
private

Definition at line 95 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cy_2d_interp

class(sll_c_interpolator_2d), pointer cy_2d_interp
private

Definition at line 131 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cyy

real(kind=f64) cyy
private

Definition at line 113 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cyy_1d

real(kind=f64), dimension(:), pointer cyy_1d
private

Definition at line 101 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cyy_1d_interp

class(sll_c_interpolator_1d), pointer cyy_1d_interp
private

Definition at line 137 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cyy_2d

real(kind=f64), dimension(:, :), pointer cyy_2d
private

Definition at line 91 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ cyy_2d_interp

class(sll_c_interpolator_2d), pointer cyy_2d_interp
private

Definition at line 127 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ fprm

real(kind=f64), dimension(6) fprm
private

Real to set boundary conditions.

Definition at line 150 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ iguess

integer(kind=i32) iguess
private

Initial solution or loop over time.

Definition at line 151 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ iprm

integer(kind=i32), dimension(16) iprm
private

Indices to control grid sizes.

Definition at line 149 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ mgopt

integer(kind=i32), dimension(4) mgopt
private

Option to control multigrid.

Definition at line 148 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ mudpack_case

integer(kind=i32) mudpack_case
private

Definition at line 121 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

◆ work

real(kind=f64), dimension(:), pointer work
private

array for tmp data

Definition at line 147 of file sll_m_poisson_2d_mudpack_curvilinear.F90.

    Report Typos and Errors