mod_utility Module

module~~mod_utility~~UsesGraph module~mod_utility mod_utility module~mod_precision mod_precision module~mod_precision->module~mod_utility iso_fortran_env iso_fortran_env iso_fortran_env->module~mod_precision
Help

Used By

module~~mod_utility~~UsedByGraph module~mod_utility mod_utility module~mod_spectrum mod_spectrum module~mod_utility->module~mod_spectrum module~mod_grid mod_grid module~mod_utility->module~mod_grid proc~snl_dccm2012 snl_DCCM2012 module~mod_spectrum->proc~snl_dccm2012 proc~sbf_dccm2012 sbf_DCCM2012 module~mod_spectrum->proc~sbf_dccm2012 proc~sin_dccm2012 sin_DCCM2012 module~mod_spectrum->proc~sin_dccm2012 module~mod_time_integration mod_time_integration module~mod_spectrum->module~mod_time_integration proc~sdt_dccm2012 sdt_DCCM2012 module~mod_spectrum->proc~sdt_dccm2012 module~mod_domain mod_domain module~mod_spectrum->module~mod_domain proc~sbf_jonswap sbf_JONSWAP module~mod_spectrum->proc~sbf_jonswap proc~sds_dccm2012 sds_DCCM2012 module~mod_spectrum->proc~sds_dccm2012 module~mod_grid->module~mod_domain module~mod_domain->module~mod_time_integration
Help


Interfaces

public interface diff

  • private pure function diff_1d(x) result(dx)

    Returns a centered-difference of a 1-d array, with first order differencing applied for the boundary points. This procedure is overloaded by the generic procedure diff.

    Arguments

    Type IntentOptional AttributesName
    real(kind=rk), intent(in), dimension(:):: x

    Input array

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

  • private pure function diff_2d(x, dim) result(dx)

    Returns a centered-difference of a 2-d array along dimension dim, with first order differencing applied for the boundary points. This procedure is overloaded by the generic procedure diff.

    Arguments

    Type IntentOptional AttributesName
    real(kind=rk), intent(in), dimension(:,:):: x

    Input array

    integer(kind=ik), intent(in) :: dim

    Dimension along which to differentiate

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

public interface diff_periodic

  • private pure function diff_periodic_1d(x) result(dx)

    Returns a centered-difference of a 1-d array with periodic boundary conditions. This procedure is overloaded by the generic procedure diff.

    Arguments

    Type IntentOptional AttributesName
    real(kind=rk), intent(in), dimension(:):: x

    Input array

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

  • private pure function diff_periodic_2d(x, dim) result(dx)

    Returns a centered-difference of a 2-d array along dimension dim, with periodic boundary conditions. This procedure is overloaded by the generic procedure diff.

    Arguments

    Type IntentOptional AttributesName
    real(kind=rk), intent(in), dimension(:,:):: x

    Input array

    integer(kind=ik), intent(in) :: dim

    Dimension along which to differentiate

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

public interface ones

  • private pure function ones_int(length, kindflag) result(ones)

    Returns a 1-d array of integer ones. This procedure is overloaded by the generic procedure ones.

    Arguments

    Type IntentOptional AttributesName
    integer(kind=ik), intent(in) :: length

    Array length

    integer(kind=ik), intent(in) :: kindflag

    Array type

    Return Value integer(kind=ik), dimension(:), allocatable

  • private pure function ones_real(length, kindflag) result(ones)

    Returns a 1-d array of floating-point ones. This procedure is overloaded by the generic procedure ones.

    Arguments

    Type IntentOptional AttributesName
    integer(kind=ik), intent(in) :: length

    Array length

    real(kind=rk), intent(in) :: kindflag

    Array type

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

public interface range

  • private pure function range_int(start, end, increment) result(range)

    Returns an array of integers given start, end, and increment values. If the increment argument is not passed, default increment is 1. This procedure is overloaded by the generic procedure range.

    Arguments

    Type IntentOptional AttributesName
    integer(kind=ik), intent(in) :: start

    Start value of the array

    integer(kind=ik), intent(in) :: end

    End value of the array

    integer(kind=ik), intent(in), optional :: increment

    Array increment

    Return Value integer(kind=ik), dimension(:), allocatable

  • private pure function range_real(start, end, increment) result(range)

    Returns an array of reals given start, end, and increment values. If the increment argument is not passed, default increment is 1. This procedure is overloaded by the generic procedure range.

    Arguments

    Type IntentOptional AttributesName
    real(kind=rk), intent(in) :: start

    Start value of the array

    real(kind=rk), intent(in) :: end

    End value of the array

    real(kind=rk), intent(in), optional :: increment

    Array increment

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

public interface tile

  • private pure function tile_1d_int(array, n) result(tiled_array)

    Tiles the input array n times. Returns a tiled array that has rank equal to size(shape(array))+1 and that has values equal to values of array, repeated n times. This version is for 1-d input array of integers. This procedure is overloaded by the generic procedure tile.

    Arguments

    Type IntentOptional AttributesName
    integer(kind=ik), intent(in), dimension(:):: array

    Input array

    integer(kind=ik), intent(in) :: n

    Number of times to copy input array

    Return Value integer(kind=ik), dimension(:,:), allocatable

  • private pure function tile_1d_real(array, n) result(tiled_array)

    Tiles the input array n times. Returns a tiled array that has rank equal to size(shape(array))+1 and that has values equal to values of array, repeated n times. This version is for 1-d input array of reals. This procedure is overloaded by the generic procedure tile.

    Arguments

    Type IntentOptional AttributesName
    real(kind=rk), intent(in), dimension(:):: array

    Input array

    integer(kind=ik), intent(in) :: n

    Number of times to copy input array

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

  • private pure function tile_2d_int(array, n) result(tiled_array)

    Tiles the input array n times. Returns a tiled array that has rank equal to size(shape(array))+1 and that has values equal to values of array, repeated n times. This version is for 2-d input array of integers. This procedure is overloaded by the generic procedure tile.

    Arguments

    Type IntentOptional AttributesName
    integer(kind=ik), intent(in), dimension(:,:):: array

    Input array

    integer(kind=ik), intent(in) :: n

    Number of times to copy input array

    Return Value integer(kind=ik), dimension(:,:,:), allocatable

  • private pure function tile_2d_real(array, n) result(tiled_array)

    Tiles the input array n times. Returns a tiled array that has rank equal to size(shape(array))+1 and that has values equal to values of array, repeated n times. This version is for 2-d input array of reals. This procedure is overloaded by the generic procedure tile.

    Arguments

    Type IntentOptional AttributesName
    real(kind=rk), intent(in), dimension(:,:):: array

    Input array

    integer(kind=ik), intent(in) :: n

    Number of times to copy input array

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

  • private pure function tile_3d_int(array, n) result(tiled_array)

    Tiles the input array n times. Returns a tiled array that has rank equal to size(shape(array))+1 and that has values equal to values of array, repeated n times. This version is for 3-d input array of integers. This procedure is overloaded by the generic procedure tile.

    Arguments

    Type IntentOptional AttributesName
    integer(kind=ik), intent(in), dimension(:,:,:):: array

    Input array

    integer(kind=ik), intent(in) :: n

    Number of times to copy input array

    Return Value integer(kind=ik), dimension(:,:,:,:), allocatable

  • private pure function tile_3d_real(array, n) result(tiled_array)

    Tiles the input array n times. Returns a tiled array that has rank equal to size(shape(array))+1 and that has values equal to values of array, repeated n times. This version is for 3-d input array of reals. This procedure is overloaded by the generic procedure tile.

    Arguments

    Type IntentOptional AttributesName
    real(kind=rk), intent(in), dimension(:,:,:):: array

    Input array

    integer(kind=ik), intent(in) :: n

    Number of times to copy input array

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

public interface zeros

  • private pure function zeros_int(length, kindflag) result(zeros)

    Returns a 1-d array of integer zeros. This procedure is overloaded by the generic procedure zeros.

    Arguments

    Type IntentOptional AttributesName
    integer(kind=ik), intent(in) :: length

    Array length

    integer(kind=ik), intent(in) :: kindflag

    Array type

    Return Value integer(kind=ik), dimension(:), allocatable

  • private pure function zeros_real(length, kindflag) result(zeros)

    Returns a 1-d array of floating-point zeros. This procedure is overloaded by the generic procedure zeros.

    Arguments

    Type IntentOptional AttributesName
    integer(kind=ik), intent(in) :: length

    Array length

    real(kind=rk), intent(in) :: kindflag

    Array type

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


Functions

private pure function diff_1d(x) result(dx)

Returns a centered-difference of a 1-d array, with first order differencing applied for the boundary points. This procedure is overloaded by the generic procedure diff.

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in), dimension(:):: x

Input array

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

private pure function diff_2d(x, dim) result(dx)

Returns a centered-difference of a 2-d array along dimension dim, with first order differencing applied for the boundary points. This procedure is overloaded by the generic procedure diff.

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in), dimension(:,:):: x

Input array

integer(kind=ik), intent(in) :: dim

Dimension along which to differentiate

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

private pure function diff_periodic_1d(x) result(dx)

Returns a centered-difference of a 1-d array with periodic boundary conditions. This procedure is overloaded by the generic procedure diff.

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in), dimension(:):: x

Input array

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

private pure function diff_periodic_2d(x, dim) result(dx)

Returns a centered-difference of a 2-d array along dimension dim, with periodic boundary conditions. This procedure is overloaded by the generic procedure diff.

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in), dimension(:,:):: x

Input array

integer(kind=ik), intent(in) :: dim

Dimension along which to differentiate

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

private pure function ones_int(length, kindflag) result(ones)

Returns a 1-d array of integer ones. This procedure is overloaded by the generic procedure ones.

Arguments

Type IntentOptional AttributesName
integer(kind=ik), intent(in) :: length

Array length

integer(kind=ik), intent(in) :: kindflag

Array type

Return Value integer(kind=ik), dimension(:), allocatable

private pure function ones_real(length, kindflag) result(ones)

Returns a 1-d array of floating-point ones. This procedure is overloaded by the generic procedure ones.

Arguments

Type IntentOptional AttributesName
integer(kind=ik), intent(in) :: length

Array length

real(kind=rk), intent(in) :: kindflag

Array type

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

private pure function range_int(start, end, increment) result(range)

Returns an array of integers given start, end, and increment values. If the increment argument is not passed, default increment is 1. This procedure is overloaded by the generic procedure range.

Arguments

Type IntentOptional AttributesName
integer(kind=ik), intent(in) :: start

Start value of the array

integer(kind=ik), intent(in) :: end

End value of the array

integer(kind=ik), intent(in), optional :: increment

Array increment

Return Value integer(kind=ik), dimension(:), allocatable

private pure function range_real(start, end, increment) result(range)

Returns an array of reals given start, end, and increment values. If the increment argument is not passed, default increment is 1. This procedure is overloaded by the generic procedure range.

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in) :: start

Start value of the array

real(kind=rk), intent(in) :: end

End value of the array

real(kind=rk), intent(in), optional :: increment

Array increment

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

private pure function tile_1d_int(array, n) result(tiled_array)

Tiles the input array n times. Returns a tiled array that has rank equal to size(shape(array))+1 and that has values equal to values of array, repeated n times. This version is for 1-d input array of integers. This procedure is overloaded by the generic procedure tile.

Arguments

Type IntentOptional AttributesName
integer(kind=ik), intent(in), dimension(:):: array

Input array

integer(kind=ik), intent(in) :: n

Number of times to copy input array

Return Value integer(kind=ik), dimension(:,:), allocatable

private pure function tile_1d_real(array, n) result(tiled_array)

Tiles the input array n times. Returns a tiled array that has rank equal to size(shape(array))+1 and that has values equal to values of array, repeated n times. This version is for 1-d input array of reals. This procedure is overloaded by the generic procedure tile.

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in), dimension(:):: array

Input array

integer(kind=ik), intent(in) :: n

Number of times to copy input array

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

private pure function tile_2d_int(array, n) result(tiled_array)

Tiles the input array n times. Returns a tiled array that has rank equal to size(shape(array))+1 and that has values equal to values of array, repeated n times. This version is for 2-d input array of integers. This procedure is overloaded by the generic procedure tile.

Arguments

Type IntentOptional AttributesName
integer(kind=ik), intent(in), dimension(:,:):: array

Input array

integer(kind=ik), intent(in) :: n

Number of times to copy input array

Return Value integer(kind=ik), dimension(:,:,:), allocatable

private pure function tile_2d_real(array, n) result(tiled_array)

Tiles the input array n times. Returns a tiled array that has rank equal to size(shape(array))+1 and that has values equal to values of array, repeated n times. This version is for 2-d input array of reals. This procedure is overloaded by the generic procedure tile.

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in), dimension(:,:):: array

Input array

integer(kind=ik), intent(in) :: n

Number of times to copy input array

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

private pure function tile_3d_int(array, n) result(tiled_array)

Tiles the input array n times. Returns a tiled array that has rank equal to size(shape(array))+1 and that has values equal to values of array, repeated n times. This version is for 3-d input array of integers. This procedure is overloaded by the generic procedure tile.

Arguments

Type IntentOptional AttributesName
integer(kind=ik), intent(in), dimension(:,:,:):: array

Input array

integer(kind=ik), intent(in) :: n

Number of times to copy input array

Return Value integer(kind=ik), dimension(:,:,:,:), allocatable

private pure function tile_3d_real(array, n) result(tiled_array)

Tiles the input array n times. Returns a tiled array that has rank equal to size(shape(array))+1 and that has values equal to values of array, repeated n times. This version is for 3-d input array of reals. This procedure is overloaded by the generic procedure tile.

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in), dimension(:,:,:):: array

Input array

integer(kind=ik), intent(in) :: n

Number of times to copy input array

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

private pure function zeros_int(length, kindflag) result(zeros)

Returns a 1-d array of integer zeros. This procedure is overloaded by the generic procedure zeros.

Arguments

Type IntentOptional AttributesName
integer(kind=ik), intent(in) :: length

Array length

integer(kind=ik), intent(in) :: kindflag

Array type

Return Value integer(kind=ik), dimension(:), allocatable

private pure function zeros_real(length, kindflag) result(zeros)

Returns a 1-d array of floating-point zeros. This procedure is overloaded by the generic procedure zeros.

Arguments

Type IntentOptional AttributesName
integer(kind=ik), intent(in) :: length

Array length

real(kind=rk), intent(in) :: kindflag

Array type

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