PandaRoot
PndEmcAsicPulseshape.h
Go to the documentation of this file.
1
//****************************************************************************
2
//* This file is part of PandaRoot. *
3
//* *
4
//* PandaRoot is distributed under the terms of the *
5
//* GNU General Public License (GPL) version 3, *
6
//* copied verbatim in the file "LICENSE". *
7
//* *
8
//* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9
//* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10
//* The authors are listed in the file "AUTHORS". *
11
//****************************************************************************
12
13
//-----------------------------------------------------------
14
// Description:
15
// Pulseshape from an APFEL ASIC preamplifier shaper
16
// Circuit is described in EMC TDR and consists of charge-sensitive preamplifier,
17
// with the following pole-zero cancelation of its feedback ad 3rd order integrator.
18
// The pulseshape is determined by the integration time of single intagrator stage
19
// and scintillation time of the crystal, with exponential input convoluted with
20
// response of the circuit
21
//
22
//-----------------------------------------------------------
23
//#pragma once
24
#ifndef PNDEMCASICPULSESHAPE_H
25
#define PNDEMCASICPULSESHAPE_H
26
27
// Base Class Headers ----------------
28
#include "
PndEmcAbsPulseshape.h
"
29
30
// Collaborating Class Headers -------
31
//#include <ostream>
32
43
class
PndEmcAsicPulseshape
:
public
PndEmcAbsPulseshape
{
44
public
:
45
// Constructors/Destructors ---------
46
PndEmcAsicPulseshape
();
47
PndEmcAsicPulseshape
(
double
Tint,
double
Tsig);
48
virtual
~PndEmcAsicPulseshape
() { ; }
49
50
// Operators
51
52
// Accessors -----------------------
53
54
// Modifiers -----------------------
55
56
// Operations ----------------------
57
virtual
double
operator()
(
const
double
t,
const
double
amp,
const
double
toffset)
const
;
58
59
private
:
60
// Private Data Members ------------
61
double
fTint;
62
double
fTsig;
63
64
// Private Methods -----------------
65
66
double
general_solution(
const
double
t,
const
double
amp,
const
double
toffset)
const
;
67
double
degenerate_solution(
const
double
t,
// for Tdif=Tint
68
const
double
amp,
const
double
toffset)
const
;
69
70
ClassDef(
PndEmcAsicPulseshape
, 1)
71
};
72
73
#endif
PndEmcAsicPulseshape::PndEmcAsicPulseshape
PndEmcAsicPulseshape()
PndEmcAsicPulseshape::operator()
virtual double operator()(const double t, const double amp, const double toffset) const
PndEmcAsicPulseshape
Pulseshape from an APFEL ASIC preamplifier shaper.
Definition:
PndEmcAsicPulseshape.h:43
PndEmcAbsPulseshape
pulseshape interface
Definition:
PndEmcAbsPulseshape.h:37
PndEmcAbsPulseshape.h
PndEmcAsicPulseshape::~PndEmcAsicPulseshape
virtual ~PndEmcAsicPulseshape()
Definition:
PndEmcAsicPulseshape.h:48
home
gitlab-runner
builds
Vxspf1vo
0
PandaRootGroup
PandaRoot
detectors
emc
EmcDigi
PndEmcAsicPulseshape.h
Generated on Fri Nov 22 2024 06:04:41 for PandaRoot by
1.8.13