XGCa
Modules | Functions/Subroutines | Variables
dbc.F90 File Reference

Modules

module  dbc_mod
 "(D)irichlet (B)oundary (C)onditions" A module for evaluating Dirichlet boundary conditions for the Fourier decomposed Ampere and Poisson equations.
 

Functions/Subroutines

subroutine, public dbc_mod::dbc_weights (weights, R, Z, n, grid)
 Returns weights \( w_i(R,Z) \) for approximating the integral \( \Phi(R,Z)=\int_{\Omega'}\frac{R' f(R',Z')}{\sqrt{R'^2+R^2+(Z-Z')^2}}g(k,n)dR'dZ' \) as \( \Phi(R,Z)\approx\sum_{i=1}^{n_{\textrm{nodes}}} w_i f_i \). Here \( g(k,n)=\int_0^{2\pi}\frac{\cos(nx)}{\sqrt{1-k\cos(x)}}dx \) and \( k(R,Z,R',Z')=\frac{2RR'}{R^2+R'^2+(R-R')^2} \). The data \( f(R',Z') \) is assumed piecewise linear over the triangulation of the domain \( \Omega \) and Gauss quadrature is used for the \( dR'dZ' \) integral. More...
 
real(kind=8) function, public dbc_mod::dbc_triangle (R, Z, RS, ZS, FS, n)
 Evaluates the integral \( Phi(R',Z')=\int_{\Delta}\frac{R' f(R',Z')}{\sqrt{R'^2+R^2+(Z-Z')^2}}g(k,n)dR'dZ' \) where \( g(k,n)=\int_0^{2\pi}\frac{\cos(nx)}{\sqrt{1-k\cos(x)}}dx \) and \( k(R,Z,R',Z')=\frac{2RR'}{R^2+R'^2+(R-R')^2} \) using linear interpolation for the data \( f(R',Z') \) over the triangle \( \Delta \) and Gauss quadrature for the \( dR'dZ' \) integral. More...
 
real(kind=8) function, dimension(3) dbc_mod::dbc_triangle2dbarycoords (xs, ys, x, y)
 

Variables

integer, parameter dbc_mod::ngauss =6
 number of points for the Gauss-quadrature over a unit triangle More...
 
real(kind=8), parameter dbc_mod::pi = 4*atan(1.0D0)
 value for pi used inside the module. More...
 
real(kind=8), dimension(6), parameter dbc_mod::xi =(/ 0.816847572980459D0, 0.091576213509771D0, 0.091576213509771D0, 0.108103018168070D0, 0.445948490915965D0, 0.445948490915965D0 /)
 x coordinates for the Gauss-quadrature over a unit triangle More...
 
real(kind=8), dimension(6), parameter dbc_mod::yi =(/ 0.091576213509771D0, 0.816847572980459D0, 0.091576213509771D0, 0.445948490915965D0, 0.108103018168070D0, 0.445948490915965D0 /)
 y coordinates for the Gauss-quadrature over a unit triangle More...
 
real(kind=8), dimension(6), parameter dbc_mod::wi =(/ 0.109951743655322D0, 0.109951743655322D0, 0.109951743655322D0, 0.223381589678011D0, 0.223381589678011D0, 0.223381589678011D0 /)
 weight for the Gauss point in Gauss-quadrature over a unit triangle More...