45 #include <ObjexxFCL/string.functions.hh>
48 #include <utility/pointer/ReferenceCount.hh>
49 #include <utility/vector1.hh>
50 #include <utility/string_util.hh>
51 #include <utility/file/FileName.hh>
53 #include <basic/options/option.hh>
54 #include <basic/Tracer.hh>
63 #include <basic/options/option_macros.hh>
64 #include <basic/options/keys/evaluation.OptionKeys.gen.hh>
65 #include <basic/options/keys/abinitio.OptionKeys.gen.hh>
66 #include <basic/options/keys/in.OptionKeys.gen.hh>
72 #include <utility/vector0.hh>
79 static basic::Tracer
tr(
"protocols.evalution");
82 namespace evaluation {
88 using namespace basic::options;
91 OPT( evaluation::rmsd );
92 OPT( evaluation::gdtmm );
94 OPT( evaluation::pool );
95 OPT( evaluation::constraints );
96 OPT( in::file::native );
97 OPT( evaluation::chemical_shifts );
102 exclude_list.clear();
104 for (
Size ir = 1; ir <= nres; ++ir ) {
105 bool include_residue =
false;
106 for (
Size ex = 1; ex <= include_list.size(); ex ++ ) {
107 if ( include_list[ex] == ir ) {
108 include_residue =
true;
113 if ( !include_residue ) {
114 exclude_list.push_back( ir );
121 for (
Size pos = 1; pos <= pose->total_residue(); pos++ ) {
122 if ( pose->residue_type( pos ).is_protein() && pose->residue_type( pos ).has(
"CA") ) {
125 for (
Size j=1; j<= pose->residue( pos ).natoms(); ++j ) {
126 if ( ( ca_pos - pose->residue( pos ).atom(j).xyz() ).length() > 20 ) {
130 if ( good ) selection.push_back( pos );
133 if (
tr.Trace.visible() ) {
134 tr.Trace <<
"selection of residues for rmsd of " << tag << std::endl;
135 for ( std::list< core::Size >::const_iterator it = selection.begin(), eit = selection.end();
137 tr.Trace <<
" " << *it;
139 tr.Trace << std::endl;
146 pss->fill_struct( pose,
"eval" );
147 eval.
apply( pose,
"eval", *pss );
149 pss->print_score_header( os );
151 pss->print_scores( os );