public class IntegrationPoint3d
extends java.lang.Object
Data that needs to be stored and retained per-element is declared in the IntegrationData3d class.
Constructor and Description |
---|
IntegrationPoint3d(int nnodes) |
IntegrationPoint3d(int nnodes,
int npvals) |
IntegrationPoint3d(int nnodes,
int npvals,
double s0,
double s1,
double s2,
double w) |
Modifier and Type | Method and Description |
---|---|
void |
computeCoordsForRender(float[] coords,
FemNode3d[] nodes) |
void |
computeDevLeftCauchyGreen(SymmetricMatrix3d BD) |
void |
computeDevRightCauchyGreen(SymmetricMatrix3d CD) |
double |
computeDirectedSizeForRender(Vector3d dir,
FemNode3d[] nodes)
Compute size of an element's render coordinates along a specified
direction.
|
void |
computeGradientForRender(Matrix3d Fmat,
FemNode3d[] nodes,
Matrix3d invJ0) |
double |
computeInverseJacobian() |
void |
computeJacobian(FemNode3d[] nodes) |
void |
computeJacobianAndGradient(FemNode3d[] nodes,
Matrix3d invJ0) |
void |
computeJacobianAndGradient(Point3d[] nodePos,
Matrix3d invJ0) |
void |
computeJacobianAndGradient(SolidDeformation def,
FemNode3d[] nodes,
Matrix3d invJ0) |
void |
computeLeftCauchyGreen(SymmetricMatrix3d B) |
void |
computePosition(Point3d pos,
FemElement3d elem) |
void |
computePosition(Point3d pos,
FemNode3d[] nodes) |
void |
computeRestPosition(Point3d pos,
FemElement3d elem) |
void |
computeRestPosition(Point3d pos,
FemNode3d[] nodes) |
void |
computeRightCauchyGreen(SymmetricMatrix3d C) |
Vector3d[] |
computeShapeGradient(Matrix3d invJ)
Computes and returns the gradient dN/dx of the shape functions, given an
inverse Jacobian.
|
void |
computeShapeGradient(Matrix3d invJ,
Vector3d[] out)
Computes and returns the gradient dN/dx of the shape functions, given an
inverse Jacobian.
|
static IntegrationPoint3d |
create(FemElement3d elem,
double s0,
double s1,
double s2,
double w)
Create an integration point for a given element at a specific set of
natural coordinates.
|
double |
getAverageJ() |
double |
getAveragePressure() |
Vector3d |
getCoords() |
double |
getDetF() |
Matrix3d |
getF() |
Vector3d[] |
getGNs() |
Matrix3d |
getInvJ() |
Matrix3d |
getJ() |
int |
getNumber()
Returns the number of this integration point.
|
VectorNd |
getPressureWeights() |
Vector3d[] |
getShapeGradient()
Returns the gradient dN/dx of the shape functions.
|
VectorNd |
getShapeWeights() |
SymmetricMatrix3d |
getStress() |
double |
getWeight() |
void |
setAveragePressure(double p) |
void |
setCoords(double s0,
double s1,
double s2) |
void |
setF(Matrix3d F) |
void |
setNumber(int num)
Used internally by the system to set the number for this integration
point.
|
void |
setPressureWeights(VectorNd vals) |
void |
setShapeGrad(int i,
Vector3d dNds) |
void |
setShapeWeights(VectorNd vals) |
void |
setStress(SymmetricMatrix3d sig) |
void |
setWeight(double w) |
Vector3d[] |
updateShapeGradient(Matrix3d invJ)
Updates and returns the gradient dN/dx of the shape functions, given an
inverse Jacobian.
|
public IntegrationPoint3d(int nnodes, int npvals, double s0, double s1, double s2, double w)
public IntegrationPoint3d(int nnodes)
public IntegrationPoint3d(int nnodes, int npvals)
public int getNumber()
public void setNumber(int num)
public static IntegrationPoint3d create(FemElement3d elem, double s0, double s1, double s2, double w)
elem
- element to create the integration point fors0
- first coordinate values1
- second coordinate values2
- third coordinate valuew
- weightpublic void setCoords(double s0, double s1, double s2)
public Vector3d getCoords()
public double getWeight()
public void setWeight(double w)
public void setShapeWeights(VectorNd vals)
public VectorNd getShapeWeights()
public void setShapeGrad(int i, Vector3d dNds)
public void setPressureWeights(VectorNd vals)
public VectorNd getPressureWeights()
public void computeJacobian(FemNode3d[] nodes)
public void computeJacobianAndGradient(FemNode3d[] nodes, Matrix3d invJ0)
public void computeJacobianAndGradient(Point3d[] nodePos, Matrix3d invJ0)
public void computeJacobianAndGradient(SolidDeformation def, FemNode3d[] nodes, Matrix3d invJ0)
public void computeGradientForRender(Matrix3d Fmat, FemNode3d[] nodes, Matrix3d invJ0)
public double computeDirectedSizeForRender(Vector3d dir, FemNode3d[] nodes)
public void computePosition(Point3d pos, FemElement3d elem)
public void computeRestPosition(Point3d pos, FemElement3d elem)
public void computeCoordsForRender(float[] coords, FemNode3d[] nodes)
public double computeInverseJacobian()
public Matrix3d getInvJ()
public Vector3d[] computeShapeGradient(Matrix3d invJ)
invJ
- inverse Jacobianpublic void computeShapeGradient(Matrix3d invJ, Vector3d[] out)
invJ
- inverse Jacobianout
- shape function gradient to populatepublic Vector3d[] updateShapeGradient(Matrix3d invJ)
invJ
- inverse Jacobianpublic Vector3d[] getShapeGradient()
public Matrix3d getF()
public void setF(Matrix3d F)
public double getAverageJ()
public double getAveragePressure()
public double getDetF()
public Matrix3d getJ()
public SymmetricMatrix3d getStress()
public void setStress(SymmetricMatrix3d sig)
public void computeRightCauchyGreen(SymmetricMatrix3d C)
public void computeLeftCauchyGreen(SymmetricMatrix3d B)
public void computeDevRightCauchyGreen(SymmetricMatrix3d CD)
public void computeDevLeftCauchyGreen(SymmetricMatrix3d BD)
public Vector3d[] getGNs()
public void setAveragePressure(double p)