![Logo](alamo3.svg) |
Alamo
|
Go to the documentation of this file. 1 #ifndef MODEL_INTERFACE_GB_SH_H
2 #define MODEL_INTERFACE_GB_SH_H
38 static constexpr
const char*
name =
"sh";
43 SH(
const amrex::Real a_theta0,
const amrex::Real a_phi0,
const amrex::Real a_sigma0,
const amrex::Real a_sigma1)
45 Define(a_theta0,a_phi0,a_sigma0,a_sigma1);
47 void Define(
const amrex::Real a_theta0,
const amrex::Real a_phi0,
const amrex::Real a_sigma0,
const amrex::Real a_sigma1)
62 return sigma0 +
sigma1*(1.0 - (cos(2*(a_phi))*cos(2*(a_phi)) * sin(2*(a_theta))*sin(2*(a_theta))));
66 return {-
sigma1 * 4.0 * cos(2*a_phi) * cos(2*a_phi) * sin(2*a_theta) * cos(2*a_theta),
67 +
sigma1 * 4.0 * sin(2*a_phi) * cos(2*a_phi) * sin(2*a_theta) * sin(2*a_theta)} ;
80 return (
W(a_n + alpha*t_n) -
W(a_n - alpha*t_n)) / 2.0 / alpha;
85 return (
W(a_n + alpha*t_n) - 2.0*
W(a_n) +
W(a_n - alpha*t_n)) / alpha / alpha;
97 static void Parse(
SH & value, amrex::ParmParse & pp)
100 value.
theta0 *= 0.01745329251;
102 value.
phi0 *= 0.01745329251;
106 std::string reg_str =
"wilhelm";
108 if (reg_str ==
"wilhelm") value.
regularization = Regularization::Wilhelm;
109 else if (reg_str ==
"k23") value.
regularization = Regularization::K23;
SH(const amrex::Real a_theta0, const amrex::Real a_phi0, const amrex::Real a_sigma0, const amrex::Real a_sigma1)
void Define(const amrex::Real a_theta0, const amrex::Real a_phi0, const amrex::Real a_sigma0, const amrex::Real a_sigma1)
virtual Set::Scalar DW(const Set::Vector &a_n, const Set::Vector &t_n) const override
Regularization regularization
static void Parse(SH &value, amrex::ParmParse &pp)
Set::Scalar W(const Set::Scalar) const override
SH(IO::ParmParse &pp, std::string name)
Set::Scalar W(const Set::Scalar a_theta, const Set::Scalar a_phi) const
Eigen::Matrix< amrex::Real, AMREX_SPACEDIM, 1 > Vector
#define pp_queryclass(...)
Set::Scalar DDW(const Set::Scalar) const override
std::array< Set::Scalar, 2 > DW(const Set::Scalar a_theta, const Set::Scalar a_phi) const
virtual Set::Scalar W(const Set::Vector &a_n) const override
static constexpr const char * name
void Abort(const char *msg)
Set::Scalar DW(const Set::Scalar) const override
static const Set::Scalar Pi
virtual Set::Scalar DDW(const Set::Vector &a_n, const Set::Vector &t_n) const override