22 #include <core/io/pdb/pose_io.hh>
23 #include <core/pack/task/TaskFactory.hh>
24 #include <core/pack/task/PackerTask.hh>
25 #include <core/pack/pack_rotamers.hh>
26 #include <core/pose/Pose.hh>
27 #include <core/pose/util.hh>
28 #include <core/pose/PDBInfo.hh>
29 #include <core/scoring/ScoreFunction.hh>
30 #include <core/scoring/ScoreFunctionFactory.hh>
31 #include <core/scoring/TenANeighborGraph.hh>
32 #include <core/kinematics/MoveMap.hh>
33 #include <core/optimization/MinimizerOptions.hh>
34 #include <core/optimization/AtomTreeMinimizer.hh>
37 #include <basic/options/keys/out.OptionKeys.gen.hh>
38 #include <basic/options/keys/relax.OptionKeys.gen.hh>
39 #include <basic/options/keys/in.OptionKeys.gen.hh>
40 #include <basic/options/keys/docking.OptionKeys.gen.hh>
41 #include <basic/options/keys/pocket_grid.OptionKeys.gen.hh>
43 #include <core/scoring/Energies.hh>
46 #include <protocols/rigid/RigidBodyMover.hh>
47 #include <protocols/rigid/RB_geometry.hh>
48 #include <core/chemical/ResidueTypeSet.hh>
49 #include <core/conformation/ResidueFactory.hh>
50 #include <core/kinematics/FoldTree.hh>
51 #include <core/conformation/Residue.hh>
52 #include <core/conformation/Conformation.hh>
53 #include <protocols/simple_moves/SuperimposeMover.hh>
55 #include <protocols/jd2/JobDistributor.hh>
56 #include <protocols/jd2/JobOutputter.hh>
57 #include <protocols/jd2/NoOutputJobOutputter.hh>
59 #include <protocols/jd2/util.hh>
61 #include <protocols/moves/Mover.hh>
62 #include <protocols/moves/Mover.fwd.hh>
69 #include <core/id/AtomID.hh>
70 #include <core/id/AtomID_Map.hh>
71 #include <core/scoring/rms_util.hh>
72 #include <core/scoring/rms_util.tmpl.hh>
75 #include <core/import_pose/import_pose.hh>
76 #include <core/conformation/Residue.hh>
78 #include <core/kinematics/MoveMap.hh>
81 #include <protocols/pockets/PocketGrid.hh>
87 using namespace core::scoring;
88 using namespace core::optimization;
89 using namespace basic::options::OptionKeys;
90 using namespace conformation;
91 using namespace core::pose::datacache;
92 using namespace core::id;
93 using namespace protocols::rigid;
94 using namespace protocols::simple_moves;
95 using namespace protocols;
96 using namespace protocols::moves;
111 virtual MoverOP
clone()
const;
112 virtual MoverOP fresh_instance()
const;
115 virtual std::string get_name()
const;
139 using namespace pose;
141 using namespace basic::options::OptionKeys;
142 using namespace core;
144 std::string
const resid_c =
option[central_relax_pdb_num];
147 if ( resid_c.length() ) {
148 std::string resid_tag = resid_c;
150 std::size_t fpos( resid_tag.find(
','));
151 if ( fpos == std::string::npos )
break;
154 std::string out_exfname = get_current_tag().substr(0,get_current_tag().find_last_of(
"_")) +
".pdb."+ resid_tag +
".exemplar.pdb";
156 std::vector< conformation::ResidueCOP >
residues = protocols::pockets::PocketGrid::getRelaxResidues(pose, resid_c);
158 protocols::pockets::PocketGrid comparison_pg( residues );
159 comparison_pg.zeroAngle();
160 comparison_pg.autoexpanding_pocket_eval( residues, pose ) ;
161 comparison_pg.dumpExemplarToFile( out_exfname.c_str() );
167 return "ExemplarMover";
172 int main(
int argc,
char * argv [] ) {
175 using namespace core;
176 using namespace protocols::moves;
177 using namespace scoring;
179 using namespace protocols::jobdist;
180 using namespace basic::options::OptionKeys;
181 using protocols::moves::MoverOP;
183 NEW_OPT( central_relax_pdb_num,
"target residue(s)",
"-1");
188 option.add_relevant( OptionKeys::in::file::fullatom );
193 protocols::jd2::JobDistributor::get_instance()->go( protocol, jd2::JobOutputterOP(
new jd2::NoOutputJobOutputter ) );
197 std::cerr <<
"caught exception " << e.
msg() << std::endl;
static THREAD_LOCAL basic::Tracer TR("apps.public.make_exemplar.main", basic::t_debug)
int main(int argc, char *argv[])
General testing code.
ocstream cerr(std::cerr)
Wrapper around std::cerr.
virtual std::string const msg() const
void init(int argc, char *argv[])
Command line init() version.
virtual void test_move(Pose &pose)
virtual MoverOP clone() const
rule< Scanner, options_closure::context_t > options
#define OPT_KEY(type, key)
virtual void apply(Pose &pose)
Output file stream wrapper for uncompressed and compressed files.
Option lookup functions emulating Rosetta++ equivalents for transitional use.
#define NEW_OPT(akey, help, adef)
vector1: std::vector with 1-based indexing
Program options global and initialization function.
static void clone(T *&dst, S *src, int n)
virtual std::string get_name() const
virtual MoverOP fresh_instance() const
rule< Scanner, option_closure::context_t > option