dissipation Module


Variables

Type Visibility Attributes Name Initial
logical, public :: collisions_initialized = .false.
logical, public :: include_collisions
logical, public :: collisions_implicit
logical, public :: hyper_dissipation
character(len=30), private :: collision_model
real, public :: cfl_dt_mudiff = huge(0.0)
real, public :: cfl_dt_vpadiff = huge(0.0)
real, public, dimension(2, 2) :: time_collisions = 0.

Subroutines

public subroutine init_dissipation()

Arguments

None

public subroutine read_parameters()

Arguments

None

public subroutine init_collisions()

Arguments

None

public subroutine finish_dissipation()

Arguments

None

private subroutine finish_collisions()

Arguments

None

public subroutine advance_collisions_explicit(g, phi, bpar, gke_rhs)

Arguments

Type IntentOptional Attributes Name
complex, intent(in), dimension(:, :, -nzgrid:, :, vmu_lo%llim_proc:) :: g
complex, intent(in), dimension(:, :, -nzgrid:, :) :: phi
complex, intent(in), dimension(:, :, -nzgrid:, :) :: bpar
complex, intent(inout), dimension(:, :, -nzgrid:, :, vmu_lo%llim_proc:) :: gke_rhs

public subroutine advance_collisions_implicit(mirror_implicit, phi, apar, bpar, g)

switch the vpa integration weights to ensure correct integration by parts

Arguments

Type IntentOptional Attributes Name
logical, intent(in) :: mirror_implicit
complex, intent(inout), dimension(:, :, -nzgrid:, :) :: phi
complex, intent(inout), dimension(:, :, -nzgrid:, :) :: apar
complex, intent(inout), dimension(:, :, -nzgrid:, :) :: bpar
complex, intent(inout), dimension(:, :, -nzgrid:, :, vmu_lo%llim_proc:) :: g