Main Page   Modules   Compound List   File List   Compound Members   File Members  

Projective Normalisation of Fixed Size Vectors
[Fixed Size Vectors]


Defines

#define GAN_VEC_NORMALISE   gan_vec2_normalize
#define GAN_VEC_NORM_FNAME   "gan_vec2_normalize"
#define GAN_VECTYPE   Gan_Vector2
#define GAN_SQUMATTYPE   Gan_SquMatrix22
#define GAN_VEC_SCALE_S   gan_vec2_scale_s
#define GAN_VEC_DIVIDE_S   gan_vec2_divide_s
#define GAN_VEC_DOT_S   gan_vec2_dot_s
#define GAN_VEC_SQRLEN_S   gan_vec2_sqrlen_s
#define GAN_VEC_OUTER_SYM_Q   gan_vec22_outer_sym_q
#define GAN_SYMMAT_IDENT_S   gan_symmat22_ident_s
#define GAN_SYMMAT_INVERT_Q   gan_symmat22_invert_q
#define GAN_SYMMAT_ZERO_Q   gan_symmat22_zero_q
#define GAN_SYMMAT_MULTV_Q   gan_symmat22_multv2_q
#define GAN_SYMMAT_DIVIDE_S   gan_symmat22_divide_s
#define GAN_SYMMAT_DIVIDE_I   gan_symmat22_divide_i
#define GAN_SYMMAT_INCREMENT   gan_symmat22_increment
#define GAN_SYMMAT_TRACE_S   gan_symmat22_trace_s
#define GAN_SYMMAT_SUB_Q   gan_symmat22_sub_q
#define GAN_SYMMAT_SUMSQR_Q   gan_symmat22_sumsqr_q
#define GAN_SYMMAT_CHOLESKY_Q   gan_symmat22_cholesky_q
#define GAN_LTMATI_MULTV_S   gan_ltmat22I_multv2_s

Functions

Gan_Bool gan_vec2_normalize (Gan_Vector2 *b, int n, double term_threshold, int max_iterations, Gan_SquMatrix22 *Lp)
 Normalize array of 2x1 vectors to identity inertia moment.

Gan_Bool gan_vec3_normalize (Gan_Vector3 *b, int n, double term_threshold, int max_iterations, Gan_SquMatrix33 *Lp)
 Normalize array of 3x1 vectors to identity inertia moment.

Gan_Bool gan_vec4_normalize (Gan_Vector4 *b, int n, double term_threshold, int max_iterations, Gan_SquMatrix44 *Lp)
 Normalize array of 2x1 vectors to identity inertia moment.


Function Documentation

Gan_Bool gan_vec2_normalize Gan_Vector2   b,
int    n,
double    term_threshold,
int    max_iterations,
Gan_SquMatrix22   Lp
 

Normalize array of 2x1 vectors to identity inertia moment.

Parameters:
b array of vectors to normalise
n number of vectors in array
term_threshold termination threshold
max_iterations maximum number of iterations
Lp pointer to solution for triangular normalising matrix
Returns:
GAN_TRUE on success, or #GAN_FAILURE if algorithm didn't converge.
This function applies projective normalization to the array of n 2x1 vectors b. After the normalization, the column vectors b are transformed by a lower triangular matrix , and scaled to unit length, so that the transformed vectors

satisfy the equation

where is the 2x2 identity matrix.

term_threshold specifies a threshold on the smallness of an adjustment to , below which the algorithm terminates successfully.

max_iterations specifies the maximum number of iterations to perform. If this is reached without the above threshold being reached, the algorithm terminates with failure, returning GAN_FALSE.

Lp is a pointer set to the final solution for the triangular matrix . If it is passed as NULL then Lp is ignored.

Upon successful termination, the row vectors b are transformed to as shown above, and GAN_TRUE is returned.

See also:
gan_vec3_normalize(), gan_mat22_normalize().

Gan_Bool gan_vec3_normalize Gan_Vector3   b,
int    n,
double    term_threshold,
int    max_iterations,
Gan_SquMatrix33   Lp
 

Normalize array of 3x1 vectors to identity inertia moment.

Parameters:
b array of vectors to normalise
n number of vectors in array
term_threshold termination threshold
max_iterations maximum number of iterations
Lp pointer to solution for triangular normalising matrix
Returns:
GAN_TRUE on success, or #GAN_FAILURE if algorithm didn't converge.
This function applies projective normalization to the array of n 3x1 vectors b. After the normalization, the column vectors b are transformed by a lower triangular matrix , and scaled to unit length, so that the transformed vectors

satisfy the equation

where is the 3x3 identity matrix.

term_threshold specifies a threshold on the smallness of an adjustment to , below which the algorithm terminates successfully.

max_iterations specifies the maximum number of iterations to perform. If this is reached without the above threshold being reached, the algorithm terminates with failure, returning GAN_FALSE.

Lp is a pointer set to the final solution for the triangular matrix . If it is passed as NULL then Lp is ignored.

Upon successful termination, the row vectors b are transformed to as shown above, and GAN_TRUE is returned.

See also:
gan_vec3_normalize(), gan_mat33_normalize().

Gan_Bool gan_vec4_normalize Gan_Vector4   b,
int    n,
double    term_threshold,
int    max_iterations,
Gan_SquMatrix44   Lp
 

Normalize array of 2x1 vectors to identity inertia moment.

Parameters:
b array of vectors to normalise
n number of vectors in array
term_threshold termination threshold
max_iterations maximum number of iterations
Lp pointer to solution for triangular normalising matrix
Returns:
GAN_TRUE on success, or #GAN_FAILURE if algorithm didn't converge.
This function applies projective normalization to the array of n 2x1 vectors b. After the normalization, the column vectors b are transformed by a lower triangular matrix , and scaled to unit length, so that the transformed vectors

satisfy the equation

where is the 2x2 identity matrix.

term_threshold specifies a threshold on the smallness of an adjustment to , below which the algorithm terminates successfully.

max_iterations specifies the maximum number of iterations to perform. If this is reached without the above threshold being reached, the algorithm terminates with failure, returning GAN_FALSE.

Lp is a pointer set to the final solution for the triangular matrix . If it is passed as NULL then Lp is ignored.

Upon successful termination, the row vectors b are transformed to as shown above, and GAN_TRUE is returned.

See also:
gan_vec3_normalize(), gan_mat22_normalize().


Generated on Mon Oct 13 16:14:52 2003 by doxygen1.3-rc1