当前位置: 首页>>代码示例>>Java>>正文


Java BLAS类代码示例

本文整理汇总了Java中com.github.fommil.netlib.BLAS的典型用法代码示例。如果您正苦于以下问题:Java BLAS类的具体用法?Java BLAS怎么用?Java BLAS使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


BLAS类属于com.github.fommil.netlib包,在下文中一共展示了BLAS类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: mult

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Vector mult(double alpha, Vector x, Vector y) {
    if (!(y instanceof DenseVector))
        return super.mult(alpha, x, y);

    checkMultAdd(x, y);

    double[] yd = ((DenseVector) y).getData();

    // y = alpha*x
    y.set(alpha, x);

    // y = A*z
    BLAS.getInstance().dtrmv(uplo.netlib(), Transpose.NoTranspose.netlib(),
            diag.netlib(), numRows, data, Math.max(1, ld), yd, 1);

    return y;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:19,代码来源:AbstractTriangDenseMatrix.java

示例2: transMult

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Vector transMult(double alpha, Vector x, Vector y) {
    if (!(y instanceof DenseVector))
        return super.transMult(alpha, x, y);

    checkTransMultAdd(x, y);

    double[] yd = ((DenseVector) y).getData();

    // y = alpha*x
    y.set(alpha, x);

    // y = A'*y
    BLAS.getInstance().dtrmv(uplo.netlib(), Transpose.Transpose.netlib(),
            diag.netlib(), numRows, data, Math.max(1, ld), yd, 1);

    return y;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:19,代码来源:AbstractTriangDenseMatrix.java

示例3: transAmult

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Matrix transAmult(double alpha, Matrix B, Matrix C) {
    if (!(C instanceof DenseMatrix))
        return super.transAmult(alpha, B, C);

    checkTransAmultAdd(B, C);

    double[] Cd = ((DenseMatrix) C).getData();

    C.set(B);

    // C = alpha*A'*C
    BLAS.getInstance().dtrmm(Side.Left.netlib(), uplo.netlib(),
            Transpose.Transpose.netlib(), diag.netlib(), C.numRows(),
            C.numColumns(), alpha, data, Math.max(1, ld), Cd,
            Math.max(1, C.numRows()));

    return C;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:20,代码来源:AbstractTriangDenseMatrix.java

示例4: mult

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Vector mult(double alpha, Vector x, Vector y) {
    if (!(y instanceof DenseVector))
        return super.mult(alpha, x, y);

    checkMultAdd(x, y);

    double[] yd = ((DenseVector) y).getData();

    // y = alpha*x
    y.set(alpha, x);

    // y = A*z
    BLAS.getInstance().dtpmv(uplo.netlib(), Transpose.NoTranspose.netlib(),
            diag.netlib(), numRows, data, yd, 1);

    return y;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:19,代码来源:AbstractTriangPackMatrix.java

示例5: transMult

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Vector transMult(double alpha, Vector x, Vector y) {
    if (!(y instanceof DenseVector))
        return super.transMult(alpha, x, y);

    checkTransMultAdd(x, y);

    double[] yd = ((DenseVector) y).getData();

    // y = alpha*x
    y.set(alpha, x);

    // y = A*z
    BLAS.getInstance().dtpmv(uplo.netlib(), Transpose.Transpose.netlib(),
            diag.netlib(), numRows, data, yd, 1);

    return y;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:19,代码来源:AbstractTriangPackMatrix.java

示例6: multAdd

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Matrix multAdd(double alpha, Matrix B, Matrix C) {
    if (!(B instanceof DenseMatrix) || !(C instanceof DenseMatrix))
        return super.multAdd(alpha, B, C);

    checkMultAdd(B, C);

    double[] Bd = ((DenseMatrix) B).getData(), Cd = ((DenseMatrix) C)
            .getData();

    BLAS.getInstance().dsymm(Side.Left.netlib(), uplo.netlib(),
            C.numRows(), C.numColumns(), alpha, data,
            Math.max(1, C.numRows()), Bd, Math.max(1, C.numRows()), 1, Cd,
            Math.max(1, C.numRows()));

    return C;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:18,代码来源:AbstractSymmDenseMatrix.java

示例7: rank1

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Matrix rank1(double alpha, Vector x, Vector y) {
    if (x != y)
        throw new IllegalArgumentException("x != y");
    if (!(x instanceof DenseVector))
        return super.rank1(alpha, x, y);

    checkRank1(x, y);

    double[] xd = ((DenseVector) x).getData();

    BLAS.getInstance().dsyr(uplo.netlib(), numRows, alpha, xd, 1, data,
            Math.max(1, numRows));

    return this;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:17,代码来源:AbstractSymmDenseMatrix.java

示例8: rank2

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Matrix rank2(double alpha, Matrix B, Matrix C) {
    if (!(B instanceof DenseMatrix) || !(C instanceof DenseMatrix))
        return super.rank2(alpha, B, C);

    checkRank2(B, C);

    double[] Bd = ((DenseMatrix) B).getData(), Cd = ((DenseMatrix) C)
            .getData();

    BLAS.getInstance().dsyr2k(uplo.netlib(),
            Transpose.NoTranspose.netlib(), numRows, B.numColumns(), alpha,
            Bd, Math.max(1, numRows), Cd, Math.max(1, numRows), 1, data,
            Math.max(1, numRows));

    return this;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:18,代码来源:AbstractSymmDenseMatrix.java

示例9: transRank2

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Matrix transRank2(double alpha, Matrix B, Matrix C) {
    if (!(B instanceof DenseMatrix) || !(C instanceof DenseMatrix))
        return super.transRank2(alpha, B, C);

    checkTransRank2(B, C);

    double[] Bd = ((DenseMatrix) B).getData(), Cd = ((DenseMatrix) C)
            .getData();

    BLAS.getInstance().dsyr2k(uplo.netlib(), Transpose.Transpose.netlib(),
            numRows, B.numRows(), alpha, Bd, Math.max(1, B.numRows()), Cd,
            Math.max(1, B.numRows()), 1, data, Math.max(1, numRows));

    return this;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:17,代码来源:AbstractSymmDenseMatrix.java

示例10: mult

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Vector mult(double alpha, Vector x, Vector y) {
    if (!(y instanceof DenseVector))
        return super.mult(alpha, x, y);

    checkMultAdd(x, y);

    double[] yd = ((DenseVector) y).getData();

    // y = alpha*x
    y.set(alpha, x);

    // y = A*y
    BLAS.getInstance().dtbmv(uplo.netlib(), Transpose.NoTranspose.netlib(),
            diag.netlib(), numRows, kd, data, kd + 1, yd, 1);

    return y;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:19,代码来源:AbstractTriangBandMatrix.java

示例11: transMult

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Vector transMult(double alpha, Vector x, Vector y) {
    if (!(y instanceof DenseVector))
        return super.transMult(alpha, x, y);

    checkTransMultAdd(x, y);

    double[] yd = ((DenseVector) y).getData();

    // y = alpha*x
    y.set(alpha, x);

    // y = A*y
    BLAS.getInstance().dtbmv(uplo.netlib(), Transpose.Transpose.netlib(),
            diag.netlib(), numRows, kd, data, kd + 1, yd, 1);

    return y;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:19,代码来源:AbstractTriangBandMatrix.java

示例12: multAdd

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Matrix multAdd(double alpha, Matrix B, Matrix C) {
    if (!(B instanceof DenseMatrix) || !(C instanceof DenseMatrix))
        return super.multAdd(alpha, B, C);

    checkMultAdd(B, C);

    double[] Bd = ((DenseMatrix) B).getData(), Cd = ((DenseMatrix) C)
            .getData();

    BLAS.getInstance().dgemm(Transpose.NoTranspose.netlib(),
            Transpose.NoTranspose.netlib(), C.numRows(), C.numColumns(),
            numColumns, alpha, data, Math.max(1, numRows), Bd,
            Math.max(1, B.numRows()), 1, Cd, Math.max(1, C.numRows()));

    return C;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:18,代码来源:DenseMatrix.java

示例13: transAmultAdd

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Matrix transAmultAdd(double alpha, Matrix B, Matrix C) {
    if (!(B instanceof DenseMatrix) || !(C instanceof DenseMatrix))
        return super.transAmultAdd(alpha, B, C);

    checkTransAmultAdd(B, C);

    double[] Bd = ((DenseMatrix) B).getData(), Cd = ((DenseMatrix) C)
            .getData();

    BLAS.getInstance().dgemm(Transpose.Transpose.netlib(),
            Transpose.NoTranspose.netlib(), C.numRows(), C.numColumns(),
            numRows, alpha, data, Math.max(1, numRows), Bd,
            Math.max(1, B.numRows()), 1, Cd, Math.max(1, C.numRows()));

    return C;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:18,代码来源:DenseMatrix.java

示例14: transBmultAdd

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Matrix transBmultAdd(double alpha, Matrix B, Matrix C) {
    if (!(B instanceof DenseMatrix) || !(C instanceof DenseMatrix))
        return super.transBmultAdd(alpha, B, C);

    checkTransBmultAdd(B, C);

    double[] Bd = ((DenseMatrix) B).getData(), Cd = ((DenseMatrix) C)
            .getData();

    BLAS.getInstance().dgemm(Transpose.NoTranspose.netlib(),
            Transpose.Transpose.netlib(), C.numRows(), C.numColumns(),
            numColumns, alpha, data, Math.max(1, numRows), Bd,
            Math.max(1, B.numRows()), 1, Cd, Math.max(1, C.numRows()));

    return C;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:18,代码来源:DenseMatrix.java

示例15: transABmultAdd

import com.github.fommil.netlib.BLAS; //导入依赖的package包/类
@Override
public Matrix transABmultAdd(double alpha, Matrix B, Matrix C) {
    if (!(B instanceof DenseMatrix) || !(C instanceof DenseMatrix))
        return super.transABmultAdd(alpha, B, C);

    checkTransABmultAdd(B, C);

    double[] Bd = ((DenseMatrix) B).getData(), Cd = ((DenseMatrix) C)
            .getData();

    BLAS.getInstance().dgemm(Transpose.Transpose.netlib(),
            Transpose.Transpose.netlib(), C.numRows(), C.numColumns(),
            numRows, alpha, data, Math.max(1, numRows), Bd,
            Math.max(1, B.numRows()), 1, Cd, Math.max(1, C.numRows()));

    return C;
}
 
开发者ID:opprop-benchmarks,项目名称:matrix-toolkits-java,代码行数:18,代码来源:DenseMatrix.java


注:本文中的com.github.fommil.netlib.BLAS类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。