]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
SliceVector -> VectorSlice
authorguido <guido@0785d39b-7218-0410-832d-ea1e28bc413d>
Fri, 17 Sep 2004 09:09:55 +0000 (09:09 +0000)
committerguido <guido@0785d39b-7218-0410-832d-ea1e28bc413d>
Fri, 17 Sep 2004 09:09:55 +0000 (09:09 +0000)
git-svn-id: https://svn.dealii.org/trunk@9626 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/Makefile
deal.II/base/include/base/vector_slice.h [moved from deal.II/base/include/base/slice_vector.h with 79% similarity]
deal.II/deal.II/include/fe/fe_values.h
deal.II/deal.II/source/fe/fe_values.cc
deal.II/deal.II/source/fe/fe_values.instance.h
deal.II/doc/news/c-5.0.html
tests/base/slice_vector.cc

index 3da01bf7497f2ef303f2b0eb5a3b87dc218a8dfc..27fb57d5fe18356b8c0bdbb2fe89ba2a4a6693b9 100644 (file)
@@ -126,7 +126,7 @@ TAGS:
        @cd $D/common ; etags $D/base/source/*.cc \
        $D/lac/source/*.cc $D/deal.II/source/*/*.cc \
        $D/tests/*/*.cc $D/examples/*/*.cc \
-       --language=none --regex='/.*/' \
+       --language=c++ \
        $D/base/include/*/*.h $D/lac/include/*/*.h \
        $D/deal.II/include/*/*.h $D/tests/*/*.h; \
        perl -pi -e 's/ \* .*//g; s&[\t]*/\*.*&&g; s&[\t]*\*/.*&&g;' TAGS
similarity index 79%
rename from deal.II/base/include/base/slice_vector.h
rename to deal.II/base/include/base/vector_slice.h
index f0881c6e9ceb321548a1a91af37ae7561a865e08..0746cc563eda6c91e6b2161df64455186dbbea5d 100644 (file)
@@ -10,8 +10,8 @@
 //    further information on this license.
 //
 //---------------------------------------------------------------------
-#ifndef __deal2__slice_vector_h
-#define __deal2__slice_vector_h
+#ifndef __deal2__vector_slice_h
+#define __deal2__vector_slice_h
 
 #include <base/config.h>
 #include <base/exceptions.h>
  * every index.
  *
  * Some precautions have to be taken if it is used for a constant
- * vector: the SliceVector object has to be constant, too. The
+ * vector: the VectorSlice object has to be constant, too. The
  * appropriate initalization sequence is like this:
  *
  * @code
  *   void f(const std::vector<int>& v)
  *   {
- *     const SliceVector slice(v,...);
+ *     const VectorSlice slice(v,...);
  *     ...
  *   }
  * @endcode
  * @author Guido Kanschat, 2004
  */
 template <class VECTOR>
-class SliceVector
+class VectorSlice
 {
   public:
-    SliceVector(VECTOR& v);
-    SliceVector(VECTOR& v,
+    VectorSlice(VECTOR& v);
+    VectorSlice(VECTOR& v,
                unsigned int start,
                unsigned int length);
 
@@ -62,15 +62,15 @@ class SliceVector
  * Helper function for creating temporary objects without typing
  * template arguments.
  *
- * @relates SliceVector
+ * @relates VectorSlice
  * @author Guido Kanschat, 2004
  */
 template <class VECTOR>
 inline
-const SliceVector<VECTOR>
+const VectorSlice<VECTOR>
 make_slice (VECTOR& v)
 {
-  const SliceVector<VECTOR> r(v);
+  const VectorSlice<VECTOR> r(v);
   return r;
 }
 
@@ -80,15 +80,15 @@ make_slice (VECTOR& v)
  * Helper function for creating temporary objects without typing
  * template arguments.
  *
- * @relates SliceVector
+ * @relates VectorSlice
  * @author Guido Kanschat, 2004
  */
 template <class VECTOR>
 inline
-const SliceVector<VECTOR>
+const VectorSlice<VECTOR>
 make_slice (VECTOR& v, unsigned int start, unsigned int length)
 {
-  const SliceVector<VECTOR> r(v, start, length);
+  const VectorSlice<VECTOR> r(v, start, length);
   return r;
 }
 
@@ -99,14 +99,14 @@ make_slice (VECTOR& v, unsigned int start, unsigned int length)
 
 template <class VECTOR>
 inline
-SliceVector<VECTOR>::SliceVector(VECTOR& v)
+VectorSlice<VECTOR>::VectorSlice(VECTOR& v)
                : v(v), start(0), length(v.size())
 {}
 
 
 template <class VECTOR>
 inline
-SliceVector<VECTOR>::SliceVector(VECTOR& v,
+VectorSlice<VECTOR>::VectorSlice(VECTOR& v,
                         unsigned int start,
                         unsigned int length)
                : v(v), start(start), length(length)
@@ -119,7 +119,7 @@ SliceVector<VECTOR>::SliceVector(VECTOR& v,
 template <class VECTOR>
 inline
 unsigned int
-SliceVector<VECTOR>::size() const
+VectorSlice<VECTOR>::size() const
 {
   return length;
 }
@@ -128,7 +128,7 @@ SliceVector<VECTOR>::size() const
 template <class VECTOR>
 inline
 typename VECTOR::reference
-SliceVector<VECTOR>::operator[](unsigned int i)
+VectorSlice<VECTOR>::operator[](unsigned int i)
 {
   Assert ((i<length), ExcIndexRange(i, 0, length));
   
@@ -139,7 +139,7 @@ SliceVector<VECTOR>::operator[](unsigned int i)
 template <class VECTOR>
 inline
 typename VECTOR::const_reference
-SliceVector<VECTOR>::operator[](unsigned int i) const
+VectorSlice<VECTOR>::operator[](unsigned int i) const
 {
   Assert ((i<length), ExcIndexRange(i, 0, length));
   
index bdb6c40c671aed8ae013b886a47bdeb00811eefc..4c449c8449893f2ea24468bb3b47bb28ecbf0f05 100644 (file)
@@ -19,6 +19,7 @@
 #include <base/subscriptor.h>
 #include <base/point.h>
 #include <base/tensor.h>
+#include <base/vector_slice.h>
 #include <base/quadrature.h>
 #include <base/table.h>
 #include <lac/vector.h>
@@ -661,7 +662,7 @@ class FEValuesBase : protected FEValuesData<dim>
                                      */
     template <class InputVector, typename number>
     void get_function_values (const InputVector& fe_function,
-                             const std::vector<unsigned int>& indices,
+                             const VectorSlice<const std::vector<unsigned int> >& indices,
                              std::vector<number>& values) const;
 
                                     /**
@@ -702,7 +703,7 @@ class FEValuesBase : protected FEValuesData<dim>
                                      */
     template <class InputVector, typename number>
     void get_function_values (const InputVector& fe_function,
-                             const std::vector<unsigned int>& indices,
+                             const VectorSlice<const std::vector<unsigned int> >& indices,
                              std::vector<Vector<number> >& values) const;
 
                                     /**
@@ -793,7 +794,7 @@ class FEValuesBase : protected FEValuesData<dim>
                                      */
     template <class InputVector>
     void get_function_grads (const InputVector& fe_function,
-                            const std::vector<unsigned int>& indices,
+                            const VectorSlice<const std::vector<unsigned int> >& indices,
                             std::vector<Tensor<1,dim> >& gradients) const;
 
                                     /**
@@ -804,7 +805,7 @@ class FEValuesBase : protected FEValuesData<dim>
                                      */
     template <class InputVector>
     void get_function_grads (const InputVector& fe_function,
-                            const std::vector<unsigned int>& indices,
+                            const VectorSlice<const std::vector<unsigned int> >& indices,
                             std::vector<std::vector<Tensor<1,dim> > >& gradients) const;
 
                                     /**
index 98ad018d5ce9aef32c7a617af25242e6d85cfb2f..edf4907105389e3446c4f69d5ed65105a7b63202 100644 (file)
@@ -403,7 +403,7 @@ template <int dim>
 template <class InputVector, typename number>
 void FEValuesBase<dim>::get_function_values (
   const InputVector& fe_function,
-  const std::vector<unsigned int>& indices,
+  const VectorSlice<const std::vector<unsigned int> >& indices,
   std::vector<number> &values) const
 {
   Assert (this->update_flags & update_values, ExcAccessToUninitializedField());
@@ -495,7 +495,7 @@ template <int dim>
 template <class InputVector, typename number>
 void FEValuesBase<dim>::get_function_values (
   const InputVector& fe_function,
-  const std::vector<unsigned int>& indices,
+  const VectorSlice<const std::vector<unsigned int> >& indices,
   std::vector<Vector<number> >& values) const
 {
                                   // One value per quadrature point
@@ -600,7 +600,7 @@ template <int dim>
 template <class InputVector>
 void FEValuesBase<dim>::get_function_grads (
   const InputVector& fe_function,
-  const std::vector<unsigned int>& indices,
+  const VectorSlice<const std::vector<unsigned int> >& indices,
   std::vector<Tensor<1,dim> > &values) const
 {
   Assert (this->update_flags & update_gradients, ExcAccessToUninitializedField());
@@ -691,7 +691,7 @@ template <int dim>
 template <class InputVector>
 void FEValuesBase<dim>::get_function_grads (
   const InputVector& fe_function,
-  const std::vector<unsigned int>& indices,
+  const VectorSlice<const std::vector<unsigned int> >& indices,
   std::vector<std::vector<Tensor<1,dim> > >& values) const
 {
                                   // One value per quadrature point
index d76e13894585cd90f69027085c066bf9de89553c..f6647ce71cf375aba774c3236b683e8410d886d5 100644 (file)
@@ -24,10 +24,10 @@ void FEValuesBase<deal_II_dimension>::get_function_values<IN>
 (const IN&, std::vector<float>&) const;
 template
 void FEValuesBase<deal_II_dimension>::get_function_values<IN>
-(const IN&, const std::vector<unsigned int>&, std::vector<double>&) const;
+(const IN&, const SliceVector<const std::vector<unsigned int> >&, std::vector<double>&) const;
 template
 void FEValuesBase<deal_II_dimension>::get_function_values<IN>
-(const IN&, const std::vector<unsigned int>&, std::vector<float>&) const;
+(const IN&, const SliceVector<const std::vector<unsigned int> >&, std::vector<float>&) const;
 
 template
 void FEValuesBase<deal_II_dimension>::get_function_values<IN>
@@ -38,11 +38,11 @@ void FEValuesBase<deal_II_dimension>::get_function_values<IN>
 
 template
 void FEValuesBase<deal_II_dimension>::get_function_values<IN>
-(const IN&, const std::vector<unsigned int>&,
+(const IN&, const SliceVector<const std::vector<unsigned int> >&,
  std::vector<Vector<double> > &) const;
 template
 void FEValuesBase<deal_II_dimension>::get_function_values<IN>
-(const IN&, const std::vector<unsigned int>&,
+(const IN&, const SliceVector<const std::vector<unsigned int> >&,
  std::vector<Vector<float> > &) const;
 
 template
@@ -50,7 +50,7 @@ void FEValuesBase<deal_II_dimension>::get_function_grads<IN>
 (const IN&, std::vector<Tensor<1,deal_II_dimension> > &) const;
 template
 void FEValuesBase<deal_II_dimension>::get_function_grads<IN>
-(const IN&, const std::vector<unsigned int>&,
+(const IN&, const SliceVector<const std::vector<unsigned int> >&,
  std::vector<Tensor<1,deal_II_dimension> > &) const;
 
 template
@@ -58,7 +58,7 @@ void FEValuesBase<deal_II_dimension>::get_function_grads<IN>
 (const IN&, std::vector<std::vector<Tensor<1,deal_II_dimension> > > &) const;
 template
 void FEValuesBase<deal_II_dimension>::get_function_grads<IN>
-(const IN&, const std::vector<unsigned int>&,
+(const IN&, const SliceVector<const std::vector<unsigned int> >&,
  std::vector<std::vector<Tensor<1,deal_II_dimension> > > &) const;
 
 template
index cb8963feae5d685fd51286b214629305f36b05eb..0a9336bc58c07e70720ff5b9e2e3ca4d1d08e527 100644 (file)
@@ -107,7 +107,7 @@ inconvenience this causes.
 
 <ol>
 
-  <li> <p> New: a class template <code class="class">SliceVector</code> allows
+  <li> <p> New: a class template <code class="class">VectorSlice</code> allows
   access to consecutive portions os a vector.
   <br>
   (GK 2004/09/16)
index 5dce51d39806b206b0f3d3650ab2985a1cfcbaa7..1e5ff8a148e8256732d5807dd6edfe9d919a900b 100644 (file)
@@ -12,7 +12,7 @@
 //---------------------------------------------------------------------
 
 
-#include <base/slice_vector.h>
+#include <base/vector_slice.h>
 #include <base/logstream.h>
 
 #include <vector>
@@ -21,7 +21,7 @@
 
 void f(const std::vector<int>& v)
 {
-  const SliceVector<const std::vector<int> > s(v,2,3);
+  const VectorSlice<const std::vector<int> > s(v,2,3);
 
   for (unsigned int i=0;i<s.size();++i)
     std::cerr << '\t' << s[i];
@@ -64,7 +64,7 @@ int main()
   for (unsigned int i=0;i<v.size();++i)
     v[i] = i;
   
-  SliceVector<std::vector<int> > s(v, 3, 4);
+  VectorSlice<std::vector<int> > s(v, 3, 4);
 
   for (unsigned int i=0;i<s.size();++i)
     s[i] = i;
@@ -75,7 +75,7 @@ int main()
 
   f(v);
 
-  SliceVector<std::vector<int> > s2(v, 3, 5);
+  VectorSlice<std::vector<int> > s2(v, 3, 5);
   int n = s[4];
   n += 3;
 

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.