Esempio n. 1
0
void modelinfo(void)
{ 
  goto_xy(5,1);
  scrcolor(Red,BGmain); print("   Model:  ");
  scrcolor(FGmain,BGmain);
  print(currentModelName());
  if(forceUG) print("/Unitary Gauge/");
  else        print("                  ");
}
Esempio n. 2
0
static void  writeSLHA(void)
{  int i;
   FILE *f;
   char fName[100];

   for(i=1;;i++)
   { sprintf(fName,"decaySLHA%d.txt",i);
     if(access(fName,R_OK)) break;     
   }
       
   f=fopen(fName,"w");
   
   fprintf(f,"BLOCK ModelParameters # %s\n",currentModelName());
   for(i=0;i<nModelVars;i++)
   fprintf(f," %3d  %16E # %s\n",i+1, (double)varValues[i], varNames[i]);    
   fprintf(f,"#\n");

   for(i=0;i<nModelParticles;i++)
   {  
    fprintf(f,"BLOCK QNUMBERS %d  # %s\n", ModelPrtcls[i].NPDG, ModelPrtcls[i].name);   
    fprintf(f," 1  %d # 3*el.charge\n 2  %d # 2*spin+1\n 3  %d # color dim\n 4  %d # 0={ self-conjugated}\n#\n",
         ModelPrtcls[i].q3, 
         ModelPrtcls[i].spin2+1, 
         ModelPrtcls[i].cdim, 
         strcmp(ModelPrtcls[i].name,ModelPrtcls[i].aname)? 1:0   );
   }

   fprintf(f,"BLOCK MASS\n");   
   for(i=0;i<nModelParticles;i++) 
   { char *name=ModelPrtcls[i].name;
     fprintf(f," %d  %E # %s\n",ModelPrtcls[i].NPDG,pMass(name),name);
   }
   fprintf(f,"#\n");

   for(i=0;i<nModelParticles;i++)
   {  txtList all=NULL;
      double mass,width;
      char *name;
      
      if( strcmp(ModelPrtcls[i].mass,"0")==0) continue;
      if( strcmp(ModelPrtcls[i].width,"0")==0) continue;
      name=ModelPrtcls[i].name;
      mass=pMass(name);
      if(!mass) continue;
      slhaDecayPrint(name,0,f);
      fprintf(f,"#\n");          
   }
   fclose(f);
   { char buff[100];
     sprintf(buff,"See results in file '%s'", fName);
     messanykey(16,5,buff); 
   }                  
}