**==mtx_mult_tr.f  
C++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
C
      SUBROUTINE  MTX_MULT_TR (A,B,R,M,L,N)
C
C Purpose: MTX_MULT_TR multiplies transpose of A by B and puts in R
C
C      IMPLICIT NONE
      INTEGER  M, L, N
      REAL     A(L,M), B(L,N), R(M,N)
C
C
C-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
C Local Variables:
C
      INTEGER  I, J, K
C
C------------------------------------------------------------------------------
C
      DO 40 I = 1 , M
         DO 30 J = 1 , N
            R(I,J) = 0.0
            DO 20 K = 1 , L
               R(I,J) = R(I,J) + A(K,I)*B(K,J)
 20         CONTINUE
 30      CONTINUE
 40   CONTINUE
C
      RETURN
      END
