1 /* 2 * Copyright (c) 2012, Michael Lehn, Klaus Pototzky 3 * 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: 9 * 10 * 1) Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * 2) Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in 14 * the documentation and/or other materials provided with the 15 * distribution. 16 * 3) Neither the name of the FLENS development group nor the names of 17 * its contributors may be used to endorse or promote products derived 18 * from this software without specific prior written permission. 19 * 20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 21 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 23 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 24 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 25 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 26 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 30 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 */ 32 33 #ifndef CXXLAPACK_INTERFACE_GGRQF_H 34 #define CXXLAPACK_INTERFACE_GGRQF_H 1 35 36 #include <complex> 37 38 namespace cxxlapack { 39 40 template <typename IndexType> 41 IndexType 42 ggrqf(IndexType m, 43 IndexType p, 44 IndexType n, 45 float *A, 46 IndexType ldA, 47 float *taua, 48 float *B, 49 IndexType ldB, 50 float *taub, 51 float *work, 52 IndexType lWork); 53 54 template <typename IndexType> 55 IndexType 56 ggrqf(IndexType m, 57 IndexType p, 58 IndexType n, 59 double *A, 60 IndexType ldA, 61 double *taua, 62 double *B, 63 IndexType ldB, 64 double *taub, 65 double *work, 66 IndexType lWork); 67 68 template <typename IndexType> 69 IndexType 70 ggrqf(IndexType m, 71 IndexType p, 72 IndexType n, 73 std::complex<float > *A, 74 IndexType ldA, 75 std::complex<float > *taua, 76 std::complex<float > *B, 77 IndexType ldB, 78 std::complex<float > *taub, 79 std::complex<float > *work, 80 IndexType lWork); 81 82 template <typename IndexType> 83 IndexType 84 ggrqf(IndexType m, 85 IndexType p, 86 IndexType n, 87 std::complex<double> *A, 88 IndexType ldA, 89 std::complex<double> *taua, 90 std::complex<double> *B, 91 IndexType ldB, 92 std::complex<double> *taub, 93 std::complex<double> *work, 94 IndexType lWork); 95 96 } // namespace cxxlapack 97 98 #endif // CXXLAPACK_INTERFACE_GGRQF_H 99