deal.II version GIT relicensing-6842-g793a97d2aa 2026-10-02 14:00:01+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
qr.cc
Go to the documentation of this file.
1// -----------------------------------------------------------------------------
2//
3// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception OR LGPL-2.1-or-later
4// Copyright (C) 2020 - 2023 by the deal.II authors
5//
6// This file is part of the deal.II library.
7//
8// Detailed license information governing the source code and contributions
9// can be found in LICENSE.md and CONTRIBUTING.md at the top level directory.
10//
11// -----------------------------------------------------------------------------
12
13#include <deal.II/base/config.h>
14
16#include <deal.II/lac/qr.h>
17
18#include <complex>
19
21
22namespace internal
23{
24 namespace QRImplementation
25 {
26 // see the corresponding note in the header
27 template <typename Number>
28 void
29 call_trmv(const char uplo,
30 const char trans,
31 const char diag,
32 const types::blas_int n,
33 const Number *a,
34 const types::blas_int lda,
35 Number *x,
36 const types::blas_int incx)
37 {
38 trmv(&uplo, &trans, &diag, &n, a, &lda, x, &incx);
39 }
40
41 template <typename Number>
42 void
43 call_trtrs(const char uplo,
44 const char trans,
45 const char diag,
46 const types::blas_int n,
47 const types::blas_int nrhs,
48 const Number *a,
49 const types::blas_int lda,
50 Number *b,
51 const types::blas_int ldb,
52 types::blas_int *info)
53 {
54 trtrs(&uplo, &trans, &diag, &n, &nrhs, a, &lda, b, &ldb, info);
55 }
56
57 template void
58 call_trmv(const char,
59 const char,
60 const char,
61 const types::blas_int,
62 const float *,
63 const types::blas_int,
64 float *,
65 const types::blas_int);
66
67 template void
68 call_trmv(const char,
69 const char,
70 const char,
71 const types::blas_int,
72 const double *,
73 const types::blas_int,
74 double *,
75 const types::blas_int);
76
77 template void
78 call_trmv(const char,
79 const char,
80 const char,
81 const types::blas_int,
82 const std::complex<float> *,
83 const types::blas_int,
84 std::complex<float> *,
85 const types::blas_int);
86
87 template void
88 call_trmv(const char,
89 const char,
90 const char,
91 const types::blas_int,
92 const std::complex<double> *,
93 const types::blas_int,
94 std::complex<double> *,
95 const types::blas_int);
96
97 template void
98 call_trtrs(const char,
99 const char,
100 const char,
101 const types::blas_int,
102 const types::blas_int,
103 const float *,
104 const types::blas_int,
105 float *,
106 const types::blas_int,
108
109 template void
110 call_trtrs(const char,
111 const char,
112 const char,
113 const types::blas_int,
114 const types::blas_int,
115 const double *,
116 const types::blas_int,
117 double *,
118 const types::blas_int,
120
121 template void
122 call_trtrs(const char,
123 const char,
124 const char,
125 const types::blas_int,
126 const types::blas_int,
127 const std::complex<float> *,
128 const types::blas_int,
129 std::complex<float> *,
130 const types::blas_int,
132
133 template void
134 call_trtrs(const char,
135 const char,
136 const char,
137 const types::blas_int,
138 const types::blas_int,
139 const std::complex<double> *,
140 const types::blas_int,
141 std::complex<double> *,
142 const types::blas_int,
144 } // namespace QRImplementation
145} // namespace internal
146
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:38
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:39
void trtrs(const char *, const char *, const char *, const ::types::blas_int *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, number2 *, const ::types::blas_int *, ::types::blas_int *)
void trmv(const char *, const char *, const char *, const ::types::blas_int *, const number1 *, const ::types::blas_int *, number2 *, const ::types::blas_int *)
void call_trmv(const char uplo, const char trans, const char diag, const types::blas_int n, const Number *a, const types::blas_int lda, Number *x, const types::blas_int incx)
Definition qr.cc:29
void call_trtrs(const char uplo, const char trans, const char diag, const types::blas_int n, const types::blas_int nrhs, const Number *a, const types::blas_int lda, Number *b, const types::blas_int ldb, types::blas_int *info)
Definition qr.cc:43