00001
00002
00003
00004 #ifndef SCALA_SETSCORES
00005 #define SCALA_SETSCORES
00006
00007
00008
00009 #include "score_datatypes.hh"
00010 #include "spline.hh"
00011
00012 #include "range.hh"
00013 #include "controls.hh"
00014
00015 #include "mtz_unmerge_io.hh"
00016 #include "hkl_symmetry.hh"
00017 #include "hkl_unmerge.hh"
00018 #include "normalise.hh"
00019
00020 namespace scala
00021 {
00022
00023 class SetScores
00024
00025
00026 {
00027 private:
00028 correl_coeff OverallCC_;
00029 Rfactor OverallRfactor_;
00030
00031 public:
00032 SetScores() {}
00033
00034
00035 void addIstats(const IsigI mnIsigI, const reflection& this_refl,
00036 const PairSet& set);
00037
00038 void addPairStats(const reflection& this_refl,
00039 const PairSet& set,
00040 const Normalise& NormRes);
00041 void DumpPairs(FILE* file,
00042 const reflection& this_refl,
00043 const PairSet& set,
00044 const Normalise& NormRes);
00045
00046
00047 void addDsetIstats(const IsigI& Is1, const IsigI& Is2,
00048 const Normalise& NormRes1,
00049 const Normalise& NormRes2,
00050 const float& sSqr);
00051
00052 void addDsetIstats(const IsigI& Is1, const IsigI& Is2);
00053
00054
00055 void SetScoresTrue() {OverallCC_.SetCC(); OverallRfactor_.SetR();}
00056
00057 void print() const;
00058
00059 correl_coeff OverallCC() const {return OverallCC_;}
00060 Rfactor OverallRfactor() const {return OverallRfactor_;}
00061
00062 SetScores& operator+=(const SetScores& other);
00063 friend SetScores& operator+ (const SetScores& a, const SetScores& b);
00064
00065 };
00066 }
00067
00068 #endif