Public Types | Static Public Member Functions
vpdt_norm_metric< F, typename vpdt_field_traits< F >::scalar_type, typename vpdt_field_traits< F >::type_is_vector > Struct Template Reference

A metric in field F with scalar (scaled identity matrix) covariance. More...

#include <vpdt_norm_metric.h>

List of all members.

Public Types

typedef vpdt_field_traits< F >
::scalar_type 
covar_type
 the data type used for the metric tensor.
typedef vpdt_field_traits< F >
::scalar_type 
T
 the data type used for scalars.
typedef vpdt_field_traits< F >
::vector_type 
vector
 the data type used for vectors.
typedef vpdt_field_traits< F >
::matrix_type 
matrix
 the data type used for matrices.

Static Public Member Functions

static T distance (const F &pt1, const F &pt2, const covar_type &c)
 Compute the Mahalanobis distance between two points.
static T sqr_distance (const F &pt1, const F &pt2, const covar_type &c)
 Compute the square Mahalanobis distance between two points.
static T sqr_distance_deriv (const F &pt1, const F &pt2, const covar_type &c, vector &g)
 Compute the square Mahalanobis distance and also the derivative g wrt pt1.
static void compute_covar (matrix &covar, const F &pt, const covar_type &c)
 Compute the covariance matrix (metric tensor) at a point.
static T covar_det (const F &pt, const covar_type &c)
 Compute the determinant of the covariance matrix (metric tensor) at a point.

Detailed Description

template<class F>
struct vpdt_norm_metric< F, typename vpdt_field_traits< F >::scalar_type, typename vpdt_field_traits< F >::type_is_vector >

A metric in field F with scalar (scaled identity matrix) covariance.

In this case the metric is a scaled L2 norm

Definition at line 173 of file vpdt_norm_metric.h.


Member Typedef Documentation

template<class F >
typedef vpdt_field_traits<F>::scalar_type vpdt_norm_metric< F, typename vpdt_field_traits< F >::scalar_type, typename vpdt_field_traits< F >::type_is_vector >::covar_type

the data type used for the metric tensor.

Definition at line 177 of file vpdt_norm_metric.h.

template<class F >
typedef vpdt_field_traits<F>::matrix_type vpdt_norm_metric< F, typename vpdt_field_traits< F >::scalar_type, typename vpdt_field_traits< F >::type_is_vector >::matrix

the data type used for matrices.

Definition at line 183 of file vpdt_norm_metric.h.

template<class F >
typedef vpdt_field_traits<F>::scalar_type vpdt_norm_metric< F, typename vpdt_field_traits< F >::scalar_type, typename vpdt_field_traits< F >::type_is_vector >::T

the data type used for scalars.

Definition at line 179 of file vpdt_norm_metric.h.

template<class F >
typedef vpdt_field_traits<F>::vector_type vpdt_norm_metric< F, typename vpdt_field_traits< F >::scalar_type, typename vpdt_field_traits< F >::type_is_vector >::vector

the data type used for vectors.

Definition at line 181 of file vpdt_norm_metric.h.


Member Function Documentation

template<class F >
static void vpdt_norm_metric< F, typename vpdt_field_traits< F >::scalar_type, typename vpdt_field_traits< F >::type_is_vector >::compute_covar ( matrix covar,
const F &  pt,
const covar_type c 
) [inline, static]

Compute the covariance matrix (metric tensor) at a point.

Note:
this metric is independent of the point

Definition at line 225 of file vpdt_norm_metric.h.

template<class F >
static T vpdt_norm_metric< F, typename vpdt_field_traits< F >::scalar_type, typename vpdt_field_traits< F >::type_is_vector >::covar_det ( const F &  pt,
const covar_type c 
) [inline, static]

Compute the determinant of the covariance matrix (metric tensor) at a point.

Note:
this metric is independent of the point

Definition at line 240 of file vpdt_norm_metric.h.

template<class F >
static T vpdt_norm_metric< F, typename vpdt_field_traits< F >::scalar_type, typename vpdt_field_traits< F >::type_is_vector >::distance ( const F &  pt1,
const F &  pt2,
const covar_type c 
) [inline, static]

Compute the Mahalanobis distance between two points.

Definition at line 186 of file vpdt_norm_metric.h.

template<class F >
static T vpdt_norm_metric< F, typename vpdt_field_traits< F >::scalar_type, typename vpdt_field_traits< F >::type_is_vector >::sqr_distance ( const F &  pt1,
const F &  pt2,
const covar_type c 
) [inline, static]

Compute the square Mahalanobis distance between two points.

Definition at line 192 of file vpdt_norm_metric.h.

template<class F >
static T vpdt_norm_metric< F, typename vpdt_field_traits< F >::scalar_type, typename vpdt_field_traits< F >::type_is_vector >::sqr_distance_deriv ( const F &  pt1,
const F &  pt2,
const covar_type c,
vector g 
) [inline, static]

Compute the square Mahalanobis distance and also the derivative g wrt pt1.

Definition at line 206 of file vpdt_norm_metric.h.


The documentation for this struct was generated from the following file: