Function peroxide::complex::matrix::cgemm

source ·
pub fn cgemm(
    alpha: C64,
    a: &ComplexMatrix,
    b: &ComplexMatrix,
    beta: C64,
    c: &mut ComplexMatrix,
)
Expand description

GEMM wrapper for Matrixmultiply

§Examples

#[macro_use]
extern crate peroxide;
use peroxide::fuga::*;

use peroxide::complex::matrix::*;

fn main() {
    let a = ml_cmatrix("1.0+1.0i 2.0+2.0i;
                               0.0+0.0i 1.0+1.0i");
    let b = ml_cmatrix("1.0+1.0i 0.0+0.0i;
                               2.0+2.0i 1.0+1.0i");
    let mut c1 = ml_cmatrix("1.0+1.0i 1.0+1.0i;
                                   1.0+1.0i 1.0+1.0i");
    let mul_val = ml_cmatrix("-10.0+10.0i -4.0+4.0i;
                                     -4.0+4.0i -2.0+2.0i");

    cgemm(C64::new(1.0, 1.0), &a, &b, C64::new(0.0, 0.0), &mut c1);
    assert_eq!(c1, mul_val);
}