Changeset 3694 in Sophya for trunk/AddOn


Ignore:
Timestamp:
Dec 1, 2009, 7:01:36 PM (16 years ago)
Author:
ansari
Message:

petites optimisations et corrections, Reza 01/12/2009

Location:
trunk/AddOn/TAcq
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/AddOn/TAcq/brbaseproc.cc

    r3686 r3694  
    1818/* --Methode-- */
    1919BRBaseProcessor::BRBaseProcessor(RAcqMemZoneMgr& memgr)
    20   : memgr_(memgr)
     20  : memgr_(memgr), vpaq_(memgr.NbFibres()), vpchk_(memgr.NbFibres()), vfgok_(memgr.NbFibres()),
     21    curfc_(memgr.NbFibres())
    2122{
    2223  stop_ = false;
    2324  for(size_t fib=0; fib<(size_t)memgr_.NbFibres(); fib++)  {
    24     vpaq_.push_back(BRPaquet(NULL,memgr_.PaqSize()));
    25     vpchk_.push_back(BRPaqChecker(true,0));
    26     vfgok_.push_back(true);
    27     curfc_.push_back(0);
     25    vpaq_[fib]=BRPaquet(NULL,memgr_.PaqSize());
     26    vpchk_[fib]=BRPaqChecker(true,0);
     27    vfgok_[fib]=true;
     28    curfc_[fib]=0;
    2829  }
     30  fcfirst_=ttfirst_=0;
    2931  totprocnpaq_=0;
    3032}
  • trunk/AddOn/TAcq/brbaseproc.h

    r3683 r3694  
    3434  bool stop_; 
    3535  vector<BRPaquet> vpaq_;   // Vecteur de BRPaquet pour chaque fibre
     36  vector<BRPaqChecker> vpchk_;
    3637  vector<uint_8> vfgok_;    // Vecteur de flag si paquet OK pour chaque fibre
    3738  vector<uint_8> curfc_;    // Vecteur de numero de FrameCounter pour chaque fibre
     39
     40  uint_8 fcfirst_;
     41  uint_8 ttfirst_;
    3842  bool fgokallfibers_;      // true -> paquets for all fibers OK
    39   vector<BRPaqChecker> vpchk_;
     43
    4044  uint_8 totprocnpaq_;
    4145};
  • trunk/AddOn/TAcq/brpaqu.h

    r3683 r3694  
    116116  // Cree d'un objet BRPaquet de taille paqsz sur la zone dst   
    117117  BRPaquet(Byte* srcdst, int paqsz);
    118   BRPaquet(int paqsz);
     118  BRPaquet(int paqsz=16424);   // Set aussi de constructeur par defaut
    119119  BRPaquet(BRPaquet const& paq);
    120120
  • trunk/AddOn/TAcq/brproc.cc

    r3692 r3694  
    3333BRVisibilityCalculator::BRVisibilityCalculator(RAcqMemZoneMgr& memgr, string outpath, uint_4 nmean,
    3434                                               uint_4 freq1, uint_4 freq2, uint_4 nbfreq)
    35   : BRBaseProcessor(memgr), outpath_(outpath), nmean_(nmean), numfreq1_(freq1), numfreq2_(freq2), nbinfreq_(nbfreq)
     35  : BRBaseProcessor(memgr), outpath_(outpath), nmean_(nmean), numfreq1_(freq1), numfreq2_(freq2), nbinfreq_(nbfreq),
     36    vpdata_(2*memgr.NbFibres())
    3637    // , dtfos_(outpath+"visdt.fits", Fits_Create), visdt_(dtfos_, 1024, true);
    3738
     
    4243  chanum_.SetSize(vismtx_.NRows());
    4344  sa_size_t k=0;
     45  for(size_t i=0; i<2*memgr_.NbFibres(); i++)  vpdata_[i]=NULL;
    4446  for(size_t i=0; i<2*memgr_.NbFibres(); i++) {
    4547    for(size_t j=i; j<2*memgr_.NbFibres(); j++) {
     
    107109  */
    108110  // On s'arrange pour mettre les canaux dans l'ordre pour les observations de Pittsburgh Nov 2009
    109   for(size_t fib=0; fib<(size_t)memgr_.NbFibres(); fib++)
    110     vpdata.push_back(vpaq_[fib].Data1C());
    111   for(size_t fib=0; fib<(size_t)memgr_.NbFibres(); fib++)
    112     vpdata.push_back(vpaq_[fib].Data2C());
     111  for(size_t fib=0; fib<(size_t)memgr_.NbFibres(); fib++) {
     112    vpdata_[2*fib] = vpaq_[fib].Data1C();
     113    vpdata_[2*fib+1] = vpaq_[fib].Data2C();
     114  }
    113115
    114116  if (totnbpaq_%nmean_ == 0) {
     
    132134 
    133135  sa_size_t k=0;
    134   for(size_t i=0; i<vpdata.size(); i++) {
    135     for(size_t j=i; j<vpdata.size(); j++) {
     136  for(size_t i=0; i<vpdata_.size(); i++) {
     137    for(size_t j=i; j<vpdata_.size(); j++) {
    136138      TVector< complex<r_4> > vis = vismtx_.Row(k);   k++;
    137139      for(sa_size_t f=1; f<vis.Size(); f++) {
    138         vis(f) += complex<r_4>((r_4)vpdata[i][f].realB(), (r_4)vpdata[i][f].imagB()) *
    139           complex<r_4>((r_4)vpdata[j][f].realB(), -(r_4)vpdata[j][f].imagB());
     140        vis(f) += complex<r_4>((r_4)vpdata_[i][f].realB(), (r_4)vpdata_[i][f].imagB()) *
     141          complex<r_4>((r_4)vpdata_[j][f].realB(), -(r_4)vpdata_[j][f].imagB());
    140142      }
    141143    }
  • trunk/AddOn/TAcq/brproc.h

    r3692 r3694  
    3939  uint_4 numfreq1_,numfreq2_,nbinfreq_;
    4040  uint_4 jf1_,jf2_,djf_;
    41   uint_4 numfile_;
     41
     42  vector<TwoByteComplex*> vpdata_;
    4243
    4344  double moyfc_, moytt_;
     
    4748  DataTable visdt_;
    4849
     50  uint_4 numfile_;
    4951  uint_4 totnbpaq_;
    5052  double* xnt_;
  • trunk/AddOn/TAcq/svv2mtx.cc

    r3647 r3694  
    6363    int nfreq=0;
    6464    sscanf(arg[3],"%d,%d,%d",&jf1,&jf2,&nfreq);
     65    int card=1;
     66    if (narg>4) card=atoi(arg[4]);
    6567    cout << " ----- svv2mtx.cc Start - InOutPath= " << inoutpath << " IMin,Max,Step="
    66          << imin << "," << imax << "," << istep << " JF=" << jf1 << "," << jf2 << "  ------- " << endl;
    67     int card=1;
    68     if (narg>4) card=atoi(arg[3]);
     68         << imin << "," << imax << "," << istep << " Card=" << card << endl;
     69    cout << "Frequency num range JF=" << jf1 << "," << jf2 << "," << nfreq << "  ------- " << endl;
    6970    ResourceUsage resu;
    70     rc=ProcSVFiles(inoutpath, imin, imax, istep, jf1, jf2, card);
     71    rc=ProcSVFiles(inoutpath, imin, imax, istep, jf1, jf2, nfreq, card);
    7172    resu.Update();
    7273    cout << resu;
Note: See TracChangeset for help on using the changeset viewer.