The GNU Fortran Compiler: MATMUL

Next: MAX, Previous: MASKR, Up: Intrinsic Procedures [Contents][Index]

### 8.164 `MATMUL` — matrix multiplication

Description:

  Performs a matrix multiplication on numeric or logical arguments.

Standard:

  Fortran 95 and later

Class:

  Transformational function

Syntax:

  `RESULT = MATMUL(MATRIX_A, MATRIX_B)`

Arguments:

  MATRIX_A | An array of `INTEGER`, `REAL`, `COMPLEX`, or `LOGICAL` type, with a rank of one or two.
  MATRIX_B | An array of `INTEGER`, `REAL`, or `COMPLEX` type if MATRIX_A is of a numeric type; otherwise, an array of `LOGICAL` type. The rank shall be one or two, and the first (or only) dimension of MATRIX_B shall be equal to the last (or only) dimension of MATRIX_A.

Return value:

  The matrix product of MATRIX_A and MATRIX_B. The type and kind of the result follow the usual type and kind promotion rules, as for the `*` or `.AND.` operators.

See also: