Quantum Gate Decomposer  v1.3
Powerful decomposition of almost any unitary into U3 and CNOT gates
List of all members | Public Member Functions | Public Attributes
zgemm3m_Task_serial Class Reference

Class to calculate a matrix product C=A*B in serial. More...

#include <dot.h>

Inheritance diagram for zgemm3m_Task_serial:
Inheritance graph
[legend]

Public Member Functions

void zgemm3m_chunk ()
 Call to calculate the product of matrix chunks defined by attributes rows, cols. More...
 
 zgemm3m_Task_serial (Matrix &A_in, Matrix &B_in, Matrix &C_in)
 Constructor of the class. More...
 
 zgemm3m_Task_serial (Matrix &A_in, Matrix &B_in, Matrix &C_in, row_indices &rows_in, col_indices &cols_in)
 Constructor of the class. More...
 

Public Attributes

Matrix A
 The matrix A. More...
 
Matrix B
 The matrix B. More...
 
Matrix C
 The matrix C. More...
 
col_indices cols
 Structure containing column limits for the partitioning of the matrix product calculations. More...
 
CBLAS_ORDER order
 CBLAS storage order. More...
 
row_indices rows
 Structure containing row limits for the partitioning of the matrix product calculations. More...
 

Detailed Description

Class to calculate a matrix product C=A*B in serial.

This class is used to divide the multiplication into chunks for parallel calculations.

Definition at line 150 of file dot.h.

Constructor & Destructor Documentation

◆ zgemm3m_Task_serial() [1/2]

zgemm3m_Task_serial::zgemm3m_Task_serial ( Matrix A_in,
Matrix B_in,
Matrix C_in 
)

Constructor of the class.

(In this case the row/col limits are extracted from matrices A,B,C).

Parameters
A_inThe object representing matrix A.
B_inThe object representing matrix B.
C_inThe object representing matrix C.

Definition at line 201 of file dot.cpp.

◆ zgemm3m_Task_serial() [2/2]

zgemm3m_Task_serial::zgemm3m_Task_serial ( Matrix A_in,
Matrix B_in,
Matrix C_in,
row_indices rows_in,
col_indices cols_in 
)

Constructor of the class.

Parameters
A_inThe object representing matrix A.
B_inThe object representing matrix B.
C_inThe object representing matrix C.
rows_inStructure containing row limits for the partitioning of the matrix product calculations.
cols_inStructure containing column limits for the partitioning of the matrix product calculations.

Definition at line 241 of file dot.cpp.

Member Function Documentation

◆ zgemm3m_chunk()

void zgemm3m_Task_serial::zgemm3m_chunk ( )

Call to calculate the product of matrix chunks defined by attributes rows, cols.

The result is stored in the corresponding chunk of matrix C.

Definition at line 258 of file dot.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ A

Matrix zgemm3m_Task_serial::A

The matrix A.

Definition at line 154 of file dot.h.

◆ B

Matrix zgemm3m_Task_serial::B

The matrix B.

Definition at line 156 of file dot.h.

◆ C

Matrix zgemm3m_Task_serial::C

The matrix C.

Definition at line 158 of file dot.h.

◆ cols

col_indices zgemm3m_Task_serial::cols

Structure containing column limits for the partitioning of the matrix product calculations.

Definition at line 162 of file dot.h.

◆ order

CBLAS_ORDER zgemm3m_Task_serial::order

CBLAS storage order.

Definition at line 164 of file dot.h.

◆ rows

row_indices zgemm3m_Task_serial::rows

Structure containing row limits for the partitioning of the matrix product calculations.

Definition at line 160 of file dot.h.


The documentation for this class was generated from the following files: