Function matrixmultiply::zgemm

source ·
pub unsafe fn zgemm(
    flaga: CGemmOption,
    flagb: CGemmOption,
    m: usize,
    k: usize,
    n: usize,
    alpha: [f64; 2],
    a: *const [f64; 2],
    rsa: isize,
    csa: isize,
    b: *const [f64; 2],
    rsb: isize,
    csb: isize,
    beta: [f64; 2],
    c: *mut [f64; 2],
    rsc: isize,
    csc: isize
Expand description

General matrix multiplication (complex f64)

C ← α A B + β C

  • m, k, n: dimensions
  • a, b, c: pointer to the first element in the matrix
  • A: m by k matrix
  • B: k by n matrix
  • C: m by n matrix
  • rsx: row stride of x
  • csx: col stride of x

Strides for A and B may be arbitrary. Strides for C must not result in elements that alias each other, for example they can not be zero.

If β is zero, then C does not need to be initialized.

Requires crate feature "cgemm"