dbcsr_data_methods_low Module

DBCSR data methods



Variables

Type Visibility Attributes Name Initial
character(len=*), private, parameter :: moduleN = 'dbcsr_data_methods_low'
logical, private, parameter :: careful_mod = .FALSE.
logical, private, parameter :: debug_mod = .FALSE.

Interfaces

public interface dbcsr_scalar

Encapsulates a scalar.

  • private elemental function dbcsr_scalar_s(scalar) result(encapsulated_scalar)

    Sets a scalar in an encapsulated data structure

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_4), intent(in) :: scalar

    scalar to encapsulate

    Return Value type(dbcsr_scalar_type)

    encapsulated scalar

  • private elemental function dbcsr_scalar_d(scalar) result(encapsulated_scalar)

    Sets a scalar in an encapsulated data structure

    Arguments

    Type IntentOptional Attributes Name
    real(kind=real_8), intent(in) :: scalar

    scalar to encapsulate

    Return Value type(dbcsr_scalar_type)

    encapsulated scalar

  • private elemental function dbcsr_scalar_c(scalar) result(encapsulated_scalar)

    Sets a scalar in an encapsulated data structure

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_4), intent(in) :: scalar

    scalar to encapsulate

    Return Value type(dbcsr_scalar_type)

    encapsulated scalar

  • private elemental function dbcsr_scalar_z(scalar) result(encapsulated_scalar)

    Sets a scalar in an encapsulated data structure

    Arguments

    Type IntentOptional Attributes Name
    complex(kind=real_8), intent(in) :: scalar

    scalar to encapsulate

    Return Value type(dbcsr_scalar_type)

    encapsulated scalar

public interface dbcsr_scalar_get_value

Encapsulates a scalar.

  • private elemental subroutine dbcsr_scalar_get_value_s(encapsulated_scalar, value)

    Sets a scalar in an encapsulated data structure

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_scalar_type), intent(in) :: encapsulated_scalar

    encapsulated scalar

    real(kind=real_4), intent(out) :: value

    value of the scalar

  • private elemental subroutine dbcsr_scalar_get_value_d(encapsulated_scalar, value)

    Sets a scalar in an encapsulated data structure

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_scalar_type), intent(in) :: encapsulated_scalar

    encapsulated scalar

    real(kind=real_8), intent(out) :: value

    value of the scalar

  • private elemental subroutine dbcsr_scalar_get_value_c(encapsulated_scalar, value)

    Sets a scalar in an encapsulated data structure

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_scalar_type), intent(in) :: encapsulated_scalar

    encapsulated scalar

    complex(kind=real_4), intent(out) :: value

    value of the scalar

  • private elemental subroutine dbcsr_scalar_get_value_z(encapsulated_scalar, value)

    Sets a scalar in an encapsulated data structure

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_scalar_type), intent(in) :: encapsulated_scalar

    encapsulated scalar

    complex(kind=real_8), intent(out) :: value

    value of the scalar

public interface dbcsr_data_set_pointer

  • private subroutine set_data_p_s(area, p)

    Sets a data pointer.

    Assumptions Assumes that no memory will be lost when repointing the pointer in the data area and that the area is initialized.

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(inout) :: area

    target data area

    real(kind=real_4), DIMENSION(:), POINTER, CONTIGUOUS :: p

    source data pointer

  • private subroutine set_data_p_d(area, p)

    Sets a data pointer.

    Assumptions Assumes that no memory will be lost when repointing the pointer in the data area and that the area is initialized.

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(inout) :: area

    target data area

    real(kind=real_8), DIMENSION(:), POINTER, CONTIGUOUS :: p

    source data pointer

  • private subroutine set_data_p_c(area, p)

    Sets a data pointer.

    Assumptions Assumes that no memory will be lost when repointing the pointer in the data area and that the area is initialized.

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(inout) :: area

    target data area

    complex(kind=real_4), DIMENSION(:), POINTER, CONTIGUOUS :: p

    source data pointer

  • private subroutine set_data_p_z(area, p)

    Sets a data pointer.

    Assumptions Assumes that no memory will be lost when repointing the pointer in the data area and that the area is initialized.

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(inout) :: area

    target data area

    complex(kind=real_8), DIMENSION(:), POINTER, CONTIGUOUS :: p

    source data pointer

  • private subroutine set_data_p_2d_s(area, p)

    Sets a data pointer.

    Assumptions Assumes that no memory will be lost when repointing the pointer in the data area and that the area is initialized.

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(inout) :: area

    target data area

    real(kind=real_4), DIMENSION(:, :), POINTER :: p

    source data pointer

  • private subroutine set_data_p_2d_d(area, p)

    Sets a data pointer.

    Assumptions Assumes that no memory will be lost when repointing the pointer in the data area and that the area is initialized.

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(inout) :: area

    target data area

    real(kind=real_8), DIMENSION(:, :), POINTER :: p

    source data pointer

  • private subroutine set_data_p_2d_c(area, p)

    Sets a data pointer.

    Assumptions Assumes that no memory will be lost when repointing the pointer in the data area and that the area is initialized.

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(inout) :: area

    target data area

    complex(kind=real_4), DIMENSION(:, :), POINTER :: p

    source data pointer

  • private subroutine set_data_p_2d_z(area, p)

    Sets a data pointer.

    Assumptions Assumes that no memory will be lost when repointing the pointer in the data area and that the area is initialized.

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(inout) :: area

    target data area

    complex(kind=real_8), DIMENSION(:, :), POINTER :: p

    source data pointer

  • private subroutine set_data_area_area(area, rsize, csize, pointee, source_lb)

    Points data area data pointers to another data area Assumes that no memory will be lost when repointing the pointer in the data area and that the area is initialized.

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(inout) :: area

    data area to repoint

    integer, intent(in) :: rsize

    size of data area to point to size of data area to point to

    integer, intent(in) :: csize

    size of data area to point to size of data area to point to

    type(dbcsr_data_obj), intent(in) :: pointee

    data area to point to

    integer, intent(in), optional :: source_lb

    point to this offset in pointee

public interface dbcsr_get_data

  • private subroutine get_data_s(area, DATA, lb, ub)

    Returns the single/double precision real/complex data

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    real(kind=real_4), DIMENSION(:), POINTER :: DATA

    pointer to data

    integer, intent(in), optional :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional :: ub

    lower bound for pointer upper bound for pointer

  • private subroutine get_data_d(area, DATA, lb, ub)

    Returns the single/double precision real/complex data

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    real(kind=real_8), DIMENSION(:), POINTER :: DATA

    pointer to data

    integer, intent(in), optional :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional :: ub

    lower bound for pointer upper bound for pointer

  • private subroutine get_data_c(area, DATA, lb, ub)

    Returns the single/double precision real/complex data

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    complex(kind=real_4), DIMENSION(:), POINTER :: DATA

    pointer to data

    integer, intent(in), optional :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional :: ub

    lower bound for pointer upper bound for pointer

  • private subroutine get_data_z(area, DATA, lb, ub)

    Returns the single/double precision real/complex data

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    complex(kind=real_8), DIMENSION(:), POINTER :: DATA

    pointer to data

    integer, intent(in), optional :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional :: ub

    lower bound for pointer upper bound for pointer

  • private subroutine get_data_2d_s(area, DATA, lb, ub)

    Returns the single/double precision real/complex data

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    real(kind=real_4), DIMENSION(:, :), POINTER :: DATA

    pointer to data

    integer, intent(in), optional, DIMENSION(2) :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional, DIMENSION(2) :: ub

    lower bound for pointer upper bound for pointer

  • private subroutine get_data_2d_d(area, DATA, lb, ub)

    Returns the single/double precision real/complex data

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    real(kind=real_8), DIMENSION(:, :), POINTER :: DATA

    pointer to data

    integer, intent(in), optional, DIMENSION(2) :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional, DIMENSION(2) :: ub

    lower bound for pointer upper bound for pointer

  • private subroutine get_data_2d_c(area, DATA, lb, ub)

    Returns the single/double precision real/complex data

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    complex(kind=real_4), DIMENSION(:, :), POINTER :: DATA

    pointer to data

    integer, intent(in), optional, DIMENSION(2) :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional, DIMENSION(2) :: ub

    lower bound for pointer upper bound for pointer

  • private subroutine get_data_2d_z(area, DATA, lb, ub)

    Returns the single/double precision real/complex data

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    complex(kind=real_8), DIMENSION(:, :), POINTER :: DATA

    pointer to data

    integer, intent(in), optional, DIMENSION(2) :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional, DIMENSION(2) :: ub

    lower bound for pointer upper bound for pointer

public interface dbcsr_get_data_p

  • private function dbcsr_get_data_c_s(area, select_data_type, lb, ub) result(DATA)

    Returns the single/double precision real/complex data

    Calling This routine is hidden behind the dbcsr_get_data interface, hence the need for the select_data_type argument. see dbcsr_get_data_p_s

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    real(kind=real_4), intent(in) :: select_data_type

    force datatype

    integer, intent(in), optional :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional :: ub

    lower bound for pointer upper bound for pointer

    Return Value real(kind=real_4), DIMENSION(:), POINTER

    pointer to data

  • private function dbcsr_get_data_c_c(area, select_data_type, lb, ub) result(DATA)

    Returns the single/double precision real/complex data

    Calling This routine is hidden behind the dbcsr_get_data interface, hence the need for the select_data_type argument. see dbcsr_get_data_p_c

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    complex(kind=real_4), intent(in) :: select_data_type

    force datatype

    integer, intent(in), optional :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional :: ub

    lower bound for pointer upper bound for pointer

    Return Value complex(kind=real_4), DIMENSION(:), POINTER

    pointer to data

  • private function dbcsr_get_data_c_d(area, select_data_type, lb, ub) result(DATA)

    Returns the single/double precision real/complex data

    Calling This routine is hidden behind the dbcsr_get_data interface, hence the need for the select_data_type argument. see dbcsr_get_data_p_d

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    real(kind=real_8), intent(in) :: select_data_type

    force datatype

    integer, intent(in), optional :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional :: ub

    lower bound for pointer upper bound for pointer

    Return Value real(kind=real_8), DIMENSION(:), POINTER

    pointer to data

  • private function dbcsr_get_data_c_z(area, select_data_type, lb, ub) result(DATA)

    Returns the single/double precision real/complex data

    Calling This routine is hidden behind the dbcsr_get_data interface, hence the need for the select_data_type argument. see dbcsr_get_data_p_z

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    complex(kind=real_8), intent(in) :: select_data_type

    force datatype

    integer, intent(in), optional :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional :: ub

    lower bound for pointer upper bound for pointer

    Return Value complex(kind=real_8), DIMENSION(:), POINTER

    pointer to data

private interface dbcsr_get_data_cptr

  • private function dbcsr_get_data_c_s(area, select_data_type, lb, ub) result(DATA)

    Returns the single/double precision real/complex data

    Calling This routine is hidden behind the dbcsr_get_data interface, hence the need for the select_data_type argument. see dbcsr_get_data_p_s

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    real(kind=real_4), intent(in) :: select_data_type

    force datatype

    integer, intent(in), optional :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional :: ub

    lower bound for pointer upper bound for pointer

    Return Value real(kind=real_4), DIMENSION(:), POINTER

    pointer to data

  • private function dbcsr_get_data_c_c(area, select_data_type, lb, ub) result(DATA)

    Returns the single/double precision real/complex data

    Calling This routine is hidden behind the dbcsr_get_data interface, hence the need for the select_data_type argument. see dbcsr_get_data_p_c

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    complex(kind=real_4), intent(in) :: select_data_type

    force datatype

    integer, intent(in), optional :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional :: ub

    lower bound for pointer upper bound for pointer

    Return Value complex(kind=real_4), DIMENSION(:), POINTER

    pointer to data

  • private function dbcsr_get_data_c_d(area, select_data_type, lb, ub) result(DATA)

    Returns the single/double precision real/complex data

    Calling This routine is hidden behind the dbcsr_get_data interface, hence the need for the select_data_type argument. see dbcsr_get_data_p_d

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    real(kind=real_8), intent(in) :: select_data_type

    force datatype

    integer, intent(in), optional :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional :: ub

    lower bound for pointer upper bound for pointer

    Return Value real(kind=real_8), DIMENSION(:), POINTER

    pointer to data

  • private function dbcsr_get_data_c_z(area, select_data_type, lb, ub) result(DATA)

    Returns the single/double precision real/complex data

    Calling This routine is hidden behind the dbcsr_get_data interface, hence the need for the select_data_type argument. see dbcsr_get_data_p_z

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area

    complex(kind=real_8), intent(in) :: select_data_type

    force datatype

    integer, intent(in), optional :: lb

    lower bound for pointer upper bound for pointer

    integer, intent(in), optional :: ub

    lower bound for pointer upper bound for pointer

    Return Value complex(kind=real_8), DIMENSION(:), POINTER

    pointer to data

public interface dbcsr_data_get_sizes

  • private subroutine dbcsr_data_get_sizes_any(area, sizes, valid)

    Returns the allocated data size

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area to query for size

    integer, intent(out), DIMENSION(:) :: sizes

    array with the data sizes

    logical, intent(out) :: valid

    whether the data is actually allocated

  • private subroutine dbcsr_data_get_sizes_1(area, total_size, valid)

    Returns the allocated data size

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area to query for size

    integer, intent(out) :: total_size

    size of array

    logical, intent(out) :: valid

    whether the data is actually allocated

  • private subroutine dbcsr_data_get_sizes_2(area, row_size, col_size, valid)

    Returns the allocated data size

    Arguments

    Type IntentOptional Attributes Name
    type(dbcsr_data_obj), intent(in) :: area

    data area to query for size, should be 2-D

    integer, intent(out) :: row_size

    row size column size

    integer, intent(out) :: col_size

    row size column size

    logical, intent(out) :: valid

    whether the data is actually allocated


Functions

public pure function dbcsr_data_get_type(area) result(data_type)

Returns data type of a data area

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

Return Value integer

data type of the data area

public function dbcsr_data_get_memory_type(area) result(memory_type)

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

Return Value type(dbcsr_memtype_type)

public elemental function dbcsr_data_valid(area) result(valid)

Checks whether a data area is valid

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

Return Value logical

whether the data area is valid

public function dbcsr_data_exists(area) result(valid)

Checks whether a data pointer exists

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

Return Value logical

whether the data pointer exists

public function dbcsr_data_get_size(area) result(data_size)

Returns the allocated data size

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

Return Value integer

size of data

public elemental function dbcsr_scalar_one(data_type) result(one)

Returns an encapsulated scalar "1"

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: data_type

use the data type

Return Value type(dbcsr_scalar_type)

encapsulated value of one

public elemental function dbcsr_scalar_zero(data_type) result(zero)

Returns an encapsulated scalar "0"

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: data_type

use the data type

Return Value type(dbcsr_scalar_type)

encapsulated value of zero

public elemental function dbcsr_scalar_are_equal(s1, s2) result(are_equal)

Returns whether an encapsulated scalar is equal to another value

Arguments

Type IntentOptional Attributes Name
type(dbcsr_scalar_type), intent(in) :: s1

one value another value

type(dbcsr_scalar_type), intent(in) :: s2

one value another value

Return Value logical

whether values are equal

public elemental function dbcsr_scalar_negative(s) result(negated)

Returns an encapsulated scalar as a negation of the given

Arguments

Type IntentOptional Attributes Name
type(dbcsr_scalar_type), intent(in) :: s

given value

Return Value type(dbcsr_scalar_type)

negated value

public elemental function dbcsr_scalar_multiply(s1, s2) result(s_product)

Arguments

Type IntentOptional Attributes Name
type(dbcsr_scalar_type), intent(in) :: s1
type(dbcsr_scalar_type), intent(in) :: s2

Return Value type(dbcsr_scalar_type)

public elemental function dbcsr_scalar_get_type(scalar) result(data_type)

Returns data type of a scalar

Arguments

Type IntentOptional Attributes Name
type(dbcsr_scalar_type), intent(in) :: scalar

scalar

Return Value integer

data type of the scalar

public pure function dbcsr_type_is_2d(data_type)

Checks whether the data type is 2-D. \return Data type is 2-D.

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: data_type

Return Value logical

public pure function dbcsr_type_2d_to_1d(data_type)

Returns 1-d data type corresponding to the given 2-D one. \return 1-D data type

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: data_type

Return Value integer

public pure function dbcsr_type_1d_to_2d(data_type)

Returns 2-D data type corresponding to the given 1-D one. \return 2-D data type

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: data_type

Return Value integer

public pure function dbcsr_data_get_size_referenced(area) result(data_size_referenced)

Get actual data storage used for matrix

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

Count data of this matrix

Return Value integer

Data size used by matrix

private function dbcsr_get_data_c_d(area, select_data_type, lb, ub) result(DATA)

Returns the single/double precision real/complex data

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

real(kind=real_8), intent(in) :: select_data_type

force datatype

integer, intent(in), optional :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional :: ub

lower bound for pointer upper bound for pointer

Return Value real(kind=real_8), DIMENSION(:), POINTER

pointer to data

public function dbcsr_get_data_p_d(area, lb, ub) result(DATA)

Returns the single/double precision real/complex data \brief dbcsr_get_data_c_d

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

integer, intent(in), optional :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional :: ub

lower bound for pointer upper bound for pointer

Return Value real(kind=real_8), DIMENSION(:), POINTER, CONTIGUOUS

pointer to data

public function dbcsr_get_data_p_2d_d(area, lb, ub) result(DATA)

Returns the single/double precision real/complex data \brief dbcsr_get_data_c_d

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

integer, intent(in), optional, DIMENSION(2) :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional, DIMENSION(2) :: ub

lower bound for pointer upper bound for pointer

Return Value real(kind=real_8), DIMENSION(:, :), POINTER

pointer to data

private elemental function dbcsr_scalar_d(scalar) result(encapsulated_scalar)

Sets a scalar in an encapsulated data structure

Arguments

Type IntentOptional Attributes Name
real(kind=real_8), intent(in) :: scalar

scalar to encapsulate

Return Value type(dbcsr_scalar_type)

encapsulated scalar

private function dbcsr_get_data_c_s(area, select_data_type, lb, ub) result(DATA)

Returns the single/double precision real/complex data

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

real(kind=real_4), intent(in) :: select_data_type

force datatype

integer, intent(in), optional :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional :: ub

lower bound for pointer upper bound for pointer

Return Value real(kind=real_4), DIMENSION(:), POINTER

pointer to data

public function dbcsr_get_data_p_s(area, lb, ub) result(DATA)

Returns the single/double precision real/complex data \brief dbcsr_get_data_c_s

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

integer, intent(in), optional :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional :: ub

lower bound for pointer upper bound for pointer

Return Value real(kind=real_4), DIMENSION(:), POINTER, CONTIGUOUS

pointer to data

public function dbcsr_get_data_p_2d_s(area, lb, ub) result(DATA)

Returns the single/double precision real/complex data \brief dbcsr_get_data_c_s

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

integer, intent(in), optional, DIMENSION(2) :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional, DIMENSION(2) :: ub

lower bound for pointer upper bound for pointer

Return Value real(kind=real_4), DIMENSION(:, :), POINTER

pointer to data

private elemental function dbcsr_scalar_s(scalar) result(encapsulated_scalar)

Sets a scalar in an encapsulated data structure

Arguments

Type IntentOptional Attributes Name
real(kind=real_4), intent(in) :: scalar

scalar to encapsulate

Return Value type(dbcsr_scalar_type)

encapsulated scalar

private function dbcsr_get_data_c_z(area, select_data_type, lb, ub) result(DATA)

Returns the single/double precision real/complex data

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

complex(kind=real_8), intent(in) :: select_data_type

force datatype

integer, intent(in), optional :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional :: ub

lower bound for pointer upper bound for pointer

Return Value complex(kind=real_8), DIMENSION(:), POINTER

pointer to data

public function dbcsr_get_data_p_z(area, lb, ub) result(DATA)

Returns the single/double precision real/complex data \brief dbcsr_get_data_c_z

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

integer, intent(in), optional :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional :: ub

lower bound for pointer upper bound for pointer

Return Value complex(kind=real_8), DIMENSION(:), POINTER, CONTIGUOUS

pointer to data

public function dbcsr_get_data_p_2d_z(area, lb, ub) result(DATA)

Returns the single/double precision real/complex data \brief dbcsr_get_data_c_z

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

integer, intent(in), optional, DIMENSION(2) :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional, DIMENSION(2) :: ub

lower bound for pointer upper bound for pointer

Return Value complex(kind=real_8), DIMENSION(:, :), POINTER

pointer to data

private elemental function dbcsr_scalar_z(scalar) result(encapsulated_scalar)

Sets a scalar in an encapsulated data structure

Arguments

Type IntentOptional Attributes Name
complex(kind=real_8), intent(in) :: scalar

scalar to encapsulate

Return Value type(dbcsr_scalar_type)

encapsulated scalar

private function dbcsr_get_data_c_c(area, select_data_type, lb, ub) result(DATA)

Returns the single/double precision real/complex data

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

complex(kind=real_4), intent(in) :: select_data_type

force datatype

integer, intent(in), optional :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional :: ub

lower bound for pointer upper bound for pointer

Return Value complex(kind=real_4), DIMENSION(:), POINTER

pointer to data

public function dbcsr_get_data_p_c(area, lb, ub) result(DATA)

Returns the single/double precision real/complex data \brief dbcsr_get_data_c_c

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

integer, intent(in), optional :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional :: ub

lower bound for pointer upper bound for pointer

Return Value complex(kind=real_4), DIMENSION(:), POINTER, CONTIGUOUS

pointer to data

public function dbcsr_get_data_p_2d_c(area, lb, ub) result(DATA)

Returns the single/double precision real/complex data \brief dbcsr_get_data_c_c

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

integer, intent(in), optional, DIMENSION(2) :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional, DIMENSION(2) :: ub

lower bound for pointer upper bound for pointer

Return Value complex(kind=real_4), DIMENSION(:, :), POINTER

pointer to data

private elemental function dbcsr_scalar_c(scalar) result(encapsulated_scalar)

Sets a scalar in an encapsulated data structure

Arguments

Type IntentOptional Attributes Name
complex(kind=real_4), intent(in) :: scalar

scalar to encapsulate

Return Value type(dbcsr_scalar_type)

encapsulated scalar


Subroutines

public subroutine dbcsr_data_init(area)

Initializes a data area

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

data area

public subroutine internal_data_allocate(area, sizes)

Allocates pointers in the data type

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_area_type), intent(inout) :: area

internal structure holding array pointers

integer, intent(in), DIMENSION(:), CONTIGUOUS :: sizes

sizes to allocate to

public subroutine internal_data_deallocate(area)

Allocates pointers in the data type

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_area_type), intent(inout) :: area

internal structure holding array pointers

public subroutine dbcsr_data_clear_pointer(area)

Clears pointers from the data area.

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

data area

public subroutine dbcsr_data_hold(area)

Registers another use of the data area

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

data area

private subroutine set_data_area_area(area, rsize, csize, pointee, source_lb)

Points data area data pointers to another data area Assumes that no memory will be lost when repointing the pointer in the data area and that the area is initialized.

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

data area to repoint

integer, intent(in) :: rsize

size of data area to point to size of data area to point to

integer, intent(in) :: csize

size of data area to point to size of data area to point to

type(dbcsr_data_obj), intent(in) :: pointee

data area to point to

integer, intent(in), optional :: source_lb

point to this offset in pointee

public subroutine dbcsr_data_verify_bounds(area, lb, ub)

Verifies bounds of a data area

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

Data area

integer, intent(in), DIMENSION(:) :: lb

lower bounds upper bounds

integer, intent(in), DIMENSION(:) :: ub

lower bounds upper bounds

public subroutine dbcsr_data_zero(area, lb, ub)

Clears a part of the data area

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

data area

integer, intent(in), DIMENSION(:) :: lb
integer, intent(in), DIMENSION(:) :: ub

private subroutine dbcsr_data_get_sizes_any(area, sizes, valid)

Returns the allocated data size

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area to query for size

integer, intent(out), DIMENSION(:) :: sizes

array with the data sizes

logical, intent(out) :: valid

whether the data is actually allocated

private subroutine dbcsr_data_get_sizes_2(area, row_size, col_size, valid)

Returns the allocated data size

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area to query for size, should be 2-D

integer, intent(out) :: row_size

row size column size

integer, intent(out) :: col_size

row size column size

logical, intent(out) :: valid

whether the data is actually allocated

private subroutine dbcsr_data_get_sizes_1(area, total_size, valid)

Returns the allocated data size

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area to query for size

integer, intent(out) :: total_size

size of array

logical, intent(out) :: valid

whether the data is actually allocated

public elemental subroutine dbcsr_scalar_set_type(scalar, data_type)

Sets data type of a scalar

Arguments

Type IntentOptional Attributes Name
type(dbcsr_scalar_type), intent(inout) :: scalar

scalar

integer, intent(in) :: data_type

public elemental subroutine dbcsr_scalar_fill_all(scalar)

Fills all data and precision types from the set one

Arguments

Type IntentOptional Attributes Name
type(dbcsr_scalar_type), intent(inout) :: scalar

data area

public pure subroutine dbcsr_data_set_size_referenced(data_area, referenced_size)

Sets the referenced size of the data area

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: data_area

area for which to set referenced data size

integer, intent(in) :: referenced_size

set referenced data size to this value

private subroutine set_data_p_d(area, p)

Sets a data pointer.

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

target data area

real(kind=real_8), DIMENSION(:), POINTER, CONTIGUOUS :: p

source data pointer

private subroutine set_data_p_2d_d(area, p)

Sets a data pointer.

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

target data area

real(kind=real_8), DIMENSION(:, :), POINTER :: p

source data pointer

private subroutine get_data_d(area, DATA, lb, ub)

Returns the single/double precision real/complex data

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

real(kind=real_8), DIMENSION(:), POINTER :: DATA

pointer to data

integer, intent(in), optional :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional :: ub

lower bound for pointer upper bound for pointer

private subroutine get_data_2d_d(area, DATA, lb, ub)

Returns the single/double precision real/complex data

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

real(kind=real_8), DIMENSION(:, :), POINTER :: DATA

pointer to data

integer, intent(in), optional, DIMENSION(2) :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional, DIMENSION(2) :: ub

lower bound for pointer upper bound for pointer

private elemental subroutine dbcsr_scalar_get_value_d(encapsulated_scalar, value)

Sets a scalar in an encapsulated data structure

Arguments

Type IntentOptional Attributes Name
type(dbcsr_scalar_type), intent(in) :: encapsulated_scalar

encapsulated scalar

real(kind=real_8), intent(out) :: value

value of the scalar

private subroutine set_data_p_s(area, p)

Sets a data pointer.

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

target data area

real(kind=real_4), DIMENSION(:), POINTER, CONTIGUOUS :: p

source data pointer

private subroutine set_data_p_2d_s(area, p)

Sets a data pointer.

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

target data area

real(kind=real_4), DIMENSION(:, :), POINTER :: p

source data pointer

private subroutine get_data_s(area, DATA, lb, ub)

Returns the single/double precision real/complex data

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

real(kind=real_4), DIMENSION(:), POINTER :: DATA

pointer to data

integer, intent(in), optional :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional :: ub

lower bound for pointer upper bound for pointer

private subroutine get_data_2d_s(area, DATA, lb, ub)

Returns the single/double precision real/complex data

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

real(kind=real_4), DIMENSION(:, :), POINTER :: DATA

pointer to data

integer, intent(in), optional, DIMENSION(2) :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional, DIMENSION(2) :: ub

lower bound for pointer upper bound for pointer

private elemental subroutine dbcsr_scalar_get_value_s(encapsulated_scalar, value)

Sets a scalar in an encapsulated data structure

Arguments

Type IntentOptional Attributes Name
type(dbcsr_scalar_type), intent(in) :: encapsulated_scalar

encapsulated scalar

real(kind=real_4), intent(out) :: value

value of the scalar

private subroutine set_data_p_z(area, p)

Sets a data pointer.

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

target data area

complex(kind=real_8), DIMENSION(:), POINTER, CONTIGUOUS :: p

source data pointer

private subroutine set_data_p_2d_z(area, p)

Sets a data pointer.

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

target data area

complex(kind=real_8), DIMENSION(:, :), POINTER :: p

source data pointer

private subroutine get_data_z(area, DATA, lb, ub)

Returns the single/double precision real/complex data

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

complex(kind=real_8), DIMENSION(:), POINTER :: DATA

pointer to data

integer, intent(in), optional :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional :: ub

lower bound for pointer upper bound for pointer

private subroutine get_data_2d_z(area, DATA, lb, ub)

Returns the single/double precision real/complex data

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

complex(kind=real_8), DIMENSION(:, :), POINTER :: DATA

pointer to data

integer, intent(in), optional, DIMENSION(2) :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional, DIMENSION(2) :: ub

lower bound for pointer upper bound for pointer

private elemental subroutine dbcsr_scalar_get_value_z(encapsulated_scalar, value)

Sets a scalar in an encapsulated data structure

Arguments

Type IntentOptional Attributes Name
type(dbcsr_scalar_type), intent(in) :: encapsulated_scalar

encapsulated scalar

complex(kind=real_8), intent(out) :: value

value of the scalar

private subroutine set_data_p_c(area, p)

Sets a data pointer.

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

target data area

complex(kind=real_4), DIMENSION(:), POINTER, CONTIGUOUS :: p

source data pointer

private subroutine set_data_p_2d_c(area, p)

Sets a data pointer.

Read more…

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(inout) :: area

target data area

complex(kind=real_4), DIMENSION(:, :), POINTER :: p

source data pointer

private subroutine get_data_c(area, DATA, lb, ub)

Returns the single/double precision real/complex data

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

complex(kind=real_4), DIMENSION(:), POINTER :: DATA

pointer to data

integer, intent(in), optional :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional :: ub

lower bound for pointer upper bound for pointer

private subroutine get_data_2d_c(area, DATA, lb, ub)

Returns the single/double precision real/complex data

Arguments

Type IntentOptional Attributes Name
type(dbcsr_data_obj), intent(in) :: area

data area

complex(kind=real_4), DIMENSION(:, :), POINTER :: DATA

pointer to data

integer, intent(in), optional, DIMENSION(2) :: lb

lower bound for pointer upper bound for pointer

integer, intent(in), optional, DIMENSION(2) :: ub

lower bound for pointer upper bound for pointer

private elemental subroutine dbcsr_scalar_get_value_c(encapsulated_scalar, value)

Sets a scalar in an encapsulated data structure

Arguments

Type IntentOptional Attributes Name
type(dbcsr_scalar_type), intent(in) :: encapsulated_scalar

encapsulated scalar

complex(kind=real_4), intent(out) :: value

value of the scalar