Skip to main content

apply_operator

Function apply_operator 

Source
fn apply_operator(
    ws: &mut Ws,
    d_kernel: &[f32],
    wf2: &[f32],
    wr2: &[f32],
    mmx: &[f32],
    mmy: &[f32],
    mmz: &[f32],
    mrx: &[f32],
    mry: &[f32],
    mrz: &[f32],
    vr_tot: &[f32],
    vr_pos: &[f32],
    vr_neg: &[f32],
    lambda1: f32,
    field_w: f32,
    cf_ppm: f32,
    dr_p: f32,
    dr_q: f32,
    mask: &[u8],
    dx: &[f32],
    out: &mut [f32],
    stage: &mut [f32],
)
Expand description

Apply the Gauss-Newton operator to dx = [d+; d−]:

A± = 2λ1·TVtot(d+ + d−) + λ1·TV±(d±) + (2π)²·cf²·Dᴴ Wf² D (d+ + d−)
     ± Dr,± · Wr² · (Dr,pos·d+ − Dr,neg·d−)