projnormal.formulas.projected_normal_B.moments
Approximation to the moments of the general projected normal distribution projected onto ellipse given by matrix B.
Functions
|
Compute the mean of \(y = x/\sqrt{x^T B x}\), where \(x \sim \mathcal{N}(\mu_x, \Sigma_x)\) and \(B\) is a symmetric positive definite matrix. |
|
Compute the Taylor approximation to the second moment matrix of the variable Y = X/(X'BX)^0.5, where X~N(mean_x, covariance_x). |
- mean(mean_x, covariance_x, B=None, B_chol=None)
Compute the mean of \(y = x/\sqrt{x^T B x}\), where \(x \sim \mathcal{N}(\mu_x, \Sigma_x)\) and \(B\) is a symmetric positive definite matrix. Uses a Taylor approximation. (\(y\) is distributed on the ellipse defined by \(B\).).
- 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).B (
torch.Tensor, optional) – Symmetric positive definite matrix defining the ellipse. 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:
Expected value for the projected normal on ellipse. Shape is
(n_dim,).- Return type:
torch.Tensor
- second_moment(mean_x, covariance_x, B=None, B_chol=None)
Compute the Taylor approximation to the second moment matrix of the variable Y = X/(X’BX)^0.5, where X~N(mean_x, covariance_x). Y has a general 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).B (
torch.Tensor, optional) – Symmetric positive definite matrix defining the ellipse. 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:
Second moment matrix of \(y\). Shape is
(n_dim, n_dim).- Return type:
torch.Tensor