# Vector Math Node

The Vector Math node performs the selected math operation on the input vectors.

## Inputs

The inputs of the node are dynamic. Some inputs are only available in certain operations. For instance, the Scale input is only available in the Scale operator.

Vector

Input vector $$A = \begin{pmatrix} A_x \\ A_y \\ A_z \end{pmatrix}$$.

Vector

Input vector $$B = \begin{pmatrix} B_x \\ B_y \\ B_z \end{pmatrix}$$.

Scale

Input Scale $$s$$.

## Properties

Operation

The vector math operator to be applied on the input vectors.

The sum of A and B. $$\begin{pmatrix} A_x + B_x \\ A_y + B_y \\ A_z + B_z \end{pmatrix}$$

Subtract

The difference between A and B. $$\begin{pmatrix} A_x - B_x \\ A_y - B_y \\ A_z - B_z \end{pmatrix}$$

Multiply

The entrywise product of A and B. $$\begin{pmatrix} A_x \cdot B_x \\ A_y \cdot B_y \\ A_z \cdot B_z \end{pmatrix}$$

Divide

The entrywise division of A by B. Division by zero results in zero. $$\begin{pmatrix} A_x / B_x \\ A_y / B_y \\ A_z / B_z \end{pmatrix}$$

The entrywise combination of the multiply and addition operations. $$A * B + C$$

Cross Product

The cross product of A and B. $$\begin{pmatrix} A_y \cdot B_z - A_z \cdot B_y \\ A_z \cdot B_x - A_x \cdot B_z \\ A_x \cdot B_y - A_y \cdot B_x \end{pmatrix}$$

Project

The projection of A onto B.

Reflect

The reflection of A around the normal B. B need not be normalized.

Refract

For a given incident vector A, surface normal B and ratio of indices of refraction (IOR), refract outputs the refraction vector R.

Faceforward

Orients a vector A to point away from a surface B as defined by its normal C. Computes $$(dot(B, C) < 0) ? A : -A$$.

Dot Product

The dot product of A and B. $$A_x \cdot B_x + A_y \cdot B_y + A_z \cdot B_z$$

Distance

The distance between A and B.

Length

The length of A. $$\sqrt{A_x^2 + A_y^2 + A_z^2}$$

Scale

The result of multiplying A by the scalar input Scale. $$\begin{pmatrix} s \cdot A_x \\ s \cdot A_y \\ s \cdot A_z \end{pmatrix}$$

Normalize

The result of normalizing A. The result vector points to the same direction as A and has a length of 1. If A is (0, 0, 0), the result is (0, 0, 0) as well.

Wrap

Wrap.

Snap

The result of rounding A to the largest integer multiple of B less than or equal A.

Floor

The entrywise floor of A.

Ceil

The entrywise ceiling of A.

Modulo

The entrywise modulo of A by B.

Fraction

The fractional part of A.

Absolute

The entrywise absolute value of A.

Minimum

The entrywise minimum from A and B.

Maximum

The entrywise maximum from A and B.

Sine

The entrywise Sine of A.

Cosine

The entrywise Cosine of A.

Tangent

The entrywise Tangent of A.

## Outputs

The output of the node is dynamic. It is either a vector or a scalar depending on the operator. For instance, the Length operator has a scalar output while the Add operator has a vector output.

Vector

Output vector.

Value

Output value.