Documentation

# plus, +

## Description

example

C = A + B adds arrays A and B by adding 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 = plus(A,B) is an alternate way to execute A + B, but is rarely used. It enables operator overloading for classes.

## Examples

collapse all

Create an array, A, and add a scalar value to it.

A = [0 1; 1 0];
C = A + 2
C = 2×2

2     3
3     2

The scalar value is added to each entry of A.

Create two arrays, A and B, and add them together.

A = [1 0; 2 4];
B = [5 9; 2 1];
C = A + B
C = 2×2

6     9
4     5

The elements of A are added to the corresponding elements of B.

Create a 1-by-2 row vector and 3-by-1 column vector and add them.

a = 1:2;
b = (1:3)';
a + b
ans = 3×2

2     3
3     4
4     5

The result is a 3-by-2 matrix, where each (i,j) element in the matrix is equal to a(j) + b(i):

$\mathit{a}=\left[{\mathit{a}}_{1}\text{\hspace{0.17em}}{\mathit{a}}_{2}\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}\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}}\mathit{b}=\left[\begin{array}{cc}{\mathit{a}}_{1}+\text{\hspace{0.17em}}{\mathit{b}}_{1}& {\mathit{a}}_{2}+\text{\hspace{0.17em}}{\mathit{b}}_{1}\\ {\mathit{a}}_{1}+\text{\hspace{0.17em}}{\mathit{b}}_{2}& {\mathit{a}}_{2}+\text{\hspace{0.17em}}{\mathit{b}}_{2}\\ {\mathit{a}}_{1}+\text{\hspace{0.17em}}{\mathit{b}}_{3}& {\mathit{a}}_{2}+\text{\hspace{0.17em}}{\mathit{b}}_{3}\end{array}\right].$

Create an array, A, and add a column vector to it. The vector is treated as though it is a matrix of the same size as A, so that each element in the vector is added to a row in A.

A = [1 2 3; 4 5 6]
A = 2×3

1     2     3
4     5     6

b = [10; 100]
b = 2×1

10
100

A + b
ans = 2×3

11    12    13
104   105   106

Create two 1-by-3 string arrays, then concatenate similarly located strings in the arrays.

s1 = string({'Red' 'Blue' 'Green'})
s1 = 1x3 string array
"Red"    "Blue"    "Green"

s2 = string({'Truck' 'Sky' 'Tree'})
s2 = 1x3 string array
"Truck"    "Sky"    "Tree"

s = s1 + s2
s = 1x3 string array
"RedTruck"    "BlueSky"    "GreenTree"

## Input Arguments

collapse all

Operands, specified as scalars, vectors, matrices, or multidimensional arrays. Numeric or string inputs 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.

• Datetime, duration, and calendar duration arrays must be the same size unless one is a scalar.

• If one input is a datetime array, duration array, or calendar duration array, then numeric values in the other input are treated as a number of 24-hour days.

• If one input is a string array, then the other input can be a numeric, logical, character, string, or cell array.

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

## Compatibility Considerations

expand all

Behavior changed in R2016b