projnormal.formulas.projected_normal_Bc.probability

Probability density function (PDF) for the general projected normal distribution.

Functions

log_pdf(mean_x, covariance_x, y, const[, B, ...])

Compute the log-pdf at points y for the distribution of the variable \(y = x/\sqrt{x^T B x + c}\), where \(x \sim \mathcal{N}(\mu_x, \Sigma_x)\), \(B\) is a symmetric positive definite matrix and \(c\) is a positive constant.

pdf(mean_x, covariance_x, y, const[, B, B_chol])

Compute the pdf at points y for the distribution of the variable \(y = x/\sqrt{x^T B x + c}\), where \(x \sim \mathcal{N}(\mu_x, \Sigma_x)\), \(B\) is a symmetric positive definite matrix and \(c\) is a positive constant.

log_pdf(mean_x, covariance_x, y, const, B=None, B_chol=None)

Compute the log-pdf at points y for the distribution of the variable \(y = x/\sqrt{x^T B x + c}\), where \(x \sim \mathcal{N}(\mu_x, \Sigma_x)\), \(B\) is a symmetric positive definite matrix and \(c\) is a positive constant. (\(y\) has a projected normal distribution.).

Parameters:
  • mean_x (torch.Tensor) – Mean of x. Shape is (n_dim,).

  • covariance_x (torch.Tensor) – Covariance of x. Shape is (n_dim, n_dim).

  • y (torch.Tensor) – Points where to evaluate the PDF. Shape is (n_points, n_dim).

  • const (torch.Tensor) – Constant added to the denominator. Must be positive. Shape is ().

  • B (torch.Tensor, optional) – Matrix B used in the denominator of the projection. If not provided, the identity matrix is used. Shape is (n_dim, n_dim).

  • B_chol (torch.Tensor, optional) – Cholesky decomposition of B. Can be provided to avoid recomputing it. Shape is (n_dim, n_dim).

Returns:

Log-PDF evaluated at each y. Shape is (n_points,).

Return type:

torch.Tensor

pdf(mean_x, covariance_x, y, const, B=None, B_chol=None)

Compute the pdf at points y for the distribution of the variable \(y = x/\sqrt{x^T B x + c}\), where \(x \sim \mathcal{N}(\mu_x, \Sigma_x)\), \(B\) is a symmetric positive definite matrix and \(c\) is a positive constant.

Parameters:
  • mean_x (torch.Tensor) – Mean of x. Shape is (n_dim,).

  • covariance_x (torch.Tensor) – Covariance of x. Shape is (n_dim, n_dim).

  • y (torch.Tensor) – Points where to evaluate the PDF. Shape is (n_points, n_dim).

  • const (torch.Tensor) – Constant added to the denominator. Must be positive. Shape is ().

  • B (torch.Tensor, optional) – Matrix B used in the denominator of the projection. If not provided, the identity matrix is used. Shape is (n_dim, n_dim).

  • B_chol (torch.Tensor, optional) – Cholesky decomposition of B. Can be provided to avoid recomputing it. Shape is (n_dim, n_dim).

Returns:

PDF evaluated at each y. Shape is (n_points,).

Return type:

torch.Tensor