# tfg.math.vector.reflect

Computes the reflection direction for an incident vector.

tfg.math.vector.reflect(
vector,
normal,
axis=-1,
name=None
)


Defined in math/vector.py.

For an incident vector $$\mathbf{v}$$ and normal

$$\mathbf{n}$$
this function computes the reflected vector as $$\mathbf{r} = \mathbf{v} - 2(\mathbf{n}^T\mathbf{v})\mathbf{n}$$.

#### Note:

In the following, A1 to An are optional batch dimensions, which should be broadcast compatible.

#### Args:

• vector: A tensor of shape [A1, ..., Ai, ..., An], where the dimension i = axis represents a vector.
• normal: A tensor of shape [A1, ..., Ai, ..., An], where the dimension i = axis represents a normal around which the vector needs to be reflected. The normal vector needs to be normalized.
• axis: The dimension along which to compute the reflection.
• name: A name for this op which defaults to "vector_reflect".

#### Returns:

A tensor of shape [A1, ..., Ai, ..., An], where the dimension i = axis represents a reflected vector.