assert_shape Interface

public interface assert_shape

This interface provides methods to assert tha thte shape of its input vector or matrix is as expected. It throws an error if not.


Subroutines

private module subroutine assert_shape_matrix_cdp(A, size, matname, module, procedure)

Arguments

Type IntentOptional Attributes Name
complex(kind=dp), intent(in) :: A(:,:)
integer, intent(in) :: size(:)
character(len=*), intent(in) :: matname
character(len=*), intent(in) :: module
character(len=*), intent(in) :: procedure

private module subroutine assert_shape_matrix_csp(A, size, matname, module, procedure)

Arguments

Type IntentOptional Attributes Name
complex(kind=sp), intent(in) :: A(:,:)
integer, intent(in) :: size(:)
character(len=*), intent(in) :: matname
character(len=*), intent(in) :: module
character(len=*), intent(in) :: procedure

private module subroutine assert_shape_matrix_rdp(A, size, matname, module, procedure)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: A(:,:)
integer, intent(in) :: size(:)
character(len=*), intent(in) :: matname
character(len=*), intent(in) :: module
character(len=*), intent(in) :: procedure

private module subroutine assert_shape_matrix_rsp(A, size, matname, module, procedure)

Arguments

Type IntentOptional Attributes Name
real(kind=sp), intent(in) :: A(:,:)
integer, intent(in) :: size(:)
character(len=*), intent(in) :: matname
character(len=*), intent(in) :: module
character(len=*), intent(in) :: procedure

private module subroutine assert_shape_vector_cdp(v, size, vecname, module, procedure)

Arguments

Type IntentOptional Attributes Name
complex(kind=dp), intent(in) :: v(:)
integer, intent(in) :: size(:)
character(len=*), intent(in) :: vecname
character(len=*), intent(in) :: module
character(len=*), intent(in) :: procedure

private module subroutine assert_shape_vector_csp(v, size, vecname, module, procedure)

Arguments

Type IntentOptional Attributes Name
complex(kind=sp), intent(in) :: v(:)
integer, intent(in) :: size(:)
character(len=*), intent(in) :: vecname
character(len=*), intent(in) :: module
character(len=*), intent(in) :: procedure

private module subroutine assert_shape_vector_rdp(v, size, vecname, module, procedure)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: v(:)
integer, intent(in) :: size(:)
character(len=*), intent(in) :: vecname
character(len=*), intent(in) :: module
character(len=*), intent(in) :: procedure

private module subroutine assert_shape_vector_rsp(v, size, vecname, module, procedure)

Arguments

Type IntentOptional Attributes Name
real(kind=sp), intent(in) :: v(:)
integer, intent(in) :: size(:)
character(len=*), intent(in) :: vecname
character(len=*), intent(in) :: module
character(len=*), intent(in) :: procedure