9 #include <dqm_core/AlgorithmConfig.h>
19 #include <dqm_core/AlgorithmManager.h>
45 const TObject &
object,
46 const dqm_core::AlgorithmConfig &
config )
50 if(
object.
IsA()->InheritsFrom(
"TH1" ) ) {
53 throw dqm_core::BadConfig( ERS_HERE,
name,
"does not inherit from TH1" );
58 if (
histogram->GetEffectiveEntries() < minstat ) {
60 result->tags_[
"InsufficientEffectiveEntries"] =
histogram->GetEffectiveEntries();
73 catch ( dqm_core::Exception & ex ) {
74 throw dqm_core::BadConfig( ERS_HERE,
name, ex.what(), ex );
76 ERS_DEBUG(1,
"Axis for skewness calculation:"<<
axis);
82 ERS_DEBUG(1,
"Skewness = "<<skewness<<
" +- "<<skewness_e);
83 result->tags_[
"Skewness"] = skewness;
84 result->tags_[
"ApproxStandardError"]=skewness_e;
86 if ( CompareSkewnessTest( m_name , skewness ,gthreshold) ) {
88 }
else if ( CompareSkewnessTest( m_name, skewness, rthreshold) ) {
89 result->status_ = dqm_core::Result::Yellow;
112 out<<
"SkewnessTest_"+m_name+
" : Checks if the Skewness of the distribution is "+m_name+
" threshold value\n"<<std::endl;
114 out<<
"Mandatory Green/Red Threshold: S: Value of Skewness"<<std::endl;
116 out<<
"Optional Parameter: MinStat: Minimum histogram statistics needed to perform Algorithm"<<std::endl;
117 out<<
"Optional Parameter: Axis: Axis along which compute Skewness: 1=X, 2=Y, 3=Z"<<std::endl;