Initializes a new [[beam_element_2d]].
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(material), | intent(in) | :: | mat |
The material. |
||
| real(kind=real64), | intent(in) | :: | area |
The cross-sectional area. |
||
| real(kind=real64), | intent(in) | :: | moi |
The moment-of-inertia. |
||
| class(node), | intent(in) | :: | nd1 |
Node 1 of the element. |
||
| class(node), | intent(in) | :: | nd2 |
Node 2 of the element. |
The new [[beam_element_2d]].
Constructs a new [[beam_element_3d]] object.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(material), | intent(in) | :: | mat |
The material. |
||
| real(kind=real64), | intent(in) | :: | area |
The cross-sectional area. |
||
| real(kind=real64), | intent(in) | :: | ixx |
The moment of inertia about the element's x-axis (torsional). |
||
| real(kind=real64), | intent(in) | :: | iyy |
The moment of inertia about the element's y-axis. |
||
| real(kind=real64), | intent(in) | :: | izz |
The moment of inertia about the element's z-axis. |
||
| real(kind=real64), | intent(in) | :: | iyz |
The cross-sectional product of inertia. |
||
| class(node), | intent(in) | :: | nd1 |
The first node. |
||
| class(node), | intent(in) | :: | nd2 |
The second node. |
||
| class(point), | intent(in) | :: | orient |
An orientation node that locates the direction of the element z-axis. The orientation point is measured relative to the first node in the element. Specifically, the element z-axis is assumed to be defined by the location of this point relative to the location of node 1. |
The new [[beam_element_3d]] object.
Defines a two-dimensional Bernoulli-Euler beam element.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| real(kind=real64), | public | :: | area |
The element cross-sectional area. |
|||
| type(material), | public | :: | material |
The material. |
|||
| real(kind=real64), | public | :: | moment_of_inertia |
The beam moment of inertia (second moment of area). |
|||
| type(node), | public | :: | node_1 |
The first node of the element (s = -1). |
|||
| type(node), | public | :: | node_2 |
The second node of the element (s = 1). |
| private pure function b2d_init (mat, area, moi, nd1, nd2) | Initializes a new [[beam_element_2d]]. |
| procedure , public :: bending_moment => b2d_bending_moment Function | |
| procedure , public :: constitutive_matrix => b2d_constitutive_matrix Function | |
| procedure , public :: evaluate_shape_function => b2d_shape_function Function | |
| procedure , public :: external_force_vector => le_ext_force_vector Function | |
| procedure , public :: get_dimensionality => b2d_dimensionality Function | |
| procedure , public :: get_dof_per_node => b2d_dof_per_node Function | |
| procedure , public :: get_node => b2d_get_node Function | |
| procedure , public :: get_node_count => b2d_get_node_count Function | |
| procedure , public :: get_node_natural_coordinates => le_get_node_natural_coordinates Function | |
| procedure , public :: get_terminal_nodes => b2d_terminal_nodes Subroutine | |
| procedure , public :: jacobian => b2d_jacobian Function | |
| procedure , public :: length => le_length Function | |
| procedure , public :: mass_matrix => b2d_mass_matrix Function | |
| procedure , public :: rotation_matrix => b2d_rotation_matrix Function | |
| procedure , public :: shape_function_matrix => b2d_shape_function_matrix_2d Function | |
| procedure , public :: shear_force => b2d_shear_force Function | |
| procedure , public :: stiffness_matrix => b2d_stiffness_matrix Function | |
| procedure , public :: strain => le_strain Function | |
| procedure , public :: strain_displacement_matrix => b2d_strain_disp_matrix_2d Function | |
| procedure , public :: stress => le_stress Function |
Defines a three-dimensional Bernoulli-Euler beam element.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| real(kind=real64), | public | :: | Ixx |
The beam moment of inertia about the element x-axis. |
|||
| real(kind=real64), | public | :: | Iyy |
The beam moment of inertia about the element y-axis. |
|||
| real(kind=real64), | public | :: | Iyz |
The cross-sectional product of inertia. |
|||
| real(kind=real64), | public | :: | Izz |
The beam moment of inertia about the element z-axis. |
|||
| real(kind=real64), | public | :: | area |
The element cross-sectional area. |
|||
| type(material), | public | :: | material |
The material. |
|||
| type(node), | public | :: | node_1 |
The first node of the element (s = -1). |
|||
| type(node), | public | :: | node_2 |
The second node of the element (s = 1). |
|||
| type(point), | public | :: | orientation_point |
A point used to determine the orientation of the beam in 3D space. The orientation point is measured relative to the first node in the element. Specifically, the element z axis is assumed to be defined by the location of this point relative to the location of node 1. |
| private pure function b3d_init (mat, area, ixx, iyy, izz, iyz, nd1, nd2, orient) | Constructs a new [[beam_element_3d]] object. |
| procedure , public :: bending_moment => b3d_bending_moment Function | |
| procedure , public :: constitutive_matrix => b3d_constitutive_matrix Function | |
| procedure , public :: evaluate_shape_function => b3d_shape_function Function | |
| procedure , public :: external_force_vector => le_ext_force_vector Function | |
| procedure , public :: get_dimensionality => b3d_dimensionality Function | |
| procedure , public :: get_dof_per_node => b3d_dof_per_node Function | |
| procedure , public :: get_node => b3d_get_node Function | |
| procedure , public :: get_node_count => b3d_get_node_count Function | |
| procedure , public :: get_node_natural_coordinates => le_get_node_natural_coordinates Function | |
| procedure , public :: get_terminal_nodes => b3d_terminal_nodes Subroutine | |
| procedure , public :: jacobian => b3d_jacobian Function | |
| procedure , public :: length => le_length Function | |
| procedure , public :: mass_matrix => b3d_mass_matrix Function | |
| procedure , public :: rotation_matrix => b3d_rotation_matrix Function | |
| procedure , public :: shape_function_matrix => b3d_shape_function_matrix_3d Function | |
| procedure , public :: shear_force => b3d_shear_force Function | |
| procedure , public :: stiffness_matrix => b3d_stiffness_matrix Function | |
| procedure , public :: strain => le_strain Function | |
| procedure , public :: strain_displacement_matrix => b3d_strain_disp_matrix_3d Function | |
| procedure , public :: stress => le_stress Function |