pub fn gpu_sw(
b_sq_pr: &(&[BElm], &[BElm]),
sbst_mt: &SbstMt,
algn_scr_schm: &AlgnScrSchm,
is_dna: bool,
) -> PrAlgn
Expand description
Run the Smith Waterman algorithm on GPU.
ยงExamples
use self::gpu_sw::{gpu_sw, gt_alphbt, SbstMt, AlgnScrSchm};
let is_dna = true;
let alphbt = gt_alphbt(is_dna);
let b_sq_pr = (&b"GGTTGACTA"[..], &b"TGTTACGG"[..]);
let mut sbst_mt = SbstMt::default();
for &alphbt_elm_1 in alphbt.iter() {
for &alphbt_elm_2 in alphbt.iter() {
sbst_mt.insert((alphbt_elm_1, alphbt_elm_2), if alphbt_elm_1 == alphbt_elm_2 {1.} else {-1.});
}
}
let algn_scr_schm = AlgnScrSchm::new(-7., -1.);
let pr_algn = gpu_sw(&b_sq_pr, &sbst_mt, &algn_scr_schm, is_dna);
println!("{:?}.", &pr_algn);