# ismatrix

check if a variable is a matrix

## Calling Sequence

    t=ismatrix(x)

## Arguments

x

  scalar,vector, matrix, hypermatrix, list, array of structures or cells

t

  a boolean

## Description

`ismatrix(`x`)` returns true if `x` is a matrix. Scalars and vectors are considered as matrix, and it is the same for hypermatrix only if one of its three dimensions equals to 1.

Note that `matrix([])` returns false.

## Examples

    ismatrix(ones(10,5))
    ismatrix(1)
    ismatrix(["s" "t" "u"; "t" "s" "u"])
    ismatrix(rand(2,1,3)) //because of singleton
    ismatrix(rand(2,2,3)) //hypermatrix
    s = struct();
    ismatrix(s) // Empty structure
    clear s
    s(1,2).a = 3;
    s(1,3).b = %z;
    ismatrix(s) // Row array of structures
    clear s
    s(2,1).a = "w";
    s(3,1).b = %t;
    iscolumn(s) // Column array of structures
    clear s
    s(1,2).a = -2;
    s(3,1).b = %pi;
    ismatrix(s) // 2D not-square array of structures
    clear s
    s(2,1,2).a = 3;
    s(1,1,2).b = "test";
    ismatrix(s) // 3D array of structures (with a singleton dim)
    clear s
    s(1,1,2).a = 3;
    s(1,1,3).b = "test";
    ismatrix(s) // 3D array of structures (with 2 singleton dims)
    clear s
    s(2,2,2).a = %f;
    s(1,2,1).b = list(%e, %s);
    ismatrix(s) // 3D (cubic) array of structures

## See also

- isscalar
- isrow
- iscolumn
- issquare
- isempty

## History

5.5.0
Function ismatrix introduced.