CGEM BOSS 6.6.5.g
BESIII Offline Software System
Loading...
Searching...
No Matches
EvtSLPoleFF Class Reference

#include <EvtSLPoleFF.hh>

+ Inheritance diagram for EvtSLPoleFF:

Public Member Functions

 EvtSLPoleFF (int numarg, double *arglist)
 
void getscalarff (EvtId parent, EvtId daught, double t, double mass, double *fpf, double *f0f)
 
void getvectorff (EvtId parent, EvtId daught, double t, double mass, double *a1f, double *a2f, double *vf, double *a0f)
 
void gettensorff (EvtId parent, EvtId daught, double t, double mass, double *hf, double *kf, double *bp, double *bm)
 
- Public Member Functions inherited from EvtSemiLeptonicFF
virtual void getscalarff (EvtId parent, EvtId daught, double t, double mass, double *fpf, double *fmf)
 
virtual void getvectorff (EvtId parent, EvtId daught, double t, double mass, double *a1f, double *a2f, double *vf, double *a0f)
 
virtual void gettensorff (EvtId parent, EvtId daught, double t, double mass, double *a1f, double *a2f, double *vf, double *a0f)
 
virtual void getbaryonff (EvtId parent, EvtId daught, double t, double m_meson, double *f1v, double *f1a, double *f2v, double *f2a)
 

Detailed Description

Definition at line 27 of file EvtSLPoleFF.hh.

Constructor & Destructor Documentation

◆ EvtSLPoleFF()

EvtSLPoleFF::EvtSLPoleFF ( int  numarg,
double *  arglist 
)

Definition at line 30 of file EvtSLPoleFF.cc.

30 {
31 numSLPoleargs = numarg;
32 for (int i=0; i<numarg; i++) {
33 SLPoleargs[i] = arglist[i]; }
34
35 return;
36}

Member Function Documentation

◆ getscalarff()

void EvtSLPoleFF::getscalarff ( EvtId  parent,
EvtId  daught,
double  t,
double  mass,
double *  fpf,
double *  f0f 
)
virtual

Reimplemented from EvtSemiLeptonicFF.

Definition at line 39 of file EvtSLPoleFF.cc.

41 {
42
43// Form factors have a general form, with parameters passed in
44// from the arguements.
45
46 if ( numSLPoleargs !=8 ) {
47 report(ERROR,"EvtGen") << "Problem in EvtSLPoleFF::getscalarff\n";
48 report(ERROR,"EvtGen") << "wrong number of arguements!!!\n";
49 }
50
51 double mb=EvtPDL::getMeanMass(parent);
52 double mb2 = mb*mb;
53
54 double f0,af,bf,powf;
55
56 f0 = SLPoleargs[0];
57 af = SLPoleargs[1];
58 bf = SLPoleargs[2];
59 powf = SLPoleargs[3];
60 *fpf = f0/(pow( 1.0 + (af*t/mb2) + (bf*((t/mb2)*(t/mb2))),powf));
61
62 f0 = SLPoleargs[4];
63 af = SLPoleargs[5];
64 bf = SLPoleargs[6];
65 powf = SLPoleargs[7];
66
67 *f0f = f0/(pow( 1.0 + (af*t/mb2) + (bf*((t/mb2)*(t/mb2))),powf));
68
69 return;
70}
ostream & report(Severity severity, const char *facility)
Definition: EvtReport.cc:36
@ ERROR
Definition: EvtReport.hh:49
static double getMeanMass(EvtId i)
Definition: EvtPDL.hh:45
int t()
Definition: t.c:1

◆ gettensorff()

void EvtSLPoleFF::gettensorff ( EvtId  parent,
EvtId  daught,
double  t,
double  mass,
double *  hf,
double *  kf,
double *  bp,
double *  bm 
)
virtual

Reimplemented from EvtSemiLeptonicFF.

Definition at line 118 of file EvtSLPoleFF.cc.

120 {
121
122 if ( numSLPoleargs !=16 ) {
123 report(ERROR,"EvtGen") << "Problem in EvtSLPoleFF::gettensorff\n";
124 report(ERROR,"EvtGen") << "wrong number of arguements!!!\n";
125 }
126
127 double mb=EvtPDL::getMeanMass(parent);
128 double mb2 = mb*mb;
129
130 double f0,af,bf,powf;
131
132 f0 = SLPoleargs[0];
133 af = SLPoleargs[1];
134 bf = SLPoleargs[2];
135 powf = SLPoleargs[3];
136 *hf = f0/(pow( 1.0 + (af*t/mb2) + (bf*((t/mb2)*(t/mb2))),powf));
137
138 f0 = SLPoleargs[4];
139 af = SLPoleargs[5];
140 bf = SLPoleargs[6];
141 powf = SLPoleargs[7];
142
143 *kf = f0/(pow( 1.0 + (af*t/mb2) + (bf*((t/mb2)*(t/mb2))),powf));
144
145 f0 = SLPoleargs[8];
146 af = SLPoleargs[9];
147 bf = SLPoleargs[10];
148 powf = SLPoleargs[11];
149
150 *bpf = f0/(pow( 1.0 + (af*t/mb2) + (bf*((t/mb2)*(t/mb2))),powf));
151
152 f0 = SLPoleargs[12];
153 af = SLPoleargs[13];
154 bf = SLPoleargs[14];
155 powf = SLPoleargs[15];
156
157 *bmf = f0/(pow( 1.0 + (af*t/mb2) + (bf*((t/mb2)*(t/mb2))),powf));
158 return;
159 }

◆ getvectorff()

void EvtSLPoleFF::getvectorff ( EvtId  parent,
EvtId  daught,
double  t,
double  mass,
double *  a1f,
double *  a2f,
double *  vf,
double *  a0f 
)
virtual

Reimplemented from EvtSemiLeptonicFF.

Definition at line 72 of file EvtSLPoleFF.cc.

74 {
75
76 if ( numSLPoleargs !=16 ) {
77 report(ERROR,"EvtGen") << "Problem in EvtSLPoleFF::getvectorff\n";
78 report(ERROR,"EvtGen") << "wrong number of arguements!!!\n";
79 report(ERROR,"EvtGen") << numSLPoleargs<<"\n";
80 }
81
82 double mb=EvtPDL::getMeanMass(parent);
83 double mb2 = mb*mb;
84
85 double f0,af,bf,powf;
86
87 f0 = SLPoleargs[0];
88 af = SLPoleargs[1];
89 bf = SLPoleargs[2];
90 powf = SLPoleargs[3];
91 *a1f = f0/(pow( 1.0 + (af*t/mb2) + (bf*((t/mb2)*(t/mb2))),powf));
92
93 f0 = SLPoleargs[4];
94 af = SLPoleargs[5];
95 bf = SLPoleargs[6];
96 powf = SLPoleargs[7];
97
98 *a2f = f0/(pow( 1.0 + (af*t/mb2) + (bf*((t/mb2)*(t/mb2))),powf));
99
100 f0 = SLPoleargs[8];
101 af = SLPoleargs[9];
102 bf = SLPoleargs[10];
103 powf = SLPoleargs[11];
104
105 *vf = f0/(pow( 1.0 + (af*t/mb2) + (bf*((t/mb2)*(t/mb2))),powf));
106
107 f0 = SLPoleargs[12];
108 af = SLPoleargs[13];
109 bf = SLPoleargs[14];
110 powf = SLPoleargs[15];
111
112 *a0f = f0/(pow( 1.0 + (af*t/mb2) + (bf*((t/mb2)*(t/mb2))),powf));
113 return;
114 }

The documentation for this class was generated from the following files: