示例#1
0
boost::python::list sin_2D_Ham(double x, double y, boost::python::list params_){ 
// sin_2D hamiltonian in diabatic representation

  MATRIX H(2,2);
  MATRIX dH1(2,2);
  MATRIX d2H1(2,2);
  MATRIX dH2(2,2);
  MATRIX d2H2(2,2);


  int sz = boost::python::len(params_);
  vector<double> params(sz,0.0);
  for(int i=0;i<sz;i++){ params[i] = boost::python::extract<double>(params_[i]);  }

  sin_2D_Ham(x,y,&H,&dH1,&d2H1,&dH2,&d2H2,params);

  boost::python::list res;
  res.append(x);
  res.append(H);
  res.append(dH1);
  res.append(d2H1);
  res.append(dH2);
  res.append(d2H2);

 
  return res;

}
示例#2
0
void Plugin::H1(double val,const char * name, const char * title, int count, double from, double to)
{
 TH1D *hist=0;
 gDirectory->GetObject(name,hist); // this could be skipped, but it's faster this way
 if (!hist)
   hist=dH1(name,title,count,from,to);
 hist->Fill(val);
}