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.