Function rust_sasa::calculate_sasa_internal

source ·
pub fn calculate_sasa_internal(
    atoms: &[Atom],
    in_probe_radius: Option<f32>,
    in_n_points: Option<usize>
) -> Vec<f32>
Expand description

Takes the probe radius and number of points to use along with a list of Atoms as inputs and returns a Vec with SASA values for each atom. For most users it is recommend that you use calculate_sasa instead. This method can be used directly if you do not want to use pdbtbx to load PDB/mmCIF files or want to load them from a different source. Probe Radius Default: 1.4 Point Count Default: 100

§Example using pdbtbx:

use nalgebra::{Point3, Vector3};
use pdbtbx::StrictnessLevel;
use rust_sasa::{Atom, calculate_sasa_internal};
let (mut pdb, _errors) = pdbtbx::open(
            "./example.cif",
            StrictnessLevel::Medium
        ).unwrap();
let mut atoms = vec![];
for atom in pdb.atoms() {
    atoms.push(Atom {
                position: Point3::new(atom.pos().0 as f32, atom.pos().1 as f32, atom.pos().2 as f32),
                radius: atom.element().unwrap().atomic_radius().van_der_waals.unwrap() as f32,
                id: atom.serial_number(),
                parent_id: None
    })
 }
 let sasa = calculate_sasa_internal(&atoms, None, None);