1 #ifndef __JDETECTOR__JPMTPARAMETERS__
2 #define __JDETECTOR__JPMTPARAMETERS__
18 namespace JDETECTOR {}
19 namespace JPP {
using namespace JDETECTOR; }
135 if (this->
QE < 0.0 ||
156 return in >>
object.QE
159 >>
object.riseTime_ns
176 out <<
FIXED(5,3) <<
object.QE <<
' '
177 <<
FIXED(5,3) <<
object.gain <<
' '
178 <<
FIXED(5,3) <<
object.gainSpread <<
' '
179 <<
FIXED(5,2) <<
object.riseTime_ns <<
' '
180 <<
FIXED(5,2) <<
object.TTS_ns <<
' '
181 <<
FIXED(5,3) <<
object.threshold;
261 template<
class JPMTParameters_t>
friend std::istream & operator>>(std::istream &in, JPMTParameters &object)
Stream input of PMT parameters.
void setPMTParameters(const JPMTParameters ¶meters)
Set PMT parameters.
static void setEquationParameters(const JEquationParameters &equation)
Set equation parameters.
#define gmake_property(A)
macros to convert (template) parameter to JPropertiesElement object
double gainSpread
gain spread [unit]
Utility class to parse parameter values.
const JPMTParameters & getPMTParameters() const
Get PMT 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).
Auxiliary class for I/O of PMT parameters.
double threshold
threshold [npe]
Auxiliary data structure for floating point format specification.
JProperties getProperties(const JEquationParameters &equation=JPMTParameters::getEquationParameters())
Get properties of this class.
double PunderAmplified
probability of underamplified hit
Utility class to parse parameter values.
double thresholdBand
threshold-band [npe]
double riseTime_ns
rise time of analogue pulse [ns]
bool slewing
time slewing of analogue signal
JPMTParameters(const double QE, const double gain, const double gainSpread, const double riseTime_ns, const double TTS_ns, const double threshold, const double PunderAmplified, const double thresholdBand, const double mean_ns, const double sigma_ns, const double slope, const double saturation, const bool slewing=true)
Constructor.
I/O formatting auxiliaries.
double mean_ns
mean time-over-threshold of threshold-band hits [ns]
JPMTParametersHelper(JPMTParameters_t &object, const JEquationParameters &equation)
Constructor.
double sigma_ns
time-over-threshold standard deviation of threshold-band hits [ns]
JPMTParameters()
Default constructor.
JProperties getProperties(const JEquationParameters &equation=JPMTParameters::getEquationParameters()) const
Get properties of this class.
friend std::ostream & operator<<(std::ostream &out, const JPMTParameters &object)
Stream output of PMT parameters.
bool is_valid() const
Check validity of PMT parameters.
static JEquationParameters & getEquationParameters()
Get equation parameters.
double TTS_ns
transition time spread [ns]
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
Data structure for PMT parameters.
double saturation
saturation [ns]
double QE
relative quantum efficiency
double slope
slope [ns/npe]