StructTimeStepInfo

class sharpy.structure.models.beam.StructTimeStepInfo(num_node, num_elem, num_node_elem=3, num_dof=None, num_bodies=1)[source]

Structural Time Step Class.

Contains the relevant attributes for the structural description of a single time step.

in_global_AFoR

True if the variables are stored in the global A FoR. False'' if they are stored in the local A FoR of each body. Always ``True for single-body simulations

Type

bool

num_node

Number of nodes

Type

int

num_elem

Number of elements

Type

int

num_node_elem

Number of nodes per element

Type

int

pos

Displacements. [num_node x 3] containing the vector of x, y and z coordinates (in A frame) of the beam nodes.

Type

np.ndarray

pos_dot

Velocities. Time derivative of pos.

Type

np.ndarray

pos_ddot

Accelerations. Time derivative of pos_dot

Type

np.ndarray

psi

Cartesian Rotation Vector. [num_elem x num_node_elem x 3] CRV for each node in each element.

Type

np.ndarray

psi_dot

Time derivative of psi.

Type

np.ndarray

psi_ddot

Time derivative of psi_dot.

Type

np.ndarray

quat

Quaternion expressing the transformation between the A and G frames.

Type

np.ndarray

for_pos

A frame of reference position (with respect to the G` frame of reference).

Type

np.ndarray

for_vel

A frame of reference velocity. Expressed in A FoR

Type

np.ndarray

for_acc

A frame of reference acceleration. Expressed in A FoR

Type

np.ndarray

steady_applied_forces

Forces applied to the structure not associated to time derivatives [num_nodes x 6]. Expressed in B FoR

Type

np.ndarray

unsteady_applied_forces

Forces applied to the structure associated to time derivatives [num_node x 6]. Expressed in B FoR

Type

np.ndarray

runtime_generated_forces

Forces generated at runtime through runtime generators [num_node x 6]. Expressed in B FoR

Type

np.ndarray

gravity_forces

Gravity forces at nodes [num_node x 6]. Expressed in A FoR

Type

np.ndarray

total_gravity_forces

Total gravity forces on the structure [6]. Expressed in A FoR

Type

np.ndarray

total_forces

Total forces applied to the structure [6]. Expressed in A FoR

Type

np.ndarray

q

State vector associated to the structural system of equations [num_dof + 10]

Type

np.ndarray

dqdt

Time derivative of q

Type

np.ndarray

dqddt

Time derivative of dqdt

Type

np.ndarray

postproc_cell

Variables associated to cells to be postprocessed

Type

dict

postproc_node

Variables associated to nodes to be postprocessed

Type

dict

mb_FoR_pos

Position of the local A FoR of each body [num_bodies x 6]

Type

np.ndarray

mb_FoR_vel

Velocity of the local A FoR of each body [num_bodies x 6]

Type

np.ndarray

mb_FoR_acc

Acceleration of the local A FoR of each body [num_bodies x 6]

Type

np.ndarray

mb_quat

Quaternion of the local A FoR of each body [num_bodies x 4]

Type

np.ndarray

mb_dquatdt

Time derivative of mb_quat

Type

np.ndarray

forces_constraints_nodes

Forces associated to Lagrange Constraints on nodes [num_node x 6]

Type

np.ndarray

forces_constraints_FoR

Forces associated to Lagrange Contraints on frames of reference [num_bodies x 10]

Type

np.ndarray

mb_dict

Dictionary with the multibody information. It comes from the file case.mb.h5

Type

np.ndarray

change_to_global_AFoR(for0_pos, for0_vel, quat0)[source]

Reference a StructTimeStepInfo to the global A frame of reference

Parameters
  • for0_pos (np.ndarray) – Position of the global A FoR

  • for0_vel (np.ndarray) – Velocity of the global A FoR

  • quat0 (np.ndarray) – Quaternion of the global A FoR

change_to_local_AFoR(for0_pos, for0_vel, quat0)[source]

Reference a StructTimeStepInfo to the local A frame of reference

Parameters
  • for0_pos (np.ndarray) – Position of the global A FoR

  • for0_vel (np.ndarray) – Velocity of the global A FoR

  • quat0 (np.ndarray) – Quaternion of the global A FoR

copy()[source]

Returns a copy of a deepcopy of a StructTimeStepInfo

euler_angles()[source]

Returns the 3 Euler angles (roll, pitch, yaw) for a given time step.

Returns

np.array (roll, pitch, yaw) in radians.

get_body(beam, num_dof_ibody, ibody)[source]

Extract the body number ibody from a multibody system

This function returns a StructTimeStepInfo class (ibody_StructTimeStepInfo) that only includes the body number ibody of the original multibody system self

Parameters
  • beam (Beam) – beam information of the multibody system

  • num_dof_ibody (int) – Number of degrees of freedom associated to the ibody

  • ibody (int) – body number to be extracted

Returns

timestep information of the isolated body

Return type

StructTimeStepInfo

glob_pos(include_rbm=True)[source]

Returns the position of the nodes in G FoR

whole_structure_to_global_AFoR(beam)[source]

Same as change_to_global_AFoR but for a multibody structure

Parameters

beam (sharpy.structure.models.beam.Beam) – Beam structure of PreSharpy

whole_structure_to_local_AFoR(beam)[source]

Same as change_to_local_AFoR but for a multibody structure

Parameters

beam (sharpy.structure.models.beam.Beam) – Beam structure of PreSharpy