Program Listing for File sparse/array/algebra_matops.h#
↰ Return to documentation for file (oti/sparse/array/algebra_matops.h)
#ifndef OTI_SPARSE_ARRAY_ALGEBRA_MATOPS_H
#define OTI_SPARSE_ARRAY_ALGEBRA_MATOPS_H
/**************************************************************************************************/
sotinum_t arrso_dotproduct_OO( arrso_t* lhs, arrso_t* rhs, dhelpl_t dhl);
void arrso_dotproduct_OO_to( arrso_t* lhs, arrso_t* rhs, sotinum_t* res, dhelpl_t dhl);
sotinum_t arrso_dotproduct_RO( darr_t* lhs, arrso_t* rhs, dhelpl_t dhl);
void arrso_dotproduct_RO_to( darr_t* lhs, arrso_t* rhs, sotinum_t* res, dhelpl_t dhl);
// ----------------------------------------------------------------------------------------------------
/**************************************************************************************************/
arrso_t arrso_matmul_OO( arrso_t* lhs, arrso_t* rhs, dhelpl_t dhl);
arrso_t arrso_matmul_OR( arrso_t* lhs, darr_t* rhs, dhelpl_t dhl);
arrso_t arrso_matmul_RO( darr_t* lhs, arrso_t* rhs, dhelpl_t dhl);
void arrso_matmul_OO_to( arrso_t* lhs, arrso_t* rhs, arrso_t* res, dhelpl_t dhl);
void arrso_matmul_OR_to( arrso_t* lhs, darr_t* rhs, arrso_t* res, dhelpl_t dhl);
void arrso_matmul_RO_to( darr_t* lhs, arrso_t* rhs, arrso_t* res, dhelpl_t dhl);
// ----------------------------------------------------------------------------------------------------
/**************************************************************************************************/
arrso_t arrso_transpose( arrso_t* arr1, dhelpl_t dhl);
void arrso_transpose_to( arrso_t* arr1, arrso_t* res, dhelpl_t dhl);
// ----------------------------------------------------------------------------------------------------
/**************************************************************************************************/
arrso_t arrso_invert( arrso_t* arr1, dhelpl_t dhl);
void arrso_invert_to( arrso_t* arr1, arrso_t* res, dhelpl_t dhl);
// ----------------------------------------------------------------------------------------------------
/**************************************************************************************************/
sotinum_t arrso_det( arrso_t* arr1, dhelpl_t dhl);
void arrso_det_to( arrso_t* arr1, sotinum_t* res, dhelpl_t dhl);
// ----------------------------------------------------------------------------------------------------
/**************************************************************************************************/
sotinum_t arrso_norm( arrso_t* arr1, dhelpl_t dhl);
void arrso_norm_to( arrso_t* arr1, sotinum_t* res, dhelpl_t dhl);
// ----------------------------------------------------------------------------------------------------
/**************************************************************************************************/
sotinum_t arrso_pnorm( arrso_t* arr1, coeff_t p, dhelpl_t dhl);
void arrso_pnorm_to( arrso_t* arr1, coeff_t p, sotinum_t* res, dhelpl_t dhl);
// ----------------------------------------------------------------------------------------------------
#endif