Rosetta 3.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PointMutationCalculator.hh
Go to the documentation of this file.
1 // -*- mode:c++;tab-width:2;indent-tabs-mode:t;show-trailing-whitespace:t;rm-trailing-spaces:t -*-
2 // vi: set ts=2 noet:
3 //
4 // (c) Copyright Rosetta Commons Member Institutions.
5 // (c) This file is part of the Rosetta software suite and is made available under license.
6 // (c) The Rosetta software is developed by the contributing members of the Rosetta Commons.
7 // (c) For more information, see http://www.rosettacommons.org. Questions about this can be
8 // (c) addressed to University of Washington UW TechTransfer, email: license@u.washington.edu.
9 
10 /// @file protocols/design_opt/PointMutationCalculator.hh
11 /// @author Chris King (chrisk1@uw.edu)
12 
13 #ifndef INCLUDED_protocols_design_opt_PointMutationCalculator_hh
14 #define INCLUDED_protocols_design_opt_PointMutationCalculator_hh
16 #include <core/types.hh>
17 #include <core/pose/Pose.fwd.hh>
18 #include <core/chemical/AA.hh>
19 #include <utility/tag/Tag.fwd.hh>
21 #include <protocols/moves/Mover.hh>
27 
28 #include <utility/vector1.hh>
29 
30 #ifdef PYROSETTA
32 #endif
33 
34 
35 namespace protocols {
36 namespace design_opt{
37 
39 {
40 public:
42 public:
50  bool dump_pdb = false,
51  bool rtmin = false,
52  bool parallel = false,
53  core::Real design_shell = -1.0,
54  core::Real repack_shell = 8.0
55  );
61  std::string sample_type = "low",
62  bool dump_pdb = false,
63  bool rtmin = false,
64  bool parallel = false,
65  core::Real design_shell = -1.0,
66  core::Real repack_shell = 8.0
67  );
68  virtual ~PointMutationCalculator();
69 
70  void mutate_and_relax(
71  core::pose::Pose & pose,
72  core::Size const & resi,
73  core::chemical::AA const & target_aa
74  );
75 
76  void mutate_and_relax(
77  core::pose::Pose & pose,
78  core::Size const & resi,
79  core::chemical::AA const & target_aa,
81  );
82 
83  void eval_filters(
84  core::pose::Pose & pose,
85  bool & filter_pass,
87  );
88 
89  void calc_point_mut_filters( Pose const & start_pose,
91  void calc_point_mut_filters( Pose const & start_pose,
92  utility::vector1< std::pair< core::Size, utility::vector1< std::pair< core::chemical::AA, core::Real > > > > & seqpos_aa_val_vec );
94 
103  bool dump_pdb() const;
104  void dump_pdb( bool const dump_pdb );
107  void rtmin( bool const r );
108  bool rtmin() const;
109  void parallel( bool const r );
110  bool parallel() const;
111  void set_design_shell( core::Real dz_shell );
112  void set_repack_shell( core::Real rp_shell );
113 
114 private:
120  bool dump_pdb_;
121  bool rtmin_; //dflt false; should we rtmin after repack?
122  bool parallel_; //parallelize calculator with MPI?
123  core::Real design_shell_; // dflt -1 which does not mutate the neighbors
125 };
126 
127 
128 } // design_opt
129 } // protocols
130 
131 
132 #endif /*INCLUDED_protocols_design_opt_PointMutationCalculator_HH*/