Link

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 degreeoffreedom. 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 or int]) → str. Get the Link group name in a given slot.

group_remove
(group_name: str or int[, slot: str or int]) → 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 or int[, slot: str or int]) → 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 1D forcedisplacement model used in each degreeoffreedom. 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\), \(normalyield\), \(shearyield\), and \(pileyield\).

model_area
() → tuple of float. Get the area associated with all degreesoffreedom in the forcedisplacement model.

model_compression
() → tuple of float. Get the compressive yield force associated with the forcedisplacement model for all degreesoffreedom.

model_disp
() → (translational: vec3, rotational: vec3). Get the relative displacement between the node and the target used by each 1D forcedisplacement model. Note that displacements are with respect to the nodelocal 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 1D forcedisplacement model. The force is calculated by the 1D forcedisplacement 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 1D forcedisplacement model for all degreesoffreedom. See the \(gap_neg\) and \(gap_pos\) methods.

model_gap_neg
() → tuple of float. Get the negative (compressive) gap component of each 1D forcedisplacement model for each degreeoffreedom.

model_gap_pos
() → tuple of float. Get the positive (tensile) gap component of each 1D forcedisplacement model for each degreeoffreedom. This value will only affect force calculations if the gapuse 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 1D forcedisplacement model for each degreeoffreedom.

model_tension
() → tuple of float. Get the tensile yield force associated with the forcedisplacement model for each degreeoffreedom. 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 nodelocal 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 1D force displacement model each degreeoffreedom. 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 or int[, slot: str or int]) → 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 degreesoffreedom. 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 forcedisplacement model for a single degreeoffreedom. 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 1D forcedisplacement model for a single degreesoffreedom. See the \(gap_neg\) and \(gap_pos\) methods.

set_model_stiffness
(comp: int, force: float) → None. Set the stiffness used by each 1D forcedisplacement model for each degreeoffreedom.

set_model_tension
(comp: int, force: float) → None. Set the tensile yield force associated with the forcedisplacement model for a singe degreeoffreedom. 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 nodelocal 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 largestrain sliding flag for the link. This function only applies to nodetozone links; it has no meaning for nodetonode links.

set_slide_tol
(flag: bool) → None. Get the largestrain sliding tolerance for the link. This function only applies to nodetozone links; it has no meaning for nodetonode 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 largestrain sliding flag for the link. This function only applies to nodetozone links; it has no meaning for nodetonode links.

slide_tol
() → bool. Get the largestrain sliding tolerance for the link. This function only applies to nodetozone links; it has no meaning for nodetonode links.

target
() → Zone or Node object. Get the target of this link. The return value is a Node object for a nodenode link and a Zone object for a nodezone link.

type
() → str. Get the name of the link target type. A nodetonode link will return an \(itasca.structure.node.Node\) object. A nodetozone 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 nodetozone 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? ...  3DEC © 2019, Itasca  Updated: Aug 19, 2023 