1 /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 This file is part of CEPS.
4 CEPS is free software: you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation, either version 3 of the License, or
7 (at your option) any later version.
9 CEPS is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
14 You should have received a copy of the GNU General Public License
15 along with CEPS (see file LICENSE at root of project).
16 If not, see <https://www.gnu.org/licenses/>.
19 Copyright 2019-2024 Inria, Universite de Bordeaux
21 Authors, in alphabetical order:
23 Pierre-Elliott BECUE, Florian CARO, Yves COUDIERE(*), Andjela DAVIDOVIC,
24 Charlie DOUANLA-LONTSI, Marc FUENTES, Mehdi JUHOOR, Michael LEGUEBE(*),
25 Pauline MIGERDITICHAN, Valentin PANNETIER(*), Nejib ZEMZEMI.
26 * : currently active authors
28 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
29 /** @file SourceTerm.tpp template defs for SourceTerm.hpp */
30 // included from "pde/common/functions/SourceTerm.hpp"
31 #include "pde/common/functions/SourceTerm.hpp"
33 template <class _Result>
34 SourceTerm<_Result>::SourceTerm(
35 SAFunc<_Result>* functor,
36 const CepsVector<DegreeOfFreedom*>* domain,
37 CepsUnknownIndex unknown,
39 CepsBool isLaplaceSource,
42 Field<_Result,DegreeOfFreedom> (functor, domain, bufferize),
46 setFlag(CepsSourceTermFlag::Stimulation);
48 setFlag(CepsSourceTermFlag::Laplace);
51 template <class _Result>
52 SourceTerm<_Result>::~SourceTerm()
55 template <class _Result>
57 SourceTerm<_Result>::setFlag(const CepsSourceTermFlag &flag)
63 template <class _Result>
65 SourceTerm<_Result>::getFlag() const
70 template <class _Result>
72 SourceTerm<_Result>::getUnknownId() const
77 template <class _Result>
79 SourceTerm<_Result>::hasOption(CepsSourceTermFlag flag) const
81 return isEnabledOption(getFlag(),flag);