[][src]Function peroxide::numerical::utils::tdma

pub fn tdma(
    a_input: Vec<f64>,
    b_input: Vec<f64>,
    c_input: Vec<f64>,
    y_input: Vec<f64>
) -> Matrix

TriDiagonal Matrix Algorithm (TDMA)

Description

Solve tri-diagonal matrix system efficiently (O(n))

|b0 c0         | |x0|   |y0|
|a1 b1 c1      | |x1|   |y1|
|   a2 b2 c2   | |x2| = |y2|
|      ...     | |..|   |..|
|         am bm| |xm|   |ym|

Caution

You should apply boundary condition yourself