inelastic_grid_data_procedures Submodule

Contains module procedures associated with the inelastic grid data class


Uses


Module Functions

pure module function getFixedW(this, ind) result(wMat)

Return fixed mapping matrix with given index

Arguments

Type IntentOptional Attributes Name
class(InelasticGridData), intent(in) :: this
integer(kind=ik), intent(in) :: ind

Return Value type(SparseRowData)

pure module function getFixedEmissionVector(this, ind) result(emit)

Return fixed emission vector for mapping matrix with given index

Arguments

Type IntentOptional Attributes Name
class(InelasticGridData), intent(in) :: this
integer(kind=ik), intent(in) :: ind

Return Value real(kind=rk), allocatable, dimension(:)

pure module function getInterpolatedEmissionVector(this, E) result(emit)

Return interpolated emission vector for given input energy E

Arguments

Type IntentOptional Attributes Name
class(InelasticGridData), intent(in) :: this
real(kind=rk), intent(in) :: E

Return Value real(kind=rk), allocatable, dimension(:)


Module Subroutines

pure module subroutine initInelData(this, space, fixedEnergies, interpolationGrid)

Inelastic grid data initialization routine

Arguments

Type IntentOptional Attributes Name
class(InelasticGridData), intent(inout) :: this
type(VSpace), intent(in) :: space

Velocity space on which weights should be calculated

real(kind=rk), intent(in), optional, dimension(:) :: fixedEnergies

Energy values for fixed energy mappings

real(kind=rk), intent(in), optional, dimension(:) :: interpolationGrid

Energy values for mappings on the interpolation grid

pure module subroutine interpolateW(this, E, wRes)

Interpolate mapping matrices for given energy and store in passed triangular matrix. Assumes upper triangular structure for wRes if E is positive and lower if it's negative

Arguments

Type IntentOptional Attributes Name
class(InelasticGridData), intent(in) :: this
real(kind=rk), intent(in) :: E

Transition energy to interpolate for

type(SparseRowData), intent(inout) :: wRes

Lower/upper triangular matrix to store the interpolated weights