mm_ABT_2 Subroutine

private pure subroutine mm_ABT_2(A, B, C)

Uses

  • proc~~mm_abt_2~~UsesGraph proc~mm_abt_2 formatmul_opts::mm_ABT_2 module~external_interfaces_matmul external_interfaces_matmul proc~mm_abt_2->module~external_interfaces_matmul kinds kinds module~external_interfaces_matmul->kinds

Arguments

Type IntentOptional Attributes Name
real(kind=rk), intent(in), contiguous :: A(:,:)
real(kind=rk), intent(in), contiguous :: B(:,:)
real(kind=rk), intent(inout), contiguous :: C(:,:)

Calls

proc~~mm_abt_2~~CallsGraph proc~mm_abt_2 formatmul_opts::mm_ABT_2 interface~gemm external_interfaces_matmul::gemm proc~mm_abt_2->interface~gemm

Called by

proc~~mm_abt_2~~CalledByGraph proc~mm_abt_2 formatmul_opts::mm_ABT_2 proc~mat_mat_rel_abt_opt formatmul_opts::mat_mat_rel_ABT_opt proc~mat_mat_rel_abt_opt->proc~mm_abt_2 proc~mat_mat_rel_abt formatmul::mat_mat_rel_ABT proc~mat_mat_rel_abt->proc~mat_mat_rel_abt_opt proc~mat_mat_rel formatmul::mat_mat_rel proc~mat_mat_rel->proc~mat_mat_rel_abt interface~matmul formatmul::matmul interface~matmul->proc~mat_mat_rel

Source Code

   pure subroutine mm_ABT_2(A, B, C)
      use external_interfaces_matmul

      real(rk), intent(in), contiguous :: A(:,:), B(:,:)
      real(rk), intent(inout), contiguous :: C(:,:)
      integer                 :: m, p

      m = size(A, 1)
      p = size(B, 1)
      ! Call BLAS gemm subroutine for matrix-matrix multiplication.
      call gemm('N', 'T', m, p, size(A, 2), 1.0_rk, A, m, B, p, 0.0_rk, C, m)

   end subroutine mm_ABT_2