I want to code the below scripts using PyRosetta. I'm totally new to Pyrosetta, only starting to read the tutorials today. However, I know Python very well. Anyway, all the scripts seem to be calling the denovo_density.linuxgccrelease binary so I'm guessing, if there's a Pyrosetta class or module built on that, it shouldn't be but a few lines of code.
My qustions are, can it be done? How?
#!/bin/sh
mkdir round3_alpha_tubulin
$ROSETTA3/source/bin/denovo_density.linuxgccrelease\
-in::file::fasta /home/labusr/Documents/tubulin_exercise/5ucy_alpha.fasta\
-fragfile /home/labusr/Documents/tubulin_exercise/9mers_alpha\
-startmodel /home/labusr/Documents/round2_alpha_tubulin.pdb \
-mapfile /home/labusr/Documents/tubulin_exercise/masked_map_center_alpha.mrc\
-n_to_search 1000 -n_filtered 4500 -n_output 50 \
-bw 16 \
-atom_mask_min 2 \
-atom_mask 3 \
-clust_radius 3 \
-clust_oversample 4 \
-point_radius 3 \
-movestep 1 \
-delR 2 \
-frag_dens 0.8 \
-ncyc 3 \
-min_bb false \
-pos $1 \
-out:file:silent round3_alpha_tubulin/alpha_tubulin.$1.silent
#!/bin/sh
$ROSETTA3/source/bin/denovo_density.linuxgccrelease\
-mode score \
-in::file::silent round3_alpha_tubulin/alpha_tubulin*silent \
-scorefile round3_alpha_tubulin/scores3 \
-n_matches 50
#!/bin/sh
$ROSETTA3/source/bin/denovo_density.linuxgccrelease\
-mode assemble \
-nstruct 5 \
-in::file::silent round3_alpha_tubulin/alpha_tubulin*silent \
-scorefile round3_alpha_tubulin/scores3 \
-assembly_weights 4 20 6 \
-null_weight -150 \
-out:file:silent round3_alpha_tubulin/assembled.$1 \
-scale_cycles 1 \
-mute core
#!/bin/sh
$ROSETTA3/source/bin/denovo_density.linuxgccrelease\
-mode consensus \
-in::file::silent round3_alpha_tubulin/assembled.*silent \
-consensus_frac 0.8 -energy_cut 0.05 \
-mute core
# use the old model as a starting point
cp S_0001.pdb round3_alpha_tubulin.pdb
Category:
Post Situation:
Unfortunately, much of the functionality of the denovo_density application is in the application file itself, and so is not included with PyRosetta. -- The code is also very commandline centric, with input/output reading/writing interspersed with the calculation code.
If you take a look at $ROSETTA3/source/src/apps/public/electron_density/denovo_density.cc, you can see how things are implemented. If you can interpret C++ well enough, you may be able to ascertain how the application does what it does, pull out the parts you're interested and come up with a PyRosetta-equivalent protocol. It'll be more than a few lines of code, though.