public static unsafe void FillValue(this double[] x, double[] val) { int n = x.Length; ArrayCheck.EqualSize(n, x, val); fixed(double *px = &x[0], pv = &val[0]) { FillValue(px, n, pv); } }
public static unsafe void AxPlusBy(this double[] x, double a, double[] y, double b) { int n = x.Length; ArrayCheck.EqualSize(n, x, y); fixed(double *p_x = &x[0], p_y = &y[0]) { AxPlusBy(p_x, a, p_y, b, n); } }
public TridiagOperator1D(double[] lower, double[] diag, double[] upper, double infBoundaryShift = 0.0, double supBoundaryShift = 0.0) { size = lower.Length; ArrayCheck.EqualSize(size, lower, diag, upper); this.lower = lower; this.diag = diag; this.upper = upper; this.infBoundaryShift = infBoundaryShift; this.supBoundaryShift = supBoundaryShift; }