--- trunk/src/applications/staticProps/GofAngle2.cpp 2005/02/16 19:36:30 353 +++ trunk/src/applications/staticProps/GofAngle2.cpp 2005/02/17 16:21:07 360 @@ -46,10 +46,21 @@ namespace oopse { namespace oopse { -GofAngle2::GofAngle2(SimInfo* info, const std::string& filename, const std::string& sele1, const std::string& sele2) - : RadialDistrFunc(info, filename, sele1, sele2){ - setOutputName(getPrefix(filename) + ".gfotw"); +GofAngle2::GofAngle2(SimInfo* info, const std::string& filename, const std::string& sele1, + const std::string& sele2, int nangleBins) + : RadialDistrFunc(info, filename, sele1, sele2), nAngleBins_(nangleBins) { + setOutputName(getPrefix(filename) + ".gto"); + + deltaCosAngle_ = 2.0 / nAngleBins_; + + histogram_.resize(nAngleBins_); + avgGofr_.resize(nAngleBins_); + for (int i = 0 ; i < nAngleBins_; ++i) { + histogram_[i].resize(nAngleBins_); + avgGofr_[i].resize(nAngleBins_); + } + } @@ -108,19 +119,23 @@ void GofAngle2::writeRdf() { rdfStream << "#radial distribution function\n"; rdfStream << "#selection1: (" << selectionScript1_ << ")\t"; rdfStream << "selection2: (" << selectionScript2_ << ")\n"; - rdfStream << "#r\tcorrValue\n"; + rdfStream << "#nAngleBins =" << nAngleBins_ << "deltaCosAngle = " << deltaCosAngle_ << "\n"; for (int i = 0; i < avgGofr_.size(); ++i) { double cosAngle1 = -1.0 + (i + 0.5)*deltaCosAngle_; for(int j = 0; j < avgGofr_[i].size(); ++j) { - double cosAngle2 = -1.0 + (i + 0.5)*deltaCosAngle_; - rdfStream << cosAngle1 << "\t" << cosAngle2 << "\t" << avgGofr_[i][j]/nProcessed_ << "\n"; + double cosAngle2 = -1.0 + (j + 0.5)*deltaCosAngle_; + rdfStream <