# jax.random.triangular#

jax.random.triangular(key, left, mode, right, shape=None, dtype=<class 'float'>)[source]#

Sample Triangular random values with given shape and float dtype.

The values are returned according to the probability density function:

$\begin{split}f(x; a, b, c) = \frac{2}{c-a} \left\{ \begin{array}{ll} \frac{x-a}{b-a} & a \leq x \leq b \\ \frac{c-x}{c-b} & b \leq x \leq c \end{array} \right.\end{split}$

on the domain $$a \leq x \leq c$$.

Parameters:
• key (Array | ndarray | bool_ | number | bool | int | float | complex) â€“ a PRNG key used as the random key.

• left (Array | ndarray | bool_ | number | bool | int | float | complex) â€“ a float or array of floats broadcast-compatible with shape representing the lower limit parameter of the distribution.

• mode (Array | ndarray | bool_ | number | bool | int | float | complex) â€“ a float or array of floats broadcast-compatible with shape representing the peak value parameter of the distribution, value must fulfill the condition left <= mode <= right.

• right (Array | ndarray | bool_ | number | bool | int | float | complex) â€“ a float or array of floats broadcast-compatible with shape representing the upper limit parameter of the distribution, must be larger than left.

• shape (Sequence[int] | None) â€“ optional, a tuple of nonnegative integers specifying the result shape. Must be broadcast-compatible with left,mode and right. The default (None) produces a result shape equal to left.shape, mode.shape and right.shape.

• dtype (str | type[Any] | dtype | SupportsDType) â€“ optional, a float dtype for the returned values (default float64 if jax_enable_x64 is true, otherwise float32).

Returns:

A random array with the specified dtype and with shape given by shape if shape is not None, or else by left.shape, mode.shape and right.shape.

Return type:

Array