Adelsbach/VSIPL
Core Programming Reference Guide
DD-00016-015
Core

This manual is preliminary and incomplete.
While our Core implementation implements all functions given in the standard we are still working on completing this documentation.

Please refer to the VSIPL standard for a complete function reference of the Core profile until we have completed work on this documentation.

6.5.7 vsip_dqrdprodq_p - Multiply by Q Matrix from QR Decomposition

typedef enum _vsip_mat_op { 
  VSIP_MAT_NTRANS = 0, // op(A) = A 
  VSIP_MAT_TRANS  = 1, // op(A) = A^T 
  VSIP_MAT_HERM   = 2, // op(A) = A^H (complex only) 
  VSIP_MAT_CONJ   = 3  // op(X) = A^* (complex only) 
} vsip_mat_op; 
 
typedef enum _vsip_mat_side { 
  VSIP_MAT_LSIDE = 0, 
  VSIP_MAT_RSIDE = 1 
} vsip_mat_side; 
 
int vsip_qrdprodq_f(const vsip_qr_f *qrd, vsip_mat_op opQ, vsip_mat_side apQ, const vsip_mview_f *c); 
int vsip_cqrdprodq_f(const vsip_cqr_f *qrd, vsip_mat_op opQ, vsip_mat_side apQ, const vsip_cmview_f *c);
Description

This function performs matrix multiplication with the orthogonal matrix Q from a QR decomposition. It computes either QC,   T
Q  C,  H
Q C, CQ,   T
CQ or    H
CQ, depending on the specified parameters.

The operation performed is determined by the opQ and apQ parameters:

Parameters
Return Value
Notes