1[/ 2 3THIS FILE IS AUTOMATICALLY GENERATED, PLEASE DO NOT EDIT! 4 5] 6 7[section upmtr] 8 9[heading Prototype] 10There is one prototype of `upmtr` available, please see below. 11`` 12upmtr( const Side side, const char uplo, const VectorAP& ap, 13 const VectorTAU& tau, MatrixC& c ); 14`` 15 16 17[heading Description] 18 19`upmtr` (short for $FRIENDLY_NAME) provides a C++ 20interface to LAPACK routines SOPMTR, DOPMTR, CUPMTR, and ZUPMTR. 21`upmtr` overwrites the general complex M-by-N matrix C with 22 23SIDE = 'L' SIDE = 'R' 24TRANS = 'N': Q * C C * Q 25TRANS = 'C': Q**H * C C * Q**H 26 27where Q is a complex unitary matrix of order nq, with nq = m if 28SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of 29nq-1 elementary reflectors, as returned by ZHPTRD using packed 30storage: 31 32if UPLO = 'U', Q = H(nq-1) . . . H(2) H(1); 33 34if UPLO = 'L', Q = H(1) H(2) . . . H(nq-1). 35 36The selection of the LAPACK routine is done during compile-time, 37and is determined by the type of values contained in type `VectorAP`. 38The type of values is obtained through the `value_type` meta-function 39 `typename value_type<VectorAP>::type`. 40The dispatching table below illustrates to which specific routine 41the code path will be generated. 42 43[table Dispatching of upmtr 44[ [ Value type of VectorAP ] [LAPACK routine] ] 45[ [`float`][SOPMTR] ] 46[ [`double`][DOPMTR] ] 47[ [`complex<float>`][CUPMTR] ] 48[ [`complex<double>`][ZUPMTR] ] 49 50] 51 52 53[heading Definition] 54Defined in header [headerref boost/numeric/bindings/lapack/computational/upmtr.hpp]. 55 56 57[heading Parameters or Requirements on Types] 58 59[variablelist Parameters 60 [[MatrixA] [The definition of term 1]] 61 [[MatrixB] [The definition of term 2]] 62 [[MatrixC] [ 63 The definition of term 3. 64 65 Definitions may contain paragraphs. 66 ]] 67] 68 69 70[heading Complexity] 71 72 73[heading Example] 74`` 75#include <boost/numeric/bindings/lapack/computational/upmtr.hpp> 76using namespace boost::numeric::bindings; 77 78lapack::upmtr( x, y, z ); 79 80`` 81 82this will output 83 84`` 85[5] 0 1 2 3 4 5 86`` 87 88 89 90[heading Notes] 91 92 93[heading See Also] 94 95* Originating Fortran source files [@http://www.netlib.org/lapack/single/sopmtr.f sopmtr.f], [@http://www.netlib.org/lapack/double/dopmtr.f dopmtr.f], [@http://www.netlib.org/lapack/complex/cupmtr.f cupmtr.f], and [@http://www.netlib.org/lapack/complex16/zupmtr.f zupmtr.f] at Netlib. 96 97[endsect] 98