|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--ru.sscc.spline.creator.SplineCreator | +--ru.sscc.spline.creator.SmoothingSplineCreator | +--ru.sscc.spline.polynomial.OddSplineCreator | +--ru.sscc.spline.polynomial.POddSplineCreator
This creator is intended for construction of 1D polynomial splines of odd degree having the polynomial representaion of the result. The degree of a spline is defined by the order parameter in a constructor and is equal to 2*order-1. So, order=1 means the linear interpolation, order=2 means the cubic interpolation, order=3 means the quintic interpolation and so on.
Field Summary | |
protected PSplineCalculator |
calculator
Calculator used for calculation of the polynomial representation. |
Fields inherited from class ru.sscc.spline.creator.SmoothingSplineCreator |
preparator |
Constructor Summary | |
POddSplineCreator()
Default constructor. |
|
POddSplineCreator(int order,
double origin,
double step,
int count)
Constructor for the case of uniform mesh. |
|
POddSplineCreator(int order,
RealVector mesh)
Constuctor for the case of nonuniform mesh. |
|
POddSplineCreator(int order,
SimpleMesh mesh)
Constructor for the case of an arbitrary simple mesh. |
Method Summary | |
void |
calculate(RealVector source,
RealVector target)
Calculates spline coefficients. |
double |
calculate(RealVector source,
RealVector target,
double epsilon)
Finds the smoothing parameter using the residual criterion and calculates spline coefficients. |
double |
calculationCost()
Returns a number of operations needed for a calculation of one spline coefficients vector. |
static Spline |
createSpline(int order,
double origin,
double step,
int count,
java.lang.Object source)
Creates an interpolating polynomial spline on a uniform mesh. |
static Spline |
createSpline(int order,
double origin,
double step,
int count,
java.lang.Object source,
double epsilon)
Creates a polynomial spline on a uniform mesh using unweighted residual criterion. |
static Spline |
createSpline(int order,
double origin,
double step,
int count,
java.lang.Object source,
double epsilon,
java.lang.Object weights)
Creates a polynomial spline on a uniform mesh using weighted residual criterion. |
static Spline |
createSpline(int order,
java.lang.Object mesh,
java.lang.Object source)
Creates an interpolating polynomial spline |
static Spline |
createSpline(int order,
java.lang.Object mesh,
java.lang.Object source,
double epsilon)
Creates a polynomial spline using unweighted residual criterion. |
static Spline |
createSpline(int order,
java.lang.Object mesh,
java.lang.Object source,
double epsilon,
java.lang.Object weights)
Creates a polynomial spline using weighted residual criterion. |
void |
prepareCreatorBody(int order,
SimpleMesh mesh)
Prepares the creator body. |
Methods inherited from class ru.sscc.spline.polynomial.OddSplineCreator |
attachSplineBody,
clone,
constructSpline,
lambda |
Methods inherited from class ru.sscc.spline.creator.SmoothingSplineCreator |
constructSpline,
constructSpline,
getAlpha,
getPreparator,
prepareSolver,
prepareWeights,
sourceSize |
Methods inherited from class ru.sscc.spline.creator.SplineCreator |
constructSpline,
constructSplinesByColumns,
constructSplinesByRows,
ensurePrepared,
getSplineBody,
isPrepared,
setPrepared,
targetSize |
Methods inherited from class java.lang.Object |
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
Field Detail |
protected PSplineCalculator calculator
Constructor Detail |
public POddSplineCreator()
public POddSplineCreator(int order, RealVector mesh)
order
- a difference ordermesh
- a mesh vectorpublic POddSplineCreator(int order, double origin, double step, int count)
order
- a difference orderorigin
- a first mesh nodestep
- a distance between nodescount
- a number of mesh nodespublic POddSplineCreator(int order, SimpleMesh mesh)
order
- a difference ordermesh
- a meshMethod Detail |
public void prepareCreatorBody(int order, SimpleMesh mesh)
order
- a difference ordermesh
- a mesh vectorpublic void calculate(RealVector source, RealVector target)
source
- interpolation values at mesh nodestarget
- a vector to storage spline coefficientspublic double calculate(RealVector source, RealVector target, double epsilon) throws CalculatingException
source
- interpolation values at mesh nodestarget
- a vector to store spline coefficientsepsilon
- a required residual level (should be > 0)public double calculationCost()
public static final Spline createSpline(int order, java.lang.Object mesh, java.lang.Object source, double epsilon, java.lang.Object weights) throws CalculatingException
order
- a difference ordermesh
- a mesh (an instance of SimpleMesh, RealVector,
RealContainer, double[], or float[] types)source
- interpolation values at mesh nodes (an instance
of double[], float[], RealContainer, or RealVector types)epsilon
- a residual criterion value. If epsilon<=0,
the interpolation is performedweights
- a weights vector (may be the null value or an instance
of double[], float[], RealContainer, or RealVector types)public static final Spline createSpline(int order, java.lang.Object mesh, java.lang.Object source, double epsilon) throws CalculatingException
order
- a difference ordermesh
- a mesh (an instance of SimpleMesh, RealVector,
RealContainer, double[], or float[] types)source
- interpolation values at mesh nodes (an instance
of double[], float[], RealContainer, or RealVector types)epsilon
- a residual criterion value. If epsilon<=0,
the interpolation is performedpublic static final Spline createSpline(int order, java.lang.Object mesh, java.lang.Object source) throws CalculatingException
order
- a difference ordermesh
- a mesh (an instance of SimpleMesh, RealVector,
RealContainer, double[], or float[] types)source
- interpolation values at mesh nodes (an instance
of double[], float[], RealContainer, or RealVector types)public static final Spline createSpline(int order, double origin, double step, int count, java.lang.Object source, double epsilon, java.lang.Object weights) throws CalculatingException
order
- a difference orderorigin
- a first mesh nodestep
- a distance between nodescount
- a number of mesh nodessource
- interpolation values at mesh nodes (an instance
of double[], float[], RealContainer, or RealVector types)epsilon
- a residual criterion value. If epsilon<=0,
the interpolation is performedweights
- a weights vector (may be the null value or an instance
of double[], float[], RealContainer, or RealVector types)public static final Spline createSpline(int order, double origin, double step, int count, java.lang.Object source, double epsilon) throws CalculatingException
order
- a difference orderorigin
- a first mesh nodestep
- a distance between nodescount
- a number of mesh nodessource
- interpolation values at mesh nodes (an instance
of double[], float[], RealContainer, or RealVector types)epsilon
- a residual criterion value. If epsilon<=0,
the interpolation is performedpublic static final Spline createSpline(int order, double origin, double step, int count, java.lang.Object source) throws CalculatingException
order
- a difference orderorigin
- a first mesh nodestep
- a distance between nodescount
- a number of mesh nodessource
- interpolation values at mesh nodes (an instance
of double[], float[], RealContainer, or RealVector types)
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |