diff --git a/README.md b/README.md index e5bf594..952cc28 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,21 @@ # DPXRust -This is a rewrite of the DPX algorithm in Rust. DPX is an algorthim for computing the depth of residues in a protein structure by finding the distance between the current residue and the nearest residue with a SASA above 0.0 [1]. +![Image of protein that has been run through DPXRust](example.png) +*Image of 3ZYZ after being run through DPXRust colorized by DPX value* + +This is a rewrite of the DPX algorithm in Rust. DPX is an algorithm for computing how buried atoms in a protein structure by finding the distance between the current atom and the nearest atom with an ASA/SASA above a threshold (Defaults to 10.0 Angstroms squared) [1]. ## Usage +Make sure that the SASA/ASA value for each atom is in the B-factor field before running DPXRust. + Example: ```shell ./DPXRust --input-path my_protein.pdb --output-path output.csv ``` + +Note: DPXRust also supports mmCIF files + ## Citations: [1]: Pintar A., Carugo O., Pongor S. DPX: for the analysis of the protein core. Bioinformatics. 2003;19:313–314 \ No newline at end of file diff --git a/build.sh b/build.sh old mode 100644 new mode 100755 diff --git a/example.png b/example.png new file mode 100644 index 0000000..726fd89 Binary files /dev/null and b/example.png differ diff --git a/src/main.rs b/src/main.rs index 1fcc1b2..df38efc 100644 --- a/src/main.rs +++ b/src/main.rs @@ -102,8 +102,6 @@ fn main() { pdb.remove_atoms_by(|atom| atom.element() == Some(&Element::H)); // Remove all H atoms - let tree = pdb.create_atom_rtree(); - // First loop to build list of ASA values for each residue let mut asa_values : Vec = Vec::new(); for residue in pdb.residues() { // Iterate over all residues in the structure