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)
macro to convert (template) parameter to JPropertiesElement object 
 
double gainSpread
gain spread [unit] 
 
esac print_variable DETECTOR INPUT_FILE OUTPUT_FILE CDF for TYPE in
 
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] 
 
Data structure for PMT parameters. 
 
double saturation
saturation [ns] 
 
double QE
relative quantum efficiency 
 
Auxiliary class to temporarily modify format specifications. 
 
double slope
slope [ns/npe]