itasca.structure.nodearray

Array interface for structural element nodes.

Functions

itasca.structure.nodearray.acc_global() array (translational: vec3, rotational: vec3){node}.

Get a Numpy array of the acceleration of structure node expressed in a global coordinate system.

itasca.structure.nodearray.acc_local() array (translational: vec3, rotational: vec3){node}.

Get a Numpy array of the acceleration of structure node expressed in a local coordinate system.

itasca.structure.nodearray.apply() array (translational: vec3, rotational: vec3){node}.

Get a Numpy array of the translational and rotational applied force of the structure node expressed in the global coordinate system.

itasca.structure.nodearray.apply_local() array bool{node}.

Get whether the coordinate system in which generalizedapplied forces are expressed is a local system.

itasca.structure.nodearray.component_id() array int{node}.

Get a NumPy array of the node component id.

itasca.structure.nodearray.convergence() array float{node}.

Returns a NumPy array of the node convergence value, defined as the ratio of the currenct local force ratio (given by the \(ratio\) method), to the target force ratio (\(ratio.target\)). A value of 1 or less is therefore considered “converged”.

itasca.structure.nodearray.damp_local() array float{node}.

Get the local damping factor of the structure nodes.

itasca.structure.nodearray.disp_global() array (translational: vec3, rotational: vec3){node}.

Get a Numpy array of the displacement of structure node expressed in a global system.

itasca.structure.nodearray.disp_local() array (translational: vec3, rotational: vec3){node}.

Get a Numpy array of the displacement of structure node expressed in a local system.

itasca.structure.nodearray.extra(slot: int) array float{node} or float{node,3}.

Get the node extra data in the given slot as an array. Extra variables accessed by array must be of type float or vec.

itasca.structure.nodearray.fix() Array int{node}.

Get velocity-fixity flag expressed in the node-local system.Return values {1, 2, 3} denotes free, fixed, or slaved to target velocity, respectively.Slaved conditions arise from rigid attachment conditions; degrees-of-freedom that are slaved cannot be fixed.

itasca.structure.nodearray.fix_local() array bool{node}.

Get a Numpy array of the boolean flag for the local coordinate system fixity. True for fixed node-local system, False for free node-local system.

itasca.structure.nodearray.force_unbal_global() array (translational: vec3, rotational: vec3){node}.

Get a Numpy array of the unbalanced force of structure node expressed in a global system.

itasca.structure.nodearray.force_unbal_local() array (translational: vec3, rotational: vec3){node}.

Get a Numpy array of the unbalanced force of structure node expressed in a local system.

itasca.structure.nodearray.ids() array int{node}.

Get a NumPy array of the node structural element id.

itasca.structure.nodearray.in_group(group_name: str, slot=1) array bool{node}.

Return node group membership as a Boolean array.

Get the link objects associated with nodes.

itasca.structure.nodearray.local_system() array tens3{node}.

Get the local coordinate system of the structure node.

itasca.structure.nodearray.mark() array bool{node}.

Get the mark flag. Note that the SEL logic may modify this flag during command processing, cycling, and plotting.

itasca.structure.nodearray.mass_added() array (translational: vec3, rotational: vec3){node}.

Get a Numpy array of the extra mass in addition to the inertial mass at each degree-of-freedom in the node-local system.

itasca.structure.nodearray.mass_local() array (translational: vec3, rotational: vec3){node}.

Get a Numpy array of the mass at each degree-of-freedom in the node-local system.

itasca.structure.nodearray.pos() array vec3{node}.

Get a NumPy array of the current position of structural element nodes.

itasca.structure.nodearray.pos_reference() array vec3{node}.

Get a NumPy array of the reference position of structural element nodes.

itasca.structure.nodearray.ratio() array float{node}.

Get a NumPy array of the local gridpoint mechanical convergence ratio. This is the ratio of unbalanced force to force applied to the node.

itasca.structure.nodearray.ratio_target() array float{node}.

Get a NumPy array of the target mechanical force ratio in the node. The default value is 1e-4. A local force ratio (see the \(ratio\) method) below this value is considered converged. See also the \(convergence\) method.

itasca.structure.nodearray.resultant() array floats{node,6} .

Get a NumPy array of stress resultants (Mx, My, Mxy, Nx, Ny, Nxy) last calculated for the elements connected to nodes. Note that the \(Q_x\) and \(Q_{y1}\) terms are not valid at nodes because they are constant over an element. Stress resultants are expressed in the node surface system; see the structure shell recover surface, structure geogrid recover surface, and structure liner recover surface commands.

itasca.structure.nodearray.set_apply(comp: int, force: array float{node}) None.

Set a component of the translational and rotational applied force of the structure node expressed in the global coordinate system. Components 0, 1, and 2 are translational and 3,4 and 5 are rotational.

itasca.structure.nodearray.set_damp_local(array float{node}) None.

Set the local damping factor of the structure nodes.

itasca.structure.nodearray.set_extra(slot: int, data: array float{node} or float{node, 3}) None.

Set the node extra data in the given slot with an array. Extra variables set by array must be of type float or vec.

itasca.structure.nodearray.set_fix_local(array bool{node}) None.

Set the boolean flag for the local coordinate system fixity. True for fixed node-local system, False for free node-local system.

itasca.structure.nodearray.set_group(membership: array bool{node}, group_name: str, slot=1) None.

Set node group from an array. Where membership True set the corresponding node to be a member of group group_name in the given slot.

itasca.structure.nodearray.set_mark(array bool{node}) None.

Set the mark flag. Note that the SEL logic may modify this flag during command processing, cycling, and plotting.

itasca.structure.nodearray.set_mass_added(comp: int, mass: float) array (translational: vec3, rotational: vec3){node}.

Get a Numpy array of the extra mass in addition to the inertial mass at each degree-of-freedom in the node-local system.

itasca.structure.nodearray.set_ratio_target(ratio: array float{node}) None.

Set the target mechanical force ratio in the node. The default value is 1e-4. A local force ratio (see the \(ratio\) method) below this value is considered converged. See also the \(convergence\) method.

itasca.structure.nodearray.set_surface_xdir(orientation: array vec3{node}) bool.

Set the orientation of the surface system. surface system of the node such that the x-direction is aligned with the projection of the surface vector v onto the normal plane, which is defined by the z-direction. This operation can only be performed upon nodes that have a valid surface system (to ensure that the z-direction always corresponds with the average normal direction of at least one of the shell-type SELs using the node). A return value of \(True\) indicates success and \(False\) indicates failure.

itasca.structure.nodearray.set_temp_increment(dtemp: array float{node}) None.

Set the the temperature increment that will be applied to the structural node in the next timestep, causing elements connected to it to see changes in stress due to thermal expansion. This value is cleared to zero after every step when thermal expansion stresses are applied.

itasca.structure.nodearray.stiff_local() tuple of float.

Get the stiffness of structure node expressed in a local system.A length 6 tuple is returned. The translational stiffnesses are first followed by the rotational stiffnesses.

itasca.structure.nodearray.surface_system() array tens3{node}.

Get the surface coordinate system of the structure node.

itasca.structure.nodearray.surface_valid() array bool{node}.

Get a boolean flag for surface system validity; \(True\) if the surface system is valid, \(False\) if not. The surface system can be made valid by issuing a structure recovery command.

itasca.structure.nodearray.temp_increment() array float{node}.

Get a NumPy array of the the temperature increment that will be applied to the structural node in the next timestep, causing elements connected to it to see changes in stress due to thermal expansion. This value is cleared to zero after every step when thermal expansion stresses are applied.

itasca.structure.nodearray.vel_global() array (translational: vec3, rotational: vec3){node}.

Get a Numpy array of the velocity of a structure node expressed in a global system.

itasca.structure.nodearray.vel_local() array (translational: vec3, rotational: vec3){node}.

Get a Numpy array of the velocity of a structure node expressed in a local system.