|
| | Covariance (double sigma_x_sq=0, double sigma_y_sq=0, double cov_xy=0) |
| | Construct a new Covariance object.
|
| |
|
| Covariance (const Ellipse &ell) |
| | Construct a covariance using values from an ellipse instance.
|
| |
|
void | convolve (const Covariance &cov) |
| | Convolve with another covariance, adding the values of each parameter to this.
|
| |
|
double | get_sigma_x_sq () const |
| | Get the square of sigma_x.
|
| |
|
double | get_sigma_y_sq () const |
| | Get the square of sigma_y.
|
| |
|
double | get_cov_xy () const |
| | Get the covariance.
|
| |
|
std::array< double, 3 > | get_xyc () const |
| | Get the array of sigma_x^2, sigma_y^2, covariance.
|
| |
| std::shared_ptr< Covariance > | make_convolution (const Covariance &cov) const |
| | Return the convolution of this with another covariance.
|
| |
|
std::unique_ptr< Covariance > | make_convolution_uniq (const Covariance &cov) const |
| | Same as make_convolution(), but returning a unique_ptr.
|
| |
|
void | set (const Ellipse &ellipse) |
| | Set values from an ellipse instance.
|
| |
|
void | set (double sigma_x_sq=0, double sigma_y_sq=0, double cov_xy=0) |
| | Set all values at once.
|
| |
|
void | set_sigma_x_sq (double sigma_x_sq) |
| | Set the square of sigma_x.
|
| |
|
void | set_sigma_y_sq (double sigma_y_sq) |
| | Set the square of sigma_y.
|
| |
|
void | set_cov_xy (double cov_xy) |
| | Set the off-diagonal (covariance) term.
|
| |
|
void | set_xyc (const std::array< double, 3 > &xyc) |
| | Set sigma_x_sq, sigma_y_sq and cov_xy from an array ref.
|
| |
| std::string | repr (bool name_keywords=false, std::string_view namespace_separator=Object::CC_NAMESPACE_SEPARATOR) const override |
| |
| std::string | str () const override |
| | Return a brief, human-readable string representation of this.
|
| |
|
bool | operator== (const Covariance &other) const |
| |
|
bool | operator!= (const Covariance &other) const |
| |
A representation of a 2D Gaussian with x and y standard deviations and a covariance value.
This ellipse representation is intended for intermediate calculations and does not use an abstract Data class.
- Note
- The covariance is equal to sigma_x*sigma_y*rho, where -1 < rho < 1. Covariance values implying rho values outside this range are invalid.