nd4j-backends/nd4j-api-parent/nd4j-api/src/main/java/org/nd4j/linalg/api/blas/impl/BaseLevel2.java
@Override
    public void hpmv(char order, char Uplo, int N, IComplexNumber alpha, IComplexNDArray Ap, IComplexNDArray X,
                    IComplexNumber beta, IComplexNDArray Y) {
        // FIXME: int cast

        if (Ap.data().dataType() == DataBuffer.Type.DOUBLE)
            zhpmv(order, Uplo, (int) Ap.rows(), alpha.asDouble(), Ap, X, X.majorStride() / 2, beta.asDouble(), Y,
                            Y.majorStride() / 2);
        else
            chpmv(order, Uplo, (int) Ap.rows(), alpha.asFloat(), Ap, X, X.majorStride() / 2, beta.asFloat(), Y,
                            Y.majorStride() / 2);

    }
@Override
    public void hpmv(char order, char Uplo, int N, IComplexNumber alpha, IComplexNDArray Ap, IComplexNDArray X,
                    IComplexNumber beta, IComplexNDArray Y) {
        // FIXME: int cast

        if (Ap.data().dataType() == DataBuffer.Type.DOUBLE)
            zhpmv(order, Uplo, (int) Ap.rows(), alpha.asDouble(), Ap, X, X.majorStride() / 2, beta.asDouble(), Y,
                            Y.majorStride() / 2);
        else
            chpmv(order, Uplo, (int) Ap.rows(), alpha.asFloat(), Ap, X, X.majorStride() / 2, beta.asFloat(), Y,
                            Y.majorStride() / 2);

    }
?hpmv computes a matrix-vector product using a Hermitian packed matrix:
y := alpha*a*x + beta*y.
Here a is an n-by-n packed Hermitian matrix, x and y are n-element vectors, alpha and beta are scalars.

@param order
@param Uplo
@param N
@param alpha
@param Ap
@param X
@param beta
@param Y