fstats_errors Module


Uses


Contents


Variables

Type Visibility Attributes Name Initial
integer(kind=int32), public, parameter :: FS_ARRAY_SIZE_ERROR = 10000
integer(kind=int32), public, parameter :: FS_INVALID_ARGUMENT_ERROR = 10007
integer(kind=int32), public, parameter :: FS_INVALID_INPUT_ERROR = 10002
integer(kind=int32), public, parameter :: FS_MATRIX_SIZE_ERROR = 10001
integer(kind=int32), public, parameter :: FS_MEMORY_ERROR = 10003
integer(kind=int32), public, parameter :: FS_NO_ERROR = 0
integer(kind=int32), public, parameter :: FS_TOLERANCE_TOO_SMALL_ERROR = 10005
integer(kind=int32), public, parameter :: FS_TOO_FEW_ITERATION_ERROR = 10006
integer(kind=int32), public, parameter :: FS_UNDERDEFINED_PROBLEM_ERROR = 10004

Subroutines

public subroutine report_array_size_error(err, fname, name, expect, actual)

Reports an array size error.

Arguments

Type IntentOptional Attributes Name
class(errors), intent(inout) :: err

The error handling object.

character(len=*), intent(in) :: fname

The name of the routine in which the error occurred.

character(len=*), intent(in) :: name

The name of the array.

integer(kind=int32), intent(in) :: expect

The expected size of the array.

integer(kind=int32), intent(in) :: actual

The actual size of the array.

public subroutine report_arrays_not_same_size_error(err, fname, name1, name2, size1, size2)

Reports an error relating to two arrays not being the same size when they should be the same size.

Arguments

Type IntentOptional Attributes Name
class(errors), intent(inout) :: err

The error handling object.

character(len=*), intent(in) :: fname

The name of the routine in which the error occurred.

character(len=*), intent(in) :: name1

The name of the first array.

character(len=*), intent(in) :: name2

The name of the second array.

integer(kind=int32), intent(in) :: size1

The size of the first array.

integer(kind=int32), intent(in) :: size2

The size of the second array.

public subroutine report_iteration_count_error(err, fname, msg, mincount)

Reports an iteration count error.

Arguments

Type IntentOptional Attributes Name
class(errors), intent(inout) :: err

The error handling object.

character(len=*) :: fname

The name of the routine in which the error occurred.

character(len=*) :: msg

The error message.

integer(kind=int32), intent(in) :: mincount

The minimum iteration count expected.

public subroutine report_matrix_size_error(err, fname, name, expect_rows, expect_cols, actual_rows, actual_cols)

Reports a matrix size error.

Arguments

Type IntentOptional Attributes Name
class(errors), intent(inout) :: err

The error handling object.

character(len=*), intent(in) :: fname

The name of the routine in which the error occurred.

character(len=*), intent(in) :: name

The name of the matrix.

integer(kind=int32), intent(in) :: expect_rows

The expected number of rows.

integer(kind=int32), intent(in) :: expect_cols

The expected number of columns.

integer(kind=int32), intent(in) :: actual_rows

The actual number of rows.

integer(kind=int32), intent(in) :: actual_cols

The actual number of columns.

public subroutine report_memory_error(err, fname, code)

Reports a memory allocation related error.

Arguments

Type IntentOptional Attributes Name
class(errors), intent(inout) :: err

The error handling object.

character(len=*), intent(in) :: fname

The name of the routine in which the error occurred.

integer(kind=int32), intent(in) :: code

The error code returned by the allocation routine.

public subroutine report_underdefined_error(err, fname, expect, actual)

Reports an underdefined problem error.

Arguments

Type IntentOptional Attributes Name
class(errors), intent(inout) :: err

The error handling object.

character(len=*), intent(in) :: fname

The name of the routine in which the error occurred.

integer(kind=int32), intent(in) :: expect

The expected minimum number of equations.

integer(kind=int32), intent(in) :: actual

The actual number of equations.