Changeset 2095 for branches/casa-prerelease/pre-asap/src
- Timestamp:
- 04/01/11 21:43:18 (14 years ago)
- Location:
- branches/casa-prerelease/pre-asap
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/casa-prerelease/pre-asap
-
branches/casa-prerelease/pre-asap/src
- Property svn:mergeinfo changed
/trunk/src merged: 2094
- Property svn:mergeinfo changed
-
branches/casa-prerelease/pre-asap/src/SConscript
- Property svn:mergeinfo changed (with no actual effect on merging)
-
branches/casa-prerelease/pre-asap/src/Scantable.cpp
r2082 r2095 1761 1761 } 1762 1762 1763 void Scantable::polyBaseline(const std::vector<bool>& mask, int order, bool outLogger, const std::string& blfile)1763 void Scantable::polyBaseline(const std::vector<bool>& mask, int order, bool getResidual, bool outLogger, const std::string& blfile) 1764 1764 { 1765 1765 ofstream ofs; … … 1789 1789 chanMask = getCompositeChanMask(whichrow, mask); 1790 1790 fitBaseline(chanMask, whichrow, fitter); 1791 setSpectrum( fitter.getResidual(), whichrow);1791 setSpectrum((getResidual ? fitter.getResidual() : fitter.getFit()), whichrow); 1792 1792 outputFittingResult(outLogger, outTextFile, chanMask, whichrow, coordInfo, hasSameNchan, ofs, "polyBaseline()", fitter); 1793 1793 } … … 1796 1796 } 1797 1797 1798 void Scantable::autoPolyBaseline(const std::vector<bool>& mask, int order, const std::vector<int>& edge, float threshold, int chanAvgLimit, bool outLogger, const std::string& blfile)1798 void Scantable::autoPolyBaseline(const std::vector<bool>& mask, int order, const std::vector<int>& edge, float threshold, int chanAvgLimit, bool getResidual, bool outLogger, const std::string& blfile) 1799 1799 { 1800 1800 ofstream ofs; … … 1850 1850 1851 1851 fitBaseline(chanMask, whichrow, fitter); 1852 setSpectrum( fitter.getResidual(), whichrow);1852 setSpectrum((getResidual ? fitter.getResidual() : fitter.getFit()), whichrow); 1853 1853 1854 1854 outputFittingResult(outLogger, outTextFile, chanMask, whichrow, coordInfo, hasSameNchan, ofs, "autoPolyBaseline()", fitter); … … 1858 1858 } 1859 1859 1860 void Scantable::cubicSplineBaseline(const std::vector<bool>& mask, int nPiece, float thresClip, int nIterClip, bool outLogger, const std::string& blfile)1860 void Scantable::cubicSplineBaseline(const std::vector<bool>& mask, int nPiece, float thresClip, int nIterClip, bool getResidual, bool outLogger, const std::string& blfile) 1861 1861 { 1862 1862 ofstream ofs; … … 1886 1886 chanMask = getCompositeChanMask(whichrow, mask); 1887 1887 //fitBaseline(chanMask, whichrow, fitter); 1888 //setSpectrum( fitter.getResidual(), whichrow);1888 //setSpectrum((getResidual ? fitter.getResidual() : fitter.getFit()), whichrow); 1889 1889 std::vector<int> pieceEdges; 1890 1890 std::vector<float> params; 1891 std::vector<float> res = doCubicSplineFitting(getSpectrum(whichrow), chanMask, nPiece, pieceEdges, params, thresClip, nIterClip, true);1891 std::vector<float> res = doCubicSplineFitting(getSpectrum(whichrow), chanMask, nPiece, pieceEdges, params, thresClip, nIterClip, getResidual); 1892 1892 setSpectrum(res, whichrow); 1893 1893 // … … 1899 1899 } 1900 1900 1901 void Scantable::autoCubicSplineBaseline(const std::vector<bool>& mask, int nPiece, float thresClip, int nIterClip, const std::vector<int>& edge, float threshold, int chanAvgLimit, bool outLogger, const std::string& blfile)1901 void Scantable::autoCubicSplineBaseline(const std::vector<bool>& mask, int nPiece, float thresClip, int nIterClip, const std::vector<int>& edge, float threshold, int chanAvgLimit, bool getResidual, bool outLogger, const std::string& blfile) 1902 1902 { 1903 1903 ofstream ofs; … … 1954 1954 1955 1955 //fitBaseline(chanMask, whichrow, fitter); 1956 //setSpectrum( fitter.getResidual(), whichrow);1956 //setSpectrum((getResidual ? fitter.getResidual() : fitter.getFit()), whichrow); 1957 1957 std::vector<int> pieceEdges; 1958 1958 std::vector<float> params; 1959 std::vector<float> res = doCubicSplineFitting(getSpectrum(whichrow), chanMask, nPiece, pieceEdges, params, thresClip, nIterClip, true);1959 std::vector<float> res = doCubicSplineFitting(getSpectrum(whichrow), chanMask, nPiece, pieceEdges, params, thresClip, nIterClip, getResidual); 1960 1960 setSpectrum(res, whichrow); 1961 1961 // … … 1973 1973 } 1974 1974 if (nPiece < 1) { 1975 throw(AipsError(" wrong number of the sections for fitting"));1975 throw(AipsError("number of the sections must be one or more")); 1976 1976 } 1977 1977 … … 2215 2215 chanMask = getCompositeChanMask(whichrow, mask); 2216 2216 //fitBaseline(chanMask, whichrow, fitter); 2217 //setSpectrum( fitter.getResidual(), whichrow);2217 //setSpectrum((getResidual ? fitter.getResidual() : fitter.getFit()), whichrow); 2218 2218 std::vector<float> params; 2219 //std::vector<float> res = doSinusoidFitting(getSpectrum(whichrow), chanMask, nWaves, params, thresClip, nIterClip, true);2220 2219 std::vector<float> res = doSinusoidFitting(getSpectrum(whichrow), chanMask, nWaves, maxWaveLength, params, thresClip, nIterClip, getResidual); 2221 2220 setSpectrum(res, whichrow); … … 2283 2282 2284 2283 //fitBaseline(chanMask, whichrow, fitter); 2285 //setSpectrum( fitter.getResidual(), whichrow);2284 //setSpectrum((getResidual ? fitter.getResidual() : fitter.getFit()), whichrow); 2286 2285 std::vector<float> params; 2287 2286 std::vector<float> res = doSinusoidFitting(getSpectrum(whichrow), chanMask, nWaves, maxWaveLength, params, thresClip, nIterClip, getResidual); … … 2335 2334 2336 2335 const double PI = 6.0 * asin(0.5); // PI (= 3.141592653...) 2337 double baseXFactor = 2.0*PI/(double)maxWaveLength/(double)(nChan-1); //the denominator (nChan-1) should be changed to (xdata[nChan-1]-xdata[0]) for accepting x-values given in velocity or frequency when this function is moved to fitter. 2336 double baseXFactor = 2.0*PI/(double)maxWaveLength/(double)(nChan-1); //the denominator (nChan-1) should be changed to (xdata[nChan-1]-xdata[0]) for accepting x-values given in velocity or frequency when this function is moved to fitter. (2011/03/30 WK) 2338 2337 2339 2338 // xArray : contains elemental values for computing the least-square matrix. … … 2635 2634 2636 2635 if (verbose) { 2637 for (int i = 0; i < 60; ++i) {2638 oss << "-";2639 }2640 oss << endl;2641 2636 oss << " Scan[" << getScan(whichrow) << "]"; 2642 2637 oss << " Beam[" << getBeam(whichrow) << "]"; … … 2659 2654 oss << "Results of baseline fit" << endl; 2660 2655 oss << " rms = " << setprecision(6) << rms << endl; 2656 for (int i = 0; i < 60; ++i) { 2657 oss << "-"; 2658 } 2659 oss << flush; 2661 2660 } 2662 2661 -
branches/casa-prerelease/pre-asap/src/Scantable.h
r2082 r2095 497 497 void polyBaseline(const std::vector<bool>& mask, 498 498 int order, 499 bool getResidual=true, 499 500 bool outLogger=false, 500 501 const std::string& blfile=""); … … 504 505 float threshold=3.0, 505 506 int chanAvgLimit=1, 507 bool getResidual=true, 506 508 bool outLogger=false, 507 509 const std::string& blfile=""); … … 510 512 float thresClip, 511 513 int nIterClip, 514 bool getResidual=true, 512 515 bool outLogger=false, 513 516 const std::string& blfile=""); … … 519 522 float threshold=3.0, 520 523 int chanAvgLimit=1, 524 bool getResidual=true, 521 525 bool outLogger=false, 522 526 const std::string& blfile=""); … … 679 683 float thresClip=3.0, 680 684 int nIterClip=1, 681 bool getResidual= false);685 bool getResidual=true); 682 686 std::vector<float> doSinusoidFitting(const std::vector<float>& data, 683 687 const std::vector<bool>& mask, … … 687 691 float thresClip=3.0, 688 692 int nIterClip=1, 689 bool getResidual= false);693 bool getResidual=true); 690 694 bool hasSameNchanOverIFs(); 691 695 std::string getMaskRangeList(const std::vector<bool>& mask, -
branches/casa-prerelease/pre-asap/src/ScantableWrapper.h
r2082 r2095 257 257 { table_->reshapeSpectrum( nmin, nmax ); } 258 258 259 void polyBaseline(const std::vector<bool>& mask, int order, bool outlog=false, const std::string& blfile="")260 { table_->polyBaseline(mask, order, outlog, blfile); }261 262 void autoPolyBaseline(const std::vector<bool>& mask, int order, const std::vector<int>& edge, float threshold=5.0, int chan_avg_limit=1, bool outlog=false, const std::string& blfile="")263 { table_->autoPolyBaseline(mask, order, edge, threshold, chan_avg_limit, outlog, blfile); }264 265 void cubicSplineBaseline(const std::vector<bool>& mask, int npiece, float clipthresh, int clipniter, bool outlog=false, const std::string& blfile="")266 { table_->cubicSplineBaseline(mask, npiece, clipthresh, clipniter, outlog, blfile); }267 268 void autoCubicSplineBaseline(const std::vector<bool>& mask, int npiece, float clipthresh, int clipniter, const std::vector<int>& edge, float threshold=5.0, int chan_avg_limit=1, bool outlog=false, const std::string& blfile="")269 { table_->autoCubicSplineBaseline(mask, npiece, clipthresh, clipniter, edge, threshold, chan_avg_limit, outlog, blfile); }259 void polyBaseline(const std::vector<bool>& mask, int order, bool getresidual=true, bool outlog=false, const std::string& blfile="") 260 { table_->polyBaseline(mask, order, getresidual, outlog, blfile); } 261 262 void autoPolyBaseline(const std::vector<bool>& mask, int order, const std::vector<int>& edge, float threshold=5.0, int chan_avg_limit=1, bool getresidual=true, bool outlog=false, const std::string& blfile="") 263 { table_->autoPolyBaseline(mask, order, edge, threshold, chan_avg_limit, getresidual, outlog, blfile); } 264 265 void cubicSplineBaseline(const std::vector<bool>& mask, int npiece, float clipthresh, int clipniter, bool getresidual=true, bool outlog=false, const std::string& blfile="") 266 { table_->cubicSplineBaseline(mask, npiece, clipthresh, clipniter, getresidual, outlog, blfile); } 267 268 void autoCubicSplineBaseline(const std::vector<bool>& mask, int npiece, float clipthresh, int clipniter, const std::vector<int>& edge, float threshold=5.0, int chan_avg_limit=1, bool getresidual=true, bool outlog=false, const std::string& blfile="") 269 { table_->autoCubicSplineBaseline(mask, npiece, clipthresh, clipniter, edge, threshold, chan_avg_limit, getresidual, outlog, blfile); } 270 270 271 271 void sinusoidBaseline(const std::vector<bool>& mask, const std::vector<int>& nwave, float maxwavelength, float clipthresh, int clipniter, bool getresidual=true, bool outlog=false, const std::string& blfile="")
Note:
See TracChangeset
for help on using the changeset viewer.