Smith  0.1
Smith is an implicit thermal structural mechanics simulation code.
solid_mechanics_input.hpp
Go to the documentation of this file.
1 // Copyright (c) Lawrence Livermore National Security, LLC and
2 // other Smith Project Developers. See the top-level LICENSE file for
3 // details.
4 //
5 // SPDX-License-Identifier: (BSD-3-Clause)
6 
14 #pragma once
15 
16 #include <optional>
17 #include <string>
18 #include <unordered_map>
19 #include <vector>
20 
22 #include "smith/numerics/odes.hpp"
25 
26 namespace smith {
27 
38  static void defineInputFileSchema(axom::inlet::Container& container);
39 
44  int order;
45 
51 
57 
63 
68  std::vector<var_solid_material_t> materials;
69 
74  std::unordered_map<std::string, input::BoundaryConditionInputOptions> boundary_conditions;
75 
82  std::optional<input::CoefficientInputOptions> initial_displacement;
83 
88  std::optional<input::CoefficientInputOptions> initial_velocity;
89 };
90 
91 } // namespace smith
92 
98 template <>
99 struct FromInlet<smith::SolidMechanicsInputOptions> {
101  smith::SolidMechanicsInputOptions operator()(const axom::inlet::Container& base);
102 };
This file contains the all the necessary functions for reading input files.
Accelerator functionality.
Definition: smith.cpp:36
Wrapper classes for using MFEM's ODE solver objects.
This file contains functions for reading a material from input files.
This file contains enumerations and record types for physics solver configuration.
Parameters for an iterative linear solution scheme.
Nonlinear solution scheme parameters.
Stores all information held in the input file that is used to configure the solver.
NonlinearSolverOptions nonlin_solver_options
The linear solver options.
int order
The order of the discretization.
std::optional< input::CoefficientInputOptions > initial_displacement
The initial displacement.
std::optional< input::CoefficientInputOptions > initial_velocity
The initial velocity.
std::unordered_map< std::string, input::BoundaryConditionInputOptions > boundary_conditions
Boundary condition information.
static void defineInputFileSchema(axom::inlet::Container &container)
Input file parameters specific to this class.
LinearSolverOptions lin_solver_options
The linear solver options.
std::vector< var_solid_material_t > materials
The material options.
TimesteppingOptions timestepping_options
The timestepping options.
A timestep and boundary condition enforcement method for a dynamic solver.