]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Add missing piece.
authorbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Thu, 9 Aug 2012 21:04:01 +0000 (21:04 +0000)
committerbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Thu, 9 Aug 2012 21:04:01 +0000 (21:04 +0000)
git-svn-id: https://svn.dealii.org/branches/branch_bigger_global_dof_indices_3@25845 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/include/deal.II/base/types.h

index a1d59a441811d3f40708afb3e728848e1760ffca..dcb25951823d2afcd151cc3d0bc7d7770df19f79 100644 (file)
@@ -65,12 +65,57 @@ namespace types
                                     */
   const unsigned int artificial_subdomain_id = static_cast<subdomain_id_t>(-2);
 
-                                   /**
-                                    * The type used to denote global dof
-                                    * indices.
-                                    */
+
+#ifdef DEAL_II_USE_LARGE_INDEX_TYPE
+                                  /**
+                                   * The type used for global indices of
+                                   * degrees of freedom. While in sequential
+                                   * computations the 4 billion indices of
+                                   * 32-bit unsigned integers is plenty,
+                                   * parallel computations using the
+                                   * parallel::distributed::Triangulation
+                                   * class can overflow this number and we
+                                   * need a bigger index space.
+                                   *
+                                   * The data type always indicates an
+                                   * unsigned integer type.
+                                   */
+  typedef unsigned long long int global_dof_index;
+
+                                  /**
+                                   * An identifier that denotes the MPI type
+                                   * associated with types::global_dof_index.
+                                   */
+#  define DEAL_II_DOF_INDEX_MPI_TYPE MPI_UNSIGNED_LONG_LONG
+#else
+                                  /**
+                                   * The type used for global indices of
+                                   * degrees of freedom. While in sequential
+                                   * computations the 4 billion indices of
+                                   * 32-bit unsigned integers is plenty,
+                                   * parallel computations using the
+                                   * parallel::distributed::Triangulation
+                                   * class can overflow this number and we
+                                   * need a bigger index space.
+                                   *
+                                   * The data type always indicates an
+                                   * unsigned integer type.
+                                   */
   typedef unsigned int global_dof_index;
 
+                                  /**
+                                   * An identifier that denotes the MPI type
+                                   * associated with types::global_dof_index.
+                                   */
+#  define DEAL_II_DOF_INDEX_MPI_TYPE MPI_UNSIGNED
+#endif
+
+                                  /**
+                                   * An invalid value for indices of degrees
+                                   * of freedom.
+                                   */
+  const global_dof_index invalid_dof_index = static_cast<global_dof_index>(-1);
+
                                    /**
                                     * An invalid value for indices of degrees
                                     * of freedom.
@@ -102,6 +147,8 @@ namespace types
            */
   const material_id_t invalid_material_id = static_cast<material_id_t>(-1);
 
+
+
 }
 
 

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.