~ubuntu-branches/ubuntu/raring/rheolef/raring-proposed

« back to all changes in this revision

Viewing changes to nfem/basis/P4.h

  • Committer: Package Import Robot
  • Author(s): Pierre Saramito, Pierre Saramito, Sylvestre Ledru
  • Date: 2012-05-14 14:02:09 UTC
  • mfrom: (1.1.6)
  • Revision ID: package-import@ubuntu.com-20120514140209-dzbdlidkotyflf9e
Tags: 6.1-1
[ Pierre Saramito ]
* New upstream release 6.1 (minor changes):
  - support arbitrarily polynomial order Pk
  - source code supports g++-4.7 (closes: #671996)

[ Sylvestre Ledru ]
* update of the watch file

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
// file automatically generated by "basis_symbolic_cxx.cc"
2
 
///
3
 
/// This file is part of Rheolef.
4
 
///
5
 
/// Copyright (C) 2000-2009 Pierre Saramito <Pierre.Saramito@imag.fr>
6
 
///
7
 
/// Rheolef is free software; you can redistribute it and/or modify
8
 
/// it under the terms of the GNU General Public License as published by
9
 
/// the Free Software Foundation; either version 2 of the License, or
10
 
/// (at your option) any later version.
11
 
///
12
 
/// Rheolef is distributed in the hope that it will be useful,
13
 
/// but WITHOUT ANY WARRANTY; without even the implied warranty of
14
 
/// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
 
/// GNU General Public License for more details.
16
 
///
17
 
/// You should have received a copy of the GNU General Public License
18
 
/// along with Rheolef; if not, write to the Free Software
19
 
/// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
20
 
///
21
 
/// =========================================================================
22
 
#ifndef _RHEOLEF_P4_H
23
 
#define _RHEOLEF_P4_H
24
 
#include "rheolef/basis.h"
25
 
#include "rheolef/tensor.h"
26
 
namespace rheolef {
27
 
 
28
 
class basis_P4: public basis_rep {
29
 
public:
30
 
  typedef size_t size_type;
31
 
  basis_P4() : basis_rep("P4", element_constant::Lagrange) {}
32
 
  ~basis_P4();
33
 
  size_type degree () const;
34
 
  size_type size (
35
 
    reference_element hat_K, basis_rep::dof_family_type family) const;
36
 
  dof_family_type dof_family(
37
 
    reference_element hat_K,
38
 
    size_type    i_dof_local) const;
39
 
  Float eval(
40
 
    reference_element hat_K,
41
 
    size_type         i_dof_local,
42
 
    const point&      hat_x) const;
43
 
  point grad_eval(
44
 
    reference_element hat_K,
45
 
    size_type         i_dof_local,
46
 
    const point&      hat_x) const;
47
 
  tensor hessian_eval(
48
 
    reference_element hat_K,
49
 
    size_type         i_dof_local,
50
 
    const point&      hat_x) const;
51
 
  void eval(
52
 
    reference_element hat_K,
53
 
    const point&      hat_x,
54
 
    std::vector<Float>&    values) const;
55
 
  void grad_eval(
56
 
    reference_element hat_K,
57
 
    const point&      hat_x,
58
 
    std::vector<point>&    values) const;
59
 
  void hessian_eval(
60
 
    reference_element hat_K,
61
 
    const point&      hat_x,
62
 
    std::vector<tensor >&    values) const;
63
 
  void hat_node(
64
 
    reference_element hat_K,
65
 
    std::vector<point>&    hat_node) const;
66
 
};
67
 
} // namespace rheoef
68
 
#endif // _RHEOLEF_P4_H
69