]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Make ConstraintMatrix::ConstraintLine a public member class
authorMatthias Maier <tamiko@43-1.org>
Tue, 8 Aug 2017 16:33:53 +0000 (11:33 -0500)
committerMatthias Maier <tamiko@43-1.org>
Tue, 8 Aug 2017 23:54:03 +0000 (18:54 -0500)
include/deal.II/lac/constraint_matrix.h

index adb33df06f52ed5bd97d968e817251807c78464a..1957cc4a218d13990963c0d09097050162cdfa27 100644 (file)
@@ -1120,6 +1120,64 @@ public:
    * @}
    */
 
+
+
+  /**
+   * This class represents one line of a constraint matrix.
+   */
+  struct ConstraintLine
+  {
+    /**
+     * A data type in which we store the list of entries that make up the
+     * homogenous part of a constraint.
+     */
+    typedef std::vector<std::pair<size_type,double> > Entries;
+
+    /**
+     * Number of this line. Since only very few lines are stored, we can not
+     * assume a specific order and have to store the line number explicitly.
+     */
+    size_type line;
+
+    /**
+     * Row numbers and values of the entries in this line.
+     *
+     * For the reason why we use a vector instead of a map and the
+     * consequences thereof, the same applies as what is said for
+     * ConstraintMatrix::lines.
+     */
+    Entries entries;
+
+    /**
+     * Value of the inhomogeneity.
+     */
+    double inhomogeneity;
+
+    /**
+     * This operator is a bit weird and unintuitive: it compares the line
+     * numbers of two lines. We need this to sort the lines; in fact we could
+     * do this using a comparison predicate.  However, this way, it is easier,
+     * albeit unintuitive since two lines really have no god-given order
+     * relation.
+     */
+    bool operator < (const ConstraintLine &) const;
+
+    /**
+     * This operator is likewise weird: it checks whether the line indices of
+     * the two operands are equal, irrespective of the fact that the contents
+     * of the line may be different.
+     */
+    bool operator == (const ConstraintLine &) const;
+
+    /**
+     * Determine an estimate for the memory consumption (in bytes) of this
+     * object.
+     */
+    std::size_t memory_consumption () const;
+  };
+
+
+
   /**
    * Exception
    *
@@ -1227,60 +1285,6 @@ public:
 
 private:
 
-  /**
-   * This class represents one line of a constraint matrix.
-   */
-  struct ConstraintLine
-  {
-    /**
-     * A data type in which we store the list of entries that make up the
-     * homogenous part of a constraint.
-     */
-    typedef std::vector<std::pair<size_type,double> > Entries;
-
-    /**
-     * Number of this line. Since only very few lines are stored, we can not
-     * assume a specific order and have to store the line number explicitly.
-     */
-    size_type line;
-
-    /**
-     * Row numbers and values of the entries in this line.
-     *
-     * For the reason why we use a vector instead of a map and the
-     * consequences thereof, the same applies as what is said for
-     * ConstraintMatrix::lines.
-     */
-    Entries entries;
-
-    /**
-     * Value of the inhomogeneity.
-     */
-    double inhomogeneity;
-
-    /**
-     * This operator is a bit weird and unintuitive: it compares the line
-     * numbers of two lines. We need this to sort the lines; in fact we could
-     * do this using a comparison predicate.  However, this way, it is easier,
-     * albeit unintuitive since two lines really have no god-given order
-     * relation.
-     */
-    bool operator < (const ConstraintLine &) const;
-
-    /**
-     * This operator is likewise weird: it checks whether the line indices of
-     * the two operands are equal, irrespective of the fact that the contents
-     * of the line may be different.
-     */
-    bool operator == (const ConstraintLine &) const;
-
-    /**
-     * Determine an estimate for the memory consumption (in bytes) of this
-     * object.
-     */
-    std::size_t memory_consumption () const;
-  };
-
   /**
    * Store the lines of the matrix.  Entries are usually appended in an
    * arbitrary order and insertion into a vector is done best at the end, so

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.