|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--ru.sscc.spline.polynomial.PSplineBody
The implementation of spline body interface for 1D polynomial spline having full polynomial representation in mesh nodes.
Field Summary | |
int |
extraCount
A number of coefficients used for extrapolation. |
int |
interCount
A number of coefficients used for interpolation. |
protected SimpleMesh |
mesh
Mesh used for calculations. |
Fields inherited from interface ru.sscc.spline.SplineBody |
DERIVATIVE_OUT_OF_RANGE,
ONE_D_NONSUPPORTED,
POINT_OUT_OF_RANGE |
Constructor Summary | |
PSplineBody(SimpleMesh mesh,
int interDegree,
int extraDegree)
Constructor. |
Method Summary | |
double |
calculate(SplineWorkspace workspace)
Calculates a spline or derivative value at a required point. |
void |
calculateDefect(int i,
RealPointer data,
RealPointer defect)
Calculate defect of polynomial spline at i-th mesh node. |
SplineWorkspace |
createWorkspace(RealPointer data)
Creates a workspace required for a spline value and derivatives calculation. |
int |
dimension()
Returns a spline dimension (1 in this case). |
SimpleMesh |
getMesh()
Returns the mesh. |
int |
getVectorLength()
Returns a full number of coefficients in the spline representation. |
int |
maxQuote()
Returns a maximal number of spline coefficients simultaneously needed in a spline value or its partial derivatives calculation (interCount in this case). |
void |
prepareWorkspace(SplineWorkspace workspace,
double point,
int index,
int count)
Prepares a workspace for an 1D spline derivative calculation at a point required. |
void |
prepareWorkspace(SplineWorkspace workspace,
RealPointer point,
int count)
Prepares a workspace for a spline calculation at a point required. |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
Field Detail |
public final int interCount
public final int extraCount
protected SimpleMesh mesh
Constructor Detail |
public PSplineBody(SimpleMesh mesh, int interDegree, int extraDegree)
mesh
- a mesh of nodesinterDegree
- a degree of polynomials between mesh nodesextraDegree
- a degree of polynomials outside mesh intervalMethod Detail |
public int dimension()
public int getVectorLength()
public int maxQuote()
public SplineWorkspace createWorkspace(RealPointer data)
data
- a pointer to associated data vectorpublic void prepareWorkspace(SplineWorkspace workspace, RealPointer point, int count)
workspace
- a spline workspacepoint
- a pointer to the point on the real axiscount
- a number of splines will be calculated laterpublic void prepareWorkspace(SplineWorkspace workspace, double point, int index, int count)
workspace
- a spline workspacepoint
- a point on the real axisindex
- a derivative indexcount
- a number of splines will be calculated laterpublic double calculate(SplineWorkspace workspace)
workspace
- a spline workspacepublic void calculateDefect(int i, RealPointer data, RealPointer defect)
i
- a node number in the range of [0..mesh.size-1]data
- a pointer to the spline coefficients vectordefect
- a pointer to vector for storing the result
(the vector must contain at least extraCount entries)public SimpleMesh getMesh()
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |