artisynth.core.mfreemodels
Class MLSShapeFunction

java.lang.Object
  extended by artisynth.core.mfreemodels.MFreeShapeFunction
      extended by artisynth.core.mfreemodels.MLSShapeFunction
All Implemented Interfaces:
DifferentiableFunction3x1, Function3x1, MISOFunction
Direct Known Subclasses:
GMLSShapeFunction

public class MLSShapeFunction
extends MFreeShapeFunction


Nested Class Summary
 
Nested classes/interfaces inherited from class artisynth.core.mfreemodels.MFreeShapeFunction
MFreeShapeFunction.MFreeShapeFunctionType
 
Field Summary
static int CONSTANT_ORDER
           
static int LINEAR_ORDER
           
static int QUADRATIC_ORDER
           
static int SHEPARD
           
 
Constructor Summary
MLSShapeFunction(MFreeNode3d node)
           
 
Method Summary
 boolean addDependentNode(MFreeNode3d node)
           
 void clearDependentNodes()
           
 void computeDDM(MatrixNd DM, int di, int dj, Point3d pnt, java.util.ArrayList<MFreeNode3d> nodeList)
           
 void computeDDMInv(MatrixNd DDMInv, int di, int dj, MatrixNd MInv, Point3d pnt, java.util.ArrayList<MFreeNode3d> nodeList)
           
 void computeDM(MatrixNd DM, int dIdx, Point3d pnt, java.util.ArrayList<MFreeNode3d> nodeList)
           
 void computeDMInv(MatrixNd DMInv, int di, MatrixNd MInv, Point3d pnt, java.util.ArrayList<MFreeNode3d> nodeList)
           
 void computeM(MatrixNd M, Point3d pnt, java.util.ArrayList<MFreeNode3d> nodeList)
           
 double computeMInv(MatrixNd MInv, Point3d pnt, java.util.ArrayList<MFreeNode3d> nodeList)
           
 void computePtMInv(VectorNd pTMInv, MatrixNd MInv, Point3d pnt, java.util.ArrayList<MFreeNode3d> nodeList)
           
 double eval(double[] in)
           
 double eval(double x, double y, double z)
           
 double eval(Point3d pnt)
           
 double eval(Point3d pnt, MatrixNd MInv, java.util.ArrayList<MFreeNode3d> nodeList)
           
 double evalDerivative(double x, double y, double z, int dx, int dy, int dz)
           
 double evalDerivative(Point3d in, int[] derivatives)
           
 double evalDerivative(Point3d in, int[] derivatives, MatrixNd MInv, java.util.ArrayList<MFreeNode3d> nodeList)
           
 int getInputSize()
           
static DifferentiableFunction3x1[] getPolynomialBasis(int order)
           
 MFreeShapeFunction.MFreeShapeFunctionType getType()
           
 boolean removeDependentNode(MFreeNode3d node)
           
 void setBasisFunctions(DifferentiableFunction3x1[] functions)
           
 void setDependentNodes(java.util.ArrayList<MFreeNode3d> nodeList)
           
 
Methods inherited from class artisynth.core.mfreemodels.MFreeShapeFunction
create
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CONSTANT_ORDER

public static final int CONSTANT_ORDER
See Also:
Constant Field Values

SHEPARD

public static final int SHEPARD
See Also:
Constant Field Values

LINEAR_ORDER

public static final int LINEAR_ORDER
See Also:
Constant Field Values

QUADRATIC_ORDER

public static final int QUADRATIC_ORDER
See Also:
Constant Field Values
Constructor Detail

MLSShapeFunction

public MLSShapeFunction(MFreeNode3d node)
Method Detail

setDependentNodes

public void setDependentNodes(java.util.ArrayList<MFreeNode3d> nodeList)

addDependentNode

public boolean addDependentNode(MFreeNode3d node)

removeDependentNode

public boolean removeDependentNode(MFreeNode3d node)

clearDependentNodes

public void clearDependentNodes()

setBasisFunctions

public void setBasisFunctions(DifferentiableFunction3x1[] functions)

getPolynomialBasis

public static DifferentiableFunction3x1[] getPolynomialBasis(int order)

computeM

public void computeM(MatrixNd M,
                     Point3d pnt,
                     java.util.ArrayList<MFreeNode3d> nodeList)

computeMInv

public double computeMInv(MatrixNd MInv,
                          Point3d pnt,
                          java.util.ArrayList<MFreeNode3d> nodeList)

computePtMInv

public void computePtMInv(VectorNd pTMInv,
                          MatrixNd MInv,
                          Point3d pnt,
                          java.util.ArrayList<MFreeNode3d> nodeList)

eval

public double eval(Point3d pnt,
                   MatrixNd MInv,
                   java.util.ArrayList<MFreeNode3d> nodeList)

eval

public double eval(Point3d pnt)

eval

public double eval(double x,
                   double y,
                   double z)

eval

public double eval(double[] in)

getInputSize

public int getInputSize()

computeDDMInv

public void computeDDMInv(MatrixNd DDMInv,
                          int di,
                          int dj,
                          MatrixNd MInv,
                          Point3d pnt,
                          java.util.ArrayList<MFreeNode3d> nodeList)

computeDMInv

public void computeDMInv(MatrixNd DMInv,
                         int di,
                         MatrixNd MInv,
                         Point3d pnt,
                         java.util.ArrayList<MFreeNode3d> nodeList)

computeDDM

public void computeDDM(MatrixNd DM,
                       int di,
                       int dj,
                       Point3d pnt,
                       java.util.ArrayList<MFreeNode3d> nodeList)

computeDM

public void computeDM(MatrixNd DM,
                      int dIdx,
                      Point3d pnt,
                      java.util.ArrayList<MFreeNode3d> nodeList)

evalDerivative

public double evalDerivative(Point3d in,
                             int[] derivatives,
                             MatrixNd MInv,
                             java.util.ArrayList<MFreeNode3d> nodeList)

evalDerivative

public double evalDerivative(Point3d in,
                             int[] derivatives)

evalDerivative

public double evalDerivative(double x,
                             double y,
                             double z,
                             int dx,
                             int dy,
                             int dz)

getType

public MFreeShapeFunction.MFreeShapeFunctionType getType()
Specified by:
getType in class MFreeShapeFunction