There is one prototype of herk
            available, please see below. 
herk( const Scalar >, const MatrixA& a, const Scalar >, MatrixC& c );
            herk (short for hermitian
            rank-k update) provides a C++ interface to BLAS routines SSYRK, DSYRK,
            CHERK, and ZHERK. herk
            performs one of the hermitian rank k operations
          
C := alpha*A*conjg( A' ) + beta*C,
or
C := alpha*conjg( A' )*A + beta*C,
where alpha and beta are real scalars, C is an n by n hermitian matrix and A is an n by k matrix in the first case and a k by n matrix in the second case.
            The selection of the BLAS routine is done during compile-time, and is
            determined by the type of values contained in type MatrixA.
            The type of values is obtained through the value_type
            meta-function typename value_type<MatrixA>::type. Table X below illustrates to
            which specific routine this dispatching will take place.
          
Table 1.88. Dispatching of herk.
| Value type of MatrixA | BLAS routine | CBLAS routine | CUBLAS routine | 
|---|---|---|---|
| 
                       | SSYRK | cblas_ssyrk | cublasSsyrk | 
| 
                       | DSYRK | cblas_dsyrk | cublasDsyrk | 
| 
                       | CHERK | cblas_cherk | cublasCherk | 
| 
                       | ZHERK | cblas_zherk | Unavailable | 
            The original routines SSYRK, DSYRK, CHERK, and ZHERK have ten arguments,
            whereas herk requires
            four arguments.
          
            Defined in header boost/numeric/bindings/blas/level3/herk.hpp.
          
Parameters
The definition of term 1
The definition of term 2
The definition of term 3.
Definitions may contain paragraphs.
#include <boost/numeric/bindings/blas/level3/herk.hpp> using namespace boost::numeric::bindings; blas::herk( x, y, z );
this will output
[5] 0 1 2 3 4 5