Skip to content
Snippets Groups Projects
Commit 362776e8 authored by Bertram Kopf's avatar Bertram Kopf
Browse files

added barrier factors for poles

parent a90d72ca
No related branches found
No related tags found
No related merge requests found
#include "PwaDynamics/KPoleBarrier.hh"
#include "PwaDynamics/AbsPhaseSpace.hh"
#include "qft++/relativistic-quantum-mechanics/Utils.hh"
KPoleBarrier::KPoleBarrier(vector<double>& g_i, double mass_0, vector<boost::shared_ptr<AbsPhaseSpace> > phpVecs, int orbMom):
KPole(g_i, mass_0)
, _phpVecs(phpVecs)
, _orbMom(orbMom)
{
}
KPoleBarrier::~KPoleBarrier(){
}
void KPoleBarrier::evalMatrix(const double mass){
vector< complex<double> > barrierFactor;
for (int i=0; i< int(_phpVecs.size()); ++i){
complex<double> breakUpM=_phpVecs[i]->breakUpMom(mass);
complex<double> breakUpM0=_phpVecs[i]->breakUpMom(_poleMass);
barrierFactor.push_back(breakUpM/breakUpM0);
}
for (int i=0; i< int(_g_i.size()); ++i){
for (int j=0; j< int(_g_i.size()); ++j){
this->operator()(i,j)= ( _g_i[i]*barrierFactor[i]*_g_i[j]*barrierFactor[j])/(_poleMass*_poleMass-mass*mass);
}
}
}
// KPoleBarrier class definition file. -*- C++ -*-
// Copyright 2012 Bertram Kopf
#pragma once
//_____________________________________________________________________________
// @file KPoleBarrier.h
//_____________________________________________________________________________
#include "qft++/matrix/Matrix.hh"
#include "PwaDynamics/KPole.hh"
#include "PwaDynamics/AbsPhaseSpace.hh"
#include <iostream>
#include <vector>
#include <complex>
#include <boost/shared_ptr.hpp>
using namespace std;
class AbsPhaseSpace;
//_____________________________________________________________________________
//_____________________________________________________________________________
class KPoleBarrier : public KPole {
public:
// create/copy/destroy:
/// Default Constructor (rank 0)
// KPoleBarrier() : Matrix<double>::Matrix() {}
/// Constructor
KPoleBarrier(vector<double>& g_i, double mass_0, vector<boost::shared_ptr<AbsPhaseSpace> > phpVecs, int orbMom);
/// Copy Constructor
// KPoleBarrier(const KPoleBarrier &theCopy);
/// Destructor
virtual ~KPoleBarrier();
// operators:
// functions:
virtual void evalMatrix(const double mass);
protected:
vector<boost::shared_ptr<AbsPhaseSpace> > _phpVecs;
int _orbMom;
};
//_____________________________________________________________________________
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment