We allow : matrix(dp) [+]= [scale(dp)] * block(dp) matrix(dp) [+]= [scale(dp)] * block(sp) matrix(sp) [+]= [scale(dp)] * block(sp)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_type), | intent(inout) | :: | matrix | |||
integer, | intent(in) | :: | row | |||
integer, | intent(in) | :: | col | |||
type(dbcsr_data_obj) | :: | block | ||||
integer, | intent(inout), | optional, | DIMENSION(2) | :: | lb_row_col | |
logical, | intent(in), | optional | :: | transposed | ||
logical, | intent(in), | optional | :: | summation | ||
integer(kind=int_8), | intent(inout), | optional | :: | flop | ||
type(dbcsr_scalar_type), | intent(in), | optional | :: | scale |
Inserts a block in a dbcsr matrix. If the block exists, the current data is overwritten.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_type), | intent(inout) | :: | matrix |
DBCSR matrix |
||
integer, | intent(in) | :: | row |
the logical row the logical column |
||
integer, | intent(in) | :: | col |
the logical row the logical column |
||
real(kind=real_8), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | block |
the block to put |
|
integer, | intent(inout), | optional, | DIMENSION(2) | :: | lb_row_col | |
logical, | intent(in), | optional | :: | transposed |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
logical, | intent(in), | optional | :: | summation |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
integer(kind=int_8), | intent(inout), | optional | :: | flop | ||
real(kind=real_8), | intent(in), | optional | :: | scale |
scale the OBblock being added |
Inserts a block in a dbcsr matrix. If the block exists, the current data is overwritten.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_type), | intent(inout) | :: | matrix |
DBCSR matrix |
||
integer, | intent(in) | :: | row |
the logical row the logical column |
||
integer, | intent(in) | :: | col |
the logical row the logical column |
||
real(kind=real_4), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | block |
the block to put |
|
integer, | intent(inout), | optional, | DIMENSION(2) | :: | lb_row_col | |
logical, | intent(in), | optional | :: | transposed |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
logical, | intent(in), | optional | :: | summation |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
integer(kind=int_8), | intent(inout), | optional | :: | flop | ||
real(kind=real_4), | intent(in), | optional | :: | scale |
scale the OBblock being added |
Inserts a block in a dbcsr matrix. If the block exists, the current data is overwritten.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_type), | intent(inout) | :: | matrix |
DBCSR matrix |
||
integer, | intent(in) | :: | row |
the logical row the logical column |
||
integer, | intent(in) | :: | col |
the logical row the logical column |
||
complex(kind=real_8), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | block |
the block to put |
|
integer, | intent(inout), | optional, | DIMENSION(2) | :: | lb_row_col | |
logical, | intent(in), | optional | :: | transposed |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
logical, | intent(in), | optional | :: | summation |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
integer(kind=int_8), | intent(inout), | optional | :: | flop | ||
complex(kind=real_8), | intent(in), | optional | :: | scale |
scale the OBblock being added |
Inserts a block in a dbcsr matrix. If the block exists, the current data is overwritten.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_type), | intent(inout) | :: | matrix |
DBCSR matrix |
||
integer, | intent(in) | :: | row |
the logical row the logical column |
||
integer, | intent(in) | :: | col |
the logical row the logical column |
||
complex(kind=real_4), | intent(in), | DIMENSION(:), CONTIGUOUS | :: | block |
the block to put |
|
integer, | intent(inout), | optional, | DIMENSION(2) | :: | lb_row_col | |
logical, | intent(in), | optional | :: | transposed |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
logical, | intent(in), | optional | :: | summation |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
integer(kind=int_8), | intent(inout), | optional | :: | flop | ||
complex(kind=real_4), | intent(in), | optional | :: | scale |
scale the OBblock being added |
Put a 2-D block in a DBCSR matrix
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_type), | intent(inout) | :: | matrix |
DBCSR matrix |
||
integer, | intent(in) | :: | row |
the row the column |
||
integer, | intent(in) | :: | col |
the row the column |
||
real(kind=real_8), | intent(in), | DIMENSION(:, :), CONTIGUOUS, TARGET | :: | block |
the block to put |
|
integer, | intent(inout), | optional, | DIMENSION(2) | :: | lb_row_col | |
logical, | intent(in), | optional | :: | transposed |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
logical, | intent(in), | optional | :: | summation |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
integer(kind=int_8), | intent(inout), | optional | :: | flop | ||
real(kind=real_8), | intent(in), | optional | :: | scale |
scale the block being added |
Put a 2-D block in a DBCSR matrix
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_type), | intent(inout) | :: | matrix |
DBCSR matrix |
||
integer, | intent(in) | :: | row |
the row the column |
||
integer, | intent(in) | :: | col |
the row the column |
||
real(kind=real_4), | intent(in), | DIMENSION(:, :), CONTIGUOUS, TARGET | :: | block |
the block to put |
|
integer, | intent(inout), | optional, | DIMENSION(2) | :: | lb_row_col | |
logical, | intent(in), | optional | :: | transposed |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
logical, | intent(in), | optional | :: | summation |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
integer(kind=int_8), | intent(inout), | optional | :: | flop | ||
real(kind=real_4), | intent(in), | optional | :: | scale |
scale the block being added |
Put a 2-D block in a DBCSR matrix
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_type), | intent(inout) | :: | matrix |
DBCSR matrix |
||
integer, | intent(in) | :: | row |
the row the column |
||
integer, | intent(in) | :: | col |
the row the column |
||
complex(kind=real_8), | intent(in), | DIMENSION(:, :), CONTIGUOUS, TARGET | :: | block |
the block to put |
|
integer, | intent(inout), | optional, | DIMENSION(2) | :: | lb_row_col | |
logical, | intent(in), | optional | :: | transposed |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
logical, | intent(in), | optional | :: | summation |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
integer(kind=int_8), | intent(inout), | optional | :: | flop | ||
complex(kind=real_8), | intent(in), | optional | :: | scale |
scale the block being added |
Put a 2-D block in a DBCSR matrix
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(dbcsr_type), | intent(inout) | :: | matrix |
DBCSR matrix |
||
integer, | intent(in) | :: | row |
the row the column |
||
integer, | intent(in) | :: | col |
the row the column |
||
complex(kind=real_4), | intent(in), | DIMENSION(:, :), CONTIGUOUS, TARGET | :: | block |
the block to put |
|
integer, | intent(inout), | optional, | DIMENSION(2) | :: | lb_row_col | |
logical, | intent(in), | optional | :: | transposed |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
logical, | intent(in), | optional | :: | summation |
the block is transposed if block exists, then sum the new block to the old one instead of replacing it |
|
integer(kind=int_8), | intent(inout), | optional | :: | flop | ||
complex(kind=real_4), | intent(in), | optional | :: | scale |
scale the block being added |