Documentation

# times, .*

Multiplication

## Syntax

``C = A.*B``
``C = times(A,B)``

## Description

example

````C = A.*B` multiplies arrays `A` and `B` by multiplying corresponding elements. The sizes of `A` and `B` must be the same or be compatible.If the sizes of `A` and `B` are compatible, then the two arrays implicitly expand to match each other. For example, if one of `A` or `B` is a scalar, then the scalar is combined with each element of the other array. Also, vectors with different orientations (one row vector and one column vector) implicitly expand to form a matrix.```
````C = times(A,B)` is an alternate way to execute `A.*B`, but is rarely used. It enables operator overloading for classes.```

## Examples

collapse all

Create two vectors, `A` and `B`, and multiply them element by element.

```A = [1 0 3]; B = [2 3 7]; C = A.*B```
```C = 1×3 2 0 21 ```

Create two 3-by-3 arrays, `A` and `B`, and multiply them element by element.

```A = [1 0 3; 5 3 8; 2 4 6]; B = [2 3 7; 9 1 5; 8 8 3]; C = A.*B```
```C = 3×3 2 0 21 45 3 40 16 32 18 ```

Create a row vector `a` and a column vector `b`, then multiply them. The 1-by-3 row vector and 4-by-1 column vector combine to produce a 4-by-3 matrix.

```a = 1:3; b = (1:4)'; a.*b```
```ans = 4×3 1 2 3 2 4 6 3 6 9 4 8 12 ```

The result is a 4-by-3 matrix, where each (i,j) element in the matrix is equal to `a(j).*b(i)`:

`$\mathit{a}=\left[\begin{array}{ccc}{\mathit{a}}_{1}& {\mathit{a}}_{2}& {\mathit{a}}_{3}\end{array}\right],\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\mathit{b}=\left[\begin{array}{c}{\mathit{b}}_{1}\\ {\mathit{b}}_{2}\\ {\mathit{b}}_{3}\\ {\mathit{b}}_{4}\end{array}\right],\text{\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}\hspace{0.17em}}\text{\hspace{0.17em}}\mathit{a}\text{\hspace{0.17em}}.*\text{\hspace{0.17em}}\mathit{b}=\left[\begin{array}{ccc}{\mathit{a}}_{1}{\mathit{b}}_{1}& {\mathit{a}}_{2}{\mathit{b}}_{1}& {\mathit{a}}_{3}{\mathit{b}}_{1}\\ {\mathit{a}}_{1}{\mathit{b}}_{2}& {\mathit{a}}_{2}{\mathit{b}}_{2}& {\mathit{a}}_{3}{\mathit{b}}_{2}\\ {\mathit{a}}_{1}{\mathit{b}}_{3}& {\mathit{a}}_{2}{\mathit{b}}_{3}& {\mathit{a}}_{3}{\mathit{b}}_{3}\\ {\mathit{a}}_{1}{\mathit{b}}_{4}& {\mathit{a}}_{2}{\mathit{b}}_{4}& {\mathit{a}}_{3}{\mathit{b}}_{4}\end{array}\right].$`

## Input Arguments

collapse all

Operands, specified as scalars, vectors, matrices, or multidimensional arrays. `A` and `B` must either be the same size or have sizes that are compatible (for example, `A` is an `M`-by-`N` matrix and `B` is a scalar or `1`-by-`N` row vector). For more information, see Compatible Array Sizes for Basic Operations.

• Operands with an integer data type cannot be complex.

• If `A` and `B` are datetime, duration, or calendar duration arrays, then they must be the same size unless one is a scalar.

Data Types: `single` | `double` | `int8` | `int16` | `int32` | `int64` | `uint8` | `uint16` | `uint32` | `uint64` | `logical` | `char` | `categorical` | `duration` | `calendarDuration`
Complex Number Support: Yes

## Compatibility Considerations

expand all

Behavior changed in R2016b