BELFEM
0.9.3
Berkeley Lab Finite Element Framework
Toggle main menu visibility
Loading...
Searching...
No Matches
cl_Material_YBCO.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_YBCO_HPP
13
#define BELFEM_CL_MATERIAL_YBCO_HPP
14
15
#include "
cl_Material_Metal.hpp
"
16
#include "
cl_Bezier.hpp
"
17
18
namespace
belfem
19
{
20
namespace
material
21
{
22
//------------------------------------------------------------------------------
23
52
class
YBCO
:
public
Metal
53
{
54
// Reference values for scaling normalized curves
55
Vector< real >
mReferenceValues ;
56
Vector< real >
mCallawayModel ;
57
58
// Young's modulus (Bezier for low T, polynomial for high T)
59
Bezier
* mYoungBezier = nullptr ;
60
Vector< real >
mYoungPoly ;
61
62
// Poisson's ratio (piecewise polynomials)
63
Cell< Vector< real >
> mPoissionPolys ;
64
65
// Thermal expansion (polynomial with constant tail)
69
real
mTAlphaPlateau ;
70
Vector< real >
mAlphaPoly ;
71
Vector< real >
mThermalExpansionCryo ;
72
73
// Specific heat (4 piecewise regions in log-log space)
74
Vector< real >
mTCpSwitch ;
75
Cell< Vector< real >
> mCpPolys ;
76
77
public
:
78
90
YBCO
();
91
93
~YBCO
()
override
;
94
103
real
104
test_callaway
(
const
real
T ,
const
Vector< real >
& aParams );
105
106
protected
:
107
113
real
114
E_custom
(
const
real
T )
const override
;
115
121
real
122
nu_custom
(
const
real
T )
const override
;
123
129
real
130
alpha_custom
(
const
real
T)
const override
;
131
137
real
138
cp_custom
(
const
real
T)
const override
;
139
152
real
153
lambda_custom
(
const
real
T)
const override
;
154
155
private
:
156
162
void
163
set_young(
const
real
aEref,
const
real
aTref );
164
170
void
171
set_poisson(
const
real
aNuref,
const
real
aTref );
172
178
void
179
create_mech();
180
186
void
187
create_expansion();
188
189
void
190
create_expansion_cryo();
191
197
void
198
create_cp();
199
};
200
201
}
202
}
203
204
#endif
//BELFEM_CL_MATERIAL_YBCO_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::Metal::Metal
Metal(const string &aLabel, const MaterialType aType, const bool aBuildTables=true)
Constructor.
Definition
cl_Material_Metal.cpp:34
belfem::material::YBCO::alpha_custom
real alpha_custom(const real T) const override
Thermal expansion coefficient (custom evaluation).
Definition
cl_Material_YBCO.cpp:295
belfem::material::YBCO::lambda_custom
real lambda_custom(const real T) const override
Thermal conductivity using Callaway model.
Definition
cl_Material_YBCO.cpp:475
belfem::material::YBCO::test_callaway
real test_callaway(const real T, const Vector< real > &aParams)
Test function for Callaway model parameter fitting.
Definition
cl_Material_YBCO.cpp:405
belfem::material::YBCO::cp_custom
real cp_custom(const real T) const override
Specific heat capacity (custom evaluation).
Definition
cl_Material_YBCO.cpp:394
belfem::material::YBCO::E_custom
real E_custom(const real T) const override
Young's modulus (custom evaluation).
Definition
cl_Material_YBCO.cpp:216
belfem::material::YBCO::YBCO
YBCO()
Constructor - initializes YBCO with typical properties.
Definition
cl_Material_YBCO.cpp:54
belfem::material::YBCO::nu_custom
real nu_custom(const real T) const override
Poisson's ratio (custom evaluation).
Definition
cl_Material_YBCO.cpp:231
belfem::material
Definition
cl_BhCurve.cpp:19
belfem
USER GUIDES:
Definition
cl_Capacitor.cpp:16
belfem::real
double real
Definition
typedefs.hpp:36
src
physics
materials
cl_Material_YBCO.hpp
Generated by
1.18.0