|
Bsoft 2.1.4
Bernard's software package
|
Solving sets of linear equations through matrix algebra. More...
Functions | |
| double | linear_least_squares (int n1, int n2, double *x, double *y, double &a, double &b) |
| Does a linear least squares fit between two vectors. More... | |
| double | linear_least_squares (int n1, int n2, vector< double > &x, vector< double > &y, double &a, double &b) |
| double | fit_polynomial (int n, vector< double > &x, vector< double > &y, int order, vector< double > &coeff) |
| Fits a data set to a polynomial function. More... | |
| double | fit_polynomial (int n, double *x, double *y, int order, double *coeff) |
| Fits a data set to a polynomial function. More... | |
| Vector3< double > | fit_plane (Matrix a, vector< double > b) |
| Solves for fitting a plane through a model. More... | |
| vector< double > | fit_conic (vector< Vector3< double > > v) |
| Solves for fitting a conic through a model. More... | |
| vector< double > | fit_ellipse (vector< Vector3< double > > v) |
| Solves for fitting a conic through a model. More... | |
| vector< double > | fit_ellipse2 (vector< Vector3< double > > v) |
| Solves for fitting a conic through a model. More... | |
Variables | |
| int | verbose |
Solving sets of linear equations through matrix algebra.
| vector< double > fit_conic | ( | vector< Vector3< double > > | v | ) |
Solves for fitting a conic through a model.
| v | set of xy coordinates. |
The conic is defined as:
0 = c0 + c1*x + c2*y + c3*x2 + c4*x*y + c5*y2
| vector< double > fit_ellipse | ( | vector< Vector3< double > > | v | ) |
Solves for fitting a conic through a model.
| v | set of xy coordinates. |
The conic is defined as:
0 = c0 + c1*x + c2*y + c3*x2 + c4*x*y + c5*y2
| vector< double > fit_ellipse2 | ( | vector< Vector3< double > > | v | ) |
Solves for fitting a conic through a model.
| v | set of xy coordinates. |
The conic is defined as:
0 = c0 + c1*x + c2*y + c3*x2 + c4*x*y + c5*y2
Solves for fitting a plane through a model.
| a | 3x3 matrix with cross-terms. |
| b | 3 vector with averages. |
A plane is fit through the components and the normal calculated from:
n•p = d
where n is the normal vector, p is a point in the plane, and d is the offset.
| double fit_polynomial | ( | int | n, |
| double * | x, | ||
| double * | y, | ||
| int | order, | ||
| double * | coeff | ||
| ) |
Fits a data set to a polynomial function.
| n | number of data points. |
| *x | x array (at least order+1 values). |
| *y | y array (at least order+1 values). |
| order | polynomial order. |
| *coeff | array in which coefficients are returned (order+1 values) (if NULL, no coefficients returned). |
A polynomial of any order is fitted to the data using a least squares.
The polynomial is defined as:
f(x) = a0 + a1*x + a2*x^2 + ...
The number of coefficients returned is the order plus one.
The deviation is defined as:
R = sqrt(sum(y - f(x))^2/n)
| double fit_polynomial | ( | int | n, |
| vector< double > & | x, | ||
| vector< double > & | y, | ||
| int | order, | ||
| vector< double > & | coeff | ||
| ) |
Fits a data set to a polynomial function.
| n | number of data points. |
| &x | x array (at least order+1 values). |
| &y | y array (at least order+1 values). |
| order | polynomial order. |
| &coeff | array in which coefficients are returned (order+1 values) (if NULL, no coefficients returned). |
A polynomial of any order is fitted to the data using a least squares.
The polynomial is defined as:
f(x) = a0 + a1*x + a2*x^2 + ...
The number of coefficients returned is the order plus one.
The deviation is defined as:
R = sqrt(sum(y - f(x))^2/n)
| double linear_least_squares | ( | int | n1, |
| int | n2, | ||
| double * | x, | ||
| double * | y, | ||
| double & | a, | ||
| double & | b | ||
| ) |
Does a linear least squares fit between two vectors.
| n1 | the starting index in each vector (usually 0). |
| n2 | the final index in each vector. |
| *x | x vector (at least n2+1 elements). |
| *y | y vector (at least n2+1 elements). |
| &a | the intercept. |
| &b | the slope. |
The two input vectors must have elements between indices n1 and n2.
| double linear_least_squares | ( | int | n1, |
| int | n2, | ||
| vector< double > & | x, | ||
| vector< double > & | y, | ||
| double & | a, | ||
| double & | b | ||
| ) |
|
extern |