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) 2019-2024, 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>
18 
19 namespace serac {
20 
22 using var_thermal_material_t = std::variant<heat_transfer::LinearIsotropicConductor, heat_transfer::LinearConductor<2>,
24 
32  static void defineInputFileSchema(axom::inlet::Container& container);
33 };
34 
35 } // namespace serac
36 
42 template <>
43 struct FromInlet<std::vector<std::vector<double>>> {
45  std::vector<std::vector<double>> operator()(const axom::inlet::Container& base);
46 };
47 
53 template <>
54 struct FromInlet<serac::var_thermal_material_t> {
56  serac::var_thermal_material_t operator()(const axom::inlet::Container& base);
57 };
This file contains the all the necessary functions for reading input files.
Accelerator functionality.
Definition: serac.cpp:38
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.