32 #include <basic/Tracer.hh>
40 #include <utility/exit.hh>
41 #include <utility/vector1.hh>
44 static basic::Tracer
tr(
"protocols.evalution.RMSD");
46 namespace simple_filters {
53 : evaluation::SingleValuePoseEvaluator<
Real > (
"rms"+tag ),
59 report_gdt_components_ ( false )
61 runtime_assert( start >=1 );
62 runtime_assert( end <= pose -> total_residue() );
68 : evaluation::SingleValuePoseEvaluator<
Real > (
"rms"+tag),
71 end_( pose->total_residue() ),
74 report_gdt_components_ ( false )
80 static basic::Tracer
tr(
"protocols.Evaluator.RMSD");
81 tr.Debug <<
"compute RMSD for " << tag <<
" for residues " <<
start_ <<
"..." <<
end_ << std::endl;
88 tr.Debug <<
"compute GDT-score for " << tag << std::endl;
99 tr.Debug <<
"compute maxsub for " << tag << std::endl;
120 : evaluation::SingleValuePoseEvaluator<
Real >(
"rms"+tag ),
122 selection_( selection ),
130 : evaluation::SingleValuePoseEvaluator<
Real >(
"rms"+tag ),
135 copy( selection.begin(), selection.end(), std::back_inserter(
selection_ ) );
140 : evaluation::SingleValuePoseEvaluator<
Real >(
"rms"+tag ),
149 : evaluation::SingleValuePoseEvaluator<
Real >(
"rms"+tag ),
150 rmsd_pose_( new core::pose::
Pose( pose ) ),
160 if ( !target_pose ) {
164 if ( !target_pose ) utility_exit_with_message(
" no target pose for rmsd simple_filters "+
tag_ );
184 : evaluation::SingleValuePoseEvaluator<
Real >(
"gdtmm"+tag ),
186 selection_( selection ),
193 : evaluation::SingleValuePoseEvaluator<
Real >(
"gdtmm"+tag ),
197 copy( selection.begin(), selection.end(), std::back_inserter(
selection_ ) );
201 : evaluation::SingleValuePoseEvaluator<
Real >(
"gdtmm"+tag ),
209 : evaluation::SingleValuePoseEvaluator<
Real >(
"gdtmm"+tag ),
210 rmsd_pose_( new core::pose::
Pose( pose ) ),
221 if ( !target_pose ) {
225 if ( !target_pose ) utility_exit_with_message(
" no target pose for rmsd simple_filters "+
tag_ );
235 : evaluation::SingleValuePoseEvaluator<
Real >(
"maxsub"+tag ),
237 selection_( selection ),
239 rmsd_threshold_( rmsd_threshold )
245 : evaluation::SingleValuePoseEvaluator<
Real >(
"maxsub"+tag ),
248 rmsd_threshold_( rmsd_threshold )
250 copy( selection.begin(), selection.end(), std::back_inserter(
selection_ ) );
254 : evaluation::SingleValuePoseEvaluator<
Real >(
"maxsub"+tag ),
257 rmsd_threshold_( rmsd_threshold )
263 : evaluation::SingleValuePoseEvaluator<
Real >(
"maxsub"+tag ),
264 rmsd_pose_( new core::pose::
Pose( pose ) ),
266 rmsd_threshold_( rmsd_threshold )
283 : evaluation::SingleValuePoseEvaluator<
Real > (
"symmetric rms"+tag ),
284 rmsd_pose_( pose ) {}
295 : evaluation::SingleValuePoseEvaluator<
Real >(
"looprms"+tag ),
299 superimpose_( superimpose )
303 : evaluation::SingleValuePoseEvaluator<
Real >(
"looprms"+tag ),
308 superimpose_( superimpose )
315 bool temp_pose=
false;
316 if ( !target_pose ) {
321 if ( !target_pose ) utility_exit_with_message(
" no target pose for rmsd simple_filters "+
name(0) );
328 if ( temp_pose ) target_pose=NULL;