set_lm_mode_info Subroutine

subroutine set_lm_mode_info(this, lmin, lmax)

Loop over all mode and store it's corresponding and m-values. This should maybe made into a type bound procedure.

This sets this%ll and this%mm.

Arguments

Type IntentOptional AttributesName
type(scal_schw), intent(inout) :: this

The mode information will be set for this scal_schw object.

integer(kind=ip), intent(in) :: lmin

The mininum -value.

integer(kind=ip), intent(in) :: lmax

The mininum -value.


Called by

proc~~set_lm_mode_info~~CalledByGraph proc~set_lm_mode_info set_lm_mode_info proc~scal_schw_init scal_schw_init proc~scal_schw_init->proc~set_lm_mode_info interface~scal_schw_init scal_schw_init interface~scal_schw_init->proc~scal_schw_init

Contents

Source Code


Source Code

  subroutine set_lm_mode_info ( this, lmin, lmax )
  !! Loop over all mode and store it's corresponding \(\ell\) and m-values.
  !! This should maybe made into a type bound procedure.
  !!
  !! This sets this%[[scal_schw:ll]] and this%[[scal_schw:mm]].

    implicit none

    type(scal_schw), intent(inout) :: this
    !! The mode information will be set for this [[scal_schw]] object.
    integer(ip), intent(in) :: lmin
    !! The mininum \(\ell\)-value.
    integer(ip), intent(in) :: lmax
    !! The mininum \(\ell\)-value.
    integer(ip) :: l, m, nn

    nn = 0
    do l = lmin, lmax
      do m = mod(l,2), l, 2
        nn = nn+1
        this%ll(nn) = l
        this%mm(nn) = m
      end do
    end do
  end subroutine set_lm_mode_info