Serac  0.1
Serac is an implicit thermal strucural 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 Serac 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 "serac/numerics/odes.hpp"
25 
26 namespace serac {
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 serac
92 
98 template <>
99 struct FromInlet<serac::SolidMechanicsInputOptions> {
101  serac::SolidMechanicsInputOptions operator()(const axom::inlet::Container& base);
102 };
This file contains the all the necessary functions for reading input files.
Accelerator functionality.
Definition: serac.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.
std::optional< input::CoefficientInputOptions > initial_displacement
The initial displacement.
static void defineInputFileSchema(axom::inlet::Container &container)
Input file parameters specific to this class.
NonlinearSolverOptions nonlin_solver_options
The linear solver options.
int order
The order of the discretization.
std::vector< var_solid_material_t > materials
The material options.
std::unordered_map< std::string, input::BoundaryConditionInputOptions > boundary_conditions
Boundary condition information.
TimesteppingOptions timestepping_options
The timestepping options.
std::optional< input::CoefficientInputOptions > initial_velocity
The initial velocity.
LinearSolverOptions lin_solver_options
The linear solver options.
A timestep and boundary condition enforcement method for a dynamic solver.