Function gpu_sw::gpu_sw [] [src]

pub fn gpu_sw(
    b_sq_pr: &(&[BElm], &[BElm]),
    sbst_mt: &SbstMt,
    algn_scr_schm: &AlgnScrSchm,
    is_dna: bool
) -> PrAlgn

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);