|
struct | BeamElement |
| Beam element constitutes flexible beams material behavior in kynema. More...
|
|
struct | Beams |
| Contains the field variables needed to compute the per-element contributions to the residual vector and system matrix. More...
|
|
struct | BeamSection |
| A structure containing the position, mass matrix, and stiffness matrix to be used in defining a beam cross section at a given location. More...
|
|
struct | BeamsInput |
| Represents the input data for creating flexible beams. More...
|
|
struct | Constraints |
| Container class for managing multiple constraints in a simulation. More...
|
|
struct | Elements |
| A container providing handle to all structural elements present in the model. More...
|
|
struct | MassElement |
| Mass element constitutes rigid bodies/masses material behavior in kynema. It has a single node and a single section completely defined by a 6x6 mass matrix. More...
|
|
struct | Masses |
| Contains field variables for mass elements (aka, rigid bodies) to compute per-element contributions to the residual vector and system/iteration matrix. More...
|
|
struct | MassesInput |
| Represents the input data for creating mass/rigid body elements. More...
|
|
class | Model |
| Struct to define the connectivity structure of elements, nodes, and constraints defining an Kynema problem. More...
|
|
struct | Node |
| Represents a node in the finite element model. More...
|
|
class | NodeBuilder |
| Builder class for constructing and configuring Node objects. More...
|
|
struct | Solver |
| This object manages the assembly and solution of linear system arising from the generalized-alpha based time integration of the dynamic structural problem. More...
|
|
struct | SpringElement |
| Spring element represents a constitutively linear spring connecting two nodes and defined by its scalar stiffness and undeformed length. More...
|
|
struct | Springs |
| Contains field variables for spring elements to compute per-element contributions to the residual vector and system/iteration matrix. More...
|
|
struct | SpringsInput |
| Represents the input data for creating spring elements. More...
|
|
struct | State |
| Container for storing the complete system state of the simulation at a given time increment. More...
|
|
struct | StepParameters |
| A Struct containing the paramters used to control the time stepping process. More...
|
|
|
template<typename DeviceType > |
Beams< DeviceType > | CreateBeams (const BeamsInput &beams_input, std::span< const Node > nodes) |
| Creates a beams data structure and initializes its data.
|
|
template<typename DeviceType > |
Masses< DeviceType > | CreateMasses (const MassesInput &masses_input, std::span< const Node > nodes) |
| Creates a masses data structure and initializes its data.
|
|
template<typename DeviceType > |
Springs< DeviceType > | CreateSprings (const SpringsInput &springs_input, std::span< const Node > nodes) |
| Creates a springs data structure and initializes its data.
|
|
template<typename DeviceType = Kokkos::Device<Kokkos::DefaultExecutionSpace, Kokkos::DefaultExecutionSpace::memory_space>> |
Solver< DeviceType > | CreateSolver (State< DeviceType > &state, Elements< DeviceType > &elements, Constraints< DeviceType > &constraints) |
| Compute freedom tables for state, elements, and constraints, then construct and return solver.
|
|
template<typename DeviceType > |
State< DeviceType > | CloneState (const State< DeviceType > &old) |
| Creates a new state object and performs a deep copy of the data in the old one. This is primarily for creating an identical state for snapshotting and rollback in the event that a time step should be performed again.
|
|
template<typename DeviceType > |
void | CopyStateData (State< DeviceType > ©, const State< DeviceType > &old) |
| Performs a deep copy of the state data which might have changed in a given time step.
|
|
template<typename DeviceType > |
void | ReadStateFromFile (std::istream &input, State< DeviceType > &state) |
| Reads State data from a provided restart file.
|
|
template<typename DeviceType > |
void | WriteStateToFile (std::ostream &output, const State< DeviceType > &state) |
| Writes State data into a minimal restart file.
|
|
template<typename DeviceType > |
bool | Step (StepParameters ¶meters, Solver< DeviceType > &solver, Elements< DeviceType > &elements, State< DeviceType > &state, Constraints< DeviceType > &constraints) |
| Attempts to complete a single time step in the dynamic FEA simulation.
|
|
template<typename DeviceType >
void kynema::CopyStateData |
( |
State< DeviceType > & |
copy, |
|
|
const State< DeviceType > & |
old |
|
) |
| |
|
inline |
Performs a deep copy of the state data which might have changed in a given time step.
It is assumed that the target State object has all of its data which is unchanged (connectivity information, x0, ID) already copied over and all of its Views are properly sized. One way to ensure this is to first create it with the Clone state method.
- Template Parameters
-
DeviceType | The Kokkos Device where copy and old states reside |
- Parameters
-
old | The State from which to be copied |
copy | The State to which to be copied |