Serac  0.1
Serac is an implicit thermal strucural mechanics simulation code.
thermal_material_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 
13 #pragma once
14 
15 #include <string>
16 #include <variant>
17 #include <vector>
18 
21 
22 namespace serac {
23 
25 using var_thermal_material_t = std::variant<heat_transfer::LinearIsotropicConductor, heat_transfer::LinearConductor<2>,
27 
35  static void defineInputFileSchema(axom::inlet::Container& container);
36 };
37 
38 } // namespace serac
39 
45 template <>
46 struct FromInlet<std::vector<std::vector<double>>> {
48  std::vector<std::vector<double>> operator()(const axom::inlet::Container& base);
49 };
50 
56 template <>
57 struct FromInlet<serac::var_thermal_material_t> {
59  serac::var_thermal_material_t operator()(const axom::inlet::Container& base);
60 };
This file contains the all the necessary functions for reading input files.
Accelerator functionality.
Definition: serac.cpp:36
std::variant< heat_transfer::LinearIsotropicConductor, heat_transfer::LinearConductor< 2 >, heat_transfer::LinearConductor< 3 > > var_thermal_material_t
Holds all possible heat transfer materials that can be utilized in our Input Deck.
Contains function that defines the schema for heat transfer materials.
static void defineInputFileSchema(axom::inlet::Container &container)
Input file parameters specific to this class.
Linear anisotropic thermal material model.
The material and load types for the thermal functional physics module.