BOSS 7.0.8
BESIII Offline Software System
Loading...
Searching...
No Matches
DifArray.h
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2// File and Version Information:
3// $Id: DifArray.h,v 1.4 2010/03/25 09:55:57 zhangy Exp $
4//
5// Description:
6// Class Header for |DifArray|
7// What i do ?
8//
9// Environment:
10// Software developed for the BaBar Detector at the SLAC B-Factory.
11//
12// Author List:
13// A. Snyder
14//
15// Copyright Information:
16// Copyright (C) 1996 SLAC
17//
18// History:
19// Migration for BESIII MDC
20// Zhang Yao([email protected]) Upgrade to CLHEP2.0.4.5 2010-03-25
21//
22//------------------------------------------------------------------------
23
24#ifndef DIFARRAY_H
25#define DIFARRAY_H
26
27#include "CLHEP/Matrix/Matrix.h"
28#include "CLHEP/Matrix/Vector.h"
29#include <assert.h>
30#include <stdlib.h>
31
32using namespace CLHEP;
33
34class DifNumber;
35
36class DifArray {
37
38public:
39 DifArray(int n,int npar=0); // make an array of n elements
40 DifArray // copy from a vector
41 (const HepVector& v,int npar=0);
42 DifArray(const DifArray& a); // make a copy
43 ~DifArray(); // destroy array
44 DifNumber& operator[](int i); // subscripting (elem=i)
45 DifNumber& operator()(int i); // subscripting (elem=i-1)
46 DifNumber fetch(int i)const; // fetch elem=i
47 int nElem()const {return _nElem;} // number of elements
48 DifArray& operator=(const DifArray&); // assignment operator
49 HepMatrix jacobian()const; // return matrix of derivatives
50 void zero(int npar=0); // zero this array
51 void print()const; // print this array
52
53private:
54
55 //data
56 int _nElem; // number of elements
57 DifNumber* _pointer; // pointer to data
58
59 //private functions
60 void copy(const DifArray& a); // copy a to *this
61 void copy(const HepVector& a,int npar=0); //copy a clhep vector
62
63
64};
65
66#endif
const Int_t n
const DifNumber zero
**********Class see also m_nmax DOUBLE PRECISION m_amel DOUBLE PRECISION m_x2 DOUBLE PRECISION m_alfinv DOUBLE PRECISION m_Xenph INTEGER m_KeyWtm INTEGER m_idyfs DOUBLE PRECISION m_zini DOUBLE PRECISION m_q2 DOUBLE PRECISION m_Wt_KF DOUBLE PRECISION m_WtCut INTEGER m_KFfin *COMMON c_KarLud $ !Input CMS energy[GeV] $ !CMS energy after beam spread beam strahlung[GeV] $ !Beam energy spread[GeV] $ !z boost due to beam spread $ !electron beam mass *ff pair spectrum $ !minimum v
Definition: KarLud.h:35
DifArray & operator=(const DifArray &)
Definition: DifArray.cxx:67
void print() const
Definition: DifArray.cxx:104
int nElem() const
Definition: DifArray.h:47
~DifArray()
Definition: DifArray.cxx:45
DifNumber & operator[](int i)
Definition: DifArray.cxx:47
DifNumber fetch(int i) const
Definition: DifArray.cxx:60
HepMatrix jacobian() const
Definition: DifArray.cxx:72
DifNumber & operator()(int i)
Definition: DifArray.cxx:53