itasca.structure.link.Link Class Methods
-
class
itasca.structure.link.
Link
Objects of this type should not be created (instantiated) directly in Python. Use the module functions that return instances of this type.
attach
() → tuple of int.Get the attached condition used by the link in each degree-of-freedom. The return value will be an integer with one of three values: 1 = free; 2 = rigid; and 3 = deformable. If the condition is deformable, see the \(model\) method (and associated methods) for details.
component_id
() → int.Get the Link component id.
delete
() → None.Delete this structural link.
extra
(slot: int) → any.Get the Link extra data in the given slot.
group
([slot: str]) → str.Get the Link group name in a given slot.
group_remove
(group_name: str) → bool.Remove from the given group from all group slots of the Link. One argument of type string, giving the group name, is required. The return value is a bool which is True if the group was removed from any slot, otherwise False.
groups
() → {slot: group_name}.Get a dictionary describing which groups this Link is part of. The keys of the dictionary are the slot names and the values are the group names.
id
() → int.Get the Link structural element id.
in_group
(group_name: str[, slot: str]) → bool.Test if the Link is part of a given group. If the optional argument slot is given, only that slot is searched. Otherwise, all group slots are searched.
model
() → tuple of str.Get the name of the 1-D force-displacement model used in each degree-of-freedom. If the link attached condition is free or rigid, then this function will return None (see the \(attach\) method). The currently available models are \(linear\), \(normal-yield\), \(shear-yield\), and \(pile-yield\).
model_area
() → tuple of float.Get the area associated with all degrees-of-freedom in the force-displacement model.
model_compression
() → tuple of float.Get the compressive yield force associated with the force-displacement model for all degrees-of-freedom.
model_disp
() → (translational: vec3, rotational: vec3).Get the relative displacement between the node and the target used by each 1-D force-displacement model. Note that displacements are with respect to the node-local coordinate system. The relative displacement is defined as the displacement of the link target minus the the displacement of the link host node in the node local coordinate system.
model_force
() → (translational: vec3, rotational: vec3).Get the current force in each 1-D force-displacement model. The force is calculated by the 1-D force-displacement model in an incremental fashion from the incremental relative displacement of the link target and the host node (target minus node). See the \(model_disp\) method.
model_gap
() → tuple of bool.Get the flag indicating whether gap calculations are active in the 1-D force-displacement model for all degrees-of-freedom. See the \(gap_neg\) and \(gap_pos\) methods.
model_gap_neg
() → tuple of float.Get the negative (compressive) gap component of each 1-D force-displacement model for each degree-of-freedom.
model_gap_pos
() → tuple of float.Get the positive (tensile) gap component of each 1-D force-displacement model for each degree-of-freedom. This value will only affect force calculations if the gap-use flag is on; see the \(model_gap\) method. The relative displacement is defined as the displacement of the link target minus the displacement of the link host node in the node local coordinate system. See the \(model_disp\) method.
model_stiffness
() → .Get the stiffness used by each 1-D force-displacement model for each degree-of-freedom.
model_tension
() → tuple of float.Get the tensile yield force associated with the force-displacement model for each degree-of-freedom. The tensile yield force is a limit to how positive the force in the link can be. Note that tension is defined relative to the node-local coordinate system, and, thus, depending on the coordinate systems involved, the definition of compression and tension may not match those used by the element connected to the host node. See the \(model_force\) method.
model_yield
() → tuple of int.Get the yield state indicator in the 1-D force displacement model each degree-of-freedom. This is returned as an integer where 0 = never yielded, 1 = yielding now, and 2 = yielded in past.
node
() → Node object.Get the node hosting the structural link.
set_extra
(slot: int, value: any) → None.Set the Link extra data in the given slot.
set_group
(group_name: str[, slot: str]) → None.Set the Link group name in a given slot.
set_model_area
(comp: int, area: value) → None.Set the area associated with one component of the degrees-of-freedom. The integer component starts at zero and the translational components are first.
set_model_compression
(comp: int, force: value) → None.Set the compressive yield force associated with the force-displacement model for a single degree-of-freedom. The integer component starts at zero and the translational components are first.
set_model_gap
(comp: int, flag: bool) → None.Set the flag indicating whether gap calculations are active in the 1-D force-displacement model for a single degrees-of-freedom. See the \(gap_neg\) and \(gap_pos\) methods.
set_model_stiffness
(comp: int, force: float) → None.Set the stiffness used by each 1-D force-displacement model for each degree-of-freedom.
set_model_tension
(comp: int, force: float) → None.Set the tensile yield force associated with the force-displacement model for a singe degree-of-freedom. The tensile yield force is a limit to how positive the force in the link can be. Note that tension is defined relative to the node-local coordinate system, and, thus, depending on the coordinate systems involved, the definition of compression and tension may not match those used by the element connected to the host node. See the \(model_force\) method. The integer component starts at zero and the translational components are first.
set_slide
(flag: bool) → None.Set the large-strain sliding flag for the link. This function only applies to node-to-zone links; it has no meaning for node-to-node links.
set_slide_tol
(flag: bool) → None.Get the large-strain sliding tolerance for the link. This function only applies to node-to-zone links; it has no meaning for node-to-node links.
side
() → int.Get the side number of the link. Unless the host node of the link is attached to an embedded liner, this will always return 1. If the host node is part of an embedded liner, it may be 2, indicating the link is being used on side 2 of the liner.
slide
() → bool.Get the large-strain sliding flag for the link. This function only applies to node-to-zone links; it has no meaning for node-to-node links.
slide_tol
() → bool.Get the large-strain sliding tolerance for the link. This function only applies to node-to-zone links; it has no meaning for node-to-node links.
target
() → Zone or Node object.Get the target of this link. The return value is a Node object for a node-node link and a Zone object for a node-zone link.
type
() → str.Get the name of the link target type. A node-to-node link will return an \(itasca.structure.node.Node\) object. A node-to-zone link will return an \(itasca.zone.Zone\) object.
used_by
() → str.Get the name of the type of structural element with which this link is associated. This only applies to node-to-zone links, otherwise the return is a null string. The type string will be one of \(beam\), \(cable\), \(pile\), \(shell\), \(geogrid\), or \(liner\). If the attach conditions and models assigned to the link are not compatible with those elements (generally because they have been changed), then an empty string is returned.
valid
() → bool.Returns True if this Link is live.
Was this helpful? ... | PFC 6.0 © 2019, Itasca | Updated: Nov 19, 2021 |