12#ifndef BELFEM_CL_JCFUNCTION_HPP
13#define BELFEM_CL_JCFUNCTION_HPP
bool test(const index_t aIndex) const
test if a bit is set
Definition cl_Bitset.hpp:138
index_t count() const
count the number of true bits
Definition cl_Bitset.hpp:149
Bitset()=default
trivial constructor
virtual real deval_dB(const real normB, const real angle, const real T) const
Derivative of eval with respect to the field magnitude.
Definition cl_JcFunction.cpp:52
virtual real min_value() const
Smallest value this function can return, when known.
Definition cl_JcFunction.hpp:173
virtual real eval(const real normB, const real angle) const
Evaluate with field and angle dependence.
Definition cl_JcFunction.cpp:26
virtual real deval_dbeta(const real normB, const real angle, const real T) const
Derivative of eval with respect to the field angle.
Definition cl_JcFunction.cpp:62
void set_dependency(const JcParameter aParameter)
Mark function as depending on a parameter.
Definition cl_JcFunction.cpp:20
bool is_constant() const
Check if function is constant (no dependencies).
Definition cl_JcFunction.hpp:287
JcDependency mDependency
Definition cl_JcFunction.hpp:141
virtual ~JcFunction()=default
Virtual destructor.
bool depends_on(const JcParameter aParameter) const
Check if function depends on a parameter.
Definition cl_JcFunction.hpp:281
virtual real deval_dT(const real normB, const real angle, const real T) const
Derivative of eval with respect to temperature.
Definition cl_JcFunction.cpp:72
JcFunction()=default
Default constructor.
Definition cl_BhCurve.cpp:19
JcParameter
Parameters that Jc (or n) can depend on.
Definition cl_JcFunction.hpp:80
@ UNDEFINED
Definition cl_JcFunction.hpp:84
@ angleNxB
Definition cl_JcFunction.hpp:82
Bitset< static_cast< uint >(JcParameter::UNDEFINED) > JcDependency
Bitset for tracking Jc function dependencies.
Definition cl_JcFunction.hpp:90
USER GUIDES:
Definition cl_Capacitor.cpp:16
unsigned int uint
Definition typedefs.hpp:30
double real
Definition typedefs.hpp:36
#define BELFEM_QUIET_NAN
Definition typedefs.hpp:87