init_vpa_grid Subroutine

public subroutine init_vpa_grid()

Uses

vpa is the parallel velocity at grid points wgts_vpa are the integration weights assigned to the parallel velocity grid points this is the Maxwellian in vpa parallel velocity grid goes from -vpa_max to vpa_max, with no point at vpa = 0; the lack of a point at vpa=0 avoids treating the vpa=z=0 phase space location, which is isolated from all other phase space points in the absence of collisions equal grid spacing in vpa

obtain vpa grid for vpa > 0 fill in vpa grid for vpa < 0

maxwell_vpa is the equilibrium Maxwellian in vpa ztmax is the Maxwellian in vpa, multipliedd by charge number over normalized temperature

get integration weights corresponding to vpa grid points for now use Simpson's rule; i.e. subdivide grid into 3-point segments, with each segment spanning vpa_low to vpa_up then the contribution of each segment to the integral is (vpa_up - vpa_low) * (f1 + 4*f2 + f3) / 6 inner boundary points are used in two segments, so they get double the weight

use simpson 3/8 rule at lower boundary and composite Simpson elsewhere composite simpson for the sake of symmetry, do the same thing with 3/8 rule at upper boundary and composite elsewhere. divide by 2 to account for double-counting

if maxwellian_normalization = .true., then the evolved pdf is normalized by a Maxwellian; this normalization must be accounted for in the velocity space integrals, so include exp(-vpa^2) factor in the vpa weights. TODO-GA: May way to remove this option?

Arguments

None