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
la_parallel_vector.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) 2016 - 2026 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
14#include <deal.II/lac/la_parallel_vector.templates.h>
15
16#include <complex>
17
19
20#include "lac/la_parallel_vector.inst"
21
22// do a few functions that currently don't fit the scheme because they have
23// two template arguments that need to be different (the case of same
24// arguments is covered by the default copy constructor and copy operator that
25// is declared separately)
26
27namespace LinearAlgebra
28{
29 namespace distributed
30 {
31#ifndef DOXYGEN
32
33# define TEMPL_COPY_CONSTRUCTOR(S1, S2) \
34 template Vector<S1, ::MemorySpace::Host> & \
35 Vector<S1, ::MemorySpace::Host>::operator= \
36 <S2>(const Vector<S2, ::MemorySpace::Host> &)
37
38 TEMPL_COPY_CONSTRUCTOR(double, float);
39 TEMPL_COPY_CONSTRUCTOR(float, double);
40# ifdef DEAL_II_WITH_COMPLEX_VALUES
41 TEMPL_COPY_CONSTRUCTOR(std::complex<double>, std::complex<float>);
42 TEMPL_COPY_CONSTRUCTOR(std::complex<float>, std::complex<double>);
43# endif
44
45# undef TEMPL_COPY_CONSTRUCTOR
46
49
50 template void
55 template void
60
61 template void
66 template void
71
72 template void
77 template void
82
83 template void
86 const bool);
87 template void
90 const bool);
91
92 template float
95 template double
98
99 template void
102 template void
106
107 template void
111 template void
114#endif
115 } // namespace distributed
116} // namespace LinearAlgebra
117
118
#define DEAL_II_NAMESPACE_OPEN
Definition config.h:38
#define DEAL_II_NAMESPACE_CLOSE
Definition config.h:39