qcgpu 0.1.0

Open Source, High Performance & Hardware Accelerated, Quantum Computer Simulation in Rust
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/// Get the number of qubits needed to represent a number.
///
/// Equivilent to ceil(log2(n))s
pub fn get_width(n: i32) -> i32 {
    ((n as f32) + 1.0).log2().ceil() as i32
}

/// Calculate the greatest common divisor (Euclid's algorithm)
pub fn gcd(mut a: i32, mut b: i32) -> i32 {
    while b != 0 {
        let tmp = a;
        a = b;
        b = tmp % b;
    }
    a
}