tfg.math.vector.reflect

View source on GitHub

Computes the reflection direction for an incident vector.

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.

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".

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