#include <func.h>
Class diagram for func::projection:

Public Members | |||
![]() | ![]() | projection ( const vector<double> &ix0, const vector<double> &idxdt, const multi_dimensional *f = 0 ) | |
![]() | ![]() | The only constructur for a projection. More... | |
![]() | ![]() | virtual | ~projection (void) |
![]() | ![]() | virtual double | operator() ( const double x ) const |
![]() | ![]() | Calculate the projected function for a given argument. More... | |
![]() | ![]() | vector< double > | line ( const double t ) const |
![]() | ![]() | Calculate a point on the line projected to. More... | |
![]() | ![]() | vector<double> | x0 |
![]() | ![]() | A point on the line projected to. | |
![]() | ![]() | vector<double> | dxdt |
![]() | ![]() | The direction of the line projected to. | |
![]() | ![]() | const multi_dimensional* | multi_dimensional_function |
![]() | ![]() | The multidimensional function that is projected. | |
That is, the class implements a projection operator. A multidimensional function is projected by calculating its values along a line. One parameter indicates the position along the line, hence the multidimensional function is transformed to a function of that parameter.
Definition at line 238 of file func.h.
| func::projection::projection (const vector<double>& ix0, const vector<double>& idxdt, const multi_dimensional * f = 0) |
The only constructur for a projection.
| ix0 | a point on the line projected to |
| ixdt | the direction of the line projected to |
| f |
the function to project
|
assert( this->x0 == ix0 ); assert( this->dxdt == idxdt ); assert( this->multi_dimensional_function == f );
func::projection::~projection (void) [virtual]
|
double func::projection::operator() (const double) const [virtual]
|
Calculate the projected function for a given argument.
| x | the argument for which the function is to be calculated |
assert( this->multi_dimensional_function );
(*this)( t ) == (*(this->multi_dimensional_function))( this->line(t) );
Reimplemented from func::single_dimension.
| vector<double> func::projection::line (const double t) const |
Calculate a point on the line projected to.
| t | a parameter indicating the position along the line |
assert( this->line( t ) = this->x0 + t * dxdt );
| vector<double> func::projection::x0 |
| vector<double> func::projection::dxdt |
| const multi_dimensional* func::projection::multi_dimensional_function |
1.0.0 written by Dimitri van Heesch,
© 1997-1999