Smith  0.1
Smith is an implicit thermal structural mechanics simulation code.
heat_transfer_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_thermal_material_t> materials;
69 
74  std::optional<input::CoefficientInputOptions> source_coef;
75 
79  std::unordered_map<std::string, input::BoundaryConditionInputOptions> boundary_conditions;
80 
87  std::optional<input::CoefficientInputOptions> initial_temperature;
88 };
89 
90 } // namespace smith
91 
97 template <>
98 struct FromInlet<smith::HeatTransferInputOptions> {
100  smith::HeatTransferInputOptions operator()(const axom::inlet::Container& base);
101 };
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 enumerations and record types for physics solver configuration.
Stores all information held in the input file that is used to configure the solver.
std::optional< input::CoefficientInputOptions > source_coef
Source function coefficient.
std::optional< input::CoefficientInputOptions > initial_temperature
The initial temperature field.
int order
The order of the discretized field.
LinearSolverOptions lin_solver_options
The linear solver options.
std::vector< var_thermal_material_t > materials
The material options.
TimesteppingOptions timestepping_options
The timestepping options.
std::unordered_map< std::string, input::BoundaryConditionInputOptions > boundary_conditions
The boundary condition information.
static void defineInputFileSchema(axom::inlet::Container &container)
Input file parameters specific to this class.
NonlinearSolverOptions nonlin_solver_options
The linear solver options.
Parameters for an iterative linear solution scheme.
Nonlinear solution scheme parameters.
A timestep and boundary condition enforcement method for a dynamic solver.
This file contains functions for reading a material from input files.