calculate_moments_fullfluxsurface Subroutine

public subroutine calculate_moments_fullfluxsurface(g, dens, upar, pres)

For momentum flux species-dependent factor by which velocity moments must be multiplied to get density, pressure, etc. set species-dependent factors needed for density, parallel flow and pressure Already allocated arrays (allocated in time_advance.f90). Set to zero just in case

This returns f = g + Z/T * ( - phi) NB: g_to_f0 TODO-GA: check

g1 = J0 * f g2 = J1 * f

assume only a single flux annulus for every (z,vpa,mu,spec) point switch from ky >= 0 and kx = [-kxmax, kxmax] to ky = [-kymax, kymax] and kx >= 0 for every (z,vpa,mu,spec) point, Fourier tranform from ky to y space to get the kx component of _r

the integrand for the density moment is the distribution function integrate over v-space to get the density, normalised by the reference density.

the integrand for the pressure moment is the energy-weighted distribution function integrate over v-space to get the pressure, normalised by the reference pressure.

the integrand for the parallel flow moment is the parallel velocity integrate over v-space to get the parallel flow, normalised by the reference thermal speed.

Arguments

Type IntentOptional Attributes Name
complex, intent(in), dimension(:, :, -nzgrid:, :, vmu_lo%llim_proc:) :: g
complex, intent(out), dimension(:, :, -nzgrid:, :) :: dens
complex, intent(out), dimension(:, :, -nzgrid:, :) :: upar
complex, intent(out), dimension(:, :, -nzgrid:, :) :: pres