dbcsr_multiply_c Subroutine

private subroutine dbcsr_multiply_c(transa, transb, alpha, matrix_a, matrix_b, beta, matrix_c, first_row, last_row, first_column, last_column, first_k, last_k, retain_sparsity, filter_eps, flop)

Arguments

Type IntentOptional 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

Source Code

      SUBROUTINE dbcsr_multiply_c (transa, transb, &
                                               alpha, matrix_a, matrix_b, beta, matrix_c, &
                                               first_row, last_row, first_column, last_column, first_k, last_k, &
                                               retain_sparsity, filter_eps, flop)
         CHARACTER(LEN=1), INTENT(IN)             :: transa, transb
         COMPLEX(kind=real_4), INTENT(IN)                      :: alpha
         TYPE(dbcsr_type), INTENT(IN)             :: matrix_a, matrix_b
         COMPLEX(kind=real_4), INTENT(IN)                      :: beta
         TYPE(dbcsr_type), INTENT(INOUT)          :: matrix_c
         INTEGER, INTENT(IN), OPTIONAL            :: first_row, last_row, &
                                                     first_column, last_column, &
                                                     first_k, last_k
         LOGICAL, INTENT(IN), OPTIONAL            :: retain_sparsity
         REAL(kind=real_8), INTENT(IN), OPTIONAL :: filter_eps
         INTEGER(int_8), INTENT(OUT), OPTIONAL    :: flop

         CALL dbcsr_multiply_prv(transa, transb, &
                                 alpha, matrix_a%prv, matrix_b%prv, beta, matrix_c%prv, &
                                 first_row, last_row, first_column, last_column, first_k, last_k, &
                                 retain_sparsity, &
                                 filter_eps=filter_eps, &
                                 flop=flop)
      END SUBROUTINE dbcsr_multiply_c