public class DirectorFem3dAttachment extends DynamicAttachmentBase
ModelComponent.NavpanelVisibility
enforceUniqueCompositeNames, enforceUniqueNames, myNumber, myProps, NULL_OBJ, useCompactPathNames
Constructor and Description |
---|
DirectorFem3dAttachment() |
DirectorFem3dAttachment(FemNode3d node) |
Modifier and Type | Method and Description |
---|---|
void |
addMassToMasters() |
void |
applyForces() |
void |
computeFrame(RigidTransform3d TFM) |
void |
computeVelocity(Vector3d velw) |
BackNode3d |
getBackNode() |
boolean |
getDerivative(double[] buf,
int idx) |
MatrixBlock |
getGT(int idx)
Returns the transpose of the constraint matrix G associated
with the idx-th master component.
|
void |
getHardReferences(java.util.List<ModelComponent> refs)
Redefine to use the node instead of the backNode as hard
reference.
|
Vector3d |
getLocDir() |
MatrixBlock[] |
getMasterBlocks() |
DynamicComponent[] |
getMasters() |
FemNode3d |
getNode() |
BackNode3d |
getSlave()
Returns the slave DynamicMechComponent associated with this attachment.
|
void |
invalidateMasters() |
void |
mulSubGT(double[] ybuf,
int yoff,
double[] xbuf,
int xoff,
int idx)
Computes
|
void |
mulSubGTM(MatrixBlock D,
MatrixBlock M,
int idx)
Computes
|
void |
mulSubMG(MatrixBlock D,
MatrixBlock M,
int idx)
Computes
|
int |
numMasters() |
void |
updateAttachment()
Update attachment to reflect changes in the slave state.
|
void |
updatePosStates() |
void |
updateVelStates() |
addBackRefs, addBackRefs, addConnectedMasterRefs, clone, connectAttachment, connectToHierarchy, copy, disconnectFromHierarchy, getAttachment, oneMasterActive, oneMasterNotAttached, removeBackRefs, removeBackRefs, removeConnectedMasterRefs, setSlaveAffectsStiffness, slaveAffectsStiffness
checkFlag, checkName, checkNameUniqueness, clearFlag, createTempFlag, getAllPropertyInfo, getChildren, getGrandParent, getName, getNameRange, getNavpanelVisibility, getNavpanelVisibility, getNumber, getParent, getProperty, getSoftReferences, hasChildren, hasState, isFixed, isMarked, isScanning, isSelected, isWritable, makeValidName, makeValidName, notifyParentOfChange, postscan, printReferences, recursivelyContained, recursivelyContains, removeTempFlag, scan, setFixed, setFlag, setMarked, setName, setNavpanelVisibility, setNavpanelVisibility, setNumber, setParent, setScanning, setSelected, setWritable, updateReferences, write
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getName, getNavpanelVisibility, getNumber, getParent, getSoftReferences, hasState, isFixed, isMarked, isSelected, notifyParentOfChange, scan, setFixed, setMarked, setName, setNumber, setParent, setSelected, setWritable, updateReferences
getAllPropertyInfo, getProperty
getChildren, hasChildren
postscan
isWritable, write
public DirectorFem3dAttachment()
public DirectorFem3dAttachment(FemNode3d node)
public BackNode3d getSlave()
DynamicAttachmentBase
null
.getSlave
in interface DynamicAttachment
getSlave
in class DynamicAttachmentBase
public BackNode3d getBackNode()
public FemNode3d getNode()
public Vector3d getLocDir()
public DynamicComponent[] getMasters()
getMasters
in interface DynamicAttachment
getMasters
in class DynamicAttachmentBase
public MatrixBlock[] getMasterBlocks()
public int numMasters()
numMasters
in interface DynamicAttachment
numMasters
in class DynamicAttachmentBase
public void invalidateMasters()
invalidateMasters
in interface DynamicAttachment
invalidateMasters
in class DynamicAttachmentBase
public void addMassToMasters()
addMassToMasters
in interface DynamicAttachment
addMassToMasters
in class DynamicAttachmentBase
public void computeFrame(RigidTransform3d TFM)
public void computeVelocity(Vector3d velw)
public void updatePosStates()
updatePosStates
in interface DynamicAttachment
updatePosStates
in class DynamicAttachmentBase
public void applyForces()
applyForces
in interface DynamicAttachment
applyForces
in class DynamicAttachmentBase
public void updateAttachment()
DynamicAttachmentBase
updateAttachment
in interface DynamicAttachment
updateAttachment
in class DynamicAttachmentBase
public void updateVelStates()
updateVelStates
in interface DynamicAttachment
updateVelStates
in class DynamicAttachmentBase
public boolean getDerivative(double[] buf, int idx)
getDerivative
in interface DynamicAttachment
getDerivative
in class DynamicAttachmentBase
public void mulSubMG(MatrixBlock D, MatrixBlock M, int idx)
DynamicAttachmentBase
D -= M Gwhere D and M are matrices associated with master and slave components, respectively, and G is the constraint matrix for the attachment.
mulSubMG
in interface DynamicAttachment
mulSubMG
in class DynamicAttachmentBase
D
- dependent matrix associated with a master componentM
- matrix associated with a slave componentpublic MatrixBlock getGT(int idx)
DynamicAttachmentBase
getGT
in interface DynamicAttachment
getGT
in class DynamicAttachmentBase
idx
- index of the master componentpublic void mulSubGT(double[] ybuf, int yoff, double[] xbuf, int xoff, int idx)
DynamicAttachmentBase
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.
mulSubGT
in interface DynamicAttachment
mulSubGT
in class DynamicAttachmentBase
ybuf
- buffer into which to store resultyoff
- offset into ybufxbuf
- buffer containing right hand side vectorxoff
- offset into xbufidx
- master component indexpublic void mulSubGTM(MatrixBlock D, MatrixBlock M, int idx)
DynamicAttachmentBase
T D -= G Mwhere D and M are matrices associated with master and slave components, respectively, and G is the constraint matrix for the attachment.
mulSubGTM
in interface DynamicAttachment
mulSubGTM
in class DynamicAttachmentBase
D
- dependent matrix associated with a master componentM
- matrix associated with a slave componentpublic void getHardReferences(java.util.List<ModelComponent> refs)
getHardReferences
in interface ModelComponent
getHardReferences
in class DynamicAttachmentBase
refs
- list to which hard references are appended