Performs a multiplication of two dbcsr_type matrices, as C := alpha * op( A ) * op( B ) + beta * C.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | transa |
specifies the form of op( A ) to be used in the matrix multiplication transa = 'N' or 'n', op( A ) = A. transa = 'T' or 't', op( A ) = transpose(A). transa = 'C' or 'c', op( A ) = transpose(conjg(A)). specifies the form of op( B ) to be used in the matrix multiplication transb = 'N' or 'n', op( B ) = B. transb = 'T' or 't', op( B ) = transpose(B). transb = 'C' or 'c', op( B ) = transpose(conjg(B)). |
||
character(len=1), | intent(in) | :: | transb |
specifies the form of op( A ) to be used in the matrix multiplication transa = 'N' or 'n', op( A ) = A. transa = 'T' or 't', op( A ) = transpose(A). transa = 'C' or 'c', op( A ) = transpose(conjg(A)). specifies the form of op( B ) to be used in the matrix multiplication transb = 'N' or 'n', op( B ) = B. transb = 'T' or 't', op( B ) = transpose(B). transb = 'C' or 'c', op( B ) = transpose(conjg(B)). |
||
type(dbcsr_scalar_type), | intent(in) | :: | alpha |
scaling of product |
||
type(dbcsr_type), | intent(in) | :: | matrix_a |
left BCSR matrix right BCSR matrix |
||
type(dbcsr_type), | intent(in) | :: | matrix_b |
left BCSR matrix right BCSR matrix |
||
type(dbcsr_scalar_type), | intent(in) | :: | beta |
scaling of existing data |
||
type(dbcsr_type), | intent(inout) | :: | matrix_c |
resulting BCSR product matrix. |
||
integer, | intent(in), | optional | :: | first_row |
first full row of limiting submatrix last full row of limiting submatrix first full column of limiting submatrix last full column of limiting submatrix first full column of limiting inner product last full column of limiting inner product |
|
integer, | intent(in), | optional | :: | last_row |
first full row of limiting submatrix last full row of limiting submatrix first full column of limiting submatrix last full column of limiting submatrix first full column of limiting inner product last full column of limiting inner product |
|
integer, | intent(in), | optional | :: | first_column |
first full row of limiting submatrix last full row of limiting submatrix first full column of limiting submatrix last full column of limiting submatrix first full column of limiting inner product last full column of limiting inner product |
|
integer, | intent(in), | optional | :: | last_column |
first full row of limiting submatrix last full row of limiting submatrix first full column of limiting submatrix last full column of limiting submatrix first full column of limiting inner product last full column of limiting inner product |
|
integer, | intent(in), | optional | :: | first_k |
first full row of limiting submatrix last full row of limiting submatrix first full column of limiting submatrix last full column of limiting submatrix first full column of limiting inner product last full column of limiting inner product |
|
integer, | intent(in), | optional | :: | last_k |
first full row of limiting submatrix last full row of limiting submatrix first full column of limiting submatrix last full column of limiting submatrix first full column of limiting inner product last full column of limiting inner product |
|
logical, | intent(in), | optional | :: | retain_sparsity |
enforce the sparsity pattern of the existing product matrix; default is no |
|
real(kind=real_8), | intent(in), | optional | :: | filter_eps |
Filtering of the matrix |
|
integer(kind=int_8), | intent(out), | optional | :: | flop |
effective flop |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | transa | |||
character(len=1), | intent(in) | :: | transb | |||
real(kind=real_4), | intent(in) | :: | alpha | |||
type(dbcsr_type), | intent(in) | :: | matrix_a | |||
type(dbcsr_type), | intent(in) | :: | matrix_b | |||
real(kind=real_4), | intent(in) | :: | beta | |||
type(dbcsr_type), | intent(inout) | :: | matrix_c | |||
integer, | intent(in), | optional | :: | first_row | ||
integer, | intent(in), | optional | :: | last_row | ||
integer, | intent(in), | optional | :: | first_column | ||
integer, | intent(in), | optional | :: | last_column | ||
integer, | intent(in), | optional | :: | first_k | ||
integer, | intent(in), | optional | :: | last_k | ||
logical, | intent(in), | optional | :: | retain_sparsity | ||
real(kind=real_8), | intent(in), | optional | :: | filter_eps | ||
integer(kind=int_8), | intent(out), | optional | :: | flop |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | transa | |||
character(len=1), | intent(in) | :: | transb | |||
real(kind=real_8), | intent(in) | :: | alpha | |||
type(dbcsr_type), | intent(in) | :: | matrix_a | |||
type(dbcsr_type), | intent(in) | :: | matrix_b | |||
real(kind=real_8), | intent(in) | :: | beta | |||
type(dbcsr_type), | intent(inout) | :: | matrix_c | |||
integer, | intent(in), | optional | :: | first_row | ||
integer, | intent(in), | optional | :: | last_row | ||
integer, | intent(in), | optional | :: | first_column | ||
integer, | intent(in), | optional | :: | last_column | ||
integer, | intent(in), | optional | :: | first_k | ||
integer, | intent(in), | optional | :: | last_k | ||
logical, | intent(in), | optional | :: | retain_sparsity | ||
real(kind=real_8), | intent(in), | optional | :: | filter_eps | ||
integer(kind=int_8), | intent(out), | optional | :: | flop |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | transa | |||
character(len=1), | intent(in) | :: | transb | |||
complex(kind=real_4), | intent(in) | :: | alpha | |||
type(dbcsr_type), | intent(in) | :: | matrix_a | |||
type(dbcsr_type), | intent(in) | :: | matrix_b | |||
complex(kind=real_4), | intent(in) | :: | beta | |||
type(dbcsr_type), | intent(inout) | :: | matrix_c | |||
integer, | intent(in), | optional | :: | first_row | ||
integer, | intent(in), | optional | :: | last_row | ||
integer, | intent(in), | optional | :: | first_column | ||
integer, | intent(in), | optional | :: | last_column | ||
integer, | intent(in), | optional | :: | first_k | ||
integer, | intent(in), | optional | :: | last_k | ||
logical, | intent(in), | optional | :: | retain_sparsity | ||
real(kind=real_8), | intent(in), | optional | :: | filter_eps | ||
integer(kind=int_8), | intent(out), | optional | :: | flop |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | transa | |||
character(len=1), | intent(in) | :: | transb | |||
complex(kind=real_8), | intent(in) | :: | alpha | |||
type(dbcsr_type), | intent(in) | :: | matrix_a | |||
type(dbcsr_type), | intent(in) | :: | matrix_b | |||
complex(kind=real_8), | intent(in) | :: | beta | |||
type(dbcsr_type), | intent(inout) | :: | matrix_c | |||
integer, | intent(in), | optional | :: | first_row | ||
integer, | intent(in), | optional | :: | last_row | ||
integer, | intent(in), | optional | :: | first_column | ||
integer, | intent(in), | optional | :: | last_column | ||
integer, | intent(in), | optional | :: | first_k | ||
integer, | intent(in), | optional | :: | last_k | ||
logical, | intent(in), | optional | :: | retain_sparsity | ||
real(kind=real_8), | intent(in), | optional | :: | filter_eps | ||
integer(kind=int_8), | intent(out), | optional | :: | flop |