当前位置: 首页>>代码示例>>C++>>正文


C++ Trajectory::add_constituents方法代码示例

本文整理汇总了C++中Trajectory::add_constituents方法的典型用法代码示例。如果您正苦于以下问题:C++ Trajectory::add_constituents方法的具体用法?C++ Trajectory::add_constituents怎么用?C++ Trajectory::add_constituents使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Trajectory的用法示例。


在下文中一共展示了Trajectory::add_constituents方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: CreateTrajectory

//--------------------------------------------------------------------
  RP::Trajectory* KFSvcManager::CreateTrajectory(std::vector<const Hit* > hits, 
                                                std::vector<double> hitErrors) 
//--------------------------------------------------------------------
  {
    
    log4cpp::Category& klog = log4cpp::Category::getRoot();

    klog << log4cpp::Priority::DEBUG << " In CreateTrajectory --> " ;
  
    klog << log4cpp::Priority::DEBUG << "Cov Matrix --> " ;
    EVector m(3,0);
    fCov = EMatrix(3,3,0);
    
    for (size_t i=0; i<3; ++i)
    {
      fCov[i][i] = hitErrors[i];
    }

    klog << log4cpp::Priority::DEBUG << "Cov Matrix --> " << fCov;

    // destroy measurements in fMeas container
    //stc_tools::destroy(fMeas);

    RP::measurement_vector fMeas;

    auto size = hits.size();

    klog << log4cpp::Priority::DEBUG << " size of hits --> " << size;
    klog << log4cpp::Priority::DEBUG << " fill measurement vector --> " << size;

    for(auto hit : hits)
    {
      m[0]=hit->XYZ().X();
      m[1]=hit->XYZ().Y();
      m[2]=hit->XYZ().Z();
 
      klog << log4cpp::Priority::DEBUG << "+++hit x = " << m[0] 
      << " y = " << m[1] << " z = " << m[2];
      klog << log4cpp::Priority::DEBUG << "Create a measurement " ;

      Measurement* meas = new Measurement(); 
      string type=RP::xyz;
   
      meas->set_name(type);                         // the measurement type
      meas->set_hv(HyperVector(m,fCov,type));  // the HyperVector 
      meas->set_deposited_energy(hit->Edep()); // the deposited energy
      meas->set_name(RP::setup_volume,"mother");          // the volume
        
      // the  position of the measurement
      klog << log4cpp::Priority::DEBUG << "Create measurement plane " ;

      meas->set_position_hv(HyperVector(m,EMatrix(3,3,0),RP::xyz));

      //    Add the measurement to the vector
      fMeas.push_back(meas);
    }
    
    // add the measurements to the trajectory
    klog << log4cpp::Priority::INFO << " Measurement vector created "  ;
    
    Trajectory* trj = new Trajectory();
    trj->add_constituents(fMeas);  

    klog << log4cpp::Priority::INFO << " Trajectory --> " << *trj ;

    return trj;
  }
开发者ID:jjgomezcadenas,项目名称:alex2,代码行数:68,代码来源:KFSvc.cpp


注:本文中的Trajectory::add_constituents方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。