radiation_matrix Module


Uses

  • module~~radiation_matrix~2~~UsesGraph module~radiation_matrix~2 radiation_matrix module~parkind1~2 PARKIND1 module~radiation_matrix~2->module~parkind1~2

Contents


Variables

Type Visibility Attributes Name Initial
integer, public, parameter :: IMatrixPatternDense = 0
integer, public, parameter :: IMatrixPatternShortwave = 1

Interfaces

public interface fast_expm_exchange

  • public subroutine fast_expm_exchange_2(n, iend, a, b, R)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: n
    integer, intent(in) :: iend
    real(kind=jprb), intent(in), dimension(n) :: a
    real(kind=jprb), intent(in), dimension(n) :: b
    real(kind=jprb), intent(out), dimension(n,2,2) :: R
  • public subroutine fast_expm_exchange_3(n, iend, a, b, c, d, R)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: n
    integer, intent(in) :: iend
    real(kind=jprb), intent(in), dimension(n) :: a
    real(kind=jprb), intent(in), dimension(n) :: b
    real(kind=jprb), intent(in), dimension(n) :: c
    real(kind=jprb), intent(in), dimension(n) :: d
    real(kind=jprb), intent(out), dimension(n,3,3) :: R

Functions

public function mat_x_vec(n, iend, m, A, b, do_top_left_only_in)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n
integer, intent(in) :: iend
integer, intent(in) :: m
real(kind=jprb), intent(in), dimension(:,:,:) :: A
real(kind=jprb), intent(in), dimension(:,:) :: b
logical, intent(in), optional :: do_top_left_only_in

Return Value real(kind=jprb), dimension(iend,m)

public function singlemat_x_vec(n, iend, m, A, b)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n
integer, intent(in) :: iend
integer, intent(in) :: m
real(kind=jprb), intent(in), dimension(m,m) :: A
real(kind=jprb), intent(in), dimension(:,:) :: b

Return Value real(kind=jprb), dimension(iend,m)

public function mat_x_mat(n, iend, m, A, B, i_matrix_pattern)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n
integer, intent(in) :: iend
integer, intent(in) :: m
real(kind=jprb), intent(in), dimension(:,:,:) :: A
real(kind=jprb), intent(in), dimension(:,:,:) :: B
integer, intent(in), optional :: i_matrix_pattern

Return Value real(kind=jprb), dimension(iend,m,m)

public function singlemat_x_mat(n, iend, m, A, B)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n
integer, intent(in) :: iend
integer, intent(in) :: m
real(kind=jprb), intent(in), dimension(m,m) :: A
real(kind=jprb), intent(in), dimension(:,:,:) :: B

Return Value real(kind=jprb), dimension(iend,m,m)

public function mat_x_singlemat(n, iend, m, A, B)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n
integer, intent(in) :: iend
integer, intent(in) :: m
real(kind=jprb), intent(in), dimension(:,:,:) :: A
real(kind=jprb), intent(in), dimension(m,m) :: B

Return Value real(kind=jprb), dimension(iend,m,m)

public function identity_minus_mat_x_mat(n, iend, m, A, B, i_matrix_pattern)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n
integer, intent(in) :: iend
integer, intent(in) :: m
real(kind=jprb), intent(in), dimension(:,:,:) :: A
real(kind=jprb), intent(in), dimension(:,:,:) :: B
integer, intent(in), optional :: i_matrix_pattern

Return Value real(kind=jprb), dimension(iend,m,m)

public function repeated_square(m, A, nrepeat, i_matrix_pattern)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: m
real(kind=jprb), intent(inout) :: A(m,m)
integer, intent(in) :: nrepeat
integer, intent(in), optional :: i_matrix_pattern

Return Value real(kind=jprb), (m,m)

public function solve_vec(n, iend, m, A, b)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n
integer, intent(in) :: iend
integer, intent(in) :: m
real(kind=jprb), intent(in) :: A(:,:,:)
real(kind=jprb), intent(in) :: b(:,:)

Return Value real(kind=jprb), (iend,m)

public function solve_mat(n, iend, m, A, B)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n
integer, intent(in) :: iend
integer, intent(in) :: m
real(kind=jprb), intent(in) :: A(:,:,:)
real(kind=jprb), intent(in) :: B(:,:,:)

Return Value real(kind=jprb), (iend,m,m)


Subroutines

public subroutine expm(n, iend, m, A, i_matrix_pattern)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n
integer, intent(in) :: iend
integer, intent(in) :: m
real(kind=jprb), intent(inout) :: A(n,m,m)
integer, intent(in) :: i_matrix_pattern

public subroutine fast_expm_exchange_2(n, iend, a, b, R)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n
integer, intent(in) :: iend
real(kind=jprb), intent(in), dimension(n) :: a
real(kind=jprb), intent(in), dimension(n) :: b
real(kind=jprb), intent(out), dimension(n,2,2) :: R

public subroutine fast_expm_exchange_3(n, iend, a, b, c, d, R)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: n
integer, intent(in) :: iend
real(kind=jprb), intent(in), dimension(n) :: a
real(kind=jprb), intent(in), dimension(n) :: b
real(kind=jprb), intent(in), dimension(n) :: c
real(kind=jprb), intent(in), dimension(n) :: d
real(kind=jprb), intent(out), dimension(n,3,3) :: R