# plus, +

## Description

example

C = A + B adds arrays A and B by adding corresponding elements. If one input is a string array, then plus appends the corresponding elements as strings.

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 1-by-3 string arrays, then append similarly located strings in the arrays.

s1 = ["Red" "Blue" "Green"]
s1 = 1x3 string
"Red"    "Blue"    "Green"

s2 = ["Truck" "Sky" "Tree"]
s2 = 1x3 string
"Truck"    "Sky"    "Tree"

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

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

## Input Arguments

collapse all

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

• If one input is a string array, then the other input can be numeric, character, string, or a cell array. In this case, plus converts the non-string input into a string array and then appends corresponding elements of the inputs.

• Operands with an integer data type cannot be complex.

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

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

## Tips

• For appending text, plus only operates on string arrays. Use the append function to append text in character vectors or cell arrays.

## Version History

Introduced before R2006a

expand all