public class PointFrameAttachment extends PointAttachment
ModelComponent.NavpanelVisibility
enforceUniqueCompositeNames, enforceUniqueNames, myNumber, myProps, NULL_OBJ, useCompactPathNames
COPY_REFERENCES
Constructor and Description |
---|
PointFrameAttachment() |
PointFrameAttachment(Frame master,
Point slave) |
PointFrameAttachment(Frame master,
Point slave,
Point3d loc) |
PointFrameAttachment(Point slave) |
Modifier and Type | Method and Description |
---|---|
void |
addMassToMaster(MatrixBlock mblk,
MatrixBlock sblk,
int idx) |
void |
addMassToMasters() |
int |
addTargetJacobian(SparseBlockMatrix J,
int bi) |
void |
applyForces() |
PointFrameAttachment |
copy(int flags,
java.util.Map<ModelComponent,ModelComponent> copyMap)
Create a copy of this component.
|
void |
detachSlave() |
void |
getCurrentPos(Vector3d pos)
Returns the current position of the attached point, in world coordinates.
|
void |
getCurrentVel(Vector3d vel,
Vector3d dvel) |
boolean |
getDerivative(double[] buf,
int idx) |
Frame |
getFrame() |
Point3d |
getLocation() |
void |
getUndeformedPos(Vector3d pos) |
void |
mulSubG(MatrixBlock D,
MatrixBlock B,
int idx)
Computes
|
void |
mulSubGT(double[] ybuf,
int yoff,
double[] xbuf,
int xoff,
int idx)
Computes
|
void |
mulSubGT(MatrixBlock D,
MatrixBlock B,
int idx)
Computes
|
void |
scale(double s) |
void |
setCurrentPos(Vector3d pos) |
void |
setLocation(Point3d loc) |
void |
updateAttachment()
Update attachment to reflect changes in the slave state.
|
void |
updatePosStates() |
void |
updateVelStates() |
void |
writeItems(java.io.PrintWriter pw,
NumberFormat fmt,
CompositeComponent ancestor) |
getCopyReferences, getMasterBlocks, getMasters, getPoint, getSlave, getSlaveSolveIndex, invalidateMasters, isDuplicatable, numMasters
addAttachmentJacobian, addBackRefs, addSolveBlocks, clone, connectToHierarchy, containsLoop, containsLoops, containsMaster, createOrderedList, disconnectFromHierarchy, getHardReferences, oneMasterActive, reduceConstraints, reduceMass, reduceRowMatrix, removeBackRefs
checkFlag, checkName, checkNameUniqueness, clearFlag, createTempFlag, getAllPropertyInfo, 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, write
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
connectToHierarchy, disconnectFromHierarchy, getHardReferences, getName, getNavpanelVisibility, getNumber, getParent, getSoftReferences, hasState, isFixed, isMarked, isSelected, notifyParentOfChange, postscan, scan, setFixed, setMarked, setName, setNumber, setParent, setSelected, updateReferences
getAllPropertyInfo, getProperty
getChildren, hasChildren
isWritable, write
public PointFrameAttachment()
public PointFrameAttachment(Point slave)
public Frame getFrame()
public void setLocation(Point3d loc)
public Point3d getLocation()
public void detachSlave()
public void getCurrentPos(Vector3d pos)
PointAttachment
getCurrentPos
in class PointAttachment
pos
- used to return current point positionpublic void getUndeformedPos(Vector3d pos)
public void setCurrentPos(Vector3d pos)
public void updatePosStates()
updatePosStates
in class DynamicAttachment
public void updateVelStates()
updateVelStates
in class DynamicAttachment
public void applyForces()
applyForces
in class PointAttachment
public void mulSubGT(MatrixBlock D, MatrixBlock B, int idx)
DynamicAttachment
T D -= G Bwhere D and B are matrices associated with master and slave components, respectively, and G is the constraint matrix for the attachment.
D
- dependent matrix associated with a master componentB
- matrix associated with a slave componentpublic void mulSubG(MatrixBlock D, MatrixBlock B, int idx)
DynamicAttachment
D -= B Gwhere D and B are matrices associated with master and slave components, respectively, and G is the constraint matrix for the attachment.
D
- dependent matrix associated with a master componentB
- matrix associated with a slave componentpublic void mulSubGT(double[] ybuf, int yoff, double[] xbuf, int xoff, int idx)
DynamicAttachment
T y -= G xwhere y and x are vectors associated with master and slave components, respectively, and G is the constraint matrix for the attachment.
ybuf
- buffer into which to store resultyoff
- offset into ybufxbuf
- buffer containing right hand side vectorxoff
- offset into xbufidx
- master component indexpublic void scale(double s)
public void updateAttachment()
DynamicAttachment
updateAttachment
in class DynamicAttachment
public int addTargetJacobian(SparseBlockMatrix J, int bi)
addTargetJacobian
in class PointAttachment
public void addMassToMasters()
addMassToMasters
in class DynamicAttachment
public void addMassToMaster(MatrixBlock mblk, MatrixBlock sblk, int idx)
public void writeItems(java.io.PrintWriter pw, NumberFormat fmt, CompositeComponent ancestor) throws java.io.IOException
writeItems
in class PointAttachment
java.io.IOException
public boolean getDerivative(double[] buf, int idx)
getDerivative
in class DynamicAttachment
public PointFrameAttachment copy(int flags, java.util.Map<ModelComponent,ModelComponent> copyMap)
CopyableComponent
COPY_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 CopyableComponent
copy
in class PointAttachment
flags
- flags to control the copyingcopyMap
- map to possible existing instances of referenced
components