org.jcae.mesh.amibe.validation
Class QualityProcedure

java.lang.Object
  extended by org.jcae.mesh.amibe.validation.QualityProcedure
Direct Known Subclasses:
AbsoluteDeflection2D, Area, DihedralAngle, DistanceSurface, EdgeLength1D, MaxAngleFace, MaxLengthFace, MinAngleFace, MinLengthFace, NodeConnectivity

public abstract class QualityProcedure
extends java.lang.Object

Abstract class to compute quality criteria. All functions implementing quality criteria have to inherit from this class. These functions can compute values either on elements or nodes, and can work either on 2D or 3D meshes. For these reasons, quality method's argument is an Object, and caller is responsible for passing the right argument.


Field Summary
protected  TFloatArrayList data
           
protected static int EDGE
           
protected static int FACE
           
protected static int NODE
           
protected  int type
           
protected  java.lang.String[] usageStr
           
 
Constructor Summary
QualityProcedure()
           
 
Method Summary
 void bindResult(TFloatArrayList d)
          Make output array visible by the finish() method.
 void finish()
          Finish quality computations.
static java.lang.String[] getListSubClasses()
           
protected  MeshTraitsBuilder getMeshTraitsBuilder()
          Returns MeshTraitsBuilder instance needed by this class.
protected  float getScaleFactor()
          Returns default scale factor.
protected  int getType()
          Return element type.
abstract  float quality(java.lang.Object o)
          Return the quality factor for a given object.
protected abstract  void setValidationFeatures()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FACE

protected static final int FACE
See Also:
Constant Field Values

NODE

protected static final int NODE
See Also:
Constant Field Values

EDGE

protected static final int EDGE
See Also:
Constant Field Values

type

protected int type

usageStr

protected java.lang.String[] usageStr

data

protected TFloatArrayList data
Constructor Detail

QualityProcedure

public QualityProcedure()
Method Detail

getListSubClasses

public static java.lang.String[] getListSubClasses()

setValidationFeatures

protected abstract void setValidationFeatures()

getType

protected final int getType()
Return element type.

Returns:
element type

quality

public abstract float quality(java.lang.Object o)
Return the quality factor for a given object.

Parameters:
o - entity at which quality is computed Returns quality factor.

getScaleFactor

protected float getScaleFactor()
Returns default scale factor.


getMeshTraitsBuilder

protected MeshTraitsBuilder getMeshTraitsBuilder()
Returns MeshTraitsBuilder instance needed by this class.


finish

public void finish()
Finish quality computations. By default, this method does nothing and can be overriden when post-processing is needed.


bindResult

public final void bindResult(TFloatArrayList d)
Make output array visible by the finish() method.

Parameters:
d - array containing output values
See Also:
QualityFloat.setQualityProcedure(org.jcae.mesh.amibe.validation.QualityProcedure)