public static ref BlockVector <float> cdfNormInv(BlockVector <float> src, ref BlockVector <float> dst) { VmlImport.vsCdfNormInv(src.Length, ref head(src), ref head(dst)); return(ref dst); }
public static int iamin(BlockVector <float> X) => (int)CBLAS.cblas_isamin(X.Length, ref head(X), 1);
public static int iamin(BlockVector <double> X) => (int)CBLAS.cblas_idamin(X.Length, ref head(X), 1);
public static ref BlockVector <double> erfc(BlockVector <double> src, ref BlockVector <double> dst) { VmlImport.vdErfc(src.Length, ref head(src), ref head(dst)); return(ref dst); }
public static ref T head <T>(BlockVector <T> src) where T : struct => ref MemoryMarshal.GetReference <T>(src.Unblocked);
public static ref BlockVector <float> sub(BlockVector <float> lhs, BlockVector <float> rhs, ref BlockVector <float> dst) { VmlImport.vsSub(length(lhs, rhs), ref head(lhs), ref head(rhs), ref head(dst)); return(ref dst); }
public static ref BlockVector <double> sub(BlockVector <double> lhs, BlockVector <double> rhs, ref BlockVector <double> dst) { VmlImport.vdSub(length(lhs, rhs), ref head(lhs), ref head(rhs), ref head(dst)); return(ref dst); }
public static ref BlockVector <N, float> mul <N>(BlockVector <N, float> lhs, BlockVector <N, float> rhs, ref BlockVector <N, float> dst) where N : ITypeNat, new() { VmlImport.vsMul(nati <N>(), ref head(lhs), ref head(rhs), ref head(dst)); return(ref dst); }
public static ref BlockVector <float> truncRem(BlockVector <float> src, BlockVector <float> trunc, ref BlockVector <float> rem) { VmlImport.vsModf(length(src, trunc), ref head(src), ref head(trunc), ref head(rem)); return(ref rem); }
public static ref BlockVector <float> hypot(BlockVector <float> a, BlockVector <float> b, ref BlockVector <float> dst) { VmlImport.vsHypot(dst.Length, ref head(a), ref head(b), ref head(dst)); return(ref dst); }
public static ref BlockVector <double> hypot(BlockVector <double> a, BlockVector <double> b, ref BlockVector <double> dst) { VmlImport.vdHypot(dst.Length, ref head(a), ref head(b), ref head(dst)); return(ref dst); }
public static ref BlockVector <double> lgamma(BlockVector <double> src, ref BlockVector <double> dst) { VmlImport.vdLGamma(src.Length, ref head(src), ref head(dst)); return(ref dst); }
public static ref BlockVector <float> lgamma(BlockVector <float> src, ref BlockVector <float> dst) { VmlImport.vsLGamma(src.Length, ref head(src), ref head(dst)); return(ref dst); }
public static ref BlockVector <double> cdfNormInv(BlockVector <double> src, ref BlockVector <double> dst) { VmlImport.vdCdfNormInv(src.Length, ref head(src), ref head(dst)); return(ref dst); }
public static ref BlockVector <N, double> add <N>(BlockVector <N, double> lhs, BlockVector <N, double> rhs, ref BlockVector <N, double> dst) where N : ITypeNat, new() { VmlImport.vdAdd(nati <N>(), ref head(lhs), ref head(rhs), ref head(dst)); return(ref dst); }
public static ref BlockVector <double> truncRem(BlockVector <double> lhs, BlockVector <double> rhs, ref BlockVector <double> dst) { VmlImport.vdModf(length(lhs, rhs), ref head(lhs), ref head(rhs), ref head(dst)); return(ref dst); }
public static ref BlockVector <float> pow(BlockVector <float> src, float exp, ref BlockVector <float> dst) { VmlImport.vsPowx(length(src, dst), ref head(src), exp, ref head(dst)); return(ref dst); }
public static ref BlockVector <float> minAbs(BlockVector <float> a, BlockVector <float> b, ref BlockVector <float> dst) { VmlImport.vsMinMag(dst.Length, ref head(a), ref head(b), ref head(dst)); return(ref dst); }
public static ref BlockVector <double> pow(BlockVector <double> src, double exp, ref BlockVector <double> dst) { VmlImport.vdPowx(length(src, dst), ref head(src), exp, ref head(dst)); return(ref dst); }
public static ref BlockVector <double> minAbs(BlockVector <double> a, BlockVector <double> b, ref BlockVector <double> dst) { VmlImport.vdMinMag(dst.Length, ref head(a), ref head(b), ref head(dst)); return(ref dst); }
public static ref BlockVector <float> erfc(BlockVector <float> src, ref BlockVector <float> dst) { VmlImport.vsErfc(src.Length, ref head(src), ref head(dst)); return(ref dst); }
public static ref BlockVector <float> copySign(BlockVector <float> a, BlockVector <float> b, ref BlockVector <float> dst) { VmlImport.vsCopySign(dst.Length, ref head(a), ref head(b), ref head(dst)); return(ref dst); }
static int length <S, T>(BlockVector <S> lhs, BlockVector <T> rhs, [CallerMemberName] string caller = null, [CallerFilePath] string file = null, [CallerLineNumber] int?line = null) where T : struct where S : struct => lhs.Length == rhs.Length ? lhs.Length : throw Errors.LengthMismatch(lhs.Length, rhs.Length, caller, file, line);
public static ref BlockVector <double> copySign(BlockVector <double> a, BlockVector <double> b, ref BlockVector <double> dst) { VmlImport.vdCopySign(dst.Length, ref head(a), ref head(b), ref head(dst)); return(ref dst); }
static ref T head <N, T>(BlockVector <N, T> src) where N : ITypeNat, new() where T : struct => ref MemoryMarshal.GetReference <T>(src.Unsized);
public static ref BlockVector <float> next(BlockVector <float> src, ref BlockVector <float> dst) { VmlImport.vsNextAfter(dst.Length, ref head(src), ref head(src), ref head(dst)); return(ref dst); }
public static float amin(BlockVector <float> X) => X[iamin(X)];
public static ref BlockVector <double> next(BlockVector <double> src, ref BlockVector <double> dst) { VmlImport.vdNextAfter(dst.Length, ref head(src), ref head(src), ref head(dst)); return(ref dst); }
public static double amin(BlockVector <double> X) => X[iamin(X)];
public static double asum(BlockVector <double> X) => CBLAS.cblas_dasum(X.Length, ref head(X), 1);