LifeV
test_bdf.hpp
Go to the documentation of this file.
1 //@HEADER
2 /*
3 *******************************************************************************
4 
5  Copyright (C) 2004, 2005, 2007 EPFL, Politecnico di Milano, INRIA
6  Copyright (C) 2010 EPFL, Politecnico di Milano, Emory University
7 
8  This file is part of LifeV.
9 
10  LifeV is free software; you can redistribute it and/or modify
11  it under the terms of the GNU Lesser General Public License as published by
12  the Free Software Foundation, either version 3 of the License, or
13  (at your option) any later version.
14 
15  LifeV is distributed in the hope that it will be useful,
16  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18  Lesser General Public License for more details.
19 
20  You should have received a copy of the GNU Lesser General Public License
21  along with LifeV. If not, see <http://www.gnu.org/licenses/>.
22 
23 *******************************************************************************
24 */
25 //@HEADER
26 
27 /*!
28  @file
29  @brief Simple Fourier test with Dirichlet Boundary condition
30 
31  @author Umberto Villa <uvilla@emory.edu>
32  @date 14-04-2010
33 
34  Solve the problem
35 
36  \partial_t u - \nu(t) \Delta u + sigma(t) u = f(t)
37 
38  u = g on the boundary
39  u(t=0) = u0 initial condition
40 
41  on a cube
42  \nu, \sigma and \source can be function of time
43  (which implies that the matrix needs to be reassembled each time)
44 
45  Purpose: Test BDF of different order
46 
47  The analytical solution used in the test is quadratic both in space and time.
48  Therefore a second order approximation in space + BDF2 should provide a solution exact up to
49  the tolerance of the linear system.
50 
51  */
52 
53 
54 #ifndef __test_bdf_H
55 #define __test_bdf_H 1
56 
57 
58 
59 
60 
61 // ===================================================
62 //! Includes
63 // ===================================================
64 #include <lifev/core/LifeV.hpp>
65 
66 
67 
68 
69 
70 /*!
71  * \class laplacian
72  * \brief LifeV Laplacian test case
73  *
74  * @author U. Villa
75  * @see
76  */
77 class test_bdf
78  // :
79  // public LifeV::Application
80 {
81 public:
82 
83  /** @name Constructors, destructor
84  */
85  //@{
86 
87  test_bdf ( int argc,
88  char** argv );
89 
91  {}
92 
93  //@}
94 
95  /** @name Methods
96  */
97  //@{
98 
99  void run();
100  bool check();
101 
102  //@}
103 
104 
105 private:
106  struct Private;
108 };
109 
110 #endif /* __test_bdf_H */
std::shared_ptr< Private > Members
Definition: test_bdf.hpp:106
void run()
Methods.
Definition: test_bdf.cpp:134
bool check()
Definition: test_bdf.cpp:393
test_bdf(int argc, char **argv)
Constructors.
Definition: test_bdf.cpp:113
~test_bdf()
Definition: test_bdf.hpp:90