Mercurial > hg > kwantix
comparison include/interp_values.hpp @ 23:acefa48d4b4d
Not compiling, added .hgignore
author | Jordi Gutiérrez Hermoso <jordigh@gmail.com> |
---|---|
date | Sun, 12 Apr 2009 12:28:49 -0500 |
parents | 532145a38fa2 |
children |
comparison
equal
deleted
inserted
replaced
22:532145a38fa2 | 23:acefa48d4b4d |
---|---|
13 //FIXME: Give this a better name | 13 //FIXME: Give this a better name |
14 /// A unit normals class associated to an interpolator | 14 /// A unit normals class associated to an interpolator |
15 class normals{ | 15 class normals{ |
16 public: | 16 public: |
17 /** \brief Return the kth coordinate of all normals along the | 17 /** \brief Return the kth coordinate of all normals along the |
18 * boundary as interp values | 18 * boundary as interp values |
19 */ | 19 */ |
20 bdry_values operator()(size_t k) const; | 20 bdry_values operator()(size_t k) const; |
21 | 21 |
22 /*! \name comparisons | 22 /*! \name comparisons |
23 * | 23 * |
24 * Normals are the same if they correspond to the same domain | 24 * Normals are the same if they correspond to the same domain |
30 //@} | 30 //@} |
31 private: | 31 private: |
32 template<typename RBF> friend class interpolator; | 32 template<typename RBF> friend class interpolator; |
33 ///Only constructor available for interpolator class | 33 ///Only constructor available for interpolator class |
34 normals(size_t rbfs_hash_in, const map<point, linalg::vector>& | 34 normals(size_t rbfs_hash_in, const map<point, linalg::vector>& |
35 normals_in, size_t n_in); | 35 normals_in, size_t n_in); |
36 ///Does nothing | 36 ///Does nothing |
37 normals(){}; | 37 normals(){}; |
38 ///Exception builder | 38 ///Exception builder |
39 badArgument not_initted() const; | 39 badArgument not_initted() const; |
40 | 40 |
87 //@} | 87 //@} |
88 | 88 |
89 protected: | 89 protected: |
90 /// Interpolator creates interp_values with this | 90 /// Interpolator creates interp_values with this |
91 interp_values(const linalg::vector& v_in, size_t rbfs_hash_in, | 91 interp_values(const linalg::vector& v_in, size_t rbfs_hash_in, |
92 size_t n_in, size_t m_in) | 92 size_t n_in, size_t m_in) |
93 : v(v_in), rbfs_hash(rbfs_hash_in), n(n_in), m(m_in) {}; | 93 : v(v_in), rbfs_hash(rbfs_hash_in), n(n_in), m(m_in) {}; |
94 | 94 |
95 /// No construction! | 95 /// No construction! |
96 interp_values(); | 96 interp_values(); |
97 | 97 |
122 bdry_values(const interp_values& v_in); | 122 bdry_values(const interp_values& v_in); |
123 private: | 123 private: |
124 friend class normals; | 124 friend class normals; |
125 ///Same as for parent class | 125 ///Same as for parent class |
126 bdry_values(const linalg::vector& v_in, size_t rbfs_hash_in, | 126 bdry_values(const linalg::vector& v_in, size_t rbfs_hash_in, |
127 size_t n_in, size_t m_in) | 127 size_t n_in, size_t m_in) |
128 : interp_values(v_in, rbfs_hash_in, n_in, m_in) {}; | 128 : interp_values(v_in, rbfs_hash_in, n_in, m_in) {}; |
129 }; | 129 }; |
130 | |
131 /// For referring to values purely on the interior of an interpolator. | |
132 class intr_values : public interp_values{ | |
133 public: | |
134 ///Empty initialisation | |
135 intr_values(){}; | |
136 ///Initialise the interior values with interp_values | |
137 intr_values(const interp_values& v_in); | |
138 private: | |
139 ///Same as for parent class | |
140 intr_values(const linalg::vector& v_in, size_t rbfs_hash_in, | |
141 size_t n_in, size_t m_in) | |
142 : interp_values(v_in, rbfs_hash_in, n_in, m_in) {}; | |
143 }; | |
144 | |
145 | |
130 | 146 |
131 | 147 |
132 | 148 |
133 /*! \name Arithmetic operators | 149 /*! \name Arithmetic operators |
134 * For comfortable syntax. | 150 * For comfortable syntax. |