Logo  0.95.0-final
Finite Element Embedded Library and Language in C++
Feel++ Feel++ on Github Feel++ community
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
discontinuous.hpp
Go to the documentation of this file.
1 /* -*- mode: c++; coding: utf-8; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; show-trailing-whitespace: t -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
2 
3  This file is part of the Feel library
4 
5  Author(s): Christophe Prud'homme <christophe.prudhomme@feelpp.org>
6  Date: 2009-02-17
7 
8  Copyright (C) 2009 Université Joseph Fourier (Grenoble I)
9 
10  This library is free software; you can redistribute it and/or
11  modify it under the terms of the GNU Lesser General Public
12  License as published by the Free Software Foundation; either
13  version 3.0 of the License, or (at your option) any later version.
14 
15  This library 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
21  License along with this library; if not, write to the Free Software
22  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
23 */
29 #ifndef __Discontinuous_H
30 #define __Discontinuous_H 1
31 
32 #include <boost/fusion/sequence.hpp>
34 
35 namespace Feel
36 {
37 // import fusion namespace in Feel
38 namespace fusion = boost::fusion;
39 
47 class Discontinuous
48  :
49  // necessary for boost.parameters
50 public detail::continuity_base
51 {
52 public:
53 
54 
58 
59  static const bool is_continuous = false;
60  static const bool is_discontinuous_locally = false;
61  static const bool is_discontinuous_totally = true;
62 
63 
65 
69  typedef fusion::vector<> discontinuity_markers_type;
70 
72 
76 
78  Discontinuous();
80  Discontinuous( Continuous const & );
82  ~Discontinuous();
83 
85 
89 
91  Discontinuous& operator=( Discontinuous const & o )
92  {
93  if ( this != &o )
94  {
95  }
96 
97  return *this;
98  }
100 
104 
105 
107 
111 
112 
114 
118 
119 
121 
122  template<typename MeshType, typename DofType>
123  class apply
124  {
125  public:
126  typedef size_type result_type;
127  typedef MeshType mesh_type;
128  typedef DofType dof_type;
129  typedef typename dof_type::fe_type fe_type;
130 
131  apply( MeshType& M, DofType& D )
132  :
133  M_mesh( M ),
134  M_dof( D )
135  {}
136  template<typename T>
137  result_type operator()( const T& t, const size_type& start ) const
138  {
139  //return build( T::value, start );
140  return start;
141  }
142  private:
143  private:
144  MeshType& M_mesh;
145  DofType M_dof;
146  };
147 
148 protected:
149 
150 private:
151 
152 };
153 
154 } // Feel
155 #endif /* __Discontinuous_H */
156 
size_t size_type
Indices (starting from 0)
Definition: feelcore/feel.hpp:319
Elements & operator=(Elements const &e)
Definition: elements.hpp:335

Generated on Sun Dec 22 2013 13:10:58 for Feel++ by doxygen 1.8.5