Reference documentation for deal.II version 9.0.0
source
lac
la_parallel_block_vector.cc
1
// ---------------------------------------------------------------------
2
//
3
// Copyright (C) 2016 - 2017 by the deal.II authors
4
//
5
// This file is part of the deal.II library.
6
//
7
// The deal.II library is free software; you can use it, redistribute
8
// it, and/or modify it under the terms of the GNU Lesser General
9
// Public License as published by the Free Software Foundation; either
10
// version 2.1 of the License, or (at your option) any later version.
11
// The full text of the license can be found in the file LICENSE at
12
// the top level of the deal.II distribution.
13
//
14
// ---------------------------------------------------------------------
15
16
#include <deal.II/lac/la_parallel_block_vector.h>
17
#include <deal.II/lac/la_parallel_block_vector.templates.h>
18
19
#include <deal.II/lac/full_matrix.h>
20
#include <deal.II/lac/lapack_full_matrix.h>
21
22
DEAL_II_NAMESPACE_OPEN
23
24
25
// disable instantiation for MSVC for now because of a compiler bug,
26
// see https://github.com/dealii/dealii/issues/2875
27
#ifndef DEAL_II_MSVC
28
29
#include "la_parallel_block_vector.inst"
30
31
// do a few functions that currently don't fit the scheme because they have
32
// two template arguments that need to be different (the case of same
33
// arguments is covered by the default copy constructor and copy operator that
34
// is declared separately)
35
36
namespace
LinearAlgebra
37
{
38
namespace
distributed
39
{
40
#define TEMPL_COPY_CONSTRUCTOR(S1,S2) \
41
template BlockVector<S1>& BlockVector<S1>::operator=<S2> (const BlockVector<S2> &)
42
43
TEMPL_COPY_CONSTRUCTOR(
double
,
float
);
44
TEMPL_COPY_CONSTRUCTOR(
float
,
double
);
45
46
#undef TEMPL_COPY_CONSTRUCTOR
47
}
48
}
49
50
#endif // ! DEAL_II_MSVC
51
52
DEAL_II_NAMESPACE_CLOSE
LinearAlgebra
Definition:
communication_pattern_base.h:26
Generated by
1.8.14