CDF II
CDF KITS
source navigation ]
diff markup ]
identifier search ]
freetext search ]
file search ]
 
Architecture: i386 ]
Version: 4.10.4 ] [ 4.10.5 ] [ 4.8.4 ] [ 4.8.4l3s ] [ 4.8.5 ] [ 4.9.0 ] [ 4.9.1 ] [ 4.9.1.hpt3 ] [ 4.9.1hpt3 ] [ 4.9.1top1 ] [ 5.0.0 ] [ 5.1.0 ] [ 5.1.0beamonly ] [ 5.1.1 ] [ 5.2.0 ] [ 5.3.0 ] [ 5.3.1 ] [ 5.3.1dsp ] [ 5.3.3 ] [ 5.3.3_nt ] [ 5.3.4 ] [ 6.1.1 ] [ 6.1.1b ] [ 6.1.2 ] [ 6.1.3 ] [ 6.1.4 ] [ 6.1.4int3 ] [ 6.1.4mc ] [ 6.1.4mc_a ] [ 6.1.6 ] [ development ]

001 //     generatorMods/src/WbbgenModule.cc
002 //***** Adapted from HerwigModule.cc   jlys  04-Jun-2001 ******
003 //     update wbbgen July-2001,   jlys
004 //     update to Herwig v6202 Aug 2001  jlys
005 //--------------------------------------------------------------------------
006 // File and Version Information:
007 //      WbbgenModule.cc
008 //
009 // Description (for HerwigModule, from which this is adapted):
010 //     This module is the interface between the Herwig Monte Carlo generator
011 //     and the CDF Run 2 software.   HerwigModule inherits from the base class
012 //     APPGenInputModule which defines the default behaviour for an AC++ 
013 //     generator input module.  A good portion of the code here moves
014 //     parameters between the AC++ abstract parameter class and the
015 //     Herwig common blocks that control the generator.
016 //     The Herwig output is transferred to the Hepevt common block using
017 //     the standard Fermilab library STDHEP.  Then, CDF code moves this
018 //     common block into the HEPG Trybos bank in the Abstract Event.
019 //
020 //
021 // Author List:
022 //     Marjorie Shapiro and Elena Bucciol               Original Author
023 // Revision History:
024 //     00001  Aug 1998  Original Version
025 //     1999, 2000, j lys and others
026 //     2000, May, j lys, for Herwig v 6.1
027 //     2001, June, j lys, for Wbbgen
028 //     Aug 29 2001 lena: clean up - remove gEvent, other
029 //     Aug 30 2001 lena: moving to AbsGenModule
030 //------------------------------------------------------------------------
031 //-----------------------
032 // This Class's Header --
033 //-----------------------
034 #include "generatorMods/WbbgenModule.hh"
035 #include "BankTools/ToFromYbos.hh"
036 //-------------
037 // C Headers --
038 //-------------
039 #include <time.h>
040 //---------------
041 // C++ Headers --
042 //--------------- 
043 #include <iostream>
044 
045 //-------------------------------
046 // Collaborating Class Headers --
047 //-------------------------------
048 #include "herwig_i/Herwig.hh"
049 #include "wbbgen_i/wbbgen.hh"
050 #include "evt/Event.hh"
051 //#include "ParticleDB/hepevt.hh"
052 #include "stdhep_i/CdfHepevt.hh" 
053 #include "r_n/CdfRn.hh"
054 const long WbbgenModule::_defaultRandomSeed1 = 88351;
055 const long WbbgenModule::_defaultRandomSeed2 = 973546;
056 
057 //void InitHerwigCommonBlocks();
058 void InitWbbgenCommonBlocks();
059 
060 //---------------------------------------------
061 // Fortran Subroutines called by this Module --
062 //---------------------------------------------
063 
064 extern "C" {
065   //  void stdhepctb_();
066                                 // In wbbgen_i area:
067   void wherwiginterface_();
068   void wbbusr_();
069   void wbbusrend_();
070   void stread_(double *pbeam1,int *ih1,
071                double *pbeam2,int *ih2,double *mq,int *njets);
072   void loadev_(int *ist,double *avgwgt);
073                                 //  In Herwig 
074   void hwwarn_(char *,int *,int *);
075   void hwuinc_();
076   //  void hwusta(int *tstab);
077   void hwabeg_();
078   void hwaini_();
079   void hwuine_();
080   void hwbgen_();
081   void hwcfor_();
082   void hwcdec_();
083   void hwdhad_();
084   void hwdhvy_();
085   void hwmevt_();
086   void hwufne_(); 
087   void whwanal_(int *ihwcod);
088   void hwafin_(double *totwgt,int *nev);
089   void hwaend_();
090                                 // In Stdhep
091   void hwghep_(int *mconv);
092 }
093 
094 //-----------------------------------------------------------------------
095 // Local Macros, Typedefs, Structures, Unions and Forward Declarations --
096 //-----------------------------------------------------------------------
097 static int init=0;
098 //cjl 15-jun-01
099 int nevgoodev = 0;
100 double totwgt = 0;
101 
102 const char* WbbgenModule::genId =  "Wbbgen";
103 
104 
105 //______constructor_________________________________________________________
106 
107 WbbgenModule::WbbgenModule() : 
108   AbsGenModule( WbbgenModule::genId,"AC++ module for WBBGEN" ),
109   //  _process("Process",this,1705), 
110 
111   _maxer_Parm("Maxer",this,100),
112   //  _randomseed1_Parm("Randseed1",this,0),
113   //  _randomseed2_Parm("Randseed2",this,0),
114   _lambdaQCD_Parm( "Lambda_QCD", this, 0.18),
115    
116                                 // commands of Menu 01: The Beam menu
117                                 // ----------------------------------
118   //  _Beamtype1_Parm("Beam1", this, "12345678"),
119   //  _Beamtype2_Parm("Beam2", this , "12345678"),
120   //  _Energy1_Parm("Pbeam1", this,980.),
121   //  _Energy2_Parm("Pbeam2", this,980.),
122   _pipsmr_Parm("Pipsmr",this,0),
123   _vipwidx_Parm("Vipwidx",this,0.25),
124   _vipwidy_Parm("Vipwidy",this,0.015),
125   _vipwidz_Parm("Vipwidz",this,1.8),
126                         // commands of menu 02: The Sudakov menu
127                                 // ----------------------------------
128   _sudord_Parm("Sudakov_order",this,2),
129 
130                                 // commands of menu 03: The Structure Function Menu
131   _autpdf("Autpdf",this,"MRS"),
132   _modpdf("Modpdf",this,28),
133 
134                                 // commands of menu 04: The Hard Scattering Menu
135                                 // ---------------------------------------------
136 //cjl  _rapiditiesm_Parm("Ymin",this,-8.0),    
137   _rapiditiesM_Parm("Ymax",this,8.0),    
138   _ptm_Parm("Ptmin",this,0),
139   _ptM_Parm("Ptmax",this,0),
140   _invarmassm_Parm("MassMin",this,10.),
141   _invarmassM_Parm("MassMax",this,1.E8),     
142   _thrust_Parm("ThrustMax",this,0.9),
143   _ptpow_Parm("Ptpow",this,4.0),
144   _empow_Parm("Empow",this,4.00),
145   _q2pow_Parm("Q2power",this,2.5),
146   _qlim_Parm("Qlim",this,0),
147   _q2dilsm_Parm("Q2dilsmin",this,0),
148   _q2dilsM_Parm("Q2dilsmax",this,0),
149   _bgshat_Parm("Bgshat",this, false),
150     
151                                 // commands of Menu 05: Parton Shower Menu
152                                 // ---------------------------------------
153   _azsoft_Parm("Azsoft",this,true),
154   _azspin_Parm("Azspin",this,true),
155   _qspac_Parm("Spacelike_evolution",this,2.5),
156   _ispac_Parm("Ispac",this,0),
157   _nospac_Parm("Nospac",this,0),
158   _vqcut_Parm("Qcutoff",this,0.48),
159   _vgcut_Parm("Gcutoff",this,0.10),
160   _vpcut_Parm("Pcutoff",this,0.40),
161   _intrinsicpt_Parm("Pt_incoming_hadrons",this,0),
162   
163                                 // commands of Menu 06: Hadronization Menu
164                                 // ---------------------------------------
165   _clmax_Parm("Clmax", this,3.35), 
166   _clpow_Parm("Clpow",this,2.0),  
167   _psplt1_Parm("Psplt1",this,1.0),  
168   _psplt2_Parm("Psplt2",this,1.0),  
169   _cldir1_Parm("Cldir1",this,1),  
170   _cldir2_Parm("Cldir2",this,1),  
171   _clsmr1_Parm("Clsmr1",this,0.0),  
172   _clsmr2_Parm("Clsmr2",this,0.0),  
173   _qdiqk_Parm("Qdiqk",this,0.00), 
174   _pdiqk_Parm("Pdiqk",this,5.00), 
175   _sngwt_Parm("Sngwt",this,1.0),
176   _decwt_Parm("Decwt",this,1.0),
177   _pwt1_Parm("Pwt1",this,1.0),
178   _pwt2_Parm("Pwt2",this,1.0),
179   _pwt3_Parm("Pwt3",this,1.0),
180   _pwt4_Parm("Pwt4",this,1.0),
181   _pwt5_Parm("Pwt5",this,1.0),
182   _pwt6_Parm("Pwt6",this,1.0),
183   _pwt7_Parm("Pwt7",this,1.0),
184 
185                                 // commands of Menu 07: Underlying Event Menu
186                                 // -------------------------------------------
187   _prsof_Parm("Prsof",this,1.00),
188   _ensof_Parm("Ensof",this,1.00),
189   _pmbn1_Parm("Pmbn1",this,9.11),
190   _pmbn2_Parm("Pmbn2",this,0.115),
191   _pmbn3_Parm("Pmbn3",this,9.50),
192   _pmbk1_Parm("Pmbk1",this,0.029),
193   _pmbk2_Parm("Pmbk2",this,0.104),
194   _pmbm1_Parm("Pmbm1",this,0.4),
195   _pmbm2_Parm("Pmbm2",this,2.0),
196   _pmbp1_Parm("Pmbp1",this,5.2),
197   _pmbp2_Parm("Pmbp2",this,3.0),
198   _pmbp3_Parm("Pmbp3",this,5.2),
199 
200                                 // commands of Menu 08: Decays Menu
201                                 // --------------------------------
202   _pizstable_Parm("Pizstable",this,0),
203   _pltcut_Parm("Pltcut",this,0.),
204   _modbos1_Parm("Modbos1",this,0),
205   _modbos2_Parm("Modbos2",this,0),
206 
207                                 // commands of Menu 09: Generation Menu
208                                 // ------------------------------------
209   _eventweight_Parm("No_weights",this,1),
210   _maxweight_Parm("Maxwt",this,0),
211   _effmin_Parm("Effmin",this,0.001),
212   _noshower_Parm("No_shower",this,0),
213   _nohadroniz_Parm("No_hadronization",this,0),
214   _tlout_Parm("Tlout",this,10.0),
215   
216                                 // commands of Menu 10: Parameters Menu
217                                 // ------------------------------------
218   _colors_Parm("Colors",this,3),
219   _flavors_Parm ("Flavors", this,6),
220   _weiangle_Parm("Weinberg_angle", this,0.2319),  
221   _cabangle_Parm("Cabbibo_angle",this,0.0488),
222   _wwidth_Parm("W_width", this,2.12),
223   _zwidth_Parm("Z_width", this,2.495),
224   
225                                 // commands of Menu 11: Masses Menu
226                                 // --------------------------------
227   _down_Parm("down", this, 0.32),
228   _up_Parm("up", this, 0.32),
229   _strange_Parm("strange", this, 0.50),
230   _charm_Parm("charm",this, 1.55),
231   _bottom_Parm("bottom", this,4.95), 
232   _top_Parm("top",this, 174.3),
233   _gluonmass_Parm("gluon",this,0.75),  
234   _W_Parm("W", this,80.42),
235   _Z0_Parm("Z0",this,91.188),
236   _higgs_Parm("Higgs",this,115.), 
237   _gammax_Parm("Gammax",this,10.),
238                                 // commands of Menu 12: Readsusy Menu
239                                 // -----------------------------------
240   _read_Filesusy("File_Readsusy",this,"$HERWIG_SUSY"),
241   _rparty_Parm("Rparty",this,1),
242 
243                                 // commands of Menu 13: Zprime Menu
244                                 // --------------------------------
245   _zprime_Parm("Zprime",this,0),
246   _ZP_Parm("ZP",this,500.),
247   _zpwidth_Parm("ZP_width",this,5.),
248 
249                                 // commands of Menu 14: Prints Menu 
250                                 // --------------------------------
251   _iprint_Parm("iprint",this,1),
252   _maxpr_Parm("maxpr",this,0),
253   _prvtx_Parm("prvtx",this,1),
254   _prndef_Parm("prndef",this,1),
255   _prntex_Parm("prntex",this,0),
256   _prnweb_Parm("prnweb",this,0),
257   _nprfmt_Parm("nprfmt",this,1),
258 
259                                 // commands of Menu 15: Wbbuser Menu 
260                                 // --------------------------------
261   _iih1_Parm("ibeam1",this,3),
262   _iih2_Parm("ibeam2",this,1),
263   _ebeam_Parm("ebeam",this,980.),
264   _mq_Parm("bmass",this,4.75),
265   _njets_Parm("njets",this,3),
266   _ndns_Parm("ndns",this,61),
267   _ptjmin_Parm("ptjmin",this,20.),
268   _etajmax_Parm("etajmax",this,2.5),
269   _drjmin_Parm("drjmin",this,0.4),
270   _ptbmin_Parm("ptbmin",this,20.),
271   _etabmax_Parm("etabmax",this,2.5),
272   _drbmin_Parm("drbmin",this,0.4),
273   _ptlmin_Parm("ptlmin",this,20.),
274   _etalmax_Parm("etalmax",this,2.5),
275   _drlmin_Parm("drlmin",this,0.0),
276   _ptnmin_Parm("ptnmin",this,0.0),
277   _iqopt_Parm("iqopt",this,1),
278   _qfac_Parm("qfac",this,1.0),
279   _nopt_Parm("nopt",this,50000),
280   _niter_Parm("niter",this,1),
281   _maxev_Parm("maxev",this,10000),
282   _seed1_Parm("seed1",this,12345),
283   _seed2_Parm("seed2",this,67890),
284   _jgridr_Parm("gridr",this,0),
285   _jgridw_Parm("gridw",this,22),
286   _iilepton_Parm("iilepton",this,11),
287   _wbbfilen("wbbfile",this,"wbbfile"),
288   _randomSeed1("RandomSeed1",this,WbbgenModule::_defaultRandomSeed1),
289   _randomSeed2("RandomSeed2",this,WbbgenModule::_defaultRandomSeed2)
290 {
291   // wbbgen menu's and commands
292   InitializeTalkTo();
293   // Initialize the relevant submenu
294   _randomNumberMenu.initialize("RandomNumberMenu",this);
295   _randomNumberMenu.initTitle("Fake event random number menu");
296   commands()->append(&_randomNumberMenu);
297 
298   // Add the commands to the menu
299   _randomNumberMenu.commands()->append(&_randomSeed1);
300   _randomNumberMenu.commands()->append(&_randomSeed2);
301 
302   ostringstream tmpSstream1;
303   ostringstream tmpSstream2;
304 
305   // Describe them
306   tmpSstream1 << "      \t\t\tSeed #1 for the random number generator"
307               << "\n\t\t\t(default " << _randomSeed1.value() << ").";
308   _randomSeed1.addDescription(tmpSstream1.str());
309   tmpSstream2 << "      \t\t\tSeed #2 for the random number generator"
310               << "\n\t\t\t(default " << _randomSeed2.value() << ").";  
311   _randomSeed2.addDescription(tmpSstream2.str());
312 
313 
314   // Herwig Common blocks are initialized in HerwigModule
315   // Call trivial Fortran routines
316   wherwiginterface_();
317   // Transfer numbers from Herwig Common Blocks to Absparms
318   Her2Absparm();
319   // Map Wbbgen Common blocks to global C structures
320   InitWbbgenCommonBlocks();
321   // Put contructor initialized  values of Absparms into Wbbgen Common
322   Absparm2Wbb();
323 }
324 
325 
326 //--------------
327 // Destructor --
328 //--------------
329 
330 WbbgenModule::~WbbgenModule(){ }
331 
332 AppResult WbbgenModule::genBeginJob( ) {
333 
334   CdfRn* rn = CdfRn::Instance();
335   if ( !rn->isReadingFromFile() ) {
336     rn->SetEngineSeeds(_randomSeed1.value(), _randomSeed2.value(),"WBBGEN");
337   }
338                          // Since we may have changed parameters via Talk-to,
339                          // we need to refill Herwig Common blocks from the 
340                          // AbsParms
341   Absparm2Wbb();
342 
343   Absparm2Her();
344 
345   wbbusr_();
346   std::cout << " Finished first wbbusr call " << std::endl;
347   wbbusrend_();
348   wbbusr_();
349   std::cout << " Finished second wbbusr call " << std::endl;
350   wbbusrend_();
351   double pbeam1;
352   int ih1;
353   double pbeam2;
354   int ih2;
355   double mq;
356   int njets;
357   stread_(&pbeam1,&ih1,&pbeam2,&ih2,&mq,&njets);
358   // Set b mass for herwig here, also the incoming momenta, and proc=0
359 
360   
361   Herwig* herwig = Herwig::Instance(); 
362   herwig->Hwprop() ->rmass[5]= mq; 
363   herwig->Hwproc()->pbeam1 = pbeam1;
364   herwig->Hwproc()->pbeam2 = pbeam2;
365   herwig->Hwproc()->iproc = 0;
366 
367   // Must get IPART1 and IPART2 (char*8) of herwig.inc here
368   char chprot[8] = "P      ";
369   char chpbar[8] = "PBAR   ";
370   if(ih1==1){
371     for(int i=0; i<7; i++){
372       herwig->Hwbmch()->part1[i] = chprot[i];
373     }
374   }
375   else{
376     for(int i=0; i<7; i++){
377       herwig->Hwbmch()->part1[i] = chpbar[i];
378     }
379   }
380   if(ih2==1){
381     for(int i=0; i<7; i++){
382       herwig->Hwbmch()->part2[i] = chprot[i];
383     }
384   }
385   else{
386     for(int i=0; i<7; i++){
387       herwig->Hwbmch()->part2[i] = chpbar[i];
388     }
389   }
390 
391 
392                                 // Now Compute Parameter Dependent Constants 
393   hwuinc_();
394                                 // Here can add calls to make particles stable 
395   // hwusta_(tstab);
396                                 // User initialisation if wanted
397   hwabeg_();
398                                 // Initialise elementary process
399   hwaini_();
400 
401   //preset event counter
402   _events = 0;
403 
404   init = 1;
405   return AppResult::OK;
406 }
407 
408 //_____________________________________________________________________________
409 AppResult WbbgenModule::genEndJob() {
410                                // termination (prints wgts if used)
411                                // User terminal calculations if wanted
412   CdfHepevt* hepevt = CdfHepevt::Instance();
413   hepevt->HepevtPtr()->NEVHEP = _events;
414 
415   //cjl next line, testing
416   hwafin_(&totwgt,&nevgoodev);
417   hwaend_();
418   return AppResult::OK;
419 }
420 
421 
422 //_____________________________________________________________________________
423 AppResult WbbgenModule::genBeginRun( AbsEvent* run ) {
424   return AppResult::OK;
425 }
426 
427 //_____________________________________________________________________________
428 AppResult WbbgenModule::genEndRun( AbsEvent* run ) {
429   return AppResult::OK;
430 }
431 
432 //______________________________________________________________________________
433 int WbbgenModule::callGenerator(AbsEvent* event) {
434   // generates single event with WBBGEN + HERWIG
435 
436   const int mxerr = 5000;
437   int nterr = 0;
438   bool goodev = false;
439 
440   if(init==0) {
441     std::cout << " Herwig not properly initialized" << std::endl;
442   }
443 
444   CdfHepevt* hepevt = CdfHepevt::Instance();
445   while(!goodev){
446     hepevt->HepevtPtr()->NEVHEP = _events;
447     hwuine_();  // Initialize event
448     int ist = 0;
449     double avgwgt = 0;
450     loadev_(&ist,&avgwgt);
451     if(ist !=1) {
452       if(! _noshower_Parm.value()) {
453         hwbgen_();  // Generate parton cascade
454         if(! _nohadroniz_Parm.value()) {
455           hwcfor_();  // Do cluster formation
456           hwcdec_();  // Do cluster decays
457           hwdhad_();  // Do unstable particle decays
458           hwdhvy_();  // Do heavy flavor decays
459           hwmevt_();  // Add soft underlying event
460         }
461       }
462       hwufne_();  // Finish event
463       // User event analysis if wanted
464       int ihwcod = 1;
465       whwanal_(&ihwcod);
466       if(Herwig::Instance()->Hwevnt()->ierror > 99) {
467         ++nterr;
468         if(nterr>mxerr) {
469           std::cerr << "Herwig:Too many errors on event generation" << std::endl;
470           goodev=true;
471         }
472       }
473       else {
474         if(ihwcod != 0) {
475           goodev=true;
476         }
477       }
478     }
479     else{
480       //at end of event list that we are reading in, so must quit
481       hwafin_(&totwgt,&nevgoodev);
482       hwaend_();
483       ERRLOG(ELfatal,"[WBBGEN_OUT_OF_EVENTS]")
484         << " We have come to the end of the unweighted events in wbbgen"
485         << endmsg;
486       //next line never reached!
487       goodev=true;
488     }
489     if(goodev){
490       nevgoodev++;
491       totwgt+=avgwgt;
492     }
493   }
494   _events++;
495   return 0;
496 }
497 
498 //______________________________________________________________________________
499 void WbbgenModule::fillHepevt() {
500   // Put output into STDHEP version of HEPEVT common
501 
502   int mconv = 1;
503   hwghep_(&mconv);
504 }
505 
506 //______________________________________________________________________________
507 void WbbgenModule::Her2Absparm() {
508   // convert Herwig Common Blocks to the AbsParms of the Herwig Module
509 
510   Herwig* herwig = Herwig::Instance();
511 
512   string mystring;
513   //  mystring.assign(gHwbmch->part1,8);
514   //  _Beamtype1_Parm.set(mystring);
515   //  mystring.assign(gHwbmch->part2,8);
516   //  _Beamtype2_Parm.set(mystring);
517   mystring.assign(herwig->Hwprch()->autpdf[0],20);
518   _autpdf.set(mystring);
519   _modpdf.set(herwig->Hwpram()->modpdf[0]);
520   //  _Energy1_Parm.set(gHwproc ->pbeam1);
521   //  _Energy2_Parm.set(gHwproc ->pbeam2);
522   //  _process.set(gHwproc->iproc);
523   _maxer_Parm.set(herwig->Hwevnt() ->maxer);
524   //_randomseed1_Parm.set(herwig->Hwevnt() ->nrn[0]);
525   //_randomseed2_Parm.set(herwig->Hwevnt() ->nrn[1]);
526   _lambdaQCD_Parm.set(herwig->Hwpram() -> qcdlam);
527   _sudord_Parm.set(herwig->Hwusud() ->sudord);
528   _pipsmr_Parm.set(herwig->Hwdist()->pipsmr);
529   _vipwidx_Parm.set(herwig->Hw6202()->vipwid[0]);
530   _vipwidy_Parm.set(herwig->Hw6202()->vipwid[1]);
531   _vipwidz_Parm.set(herwig->Hw6202()->vipwid[2]);
532 
533 //cjl  _rapiditiesm_Parm.set(gHwhard ->yjmin);
534   _rapiditiesM_Parm.set(herwig->Hwhard() ->yjmax);
535   _ptM_Parm.set(herwig->Hwhard() ->ptmax);
536   _ptm_Parm.set(herwig->Hwhard() ->ptmin);
537   _invarmassM_Parm.set(herwig->Hwhard() ->emmax);
538   _invarmassm_Parm.set(herwig->Hwhard() ->emmin);
539   _thrust_Parm.set(herwig->Hwhard() ->thmax);
540   _ptpow_Parm.set(herwig->Hwhard() ->ptpow);
541   _empow_Parm.set(herwig->Hwhard() ->empow);
542   _q2pow_Parm.set(herwig->Hwhard() ->q2pow);
543   _qlim_Parm.set(herwig->Hwhard() ->qlim);
544   _q2dilsM_Parm.set(herwig->Hwhard() ->q2max);
545   _q2dilsm_Parm.set(herwig->Hwhard() ->q2min);
546   _bgshat_Parm.set(herwig->Hwhard() ->bgshat);
547 
548   _azsoft_Parm.set(herwig->Hwpram()->azsoft);
549   _azspin_Parm.set(herwig->Hwpram() -> azspin);
550   _qspac_Parm.set(herwig->Hwpram() -> qspac);
551   _ispac_Parm.set(herwig->Hwpram() -> ispac);
552   _nospac_Parm.set(herwig->Hwpram() -> nospac);
553   _vqcut_Parm.set(herwig->Hwpram() -> vqcut);
554   _vgcut_Parm.set(herwig->Hwpram() -> vgcut);
555   _vpcut_Parm.set(herwig->Hwpram() -> vpcut);
556   _intrinsicpt_Parm.set(herwig->Hwpram() -> ptrms);
557 
558   _clmax_Parm.set(herwig->Hwpram() -> clmax); 
559   _clpow_Parm.set(herwig->Hwpram() -> clpow);
560   _psplt1_Parm.set(herwig->Hwpram() -> psplt[0]);
561   _psplt2_Parm.set(herwig->Hwpram() -> psplt[1]);
562   _cldir1_Parm.set(herwig->Hwpram() -> cldir[0]);
563   _cldir2_Parm.set(herwig->Hwpram() -> cldir[1]);
564   _clsmr1_Parm.set(herwig->Hwpram() -> clsmr[0]);
565   _clsmr2_Parm.set(herwig->Hwpram() -> clsmr[1]);
566   _qdiqk_Parm.set(herwig->Hwpram() -> qdiqk);
567   _pdiqk_Parm.set(herwig->Hwpram() -> pdiqk);
568   _sngwt_Parm.set(herwig->Hwuwts() ->sngwt);
569   _decwt_Parm.set(herwig->Hwuwts() ->decwt);
570   _pwt1_Parm.set(herwig->Hwuwts() ->pwt[0]);
571   _pwt2_Parm.set(herwig->Hwuwts() ->pwt[1]);
572   _pwt3_Parm.set(herwig->Hwuwts() ->pwt[2]);
573   _pwt4_Parm.set(herwig->Hwuwts() ->pwt[3]);
574   _pwt5_Parm.set(herwig->Hwuwts() ->pwt[4]);
575   _pwt6_Parm.set(herwig->Hwuwts() ->pwt[5]);
576   _pwt7_Parm.set(herwig->Hwuwts() ->pwt[6]);
577 
578   //cjl need - sign on pmbn3 and pmbk2
579   _prsof_Parm.set(herwig->Hwpram() -> prsof);
580   _ensof_Parm.set(herwig->Hwpram() -> ensof);
581   _pmbn1_Parm.set(herwig->Hwminb() -> pmbn1);
582   _pmbn2_Parm.set(herwig->Hwminb() -> pmbn2);
583   _pmbn3_Parm.set(-herwig->Hwminb() -> pmbn3);
584   _pmbk1_Parm.set(herwig->Hwminb() -> pmbk1);
585   _pmbk2_Parm.set(-herwig->Hwminb() -> pmbk2);
586   _pmbm1_Parm.set(herwig->Hwminb() -> pmbm1);
587   _pmbm2_Parm.set(herwig->Hwminb() -> pmbm2);
588   _pmbp1_Parm.set(herwig->Hwminb() -> pmbp1);
589   _pmbp2_Parm.set(herwig->Hwminb() -> pmbp2);
590   _pmbp3_Parm.set(herwig->Hwminb() -> pmbp3);
591 
592   _pizstable_Parm.set(herwig->Hwupdt() -> rstab[21]);
593   _pltcut_Parm.set(herwig->Hwdist() -> pltcut);
594   _modbos1_Parm.set(herwig->Hwbosc()->modbos[0]);
595   _modbos2_Parm.set(herwig->Hwbosc()->modbos[1]);
596 
597   _eventweight_Parm.set(herwig->Hwevnt() ->nowgt);
598   _maxweight_Parm.set(herwig->Hwevnt() ->wgtmax);
599   _effmin_Parm.set(herwig->Hwpram() ->effmin);
600   _tlout_Parm.set(herwig->Hwevnt() ->tlout);
601 
602   _colors_Parm.set(herwig->Hwpram() -> ncolo);
603   _flavors_Parm.set(herwig->Hwpram() -> nflav); 
604   _weiangle_Parm.set(herwig->Hwpram() -> swein);
605   _cabangle_Parm.set(herwig->Hwpram() -> scabi);
606   _wwidth_Parm.set(herwig->Hwpram() -> gamw);
607   _zwidth_Parm.set(herwig->Hwpram() -> gamz);
608 
609   _down_Parm.set(herwig->Hwprop() ->rmass[1]);
610   _up_Parm.set(herwig->Hwprop() ->rmass[2]);
611   _strange_Parm.set(herwig->Hwprop() ->rmass[3]);
612   _charm_Parm.set(herwig->Hwprop() ->rmass[4]);
613   _bottom_Parm.set(herwig->Hwprop() ->rmass[5]); 
614   _top_Parm.set(herwig->Hwprop() ->rmass[6]);
615   _gluonmass_Parm.set(herwig->Hwprop() ->rmass[13]);
616   _W_Parm.set(herwig->Hwprop() ->rmass[198]);
617   _Z0_Parm.set(herwig->Hwprop() ->rmass[200]);
618   _higgs_Parm.set(herwig->Hwprop() ->rmass[201]);
619   _gammax_Parm.set(herwig->Hwbosc()->gammax);
620   
621   _zprime_Parm.set(herwig->Hwpram() -> zprime);
622   _ZP_Parm.set(herwig->Hwprop() -> rmass[202]);
623   _zpwidth_Parm.set(herwig->Hwpram() -> gamzp);
624   _rparty_Parm.set(herwig->Hwrpar()->rparty);
625 
626   _iprint_Parm.set(herwig->Hwpram() -> iprint);
627   _maxpr_Parm.set(herwig->Hwevnt() -> maxpr);
628   _prvtx_Parm.set(herwig->Hwpram() -> prvtx);
629   _prndef_Parm.set(herwig->Hwpram() -> prndef);
630   _prntex_Parm.set(herwig->Hwpram() -> prntex);
631   _prnweb_Parm.set(herwig->Hwpram() -> prnweb);
632   _nprfmt_Parm.set(herwig->Hwpram() -> nprfmt);
633 
634 
635   // Following two are used only internally to this routine:
636   //_noshower_Parm.set(0);// correspondence in common block not finded
637   //_nohadroniz_Parm.set(0);// correspondence in common block not finded
638 
639 
640 }
641 
642 //
643 // This routine takes the AbsParms of the Herwig Module and transfers them
644 // to the Herwig Common Blocks
645 
646 void WbbgenModule::Absparm2Her() {
647 
648   Herwig* herwig = Herwig::Instance();
649 
650   int nch;
651   nch = (_autpdf.value().size()<20) ? _autpdf.value().size() : 19;
652   for(int i=0; i<19; i++) {
653     if(i<nch) {
654       herwig->Hwprch()->autpdf[0][i] = _autpdf.value().c_str()[i];
655       herwig->Hwprch()->autpdf[1][i] = _autpdf.value().c_str()[i];
656     }
657     else {
658       herwig->Hwprch()->autpdf[0][i] = ' ';
659       herwig->Hwprch()->autpdf[1][i] = ' ';
660     }
661   }
662   
663   herwig->Hwpram() ->modpdf[0]=_modpdf.value();
664   herwig->Hwpram()->modpdf[1]=_modpdf.value();
665   herwig->Hwevnt() ->maxer=_maxer_Parm.value();
666   //herwig->Hwevnt() ->nrn[0]=_randomseed1_Parm.value();
667   //herwig->Hwevnt() ->nrn[1]=_randomseed2_Parm.value();
668   herwig->Hwpram() -> qcdlam=_lambdaQCD_Parm.value();
669   herwig->Hwusud() ->sudord=_sudord_Parm.value();
670   herwig->Hwdist() ->pipsmr=_pipsmr_Parm.value();
671   herwig->Hw6202() ->vipwid[0]=_vipwidx_Parm.value();
672   herwig->Hw6202() ->vipwid[1]=_vipwidy_Parm.value();
673   herwig->Hw6202() ->vipwid[2]=_vipwidz_Parm.value();
674 
675   //cjl re ymin
676   //gHwhard ->yjmin=_rapiditiesm_Parm.value();
677   float yjmin1;
678   yjmin1 = -_rapiditiesM_Parm.value();
679   //std::cout << " yjmin in AbsParm2Her in HM.cc  " << yjmin1  <<std::endl;
680   herwig->Hwhard() ->yjmin=yjmin1;
681   //cjl_e
682   herwig->Hwhard() ->yjmax=_rapiditiesM_Parm.value();
683   herwig->Hwhard() ->ptmin=_ptm_Parm.value();
684   herwig->Hwhard() ->ptmax=_ptM_Parm.value();
685   herwig->Hwhard() ->emmin=_invarmassm_Parm.value();
686   herwig->Hwhard() ->emmax=_invarmassM_Parm.value();
687   herwig->Hwhard() ->thmax=_thrust_Parm.value();
688   herwig->Hwhard() ->ptpow=_ptpow_Parm.value();
689   herwig->Hwhard() ->empow=_empow_Parm.value();
690   herwig->Hwhard() ->q2pow=_q2pow_Parm.value();
691   herwig->Hwhard() ->qlim=_qlim_Parm.value();
692   herwig->Hwhard() ->q2min=_q2dilsm_Parm.value();
693   herwig->Hwhard() ->q2max=_q2dilsM_Parm.value();
694   herwig->Hwhard() ->bgshat=_bgshat_Parm.value();
695   
696   herwig->Hwpram() ->azsoft=_azsoft_Parm.value();
697   herwig->Hwpram() -> azspin=_azspin_Parm.value();
698   herwig->Hwpram() -> qspac=_qspac_Parm.value();
699   herwig->Hwpram() -> ispac=_ispac_Parm.value();
700   herwig->Hwpram() -> nospac=_nospac_Parm.value();
701   herwig->Hwpram() -> vqcut=_vqcut_Parm.value();
702   herwig->Hwpram() -> vgcut=_vgcut_Parm.value();
703   herwig->Hwpram() -> vpcut=_vpcut_Parm.value();
704   herwig->Hwpram() -> ptrms=_intrinsicpt_Parm.value();
705   
706   herwig->Hwpram() -> clmax=_clmax_Parm.value(); 
707   herwig->Hwpram() -> clpow=_clpow_Parm.value();
708   herwig->Hwpram() -> psplt[0]=_psplt1_Parm.value();
709   herwig->Hwpram() -> psplt[1]=_psplt2_Parm.value();
710   herwig->Hwpram() -> cldir[0]=_cldir1_Parm.value();
711   herwig->Hwpram() -> cldir[1]=_cldir2_Parm.value();
712   herwig->Hwpram() -> clsmr[0]=_clsmr1_Parm.value();
713   herwig->Hwpram() -> clsmr[1]=_clsmr2_Parm.value();
714   herwig->Hwpram() -> qdiqk=_qdiqk_Parm.value();
715   herwig->Hwpram() -> pdiqk=_pdiqk_Parm.value();
716   herwig->Hwuwts() -> sngwt=_sngwt_Parm.value();
717   herwig->Hwuwts() -> decwt=_decwt_Parm.value();
718   herwig->Hwuwts() -> pwt[0]=_pwt1_Parm.value();
719   herwig->Hwuwts() -> pwt[1]=_pwt2_Parm.value();
720   herwig->Hwuwts() -> pwt[2]=_pwt3_Parm.value();
721   herwig->Hwuwts() -> pwt[3]=_pwt4_Parm.value();
722   herwig->Hwuwts() -> pwt[4]=_pwt5_Parm.value();
723   herwig->Hwuwts() -> pwt[5]=_pwt6_Parm.value();
724   herwig->Hwuwts() -> pwt[6]=_pwt7_Parm.value();
725   
726   herwig->Hwpram() -> prsof=_prsof_Parm.value();
727   herwig->Hwpram() -> ensof=_ensof_Parm.value();
728   // cjl note pmbn3 and pmbk2 negatives here
729   herwig->Hwminb() -> pmbn1=_pmbn1_Parm.value();
730   herwig->Hwminb() -> pmbn2=_pmbn2_Parm.value();
731   herwig->Hwminb() -> pmbn3=-_pmbn3_Parm.value();
732   herwig->Hwminb() -> pmbk1=_pmbk1_Parm.value();
733   herwig->Hwminb() -> pmbk2=-_pmbk2_Parm.value();
734   herwig->Hwminb() -> pmbm1=_pmbm1_Parm.value();
735   herwig->Hwminb() -> pmbm2=_pmbm2_Parm.value();
736   herwig->Hwminb() -> pmbp1=_pmbp1_Parm.value();
737   herwig->Hwminb() -> pmbp2=_pmbp2_Parm.value();
738   herwig->Hwminb() -> pmbp3=_pmbp3_Parm.value();
739   
740   herwig->Hwupdt() -> rstab[21]=_pizstable_Parm.value();
741   herwig->Hwdist() -> pltcut=_pltcut_Parm.value();
742   herwig->Hwbosc() -> modbos[0]=_modbos1_Parm.value();
743   herwig->Hwbosc() -> modbos[1]=_modbos2_Parm.value();
744   
745   herwig->Hwevnt() -> nowgt=_eventweight_Parm.value();
746   herwig->Hwevnt() -> wgtmax=_maxweight_Parm.value();
747   herwig->Hwpram() -> effmin=_effmin_Parm.value();
748   herwig->Hwevnt() -> tlout=_tlout_Parm.value();
749   herwig->Hwpram() -> ncolo=_colors_Parm.value();
750   herwig->Hwpram() -> nflav=_flavors_Parm.value(); 
751   herwig->Hwpram() -> swein=_weiangle_Parm.value();
752   herwig->Hwpram() -> scabi=_cabangle_Parm.value();
753   herwig->Hwpram() -> gamw=_wwidth_Parm.value();
754   herwig->Hwpram() -> gamz=_zwidth_Parm.value();
755   
756   herwig->Hwprop() ->rmass[1]=_down_Parm.value();
757   herwig->Hwprop() ->rmass[2]=_up_Parm.value();
758   herwig->Hwprop() ->rmass[3]=_strange_Parm.value();
759   herwig->Hwprop() ->rmass[4]=_charm_Parm.value();
760   herwig->Hwprop() ->rmass[5]=_bottom_Parm.value(); 
761   herwig->Hwprop() ->rmass[6]=_top_Parm.value();
762   herwig->Hwprop() ->rmass[13]=_gluonmass_Parm.value();
763   herwig->Hwprop() ->rmass[198]=_W_Parm.value();
764   herwig->Hwprop() ->rmass[200]=_Z0_Parm.value();
765   herwig->Hwprop() ->rmass[201]=_higgs_Parm.value();
766   herwig->Hwbosc() ->gammax=_gammax_Parm.value();
767   
768   herwig->Hwpram() -> zprime = _zprime_Parm.value();
769   herwig->Hwprop() -> rmass[202] = _ZP_Parm.value();
770   herwig->Hwpram()-> gamzp = _zpwidth_Parm.value();
771   
772   herwig->Hwrpar() -> rparty = _rparty_Parm.value();
773   
774   herwig->Hwpram() -> iprint = _iprint_Parm.value();
775   herwig->Hwevnt() -> maxpr = _maxpr_Parm.value();
776   herwig->Hwpram() -> prvtx = _prvtx_Parm.value();
777   herwig->Hwpram() -> prndef = _prndef_Parm.value();
778   herwig->Hwpram() -> prntex = _prntex_Parm.value();
779   herwig->Hwpram() -> prnweb = _prnweb_Parm.value();
780   herwig->Hwpram() -> nprfmt = _nprfmt_Parm.value();
781 
782 }
783 //
784 // This routine takes the AbsParms of the Wbb part of the module and transfers
785 // them to the Herwig Common Blocks
786 
787 void WbbgenModule::Absparm2Wbb() {
788 
789 gWbbeams ->ih1=_iih1_Parm.value()-2;
790 gWbbeams ->ih2=_iih2_Parm.value()-2;
791 gWbbeams ->ebeam=_ebeam_Parm.value();
792 gWbpparam ->mq=_mq_Parm.value();
793 gWbevtpari ->njets=_njets_Parm.value();
794 gWbglocut ->ptjmin=_ptjmin_Parm.value();
795 gWbglocut ->etajmax=_etajmax_Parm.value();
796 gWbglocut ->drjmin=_drjmin_Parm.value();
797 gWbglocut ->ptbmin=_ptbmin_Parm.value();
798 gWbglocut ->etabmax=_etabmax_Parm.value();
799 gWbglocut ->drbmin=_drbmin_Parm.value();
800 gWbglocut ->ptlmin=_ptlmin_Parm.value();
801 gWbglocut ->etalmax=_etalmax_Parm.value();
802 gWbglocut ->drlmin=_drlmin_Parm.value();
803 gWbglocut ->ptnmin=_ptnmin_Parm.value();
804 gWbpdfvar ->iqopt=_iqopt_Parm.value();
805 gWbpdfvar ->qfac=_qfac_Parm.value();
806 gWbpdfvar ->ndns=_ndns_Parm.value();
807 gWboptiter ->nopt=_nopt_Parm.value();
808 gWboptiter ->niter=_niter_Parm.value();
809 gWbweights ->maxev=_maxev_Parm.value();
810 gWbkkseed ->kseed[0]=_seed1_Parm.value();
811 gWbkkseed ->kseed[1]=_seed2_Parm.value();
812 gWbgridunit ->jgridr=_jgridr_Parm.value();
813 gWbgridunit ->jgridw=_jgridw_Parm.value();
814 gWbleptontype ->iilepton=_iilepton_Parm.value();
815 
816 int nch;
817 nch = (_wbbfilen.value().size()<20) ? _wbbfilen.value().size() : 19;
818 for(int i=0; i<19; i++) {
819   if(i<nch) {
820     gWbevtout->fname[i] = _wbbfilen.value().c_str()[i];
821   }
822   else {
823     gWbevtout->fname[i] = ' ';
824   }
825 }
826 
827 }
828 
829 void WbbgenModule::InitializeTalkTo() {
830   // Initialize all the menus
831   // ------------------------
832   _01Menu.initialize ("Beam",this);
833   _01Menu.initTitle ("Beam Menu:  Beam types and momenta");
834 
835   _02Menu.initialize ("Sudakov",this);
836   _02Menu.initTitle ("alpha_s order in Sudakov form factors"); 
837 
838   _03Menu.initialize ("Struc_Function",this);
839   _03Menu.initTitle ("Select structure function set");
840 
841   _04Menu.initialize ("Hards",this);
842   _04Menu.initTitle ("Hard scattering process params menu"); 
843 
844   _05Menu.initialize ("Shower",this);
845   _05Menu.initTitle ("Evokes shower parameters menu"); 
846 
847   _06Menu.initialize ("Hadronization",this);
848   _06Menu.initTitle ("Evokes hadronization parameters menu");  
849 
850   _07Menu.initialize ("Underl_event",this);
851   _07Menu.initTitle ("Underlying soft event parameters menu"); 
852 
853   _08Menu.initialize ("Decays",this);
854   _08Menu.initTitle ("Controls Particle Decays");
855 
856   _09Menu.initialize ("Generation",this);
857   _09Menu.initTitle ("Evokes  generation parameter menu");
858 
859   _10Menu.initialize ("Sm_par",this);
860   _10Menu.initTitle("Evokes standard model parameters menu");
861 
862   _11Menu.initialize ("Masses",this);
863   _11Menu.initTitle ("Change particle masses"); 
864 
865   _12Menu.initialize ("Read_susy",this);
866   _12Menu.initTitle ("Read susy file");
867    
868   _13Menu.initialize ("Zprime",this);
869   _13Menu.initTitle ("Control Z-prime");
870    
871   _14Menu.initialize ("Prints",this);
872   _14Menu.initTitle ("Control printing");
873 
874   _15Menu.initialize ("Wbbuser",this);
875   _15Menu.initTitle ("Control wbb process");
876 
877   // Add descriptions for AbsParms
878   // -------------------------------
879   _maxer_Parm.addDescription(
880   "\t\t\tNumber of errors allowed before run stops\n\
881   \t\t\t The syntax is: Maxer set <maxer> ");
882   // _randomseed1_Parm.addDescription(
883   //"\t\t\tHerwig random number seed 1\n\
884     //\t\t\t The syntax is: Randseed1 set <seed> ");
885     //_randomseed2_Parm.addDescription(
886     //"\t\t\tHerwig random number seed 2\n\
887     //\t\t\t The syntax is: Randseed2 set <seed> ");
888 
889   _lambdaQCD_Parm.addDescription( 
890   "\t\t\tSpecify the value of lamba QCD.\n\
891   \t\t\tThe syntax is: Lambda_QCD set <lambda>\n\
892   \t\t\twhere <lambda> is specified in GEV" );
893 
894   //
895   // Descriptions of Beam Parameters, Menu 01
896   // ----------------------------------------
897 
898   _pipsmr_Parm.addDescription(
899   "\t\t\tWhether to smear primary vertex.\n\
900   \t\t\tThe syntax is: Pipsmr set <pipsmr>\n\
901   \t\t\twhere <pipsmr> is 1 (yes) or 0 (no)" );
902 
903   _vipwidx_Parm.addDescription(
904   "\t\t\tSet x width for smeared primary vertex.\n\
905   \t\t\tThe syntax is: Vipwidx set <vipwidx>\n\
906   \t\t\twhere <vipwidx> is specified in mm " );
907 
908   _vipwidy_Parm.addDescription(
909   "\t\t\tSet y width for smeared primary vertex.\n\
910   \t\t\tThe syntax is: Vipwidy set <vipwidy>\n\
911   \t\t\twhere <vipwidy> is specified in mm " );
912 
913   _vipwidz_Parm.addDescription(
914   "\t\t\tSet z width for smeared primary vertex.\n\
915   \t\t\tThe syntax is: Vipwidz set <vipwidz>\n\
916   \t\t\twhere <vipwidz> is specified in mm " );
917 
918   //
919   // Descriptions of Sudakov Parameters, Menu 02
920   // -------------------------------------------
921 
922   _sudord_Parm.addDescription(
923   "\t\t\tSpecify the order of Sudakov calculation.\n\
924   \t\t\tThe syntax is: Sudakov_order set <sudakov_order>\n\
925   \t\t\twhere <sudakov_order> is an integer, 1 or 2");
926 
927   //
928   // Descriptions of Structure Function Parameters, Menu 03
929   // ------------------------------------------------------
930   _autpdf.addDescription(
931   "\t\t\tAuthors of PDF function (MRS,CTEQ,etc) as string variable");
932 
933   _modpdf.addDescription(
934   "\t\t\tPDF number for PDFLIB as integer");
935 
936   //
937   // Descriptions of Hard Scattering Parameters, Menu 04
938   // ---------------------------------------------------
939   //cjl
940   //  _rapiditiesm_Parm.addDescription(
941   //"\t\t\tSet minimum rapidity.\n\
942   // \t\t\tThe command is effective for:\n\
943   // \t\t\t\t IPROC=1500 QCD 2->2 \n\
944   // \t\t\t\t IPROC=17** Heavy flavor production \n\
945   // \t\t\t\t IPROC=1800 Direct photon production\n\
946   // \t\t\tThe syntax is: Ymin set <minrap>");
947   //cjl_e
948   _rapiditiesM_Parm.addDescription(
949   "\t\t\tSet maximum rapidity.\n\
950   \t\t\tThe command is effective for:\n\
951   \t\t\t\t IPROC=1500 QCD 2->2 \n\
952   \t\t\t\t IPROC=17** Heavy flavor production \n\
953   \t\t\t\t IPROC=1800 Direct photon production\n\
954   \t\t\tThe syntax is: Ymax set <maxrap>");
955 
956   _ptm_Parm.addDescription(
957   "\t\t\tSet minimum transverse momentum.\n\
958   \t\t\tThe syntax is: Ptmin set <ptm>\n\
959   \t\t\twhere <ptm> is specified in GEV" );
960 
961   _ptM_Parm.addDescription(
962   "\t\t\tSet maximum transverse momentum.\n\
963   \t\t\tThe syntax is: Ptmax set <ptM>\n\
964   \t\t\twhere <ptM> is specified in GEV" );
965 
966   _invarmassm_Parm.addDescription(
967   "\t\t\tSet min invariant mass limits for Drell-Yan process.\n\
968   \t\t\tThe syntax is: MassMin  set <invarmass>\n\
969   \t\t\twhere <invarmassm> is specified in GEV " );
970 
971   _invarmassM_Parm.addDescription(
972   "\t\t\tSet max invariant mass limits for Drell-Yan process.\n\
973   \t\t\tThe syntax is: MassMax  set <invarmassM>\n\
974   \t\t\twhere <invarmassM> is specified in GEV " );
975 
976   _thrust_Parm.addDescription(
977   "\t\t\tMax thrust for 2->3 process.\n\
978   \t\t\tThe syntax is: ThrustMax set <thrust>");
979 
980   _ptpow_Parm.addDescription(
981   "\t\t\tPower of importance sampling in QCD 2->2 process.\n\
982   \t\t\td(sigma)/dEt fall like ET**(-Ptpow)\n\
983   \t\t\tThe syntax is: Ptpow  set <ptpow>" );
984 
985   _empow_Parm.addDescription(
986   "\t\t\tPower of importance sampling in DRELL-YAN process.\n\
987   \t\t\td(sigma)/dM falls like M**(-Empow)\n\
988   \t\t\tThe syntax is: Empow set <empw> " );
989 
990   _q2pow_Parm.addDescription(
991   "\t\t\tQ**2 power for importance sampling in DILS.\n\
992   \t\t\tThe syntax is: Q2power  set <q2pow>\n\
993   \t\t\twhere <q2pow> is a positive real " );
994 
995   _qlim_Parm.addDescription(
996   "\t\t\tUpper limit on hard process scale.\n\
997   \t\t\tThe syntax is: Qlim set <qlim>");
998 
999   _q2dilsm_Parm.addDescription(
1000   "\t\t\tQ**2 min limit for deep inelastic lepton scattering.\n\
1001   \t\t\tThe syntax is: Q2dilsmin  set <q2dilsm>");
1002 
1003   _q2dilsM_Parm.addDescription(
1004   "\t\t\tQ**2 max limit for deep inelastic lepton scattering.\n\
1005   \t\t\tThe syntax is: Q2dilsmax set <q2dilsM>");
1006 
1007   _bgshat_Parm.addDescription(
1008   "\t\t\tScale switch for boson-gluon fusion.\n\
1009   \t\t\tThe syntax is: Bgshat  set <bgshat>\n\
1010   \t\t\twhere <bgshat> is 1 (true) or 0 (false) " );
1011 
1012   //
1013   // Parton Shower Descriptions, Menu 05
1014   // -----------------------------------
1015   _azsoft_Parm.addDescription(
1016   "\t\t\tSwitch on azimuthal correlation for soft gluons.\n\
1017   \t\t\tThe syntax is: Azsoft set <azsoft>\n\
1018   \t\t\twhere <azsoft> is 1(true) or 0(false) " );
1019 
1020   _azspin_Parm.addDescription(
1021   "\t\t\tSwitch on azimuthal correlation including nearest\n\
1022   \t\t\t\tneighbor spin correlations.\n\
1023   \t\t\tThe syntax is: Azspin set <azspin>\n\
1024   \t\t\twhere <azspin> is  1(true) or 0(false) " );
1025 
1026   _qspac_Parm.addDescription(
1027   "\t\t\tSet lower limit for spacelike evolution.\n\
1028   \t\t\tThe syntax is: Spacelike_evolution set <qspac>");
1029 
1030   _ispac_Parm.addDescription(
1031   "\t\t\tSet ispac controlling qspac precise meaning.\n\
1032   \t\t\tThe syntax is: Ispac set <ispac>\n\
1033   \t\t\twhere <ispac> is 0 or 1 or 2 " );
1034 
1035   _nospac_Parm.addDescription(
1036   "\t\t\tWhether to turn off ISR.\n\
1037   \t\t\tThe syntax is: Nospac set <nospac>\n\
1038   \t\t\twhere <nospac> is 1(true) or 0(false) " );
1039 
1040   _vqcut_Parm.addDescription(
1041   "\t\t\tSet quark virtuality cutoff.\n\
1042   \t\t\tThe syntax is: Qcutoff set <vqcut>");
1043 
1044   _vgcut_Parm.addDescription(
1045   "\t\t\tSet gluon virtuality cutoff.\n\
1046   \t\t\tThe syntax is: Gcutoff  set <vgcut>");
1047 
1048   _vpcut_Parm.addDescription(
1049   "\t\t\tSet photon virtuality cutoff.\n\
1050   \t\t\tThe syntax is: Pcutoff  set <vpcut>");
1051 
1052   _intrinsicpt_Parm.addDescription(
1053   "\t\t\tSet intrinsic pt of incoming hadrons.\n\
1054   \t\t\tThe syntax is: Pt_incoming_hadrons  set <intrinsicpt>");
1055 
1056   // Hadronization Descriptions, Menu 06
1057   // -----------------------------------
1058   _clmax_Parm.addDescription(
1059   "\t\t\tSet mass cluster mass parameter.\n\
1060   \t\t\tThe syntax is: Clmax set <clmax>\n\
1061   \t\t\twhere <clmax> is GEV" );
1062 
1063   _clpow_Parm.addDescription(
1064   "\t\t\tSet mass dependence of cluster hadronization.\n\
1065   \t\t\tThe syntax is: Clpow  set <clpow>");
1066 
1067   _psplt1_Parm.addDescription(
1068   "\t\t\tSet mass distribution in cluster splitting, non-b.\n\
1069   \t\t\tThe syntax is: Psplt1  set <psplt1>");
1070 
1071   _psplt2_Parm.addDescription(
1072   "\t\t\tSet mass distribution in cluster splitting, b.\n\
1073   \t\t\tThe syntax is: Psplt2  set <psplt2>");
1074 
1075   _cldir1_Parm.addDescription(
1076   "\t\t\tSet remember direction in cluster decay to hads, non-b.\n\
1077   \t\t\tThe syntax is: Cldir1  set <cldir1>)\n\
1078   \t\t\twhere <cldir1> is 1(true) or 0(false) " );
1079 
1080   _cldir2_Parm.addDescription(
1081   "\t\t\tSet remember direction in cluster decay to hads, b.\n\
1082   \t\t\tThe syntax is: Cldir2  set <cldir2>)\n\
1083   \t\t\twhere <cldir2> is 1(true) or 0(false) " );
1084 
1085   _clsmr1_Parm.addDescription(
1086   "\t\t\tSet alignment correl. in cluster decay to hads, non-b.\n\
1087   \t\t\tThe syntax is: Clsmr1  set <clsmr1>");
1088 
1089   _clsmr2_Parm.addDescription(
1090   "\t\t\tSet alignment correl. in cluster decay to hads, b.\n\
1091   \t\t\tThe syntax is: Clsmr2  set <clsmr2>");
1092 
1093   _qdiqk_Parm.addDescription(
1094   "\t\t\tSet scale at which gluon can be split into diquarks.\n\
1095   \t\t\tThe syntax is: Qdiqk set <qdiqk>\n\
1096   \t\t\twhere <qdiqk> is in GEV " );
1097 
1098   _pdiqk_Parm.addDescription(
1099   "\t\t\tSet probability of diquark splitting per unit log scale.\n\
1100   \t\t\tThe syntax is: Pdiqk set <pdiqk>");
1101 
1102   _sngwt_Parm.addDescription(
1103   "\t\t\tSet weights for singlet baryons.\n\
1104   \t\t\tThe syntax is: Sngwt set <sngwt>");
1105 
1106   _decwt_Parm.addDescription(
1107   "\t\t\tSet weights for decuplet baryons.\n\
1108   \t\t\tThe syntax is: Decwt set <decwt>");
1109 
1110   _pwt1_Parm.addDescription(
1111   "\t\t\ta priori wt for d.dbar pairs in cluster decays.\n\
1112   \t\t\tThe syntax is: Pwt1 set <ptw1>");
1113 
1114   _pwt2_Parm.addDescription(
1115   "\t\t\ta priori wt for u.ubar pairs in cluster decays.\n\
1116   \t\t\tThe syntax is: Pwt2 set <ptw2>");
1117 
1118   _pwt3_Parm.addDescription(
1119   "\t\t\ta priori wt for s.sbar pairs in cluster decays.\n\
1120   \t\t\tThe syntax is: Pwt3 set <ptw3>");
1121 
1122   _pwt4_Parm.addDescription(
1123   "\t\t\ta priori wt for c.cbar pairs in cluster decays.\n\
1124   \t\t\tThe syntax is: Pwt4 set <ptw4>");
1125 
1126   _pwt5_Parm.addDescription(
1127   "\t\t\ta priori wt for b.bbar pairs in cluster decays.\n\
1128   \t\t\tThe syntax is: Pwt5 set <ptw5>");
1129 
1130   _pwt6_Parm.addDescription(
1131   "\t\t\ta priori wt for t.tbar pairs in cluster decays.\n\
1132   \t\t\tThe syntax is: Pwt6 set <ptw6>");
1133 
1134   _pwt7_Parm.addDescription(
1135   "\t\t\ta priori wt for qq.qqbar pairs in cluster decays.\n\
1136   \t\t\tThe syntax is: Pwt7 set <ptw7>");
1137   
1138   // Underlying Event Descriptions, Menu 07
1139   // --------------------------------------
1140   _prsof_Parm.addDescription(
1141   "\t\t\tSet probability of underlying soft event.\n\
1142   \t\t\tThe syntax is: Prsof set <prsof>");
1143 
1144   _ensof_Parm.addDescription(
1145   "\t\t\tSet multiplicity enhancement for underlying soft event.\n\
1146   \t\t\tThe syntax is: Ensof set <ensof>");
1147  
1148   _pmbn1_Parm.addDescription(
1149   "\t\t\tSet soft interaction model parameter.\n\
1150   \t\t\tThe syntax is: Pmbn1 set <pmbn1>");
1151 
1152   _pmbn2_Parm.addDescription(
1153   "\t\t\tSet soft interaction model parameter.\n\
1154   \t\t\tThe syntax is: Pmbn2 set <pmbn2>");
1155 
1156   _pmbn3_Parm.addDescription(
1157   "\t\t\tSet (negative of) soft interaction model parameter.\n\
1158   \t\t\tThe syntax is: Pmbn3 set <pmbn3>");
1159 
1160   _pmbk1_Parm.addDescription(
1161   "\t\t\tSet soft interaction model parameter.\n\
1162   \t\t\tThe syntax is: Pmbk1 set <pmbk1>");
1163 
1164   _pmbk2_Parm.addDescription(
1165   "\t\t\tSet (negative of) soft interaction model parameter.\n\
1166   \t\t\tThe syntax is: Pmbk2 set <pmbk2>");
1167 
1168   _pmbm1_Parm.addDescription(
1169   "\t\t\tSet soft interaction model parameter.\n\
1170   \t\t\tThe syntax is: Pmbm1 set <pmbm1>");
1171 
1172   _pmbm2_Parm.addDescription(
1173   "\t\t\tSet soft interaction model parameter.\n\
1174   \t\t\tThe syntax is: Pmbm2 set <pmbm2>");
1175 
1176   _pmbp1_Parm.addDescription(
1177   "\t\t\tSet soft interaction model parameter.\n\
1178   \t\t\tThe syntax is: Pmbp1 set <pmbp1>");
1179 
1180   _pmbp2_Parm.addDescription(
1181   "\t\t\tSet soft interaction model parameter.\n\
1182   \t\t\tThe syntax is: Pmbp2 set <pmbp2>");
1183 
1184   _pmbp3_Parm.addDescription(
1185   "\t\t\tSet soft interaction model parameter.\n\
1186   \t\t\tThe syntax is: Pmbp3 set <pmbp3>");
1187 
1188   // Decays Descriptions, Menu 08
1189   // ----------------------------
1190   _pizstable_Parm.addDescription(
1191   "\t\t\tSet whether pizeros are to be stable.\n\
1192   \t\t\tThe syntax is: Pizstable set <pizstable>\n\
1193   \t\t\twhere <pizstable> is 1(true) or 0(false) " );
1194   _pltcut_Parm.addDescription(
1195   "\t\t\tSet lifetime cut in secs above which particles are stable.\n\
1196   \t\t\tThe syntax is: Pltcut set <pltcut> " );
1197 
1198   _modbos1_Parm.addDescription(
1199   "\t\t\tSet force weak boson decay modes (see Table in Herwig6 doc).\n\
1200   \t\t\tThe syntax is: Modbos1 set <modbos(1)> " );
1201 
1202   _modbos2_Parm.addDescription(
1203   "\t\t\tSet force weak boson decay modes (see Table in Herwig6 doc).\n\
1204   \t\t\tThe syntax is: Modbos2 set <modbos(2)> " );
1205 
1206   // Generation Parameter Descriptions, Menu 09
1207   // ------------------------------------------
1208   _eventweight_Parm.addDescription(
1209   "\t\t\tSpecify whether event are unweighted.\n\
1210   \t\t\tThe syntax is: No_weights set <nowt>\n\
1211   \t\t\tWhere <nowt> is 1 or 0.");
1212 
1213   //   _avwgt_Parm.addDescription(
1214   //"\t\t\tSet default mean event weight.\n\
1215   // \t\t\tThis parameter is only used if Use_weight=false\n\
1216   //  \t\t\tThe syntax is: Avwgt set <wt>");
1217 
1218   _maxweight_Parm.addDescription(
1219   "\t\t\tSets max weight.\n\
1220   \t\t\tThe syntax is: Maxwt set <maxweight>");
1221 
1222   _effmin_Parm.addDescription(
1223   "\t\t\tSets min efficiency for event generation.\n\
1224   \t\t\tThe syntax is: Effmin set <effmin>");
1225 
1226   _noshower_Parm.addDescription(
1227   "\t\t\tTurn off parton shower.\n\
1228   \t\t\tThe syntax is: No_shower set <noshower>\n\
1229   \t\t\twhere <noshower> is true or false" );
1230 
1231   _nohadroniz_Parm.addDescription(
1232   "\t\t\tTurn off hadronization.\n\
1233   \t\t\tThe syntax is: No_hadronization set <nohadroniz>\n\
1234   \t\t\twhere <nohadroniz> is true or false" );
1235 
1236 
1237   _tlout_Parm.addDescription(
1238   "\t\t\ttime (sec) needed to terminate gracefully.\n\
1239   \t\t\tThe syntax is: Tlout   set <tlout>\n\
1240   \t\t\twhere <tlout> is in sec" );
1241 
1242   // SM-Parameter Menu item Descriptions, Menu 10
1243   // -------------------------------------------
1244 
1245   _colors_Parm.addDescription(
1246   "\t\t\tSet number of colors.\n\
1247   \t\t\tThe syntax is: Colors set <ncolors>");
1248 
1249   _flavors_Parm.addDescription(
1250   "\t\t\tSet number of flavors.\n\
1251   \t\t\tThe syntax is: Flavors set <flavors>");
1252 
1253   _weiangle_Parm.addDescription(
1254   "\t\t\tSet sin**2 of Weinberg angle.\n\
1255   \t\t\tThe syntax is: Weinberge_angle set <weiangle>\n\
1256   \t\t\twhere <weiangle> is real (0,1)" );
1257 
1258   _cabangle_Parm.addDescription(
1259   "\t\t\tSet sin**2 of Cabibbo angle.\n\
1260   \t\t\tThe syntax is: Cabibbo_angle set <cabangle>\n\
1261   \t\t\twhere <cabangle> is real (0,1)" );
1262 
1263   _wwidth_Parm.addDescription(
1264   "\t\t\tSet width of W boson.\n\
1265   \t\t\tThe syntax is: W_width set <wwidth>\n\
1266   \t\t\twhere <wwidth> is in GEV" );
1267 
1268   _zwidth_Parm.addDescription(
1269   "\t\t\tSet width of Z boson.\n\
1270   \t\t\tThe syntax is: Z_width set <zwidth>\n\
1271   \t\t\twhere <zwidth> is in GEV" );
1272 
1273   // Descriptions of Quark Mass Parameters, Menu 11
1274   // ----------------------------------------------
1275   _down_Parm.addDescription(
1276   "\t\t\tSet down quark mass.\n\
1277   \t\t\tThe syntax is: down   set <down>\n\
1278   \t\t\twhere <down> is in GEV" );
1279   _up_Parm.addDescription(
1280   "\t\t\tSet up quark mass.\n\
1281   \t\t\tThe syntax is: up   set <up>\n\
1282   \t\t\twhere <up> is in GEV" );
1283   _strange_Parm.addDescription(
1284   "\t\t\tSet strange quark mass.\n\
1285   \t\t\tThe syntax is: strange   set <strange>\n\
1286   \t\t\twhere <strange> is in GEV" );
1287   _charm_Parm.addDescription(
1288   "\t\t\tSet charm quark mass.\n\
1289   \t\t\tThe syntax is: charm   set <charm>\n\
1290   \t\t\twhere <charm> is in GEV" );
1291   _bottom_Parm.addDescription(
1292   "\t\t\tSet bottom quark mass.\n\
1293   \t\t\tThe syntax is: bottom   set <bottom>\n\
1294   \t\t\twhere <bottom> is in GEV" );
1295   _top_Parm.addDescription(
1296   "\t\t\tSet top quark mass.\n\
1297   \t\t\tThe syntax is: top   set <top>\n\
1298   \t\t\twhere <top> is in GEV" );
1299   _gluonmass_Parm.addDescription(
1300   "\t\t\tSet  gluon effective mass.\n\
1301   \t\t\tThe syntax is: gluon   set <gluonmass>\n\
1302   \t\t\twhere <gluonmass> is in GEV" );
1303   _W_Parm.addDescription(
1304   "\t\t\tSet W+/- mass.\n\
1305   \t\t\tThe syntax is: W   set <W>\n\
1306   \t\t\twhere <W> is in GEV" );
1307   _Z0_Parm.addDescription(
1308   "\t\t\tSet Z0 mass.\n\
1309   \t\t\tThe syntax is: Z0  set <Z0>\n\
1310   \t\t\twhere <Z0> is in GEV" );
1311   _higgs_Parm.addDescription(
1312   "\t\t\tSet  Higgs mass.\n\
1313   \t\t\tThe syntax is: Higgs   set <higgs>\n\
1314   \t\t\twhere <Higgs> is in GEV" );
1315   _gammax_Parm.addDescription(
1316   "\t\t\tSet limit on range of Higgs mass distribution.\n\
1317   \t\t\tThe syntax is: Gammax   set <gammax>\n\
1318   \t\t\twhere <gammax> multiplies the Higgs width" );
1319 
1320   // Read_susy Descriptions, Menu 12
1321   // --------------------------------------
1322 
1323   _read_Filesusy.addDescription(
1324   "\t\t\tSpecify the name of the file used to read the\n\
1325   \t\t\t\tSUSY particle properties.\n\
1326   \t\t\tThe format of the command is: File_Readsusy set <filename>" );
1327 
1328   _rparty_Parm.addDescription(
1329   "\t\t\tSet whether R-parity is conserved in SUSY.\n\
1330   \t\t\tThe syntax is: Rparty   set <rparty>\n\
1331   \t\t\twhere <rparty> is 1 (yes) or 0 (no)" );
1332 
1333   // Z-prime Description, Menu 13
1334   // ----------------------------
1335   _zprime_Parm.addDescription(
1336   "\t\t\tWhether to use a Z-prime particle.\n\
1337   \t\t\tThe syntax is: Zprime  set <zprime>\n\
1338   \t\t\twhere <zprime> is 0 or 1");
1339 
1340   _ZP_Parm.addDescription(
1341   "\t\t\tSet mass of the Z-prime particle.\n\
1342   \t\t\tThe syntax is: ZP  set <ZP>\n\
1343   \t\t\twhere <ZP> is mass in GeV");
1344 
1345   _zpwidth_Parm.addDescription(
1346   "\t\t\tSet width of the Z-prime particle.\n\
1347   \t\t\tThe syntax is: ZP_width  set <zpwidth>\n\
1348   \t\t\twhere <zpwidth> is width in GeV");
1349 
1350   // Prints Description, Menu 14
1351   // ---------------------------
1352 
1353   _iprint_Parm.addDescription(
1354   "\t\t\tHerwig print level control.\n\
1355   \t\t\tThe syntax is: iprint   set <print>\n\
1356   \t\t\twhere :\n\
1357   \t\t\t     0 No printout;\n\
1358   \t\t\t     1 Print selected input parameters;\n\
1359   \t\t\t     2 1 + table of particle codes and properties;\n\
1360   \t\t\t     3 2 + tables of Sudakov form factors." );
1361 
1362   _maxpr_Parm.addDescription(
1363   "\t\t\tDump of Herwig event for maxpr events.\n\
1364   \t\t\tThe syntax is: maxpr   set <maxpr>\n\
1365   \t\t\twhere <maxpr> is no. of events to dump");
1366 
1367   _prvtx_Parm.addDescription(
1368   "\t\t\tWhether to include vtx info in dump of Herwig events.\n\
1369   \t\t\tThe syntax is: prvtx   set <prvtx>\n\
1370   \t\t\twhere <prvtx> is 1 (yes) or 0 (no)");
1371 
1372   _prndef_Parm.addDescription(
1373   "\t\t\tPrint to screen or log file in ASCII.\n\
1374   \t\t\tThe syntax is: prndef   set <prndef>\n\
1375   \t\t\twhere <prndef> is 1 (yes) or 0 (no)");
1376 
1377   _prntex_Parm.addDescription(
1378   "\t\t\tPrint to file in LATEX format.\n\
1379   \t\t\tThe syntax is: prntex   set <prntex>\n\
1380   \t\t\twhere <prntex> is 1 (yes) or 0 (no)");
1381 
1382   _prnweb_Parm.addDescription(
1383   "\t\t\tPrint to file in html format.\n\
1384   \t\t\tThe syntax is: prnweb   set <prnweb>\n\
1385   \t\t\twhere <prnweb> is 1 (yes) or 0 (no)");
1386 
1387   _nprfmt_Parm.addDescription(
1388   "\t\t\tHow may sig. figures in printing.\n\
1389   \t\t\tThe syntax is: nprfmt   set <nprfmt>\n\
1390   \t\t\twhere <nprfmt> is 1 (short) or 2 (long)");
1391 
1392   // commands of Menu 15: Wbbuser Menu 
1393   // --------------------------------
1394   _iih1_Parm.addDescription(
1395   "\t\t\t1st incident beam, prot=3 antip=1");
1396   _iih2_Parm.addDescription(
1397   "\t\t\t2nd incident beam, prot=3 antip=1");
1398   _ebeam_Parm.addDescription(
1399   "\t\t\t1st incident beam energy in GeV");
1400   _mq_Parm.addDescription(
1401   "\t\t\tmass of b quark for Wbb process");
1402   _njets_Parm.addDescription(
1403   "\t\t\tno. of jets in Wbb + njets, def. is 3");
1404   _ndns_Parm.addDescription(
1405   "\t\t\tpdf set to use, in pdfset code, def. is 61");
1406   _ptjmin_Parm.addDescription(
1407   "\t\t\tmin. pt of non-b jet parton (GeV), def. is 20");
1408   _etajmax_Parm.addDescription(
1409   "\t\t\tmax. eta of non-b jet parton");
1410   _drjmin_Parm.addDescription(
1411   "\t\t\tmin. dr between two non-b jet partons");
1412   _ptbmin_Parm.addDescription(
1413   "\t\t\tmin. pt of b parton (GeV), def. is 20");
1414   _etabmax_Parm.addDescription(
1415   "\t\t\tmax. eta of b parton");
1416   _drbmin_Parm.addDescription(
1417   "\t\t\tmin. dr between two b partons");
1418   _ptlmin_Parm.addDescription(
1419   "\t\t\tmin. pt of charged lepton (GeV), def. is 20");
1420   _etalmax_Parm.addDescription(
1421   "\t\t\tmax. eta of charged lepton");
1422   _drlmin_Parm.addDescription(
1423   "\t\t\tmin. dr between chg lepton and a parton b");
1424   _ptnmin_Parm.addDescription(
1425   "\t\t\tmin. pt of neutrino (GeV), def. is 0");
1426   _iqopt_Parm.addDescription(
1427   "\t\t\tqsq scale, 0 (MW**2), 1 (MW**2+PT**2)");
1428   _qfac_Parm.addDescription(
1429   "\t\t\tqfac for Wbb process");
1430   _nopt_Parm.addDescription(
1431   "\t\t\tno. of events per iteration");
1432   _niter_Parm.addDescription(
1433   "\t\t\tno. of iterations ");
1434   _maxev_Parm.addDescription(
1435   "\t\t\tmax. no. of events to generate");
1436   _seed1_Parm.addDescription(
1437   "\t\t\tfirst seed, integer");
1438   _seed2_Parm.addDescription(
1439   "\t\t\tsecond seed, integer");
1440   _jgridr_Parm.addDescription(
1441   "\t\t\tgrid read unit, def. is 0, cannot be 70-75");
1442   _jgridw_Parm.addDescription(
1443   "\t\t\tgrid write unit, def. is 22, cannot be 70-75");
1444   _iilepton_Parm.addDescription(
1445   "\t\t\tlepton from W decay, 11 for el (def), 13 mu, 15 tau");
1446   _wbbfilen.addDescription(
1447   "\t\t\tprimary name of intermediate files");
1448 
1449   // Attach all menus and parameters to the appropriate pages
1450   // ---------------------------------------------------------
1451   commands( )->append( &_maxer_Parm);
1452   //commands( )->append( &_randomseed1_Parm);
1453   //commands( )->append( &_randomseed2_Parm);
1454   commands( )->append( &_lambdaQCD_Parm);
1455 
1456   commands( )->append( &_01Menu);
1457   commands( )->append( &_02Menu);
1458   commands( )->append( &_03Menu);
1459   commands( )->append( &_04Menu);  
1460   commands( )->append( &_05Menu);
1461   commands( )->append( &_06Menu);
1462   commands( )->append( &_07Menu);  
1463   commands( )->append( &_08Menu);
1464   commands( )->append( &_09Menu);
1465   commands( )->append( &_10Menu);
1466   commands( )->append( &_11Menu);
1467   commands( )->append( &_12Menu);
1468   commands( )->append( &_13Menu);
1469   commands( )->append( &_14Menu);                 
1470   commands( )->append( &_15Menu);                 
1471 
1472 
1473   //   _01Menu.commands( )->append( &_Beamtype1_Parm);
1474   //   _01Menu.commands( )->append( &_Energy1_Parm);
1475   //   _01Menu.commands( )->append( &_Beamtype2_Parm);
1476   //   _01Menu.commands( )->append( &_Energy2_Parm);  
1477 
1478   _01Menu.commands( )->append( &_pipsmr_Parm);
1479   _01Menu.commands( )->append( &_vipwidx_Parm);
1480   _01Menu.commands( )->append( &_vipwidy_Parm);
1481   _01Menu.commands( )->append( &_vipwidz_Parm);
1482 
1483   _02Menu.commands( )->append( &_sudord_Parm);
1484 
1485   _03Menu.commands( )->append( &_autpdf);
1486   _03Menu.commands( )->append( &_modpdf);
1487 
1488   //cjl   _04Menu.commands( )->append ( &_rapiditiesm_Parm);
1489   _04Menu.commands( )->append ( &_rapiditiesM_Parm);
1490   _04Menu.commands( )->append ( &_ptm_Parm);
1491   _04Menu.commands( )->append ( &_ptM_Parm);
1492   _04Menu.commands( )->append ( &_invarmassm_Parm);
1493   _04Menu.commands( )->append ( &_invarmassM_Parm);
1494   _04Menu.commands( )->append ( &_thrust_Parm);
1495   _04Menu.commands( )->append ( &_ptpow_Parm);
1496   _04Menu.commands( )->append ( &_empow_Parm);
1497   _04Menu.commands( )->append ( &_q2pow_Parm);
1498   _04Menu.commands( )->append ( &_qlim_Parm); 
1499   _04Menu.commands( )->append ( &_q2dilsm_Parm); 
1500   _04Menu.commands( )->append ( &_q2dilsM_Parm);
1501   _04Menu.commands( )->append ( &_bgshat_Parm);
1502    
1503   _05Menu.commands( )->append ( &_azsoft_Parm);
1504   _05Menu.commands( )->append ( &_azspin_Parm);
1505   _05Menu.commands( )->append ( &_qspac_Parm);
1506   _05Menu.commands( )->append ( &_ispac_Parm);
1507   _05Menu.commands( )->append ( &_nospac_Parm);
1508   _05Menu.commands( )->append ( &_vqcut_Parm);
1509   _05Menu.commands( )->append ( &_vgcut_Parm);
1510   _05Menu.commands( )->append ( &_vpcut_Parm);
1511   _05Menu.commands( )->append ( &_intrinsicpt_Parm);
1512 
1513   _06Menu.commands( )->append (& _clmax_Parm);
1514   _06Menu.commands( )->append (& _clpow_Parm);
1515   _06Menu.commands( )->append (& _psplt1_Parm);
1516   _06Menu.commands( )->append (& _psplt2_Parm);
1517   _06Menu.commands( )->append (& _cldir1_Parm);
1518   _06Menu.commands( )->append (& _cldir2_Parm);
1519   _06Menu.commands( )->append (& _clsmr1_Parm);
1520   _06Menu.commands( )->append (& _clsmr2_Parm);
1521   _06Menu.commands( )->append (& _qdiqk_Parm);
1522   _06Menu.commands( )->append (& _pdiqk_Parm);
1523   _06Menu.commands( )->append (& _sngwt_Parm);
1524   _06Menu.commands( )->append (& _decwt_Parm);
1525   _06Menu.commands( )->append (& _pwt1_Parm);
1526   _06Menu.commands( )->append (& _pwt2_Parm);
1527   _06Menu.commands( )->append (& _pwt3_Parm);
1528   _06Menu.commands( )->append (& _pwt4_Parm);
1529   _06Menu.commands( )->append (& _pwt5_Parm);
1530   _06Menu.commands( )->append (& _pwt6_Parm);
1531   _06Menu.commands( )->append (& _pwt7_Parm);
1532 
1533   _07Menu.commands( )->append (& _prsof_Parm);
1534   _07Menu.commands( )->append (& _ensof_Parm);
1535   _07Menu.commands( )->append (& _pmbn1_Parm);
1536   _07Menu.commands( )->append (& _pmbn2_Parm);
1537   _07Menu.commands( )->append (& _pmbn3_Parm);
1538   _07Menu.commands( )->append (& _pmbk1_Parm);
1539   _07Menu.commands( )->append (& _pmbk2_Parm);
1540   _07Menu.commands( )->append (& _pmbm1_Parm);
1541   _07Menu.commands( )->append (& _pmbm2_Parm);
1542   _07Menu.commands( )->append (& _pmbp1_Parm);
1543   _07Menu.commands( )->append (& _pmbp2_Parm);
1544   _07Menu.commands( )->append (& _pmbp3_Parm);
1545 
1546   _08Menu.commands( )->append (& _pizstable_Parm);
1547   _08Menu.commands( )->append (& _pltcut_Parm);
1548   _08Menu.commands( )->append (& _modbos1_Parm);
1549   _08Menu.commands( )->append (& _modbos2_Parm);
1550 
1551   _09Menu.commands( )->append (& _eventweight_Parm);
1552   _09Menu.commands( )->append (& _maxweight_Parm);
1553   _09Menu.commands( )->append (& _effmin_Parm);
1554   _09Menu.commands( )->append (& _noshower_Parm);
1555   _09Menu.commands( )->append (& _nohadroniz_Parm);
1556   _09Menu.commands( )->append (& _tlout_Parm);
1557 
1558   _10Menu.commands( )->append (& _colors_Parm);
1559   _10Menu.commands( )->append (& _flavors_Parm);
1560   _10Menu.commands( )->append (& _weiangle_Parm);
1561   _10Menu.commands( )->append (& _cabangle_Parm);
1562   _10Menu.commands( )->append (& _wwidth_Parm);
1563   _10Menu.commands( )->append (& _zwidth_Parm);
1564 
1565   _11Menu.commands( )->append (& _down_Parm);
1566   _11Menu.commands( )->append (& _up_Parm);
1567   _11Menu.commands( )->append (& _strange_Parm);
1568   _11Menu.commands( )->append (& _charm_Parm);
1569   _11Menu.commands( )->append (& _bottom_Parm);
1570   _11Menu.commands( )->append (& _top_Parm);
1571   _11Menu.commands( )->append (& _gluonmass_Parm);
1572   _11Menu.commands( )->append (& _W_Parm);
1573   _11Menu.commands( )->append (& _Z0_Parm); 
1574   _11Menu.commands( )->append (& _higgs_Parm);
1575   _11Menu.commands( )->append (& _gammax_Parm); 
1576 
1577   _12Menu.commands( )->append( &_read_Filesusy);
1578   _12Menu.commands( )->append (& _rparty_Parm);
1579 
1580   _13Menu.commands()->append(& _zprime_Parm);
1581   _13Menu.commands()->append(& _ZP_Parm);
1582   _13Menu.commands()->append(& _zpwidth_Parm);
1583 
1584   _14Menu.commands()->append(& _iprint_Parm);
1585   _14Menu.commands()->append(& _maxpr_Parm);
1586   _14Menu.commands()->append(& _prvtx_Parm);
1587   _14Menu.commands()->append(& _prndef_Parm);
1588   _14Menu.commands()->append(& _prntex_Parm);
1589   _14Menu.commands()->append(& _prnweb_Parm);
1590   _14Menu.commands()->append(& _nprfmt_Parm);
1591    
1592   _15Menu.commands()->append(& _iih1_Parm);
1593   _15Menu.commands()->append(& _iih2_Parm);
1594   _15Menu.commands()->append(& _ebeam_Parm);
1595   _15Menu.commands()->append(& _mq_Parm);
1596   _15Menu.commands()->append(& _njets_Parm);
1597   _15Menu.commands()->append(& _ndns_Parm);
1598   _15Menu.commands()->append(& _ptjmin_Parm);
1599   _15Menu.commands()->append(& _etajmax_Parm);
1600   _15Menu.commands()->append(& _drjmin_Parm);
1601   _15Menu.commands()->append(& _ptbmin_Parm);
1602   _15Menu.commands()->append(& _etabmax_Parm);
1603   _15Menu.commands()->append(& _drbmin_Parm);
1604   _15Menu.commands()->append(& _ptlmin_Parm);
1605   _15Menu.commands()->append(& _etalmax_Parm);
1606   _15Menu.commands()->append(& _drlmin_Parm);
1607   _15Menu.commands()->append(& _ptnmin_Parm);
1608   _15Menu.commands()->append(& _iqopt_Parm);
1609   _15Menu.commands()->append(& _qfac_Parm);
1610   _15Menu.commands()->append(& _nopt_Parm);
1611   _15Menu.commands()->append(& _niter_Parm);
1612   _15Menu.commands()->append(& _maxev_Parm);
1613   _15Menu.commands()->append(& _seed1_Parm);
1614   _15Menu.commands()->append(& _seed2_Parm);
1615   _15Menu.commands()->append(& _jgridr_Parm);
1616   _15Menu.commands()->append(& _jgridw_Parm);
1617   _15Menu.commands()->append(& _iilepton_Parm);
1618   _15Menu.commands()->append(&  _wbbfilen);
1619 }
1620 
1621 //-----------------------------------------------------------------------------
1622 // $Id:
1623 // $Log:
1624 //-----------------------------------------------------------------------------
1625 
1626 
1627 
1628 

source navigation ] diff markup ] identifier search ] freetext search ] file search ]

This page was automatically generated by the LXR engine.
The LXR team
Valid HTML 4.01!

Send problems or questions to cdfcode@fnal.gov