Chroma::InlineHeavyLightCont Class Reference
[Hadron measurements]

Inline measurement of heavy-light quark spectroscopy. More...

#include <inline_heavy_light_cont_w.h>

Inheritance diagram for Chroma::InlineHeavyLightCont:

Chroma::AbsInlineMeasurement List of all members.

Public Member Functions

 ~InlineHeavyLightCont ()
 InlineHeavyLightCont (const InlineHeavyLightContParams &p)
 InlineHeavyLightCont (const InlineHeavyLightCont &p)
unsigned long getFrequency (void) const
 Tell me how often I should measure this beastie.
void operator() (const unsigned long update_no, XMLWriter &xml_out)
 Do the measurement.

Protected Member Functions

void func (const unsigned long update_no, XMLWriter &xml_out)
 Do the measurement.

Private Attributes

InlineHeavyLightContParams params

Detailed Description

Inline measurement of heavy-light quark spectroscopy.

Definition at line 66 of file inline_heavy_light_cont_w.h.


Constructor & Destructor Documentation

Chroma::InlineHeavyLightCont::~InlineHeavyLightCont (  )  [inline]

Definition at line 69 of file inline_heavy_light_cont_w.h.

Chroma::InlineHeavyLightCont::InlineHeavyLightCont ( const InlineHeavyLightContParams p  )  [inline]

Definition at line 70 of file inline_heavy_light_cont_w.h.

Chroma::InlineHeavyLightCont::InlineHeavyLightCont ( const InlineHeavyLightCont p  )  [inline]

Definition at line 71 of file inline_heavy_light_cont_w.h.


Member Function Documentation

void Chroma::InlineHeavyLightCont::func ( const unsigned long  update_no,
XMLWriter &  xml_out 
) [protected]

Do the measurement.

if (named_obj.heavy_id1 != "Static"){ if ((all_sinks.heavy_prop_1.prop_header.source_header.t_source != t01) || (all_sinks.heavy_prop_1.prop_header.source_header.t_source != t02)) { QDPIO::cerr << "Error!! Heavy quark 1 must have same t_source as one of the light propagators " << endl; QDP_abort(1); } if (all_sinks.heavy_prop_1.prop_header.source_header.j_decay != j_decay) { QDPIO::cerr << "Error!! j_decay must be the same for all propagators " << endl; QDP_abort(1); } } if (named_obj.heavy_id2 != "Static"){ if ((all_sinks.heavy_prop_2.prop_header.source_header.t_source != t01) || (all_sinks.heavy_prop_2.prop_header.source_header.t_source != t02)) { QDPIO::cerr << "Error!! Heavy quark 2 must have same t_source as one of the light propagators " << endl; QDP_abort(1); } if (all_sinks.heavy_prop_2.prop_header.source_header.j_decay != j_decay) { QDPIO::cerr << "Error!! j_decay must be the same for all propagators " << endl; QDP_abort(1); } }

if (all_sinks.sink_prop_2.bc[j_decay] != bc_spec) { QDPIO::cerr << "Error!! bc must be the same for all propagators " << endl; QDP_abort(1); } if (params.param.FourPt){ if (all_sinks.sink_prop_3.prop_header.source_header.j_decay != j_decay) { QDPIO::cerr << "Error!! j_decay must be the same for all propagators " << endl; QDP_abort(1); } if (all_sinks.sink_prop_3.bc[j_decay] != bc_spec) { QDPIO::cerr << "Error!! bc must be the same for all propagators " << endl; QDP_abort(1); } }

Here we want to define the bc's for everything...in principle this should be read in from everything, but whatever.

Definition at line 361 of file inline_heavy_light_cont_w.cc.

References END_CODE, Chroma::InlineHeavyLightContParams::Param_t::FourPt, Chroma::InlineHeavyLightContParams::NamedObject_t::gauge_id, Chroma::SftMom::getSet(), heavy_prop_1, heavy_prop_2, Chroma::SingletonHolder< T, CreationPolicy, LifetimePolicy, ThreadingModel >::Instance(), j_decay, Chroma::InlineHeavyLightContParams::Param_t::MesonP, Chroma::MesPlq(), Chroma::InlineHeavyLightContEnv::name, Chroma::InlineHeavyLightContParams::named_obj, Chroma::InlineHeavyLightContParams::param, params, Chroma::proginfo(), Chroma::Qlbar(), Chroma::QlbarBACK(), Chroma::QlQl(), Chroma::readAllSinks(), Chroma::InlineHeavyLightContParams::NamedObject_t::sink_pairs, sink_prop_1, sink_prop_2, sink_prop_3, START_CODE, u, Chroma::InlineHeavyLightContParams::write(), and Chroma::write().

Referenced by operator()().

unsigned long Chroma::InlineHeavyLightCont::getFrequency ( void   )  const [inline, virtual]

Tell me how often I should measure this beastie.

Implements Chroma::AbsInlineMeasurement.

Definition at line 73 of file inline_heavy_light_cont_w.h.

References Chroma::InlineHeavyLightContParams::frequency, and params.

void Chroma::InlineHeavyLightCont::operator() ( const unsigned long  update_no,
XMLWriter &  xml_out 
) [virtual]

Do the measurement.

Implements Chroma::AbsInlineMeasurement.

Definition at line 337 of file inline_heavy_light_cont_w.cc.

References func(), Chroma::makeXMLFileName(), params, Chroma::write(), and Chroma::InlineHeavyLightContParams::xml_file.


Member Data Documentation

InlineHeavyLightContParams Chroma::InlineHeavyLightCont::params [private]

Definition at line 85 of file inline_heavy_light_cont_w.h.

Referenced by func(), getFrequency(), and operator()().


The documentation for this class was generated from the following files:
Generated on Sun Nov 22 04:40:19 2009 for CHROMA by  doxygen 1.4.7