eval_curvature Subroutine

public subroutine eval_curvature(self, mesh_cano, equi_on_cano, opsinplane_cano, map, ne_v, pot_v, ti_v, apar_fluct_cano_v, crv_gstress)

Evaluates curvature of ion stress function. This routine is present, because there is an issue if one simply evaluated the curvature of gstress obtained via ion_stress_function. Squared curvature operators appear that would imply chequerboarding. Therefore the evaluation of squared curvature operators has to be performed numerically careful and explicit.

Type Bound

gyroviscosity_t

Arguments

Type IntentOptional Attributes Name
class(gyroviscosity_t), intent(in) :: self

Instance of type

type(mesh_cart_t), intent(in) :: mesh_cano

Mesh (canonical) within poloidal plane

class(equilibrium_storage_t), intent(in) :: equi_on_cano

Equilibrim quantities on canonical mesh

type(inplane_operators_t), intent(in) :: opsinplane_cano

In-plane operators (canonical)

type(parallel_map_t), intent(in) :: map

Parallel map

real(kind=GP), intent(in), dimension(mesh_cano%get_n_points()) :: ne_v

Electron density

real(kind=GP), intent(in), dimension(mesh_cano%get_n_points()) :: pot_v

Electrostatic potential

real(kind=GP), intent(in), dimension(mesh_cano%get_n_points()) :: ti_v

Ion temperature

real(kind=GP), intent(in), dimension(mesh_cano%get_n_points()) :: apar_fluct_cano_v

Fluctuation of apar on canonical mesh used for flutter operators

real(kind=GP), intent(out), dimension(mesh_cano%get_n_points_inner()) :: crv_gstress

Values of curvature of ion viscous stress function G


Contents