mm_ATBT_5 Subroutine

private pure subroutine mm_ATBT_5(A, B, C)

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(:,:)

Called by

proc~~mm_atbt_5~~CalledByGraph proc~mm_atbt_5 formatmul_opts::mm_ATBT_5 proc~mat_mat_rel_atbt_opt formatmul_opts::mat_mat_rel_ATBT_opt proc~mat_mat_rel_atbt_opt->proc~mm_atbt_5 proc~mat_mat_rel_atbt formatmul::mat_mat_rel_ATBT proc~mat_mat_rel_atbt->proc~mat_mat_rel_atbt_opt proc~mat_mat_rel formatmul::mat_mat_rel proc~mat_mat_rel->proc~mat_mat_rel_atbt interface~matmul formatmul::matmul interface~matmul->proc~mat_mat_rel

Source Code

   pure subroutine mm_ATBT_5(A, B, C)
      real(rk), intent(in), contiguous :: A(:,:), B(:,:)
      real(rk), intent(inout), contiguous :: C(:,:)
      integer :: m, n, p
      integer :: i, j, k

      m = size(A,2)
      n = size(A,1)
      p = size(B,1)

      do i=1,n
         do j=1,m
            do k=1,p
               c(j,k) = c(j,k) + a(i,j)*b(k,i)
            end do
         end do
      end do

   end subroutine mm_ATBT_5