1 #ifndef __JOSCPROB__JOSCPARAMETERSINTERFACE__
2 #define __JOSCPROB__JOSCPARAMETERSINTERFACE__
23 namespace JPP {
using namespace JOSCPROB; }
93 template<
class ...Args>
98 set(name, value, args...);
113 JProperties::iterator i = properties.find(name);
115 if (i != properties.end()) {
122 "template<class T> JOscParametersInterface<T>::set(const std::string&, const T&): " <<
123 "Invalid oscillation parameter name " << name <<
"; Valid options:\n" <<
JLANG::get_keys(properties));
135 template<
class ...Args>
198 virtual unsigned int size()
const
273 for (JProperties::iterator i = properties.begin(); i != properties.end(); ++i) {
278 if ((in >> is_defined >> value) && is_defined) {
300 for (JProperties::const_iterator i = properties.cbegin(); i != properties.cend(); ++i) {
342 return JOscParametersHelper(*
this, equation);
353 return JOscParametersHelper(*
this, equation);
395 template<
class JOscParameters_t>
Interface for binary output.
virtual unsigned int size() const
Get size of this oscillation parameters set.
#define gmake_property(A)
macro to convert (template) parameter to JPropertiesElement object
JParameter_t sinsqTh12
Squared sine of the PMNS mixing angle between the first and second neutrino mass eigenstates [-]...
JOscParametersInterface(const T &dM21sq, const T &dM31sq, const T &deltaCP, const T &sinsqTh12, const T &sinsqTh13, const T &sinsqTh23)
Constructor.
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
then echo Enter input within $TIMEOUT_S seconds echo n User name
JParameter_t dM21sq
Squared mass difference between the first and second neutrino mass eigenstates [eV2].
Utility class to parse parameter values.
JReader & read(JReader &in) override
Binary stream input of oscillation parameters.
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
Simple data structure to support I/O of equations (see class JLANG::JEquation).
void set(const std::string &name, const T &value, const Args &...args)
Set value for given list of oscillation parameters.
JParameter_t sinsqTh13
Squared sine of the PMNS mixing angle between the first and third neutrino mass eigenstates [-]...
const JOscParameters_t & getOscParameters() const
Get oscillation parameters.
Auxiliary class for I/O of oscillation parameters.
Utility class to parse parameter values.
const bool isDefined() const
Get status of parameter.
virtual bool is_valid() const =0
Check validity of oscillation parameters.
Forward declaration of binary output.
JProperties getProperties(const JEquationParameters &equation=JOscParameters_t::getEquationParameters())
Get properties of this class.
const T & getValue(const std::string &key) const
Get value.
JWriter & write(JWriter &out) const override
Binary stream output of oscillation parameters.
I/O formatting auxiliaries.
static void setEquationParameters(const JEquationParameters &equation)
Set equation parameters.
friend std::istream & operator>>(std::istream &in, JOscParameters_t ¶meters)
Stream input of oscillation parameters.
JParameter< T > JParameter_t
do set_variable OUTPUT_DIRECTORY $WORKDIR T
void setValue(const argument_type &value)
Set value.
JOscParametersInterface(const std::string &name, const T &value, const Args &...args)
Constructor.
JParameter_t dM31sq
Squared mass difference between the first and third neutrino mass eigenstates [eV2].
Interface for binary input.
JOscParametersInterface()
Default constructor.
JOscParametersHelper(JOscParameters_t ¶meters, const JEquationParameters &equation)
Constructor.
Auxiliary methods to convert data members or return values of member methods of a set of objects to a...
JClass< T >::argument_type argument_type
JOscParameters_t & join(const JOscParameters_t ¶meters)
Join the given oscillation parameters with these oscillation parameters.
virtual bool contains(const JOscParameters_t ¶meters) const
Check if this oscillations parameter set contains the given oscillation parameters.
void setValue(const std::string &key, const T &value)
Set value.
void setOscParameters(const JOscParameters_t ¶meters)
Set oscillation parameters.
static JEquationParameters & getEquationParameters()
Get equation parameters.
void set(const std::string &name, const T &value)
Set value for a given oscillation parameter.
JParameter_t sinsqTh23
Squared sine of the PMNS mixing angle between the second and third neutrino mass eigenstates [-]...
Abstract base class for sets of oscillation parameters.
JProperties getProperties(const JEquationParameters &equation=JOscParameters_t::getEquationParameters()) const
Get properties of this class.
const T & getValue() const
Get value of parameter.
friend std::ostream & operator<<(std::ostream &out, const JOscParameters_t ¶meters)
Stream output of oscillation parameters.
Exception for accessing a value in a collection that is outside of its range.
JParameter_t::argument_type argument_type
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
JParameter_t deltaCP
PMNS phase angle [pi * rad].
const array_type< JKey_t > & get_keys(const std::map< JKey_t, JValue_t, JComparator_t, JAllocator_t > &data)
Method to create array of keys of map.
JOscParametersInterface< T > JOscParameters_t
void setProperties(const JProperties &properties)
Set properties of this class.