public class HexElement extends FemElement3d
ModelComponent.NavpanelVisibility| Modifier and Type | Field and Description |
|---|---|
static double[] |
INTEGRATION_COORDS_GAUSS_27 |
static double[] |
INTEGRATION_COORDS_GAUSS_64 |
static double[] |
INTEGRATION_COORDS_GAUSS_8 |
static double[] |
INTEGRATION_COORDS_LOBATTO_27 |
static double[] |
INTEGRATION_COORDS_LOBATTO_64 |
static double[] |
INTEGRATION_COORDS_LOBATTO_8 |
static double[] |
NODAL_EXTRAPOLATION_27 |
static double[] |
NODAL_EXTRAPOLATION_64 |
static double[] |
NODAL_EXTRAPOLATION_8 |
myPropsenforceUniqueCompositeNames, enforceUniqueNames, myNumber, NULL_OBJ, useCompactPathNamesCOPY_REFERENCESTRANSPARENT, TWO_DIMENSIONAL| Constructor and Description |
|---|
HexElement() |
HexElement(FemNode3d[] nodes) |
HexElement(FemNode3d n0,
FemNode3d n1,
FemNode3d n2,
FemNode3d n3,
FemNode3d n4,
FemNode3d n5,
FemNode3d n6,
FemNode3d n7)
Creates a HexElement from eight nodes.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addTetElement(TetElement e) |
void |
clearTetElements() |
static double |
computeVolume(FemNode3d n1,
FemNode3d n2,
FemNode3d n3,
FemNode3d n4,
FemNode3d n5,
FemNode3d n6,
FemNode3d n7,
FemNode3d n8) |
boolean |
coordsAreInside(Vector3d coords) |
HexElement |
copy(int flags,
java.util.Map<ModelComponent,ModelComponent> copyMap)
Create a copy of this component.
|
static double[] |
createHexIntegrationCoords(double[] locs,
double[] wgts)
Computes hexahedral integration coordinates using a tensor product
of the supplied 1D quadrature rule.
|
IntegrationPoint3d[] |
getDefaultIntegrationPoints() |
void |
getdNds(Vector3d dNds,
int i,
Vector3d coords) |
int[] |
getEdgeIndices() |
int[] |
getFaceIndices() |
HexElement[] |
getFaceNeighbors() |
double[] |
getIntegrationCoords() |
IntegrationPoint3d[] |
getIntegrationPoints() |
double |
getN(int i,
Vector3d coords) |
double[] |
getNodalExtrapolationMatrix() |
double[] |
getNodeCoords() |
int |
getParity() |
FaceNodes3d[] |
getQuadFaces() |
TetElement |
getTetElement(int i) |
IntegrationPoint3d |
getWarpingPoint() |
boolean |
hasEdge(FemNode3d n0,
FemNode3d n1) |
boolean |
hasFace(FemNode3d n0,
FemNode3d n1,
FemNode3d n2,
FemNode3d n3) |
boolean |
integrationPointsMapToNodes()
Queries whether there is a one-to-one mapping between integration points
and nodes.
|
boolean |
isInside(Point3d pnt)
Tests whether or not a point is inside an element.
|
static boolean |
mapICoordsToNodes(double[] coords) |
static boolean |
mapIPointsToNodes(IntegrationPoint3d[] ipnts,
double[] nodalInterp,
FemNode3d[] nodes) |
int |
numIntegrationPoints() |
int |
numTetElements() |
boolean |
removeTetElement(TetElement e) |
void |
render(Renderer renderer,
RenderProps props,
int flags) |
void |
renderWidget(Renderer renderer,
double size,
RenderProps props) |
void |
setFaceNeighbors(HexElement[] nbrs) |
void |
setIntegrationPoints(IntegrationPoint3d[] ipnts,
double[] nodalExtrapMat) |
void |
setIntegrationPoints(IntegrationPoint3d[] ipnts,
double[] nodalExtrapMat,
boolean mapToNodes) |
int |
setNeighborParities()
Rescursively sets the partities of a nodes neighbors, starting with this
element, so as to try and obtain conforming tesselation.
|
void |
setNodalExtrapolationMatrix(double[] nem) |
static void |
setParities(java.util.List<HexElement> hexes) |
void |
setParity(int parity) |
TetElement[] |
tesselate(int parity) |
addAuxiliaryMaterial, addNodeForce, addNodeStiffness, clearState, computeCentroid, computeCovariance, computeDirectedRenderSize, computeGravityWeights, computeJacobian, computePosition, computePressures, computeRenderCoordsAndGradient, computeRestVolumes, computeVolumes, computeWarping, connectToHierarchy, createElement, createElement, createFrameAttachment, createIntegrationPoints, createPointAttachment, disconnectFromHierarchy, getAllPropertyInfo, getAuxiliaryMaterials, getCopyReferences, getElementWidgetSize, getElementWidgetSizeMode, getFaces, getFrame, getH, getIncompressConstraints, getIncompressIndex, getIntegrationData, getLagrangePressures, getMarkerCoordinates, getNaturalCoordinates, getNaturalCoordinates, getNaturalCoordinatesGSS, getNaturalCoordinatesOld, getNaturalCoordinatesStd, getNodeCoords, getNodeNeighbors, getNodes, getNumEdges, getNumFaces, getPoint, getPressureWeightMatrix, getRestVolumes, getStiffnessWarper, getVolumes, getWarpingData, hasFace, invalidateRestData, isInvertedAtRest, materialsAreInvertible, numAuxiliaryMaterials, numPoints, numPressureVals, removeAuxiliaryMaterial, scaleDistance, setElementWidgetSize, setElementWidgetSizeMode, setFrame, setIncompressIndex, setStiffnessWarper, triangulateFace, updateBoundscontainsNode, createRenderProps, getDensity, getDensityMode, getEffectiveMaterial, getHardReferences, getIndex, getLocalNodeIndex, getMass, getMaterial, getRestVolume, getSelection, getVolume, hasActiveNodes, hasControllableNodes, integrationPointsInterpolateToNodes, isDuplicatable, isInverted, isMassExplicit, numberString, numNodes, prerender, propertyChanged, render, scaleMass, setDensity, setDensityMode, setIndex, setInverted, setMass, setMassExplicit, setMaterial, updateRestVolumeAndMassgetRenderHints, getRenderProps, isSelectable, numSelectionQueriesNeeded, setRenderProps, updateRenderPropscheckFlag, checkName, checkNameUniqueness, clearFlag, clone, createTempFlag, getChildren, getGrandParent, getName, getNameRange, getNavpanelVisibility, getNavpanelVisibility, getNumber, getParent, getProperty, getSoftReferences, hasChildren, hasState, isConnectedToHierarchy, isFixed, isMarked, isSelected, isWritable, makeValidName, makeValidName, notifyParentOfChange, postscan, printReferences, recursivelyContained, recursivelyContains, removeTempFlag, scan, setFixed, setFlag, setMarked, setName, setNavpanelVisibility, setNavpanelVisibility, setNumber, setParent, setSelected, updateReferences, writeequals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetHardReferences, getName, getNavpanelVisibility, getNumber, getParent, getSoftReferences, hasState, isFixed, isMarked, isSelected, notifyParentOfChange, postscan, scan, setFixed, setMarked, setName, setNumber, setParent, setSelected, updateReferencesgetPropertygetChildren, hasChildrenisWritable, writepublic static final double[] INTEGRATION_COORDS_GAUSS_8
public static final double[] INTEGRATION_COORDS_GAUSS_27
public static final double[] INTEGRATION_COORDS_GAUSS_64
public static final double[] INTEGRATION_COORDS_LOBATTO_8
public static final double[] INTEGRATION_COORDS_LOBATTO_27
public static final double[] INTEGRATION_COORDS_LOBATTO_64
public static final double[] NODAL_EXTRAPOLATION_8
public static final double[] NODAL_EXTRAPOLATION_27
public static final double[] NODAL_EXTRAPOLATION_64
public HexElement()
public HexElement(FemNode3d n0, FemNode3d n1, FemNode3d n2, FemNode3d n3, FemNode3d n4, FemNode3d n5, FemNode3d n6, FemNode3d n7)
public HexElement(FemNode3d[] nodes)
public boolean integrationPointsMapToNodes()
integrationPointsMapToNodes in class FemElementtrue if there is a one-to-one mapping between
integration points and nodespublic IntegrationPoint3d[] getDefaultIntegrationPoints()
public void setIntegrationPoints(IntegrationPoint3d[] ipnts, double[] nodalExtrapMat)
public void setIntegrationPoints(IntegrationPoint3d[] ipnts, double[] nodalExtrapMat, boolean mapToNodes)
public IntegrationPoint3d[] getIntegrationPoints()
getIntegrationPoints in class FemElement3dpublic IntegrationPoint3d getWarpingPoint()
getWarpingPoint in class FemElement3dpublic boolean coordsAreInside(Vector3d coords)
coordsAreInside in class FemElement3dpublic int numIntegrationPoints()
numIntegrationPoints in class FemElement3dpublic double[] getIntegrationCoords()
getIntegrationCoords in class FemElement3dpublic double[] getNodeCoords()
getNodeCoords in class FemElement3dpublic void setNodalExtrapolationMatrix(double[] nem)
public double[] getNodalExtrapolationMatrix()
getNodalExtrapolationMatrix in class FemElement3dpublic double getN(int i,
Vector3d coords)
getN in class FemElement3dpublic void getdNds(Vector3d dNds, int i, Vector3d coords)
getdNds in class FemElement3dpublic int[] getEdgeIndices()
getEdgeIndices in class FemElement3dpublic int[] getFaceIndices()
getFaceIndices in class FemElement3dpublic int getParity()
public void setParity(int parity)
public void setFaceNeighbors(HexElement[] nbrs)
public HexElement[] getFaceNeighbors()
public void addTetElement(TetElement e)
public boolean removeTetElement(TetElement e)
public void clearTetElements()
public int numTetElements()
public TetElement getTetElement(int i)
public TetElement[] tesselate(int parity)
public void render(Renderer renderer, RenderProps props, int flags)
render in class FemElementpublic void renderWidget(Renderer renderer, double size, RenderProps props)
renderWidget in class FemElement3dpublic static double computeVolume(FemNode3d n1, FemNode3d n2, FemNode3d n3, FemNode3d n4, FemNode3d n5, FemNode3d n6, FemNode3d n7, FemNode3d n8)
public boolean isInside(Point3d pnt)
isInside in class FemElement3dpnt - point to check if is insidepublic FaceNodes3d[] getQuadFaces()
public int setNeighborParities()
public static void setParities(java.util.List<HexElement> hexes)
public boolean hasEdge(FemNode3d n0, FemNode3d n1)
hasEdge in class FemElement3dpublic boolean hasFace(FemNode3d n0, FemNode3d n1, FemNode3d n2, FemNode3d n3)
hasFace in class FemElement3dpublic HexElement copy(int flags, java.util.Map<ModelComponent,ModelComponent> copyMap)
CopyableComponentCOPY_REFERENCES
is set in flags, then any component referenced
by this component should itself be set to a copy. This
should be done first checking copyMap for an
existing copy of the referenced component. If there is no existing
copy, then a copy should be created by calling copy
recursively and adding the new copy to copyMap.copy in interface CopyableComponentcopy in class FemElement3dflags - flags to control the copyingcopyMap - map to possible existing instances of referenced
componentspublic static double[] createHexIntegrationCoords(double[] locs,
double[] wgts)
locs - 1D locations in [-1 1]wgts - associated weightspublic static boolean mapIPointsToNodes(IntegrationPoint3d[] ipnts, double[] nodalInterp, FemNode3d[] nodes)
public static boolean mapICoordsToNodes(double[] coords)