Reference documentation for deal.II version 8.5.1
polynomials_bernstein.h
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2013 - 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 #ifndef dealii__polynomials_bernstein_h
17 #define dealii__polynomials_bernstein_h
18 
19 
20 #include <deal.II/base/polynomial.h>
21 #include <fstream>
22 #include <iostream>
23 
24 
25 DEAL_II_NAMESPACE_OPEN
26 
39 template <typename number>
41 {
42 public:
62  const unsigned int index,
63  const unsigned int degree);
64 };
65 
66 
67 template <typename number>
68 std::vector<Polynomials::Polynomial<number> >
69 generate_complete_bernstein_basis (
70  const unsigned int degree)
71 {
72  std::vector<Polynomials::Polynomial<number> > v;
73  for (unsigned int i = 0; i < degree + 1; ++i)
74  v.push_back(PolynomialsBernstein<number>(i, degree));
75  return v;
76 }
77 
78 DEAL_II_NAMESPACE_CLOSE
79 
80 #endif
unsigned int degree() const
Definition: polynomial.h:610
PolynomialsBernstein(const unsigned int index, const unsigned int degree)