BELFEM
0.9.3
Berkeley Lab Finite Element Framework
Toggle main menu visibility
Loading...
Searching...
No Matches
cl_Material_Indium.hpp
Go to the documentation of this file.
1
/*
2
* BELFEM -- The Berkeley Lab Finite Element Framework
3
* Copyright (c) 2026, The Regents of the University of California,
4
* through Lawrence Berkeley National Laboratory (subject to receipt of any required
5
* approvals from the U.S. Dept. of Energy). All rights reserved.
6
*
7
* Developers: Christian Messe, Gregory Giard
8
*
9
* See the top-level LICENSE file for the complete license and disclaimer.
10
*/
11
12
#ifndef BELFEM_CL_MATERIAL_INDIUM_HPP
13
#define BELFEM_CL_MATERIAL_INDIUM_HPP
14
15
16
#include "
cl_Material_Metal.hpp
"
17
#include "
cl_Bezier.hpp
"
18
#include "
fn_polyval.hpp
"
19
20
namespace
belfem
21
{
22
namespace
material
23
{
24
class
Indium
:
public
Metal
25
{
26
Bezier
* mThermalExpansion = nullptr ;
27
Vector< real >
mThermalExpansionCryo ;
28
29
Vector< real >
mTDebyeSwitch ;
30
Cell< Vector< real >
> mDebyePolys ;
31
Bezier
* mDebyeBezier = nullptr ;
32
33
Vector< real >
mBSKohlerSwitch ;
34
35
Bezier
* mKohlerLongBezier = nullptr ;
36
Cell< Vector< real >
> mKohlerLongPolys ;
37
Cell< Vector< real >
> mKohlerTransCoeffs ;
38
39
public
:
40
41
Indium
(
const
real
RRR
=
BELFEM_QUIET_NAN
,
42
const
bool
aBuildTables =
true
);
43
44
~Indium
()
override
;
45
46
protected
:
47
48
real
49
alpha_custom
(
const
real
T )
const override
;
50
51
real
52
debye_custom
(
const
real
T )
const override
;
53
54
real
55
kohler
(
const
real
B,
const
real
S,
const
real
beta)
const override
;
56
57
private
:
58
59
void
60
set_constants();
61
62
void
63
create_alpha();
64
65
void
66
create_cp();
67
68
void
69
create_debye();
70
71
void
72
create_lambda();
73
74
void
75
create_kohler();
76
};
77
78
}
79
}
80
81
#endif
//BELFEM_CL_MATERIAL_INDIUM_HPP
cl_Bezier.hpp
cl_Material_Metal.hpp
belfem::Bezier
Definition
cl_Bezier.hpp:30
belfem::Cell
A bounds-checked wrapper around std::vector.
Definition
cl_Cell.hpp:45
belfem::Vector< real >
belfem::material::Indium::Indium
Indium(const real RRR=BELFEM_QUIET_NAN, const bool aBuildTables=true)
Definition
cl_Material_Indium.cpp:20
belfem::material::Indium::debye_custom
real debye_custom(const real T) const override
Definition
cl_Material_Indium.cpp:164
belfem::material::Indium::alpha_custom
real alpha_custom(const real T) const override
Definition
cl_Material_Indium.cpp:110
belfem::material::Indium::kohler
real kohler(const real B, const real S, const real beta) const override
Kohler function for magnetoresistance.
Definition
cl_Material_Indium.cpp:252
belfem::material::Metal::Metal
Metal(const string &aLabel, const MaterialType aType, const bool aBuildTables=true)
Constructor.
Definition
cl_Material_Metal.cpp:34
fn_polyval.hpp
Evaluates a polynomial.
belfem::material
Definition
cl_BhCurve.cpp:19
belfem
USER GUIDES:
Definition
cl_Capacitor.cpp:16
belfem::MaterialProperty::RRR
@ RRR
Definition
cl_Material.hpp:182
belfem::real
double real
Definition
typedefs.hpp:36
BELFEM_QUIET_NAN
#define BELFEM_QUIET_NAN
Definition
typedefs.hpp:86
src
physics
materials
cl_Material_Indium.hpp
Generated by
1.18.0