# Fortran Wiki matmul

## 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.

category: intrinsics