]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Merge the branches from the branch_bigger_dof_indices_3 branch.
authorbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Sat, 9 Feb 2013 04:16:09 +0000 (04:16 +0000)
committerbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Sat, 9 Feb 2013 04:16:09 +0000 (04:16 +0000)
git-svn-id: https://svn.dealii.org/branches/branch_bigger_global_dof_indices_4@28289 0785d39b-7218-0410-832d-ea1e28bc413d

139 files changed:
deal.II/examples/step-18/step-18.cc
deal.II/examples/step-4/step-4.cc
deal.II/examples/step-42/step-42.cc
deal.II/examples/step-5/step-5.cc
deal.II/examples/step-6/step-6.cc
deal.II/files [new file with mode: 0644]
deal.II/include/deal.II/base/index_set.h
deal.II/include/deal.II/base/polynomial_space.h
deal.II/include/deal.II/base/table_indices.h
deal.II/include/deal.II/base/types.h
deal.II/include/deal.II/base/utilities.h
deal.II/include/deal.II/base/work_stream.h
deal.II/include/deal.II/dofs/dof_accessor.h
deal.II/include/deal.II/dofs/dof_accessor.templates.h
deal.II/include/deal.II/dofs/dof_handler.h
deal.II/include/deal.II/dofs/dof_handler_policy.h
deal.II/include/deal.II/dofs/dof_levels.h
deal.II/include/deal.II/dofs/dof_objects.h
deal.II/include/deal.II/dofs/dof_renumbering.h
deal.II/include/deal.II/dofs/dof_tools.h
deal.II/include/deal.II/dofs/number_cache.h
deal.II/include/deal.II/fe/fe_tools.h
deal.II/include/deal.II/fe/fe_values.h
deal.II/include/deal.II/grid/tria.h
deal.II/include/deal.II/hp/dof_handler.h
deal.II/include/deal.II/hp/dof_objects.h
deal.II/include/deal.II/lac/block_sparse_matrix.h
deal.II/include/deal.II/lac/block_sparse_matrix.templates.h
deal.II/include/deal.II/lac/block_sparse_matrix_ez.h
deal.II/include/deal.II/lac/block_sparse_matrix_ez.templates.h
deal.II/include/deal.II/lac/block_sparsity_pattern.h
deal.II/include/deal.II/lac/block_vector.h
deal.II/include/deal.II/lac/block_vector.templates.h
deal.II/include/deal.II/lac/block_vector_base.h
deal.II/include/deal.II/lac/chunk_sparse_matrix.h
deal.II/include/deal.II/lac/chunk_sparsity_pattern.h
deal.II/include/deal.II/lac/compressed_set_sparsity_pattern.h
deal.II/include/deal.II/lac/compressed_simple_sparsity_pattern.h
deal.II/include/deal.II/lac/compressed_sparsity_pattern.h
deal.II/include/deal.II/lac/constraint_matrix.h
deal.II/include/deal.II/lac/constraint_matrix.templates.h
deal.II/include/deal.II/matrix_free/dof_info.h
deal.II/include/deal.II/matrix_free/dof_info.templates.h
deal.II/include/deal.II/meshworker/assembler.h
deal.II/include/deal.II/meshworker/dof_info.h
deal.II/include/deal.II/meshworker/simple.h
deal.II/include/deal.II/numerics/matrix_tools.h
deal.II/include/deal.II/numerics/solution_transfer.h
deal.II/include/deal.II/numerics/vector_tools.h
deal.II/include/deal.II/numerics/vector_tools.templates.h
deal.II/source/base/index_set.cc
deal.II/source/base/utilities.cc
deal.II/source/distributed/tria.cc
deal.II/source/dofs/dof_accessor.cc
deal.II/source/dofs/dof_handler.cc
deal.II/source/dofs/dof_handler.inst.in
deal.II/source/dofs/dof_handler_policy.cc
deal.II/source/dofs/dof_objects.cc
deal.II/source/dofs/dof_objects.inst.in
deal.II/source/dofs/dof_renumbering.cc
deal.II/source/dofs/dof_renumbering.inst.in
deal.II/source/dofs/dof_tools.cc
deal.II/source/dofs/dof_tools.inst.in
deal.II/source/fe/fe_abf.cc
deal.II/source/fe/fe_tools.cc
deal.II/source/fe/fe_values.cc
deal.II/source/fe/mapping_q_eulerian.cc
deal.II/source/grid/tria.cc
deal.II/source/hp/dof_handler.cc
deal.II/source/lac/block_sparsity_pattern.cc
deal.II/source/lac/chunk_sparsity_pattern.cc
deal.II/source/lac/compressed_set_sparsity_pattern.cc
deal.II/source/lac/compressed_simple_sparsity_pattern.cc
deal.II/source/lac/compressed_sparsity_pattern.cc
deal.II/source/numerics/matrix_tools.cc
deal.II/source/numerics/point_value_history.cc
deal.II/source/numerics/solution_transfer.cc
tests/benchmarks/old/spec2006-447.dealII.cc
tests/bits/anna_1.cc
tests/bits/anna_2.cc
tests/bits/get_dof_indices_01.cc
tests/bits/joa_1.cc
tests/bits/step-13.cc
tests/bits/step-14.cc
tests/bits/step-15.cc
tests/bits/step-16.cc
tests/bits/step-3.cc
tests/bits/step-4.cc
tests/bits/step-5.cc
tests/bits/step-6.cc
tests/bits/step-7.cc
tests/bits/step-8.cc
tests/codim_one/bem.cc
tests/codim_one/gradients.cc
tests/deal.II/block_matrices.cc
tests/deal.II/fe_values_view_21.cc
tests/deal.II/fe_values_view_22.cc
tests/deal.II/inhomogeneous_constraints.cc
tests/deal.II/inhomogeneous_constraints_block.cc
tests/deal.II/inhomogeneous_constraints_nonsymmetric.cc
tests/deal.II/inhomogeneous_constraints_vector.cc
tests/deal.II/point_value_history_01.cc
tests/distributed_grids/2d_dofhandler_01.cc
tests/fail/circular_01.cc
tests/fail/hp-step-14.cc
tests/fail/hp-step-15.cc
tests/fe/abf_01.cc
tests/fe/deformed_projection.h
tests/fe/non_primitive_1.cc
tests/fe/non_primitive_2.cc
tests/fe/rt_normal_02.cc
tests/hp/compare_hp_vs_nonhp_01.cc
tests/hp/continuous_1d_01.cc
tests/hp/continuous_2d_01.cc
tests/hp/continuous_3d_01.cc
tests/hp/crash_05.cc
tests/hp/crash_17.cc
tests/hp/crash_17_compressed_set_sparsity.cc
tests/hp/crash_18.cc
tests/hp/crash_18_compressed_set_sparsity.cc
tests/hp/random.cc
tests/hp/step-13.cc
tests/hp/step-3.cc
tests/hp/step-3a.cc
tests/hp/step-3b.cc
tests/hp/step-3c.cc
tests/hp/step-4.cc
tests/hp/step-5.cc
tests/hp/step-6.cc
tests/hp/step-7.cc
tests/hp/step-8.cc
tests/mpi/p4est_2d_dofhandler_01.cc
tests/mpi/p4est_2d_dofhandler_03.cc
tests/mpi/p4est_2d_dofhandler_04.cc
tests/mpi/p4est_2d_renumber_01.cc
tests/mpi/p4est_2d_renumber_02.cc
tests/multigrid/renumbering_01.cc
tests/multigrid/step-16.cc
tests/umfpack/umfpack_04.cc

index 8f5940cb2a135f267fce9e8454a8b9131b69b227..048fcbc23f2accd797ef0d0132e601ca10e9e450 100644 (file)
@@ -1050,7 +1050,7 @@ namespace Step18
     FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
     Vector<double>       cell_rhs (dofs_per_cell);
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     BodyForce<dim>      body_force;
     std::vector<Vector<double> > body_force_values (n_q_points,
index 7aa256fa808245b86258febcebd1e2ba827992bd..a39f1010f9d5b1a12caee1d7ea7635eaf821704a 100644 (file)
@@ -320,7 +320,7 @@ void Step4<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   // Next, we again have to loop over all cells and assemble local
   // contributions.  Note, that a cell is a quadrilateral in two space
index 8750d9a4b0a652845ebc9304a40fd0235933fe4f..64ac6f52c476ea851d7433265ee3764e616b6a0f 100644 (file)
@@ -662,7 +662,7 @@ namespace Step42
     FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
     Vector<double>       cell_rhs (dofs_per_cell);
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     typename DoFHandler<dim>::active_cell_iterator cell = dof_handler.begin_active(),
                                                    endc = dof_handler.end();
index 0430781c5cd93433fb42930b9d6552775661a73a..7b366068304412a0c8af59e1911f604599abe0c1 100644 (file)
@@ -304,7 +304,7 @@ void Step5<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   // Here is one difference: for this program, we will again use a constant
   // right hand side function and zero boundary values, but a variable
index 7a5ab147781defae5973482363fff8554c4a2312..75b32ce2e17ed41a2dcebca58e7f94a010df0a28 100644 (file)
@@ -397,7 +397,7 @@ void Step6<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   const Coefficient<dim> coefficient;
   std::vector<double>    coefficient_values (n_q_points);
diff --git a/deal.II/files b/deal.II/files
new file mode 100644 (file)
index 0000000..e3600a1
--- /dev/null
@@ -0,0 +1,537 @@
+TH: things to check:
+1. std::accumulate with different data types
+2. numbers::invalid_unsigned_int
+
+UWE source/base/auto_derivative_function.cc
+UWE source/base/boost_serialization.cc
+UWE source/base/boost_threads.cc
+UWE source/base/conditional_ostream.cc
+UWE source/base/config.cc
+UWE source/base/convergence_table.cc
+UWE source/base/data_out_base.cc
+UWE source/base/event.cc
+UWE source/base/exceptions.cc
+UWE source/base/flow_function.cc
+UWE source/base/function.cc
+UWE source/base/function_derivative.cc
+UWE source/base/function_lib.cc
+UWE source/base/function_lib_cutoff.cc
+UWE source/base/function_parser.cc
+UWE source/base/function_time.cc
+UWE source/base/geometry_info.cc
+NATASHA source/base/index_set.cc
+GK source/base/job_identifier.cc
+GK source/base/logstream.cc
+BRUNO source/base/memory_consumption.cc
+BRUNO source/base/mpi.cc
+BRUNO source/base/multithread_info.cc
+BRUNO source/base/parallel.cc
+BRUNO source/base/parameter_handler.cc
+BRUNO source/base/parsed_function.cc
+BRUNO source/base/partitioner.cc
+BRUNO source/base/path_search.cc
+BRUNO source/base/polynomial.cc
+BRUNO source/base/polynomials_abf.cc
+BRUNO source/base/polynomials_adini.cc
+BRUNO source/base/polynomials_bdm.cc
+BRUNO source/base/polynomials_nedelec.cc
+BRUNO source/base/polynomial_space.cc
+BRUNO source/base/polynomials_p.cc
+BRUNO source/base/polynomials_raviart_thomas.cc
+BRUNO source/base/quadrature.cc
+BRUNO source/base/quadrature_lib.cc
+BRUNO source/base/quadrature_selector.cc
+BRUNO source/base/subscriptor.cc
+BRUNO source/base/symmetric_tensor.cc
+BRUNO source/base/table_handler.cc
+BRUNO source/base/tensor_function.cc
+BRUNO source/base/tensor_product_polynomials.cc
+BRUNO source/base/thread_management.cc
+BRUNO source/base/timer.cc
+BRUNO source/base/utilities.cc
+TIMO source/distributed/grid_refinement.cc
+TIMO source/distributed/solution_transfer.cc
+TIMO source/distributed/tria.cc
+MARKUS source/dofs/block_info.cc
+TIMO source/dofs/dof_accessor.cc
+UWE source/dofs/dof_faces.cc
+MARKUS source/dofs/dof_handler.cc
+TIMO source/dofs/dof_handler_policy.cc
+UWE source/dofs/dof_levels.cc
+UWE source/dofs/dof_objects.cc
+HELENE source/dofs/dof_renumbering.cc
+UWE source/dofs/dof_tools.cc
+TIMO source/dofs/number_cache.cc
+BRUNO source/fe/fe_abf.cc
+BRUNO source/fe/fe_bdm.cc
+GK source/fe/fe.cc
+KAINAN source/fe/fe_data.cc
+BRUNO source/fe/fe_dgp.cc
+BRUNO source/fe/fe_dgp_monomial.cc
+BRUNO source/fe/fe_dgp_nonparametric.cc
+BRUNO source/fe/fe_dgq.cc
+BRUNO source/fe/fe_dg_vector.cc
+KAINAN source/fe/fe_face.cc
+KAINAN source/fe/fe_nedelec.cc
+KAINAN source/fe/fe_nothing.cc
+KAINAN source/fe/fe_poly.cc
+KAINAN source/fe/fe_poly_tensor.cc
+KAINAN source/fe/fe_q.cc
+KAINAN source/fe/fe_q_hierarchical.cc
+KAINAN source/fe/fe_raviart_thomas.cc
+KAINAN source/fe/fe_raviart_thomas_nodal.cc
+KAINAN source/fe/fe_system.cc
+GK source/fe/fe_tools.cc
+GK source/fe/fe_values.cc
+KAINAN source/fe/mapping_c1.cc
+KAINAN source/fe/mapping_cartesian.cc
+KAINAN source/fe/mapping.cc
+KAINAN source/fe/mapping_q1.cc
+KAINAN source/fe/mapping_q1_eulerian.cc
+KAINAN source/fe/mapping_q.cc
+KAINAN source/fe/mapping_q_eulerian.cc
+source/grid/grid_generator.cc
+source/grid/grid_in.cc
+source/grid/grid_out.cc
+source/grid/grid_refinement.cc
+source/grid/grid_reordering.cc
+source/grid/grid_tools.cc
+source/grid/intergrid_map.cc
+source/grid/persistent_tria.cc
+source/grid/tria_accessor.cc
+source/grid/tria_boundary.cc
+source/grid/tria_boundary_lib.cc
+BRUNO source/grid/tria.cc
+BRUNO source/grid/tria_faces.cc
+BRUNO source/grid/tria_levels.cc
+BRUNO source/grid/tria_objects.cc
+MARKUS source/hp/dof_faces.cc
+MARKUS source/hp/dof_handler.cc
+NATASHA source/hp/dof_levels.cc
+NATASHA source/hp/dof_objects.cc
+BRUNO source/hp/fe_collection.cc
+MARKUS source/hp/fe_values.cc
+BRUNO source/hp/mapping_collection.cc
+source/lac/block_matrix_array.cc
+MARKUS source/lac/block_sparse_matrix.cc
+MARKUS source/lac/block_sparse_matrix_ez.cc
+MARKUS source/lac/block_sparsity_pattern.cc
+MARKUS source/lac/block_vector.cc
+MARKUS source/lac/chunk_sparse_matrix.cc
+MARKUS source/lac/chunk_sparsity_pattern.cc
+MARKUS source/lac/compressed_set_sparsity_pattern.cc
+MARKUS source/lac/compressed_simple_sparsity_pattern.cc
+MARKUS source/lac/compressed_sparsity_pattern.cc
+WOLFGANG source/lac/constraint_matrix.cc
+source/lac/full_matrix.cc
+source/lac/lapack_full_matrix.cc
+source/lac/matrix_lib.cc
+source/lac/matrix_out.cc
+source/lac/operator.cc
+MARKUS source/lac/parallel_vector.cc
+source/lac/petsc_block_sparse_matrix.cc
+source/lac/petsc_full_matrix.cc
+source/lac/petsc_matrix_base.cc
+source/lac/petsc_parallel_block_sparse_matrix.cc
+source/lac/petsc_parallel_block_vector.cc
+source/lac/petsc_parallel_sparse_matrix.cc
+source/lac/petsc_parallel_vector.cc
+source/lac/petsc_precondition.cc
+source/lac/petsc_solver.cc
+source/lac/petsc_sparse_matrix.cc
+source/lac/petsc_vector_base.cc
+source/lac/petsc_vector.cc
+source/lac/precondition_block.cc
+source/lac/precondition_block_ez.cc
+source/lac/relaxation_block.cc
+source/lac/slepc_solver.cc
+source/lac/slepc_spectral_transformation.cc
+source/lac/solver.cc
+source/lac/solver_control.cc
+source/lac/sparse_decomposition.cc
+source/lac/sparse_direct.cc
+source/lac/sparse_ilu.cc
+source/lac/sparse_matrix.cc
+source/lac/sparse_matrix_ez.cc
+source/lac/sparse_mic.cc
+source/lac/sparse_vanka.cc
+source/lac/sparsity_pattern.cc
+source/lac/sparsity_tools.cc
+source/lac/swappable_vector.cc
+source/lac/timestep_control.cc
+source/lac/tridiagonal_matrix.cc
+source/lac/trilinos_block_sparse_matrix.cc
+source/lac/trilinos_block_vector.cc
+source/lac/trilinos_precondition.cc
+source/lac/trilinos_solver.cc
+source/lac/trilinos_sparse_matrix.cc
+source/lac/trilinos_sparsity_pattern.cc
+source/lac/trilinos_vector_base.cc
+source/lac/trilinos_vector.cc
+source/lac/vector.cc
+source/lac/vector_memory.cc
+source/lac/vector_view.cc
+source/multigrid/mg_base.cc
+source/multigrid/mg_dof_accessor.cc
+source/multigrid/mg_dof_handler.cc
+source/multigrid/mg_tools.cc
+source/multigrid/mg_transfer_block.cc
+source/multigrid/mg_transfer_component.cc
+source/multigrid/mg_transfer_prebuilt.cc
+source/multigrid/multigrid.cc
+UWE source/numerics/data_out.cc
+UWE source/numerics/data_out_faces.cc
+UWE source/numerics/data_out_rotation.cc
+UWE source/numerics/data_out_stack.cc
+UWE source/numerics/data_postprocessor.cc
+UWE source/numerics/derivative_approximation.cc
+UWE source/numerics/dof_output_operator.cc
+UWE source/numerics/error_estimator.cc
+UWE source/numerics/fe_field_function.cc
+UWE source/numerics/histogram.cc
+UWE source/numerics/matrix_free.cc
+UWE source/numerics/matrix_tools.cc
+UWE source/numerics/mesh_worker.cc
+UWE source/numerics/mesh_worker_info.cc
+UWE source/numerics/mesh_worker_vector_selector.cc
+UWE source/numerics/point_value_history.cc
+UWE source/numerics/solution_transfer.cc
+UWE source/numerics/time_dependent.cc
+UWE source/numerics/vector_tools.cc
+UWE include/deal.II/algorithms/newton.h
+UWE include/deal.II/algorithms/newton.templates.h
+UWE include/deal.II/algorithms/operator.h
+UWE include/deal.II/algorithms/operator.templates.h
+UWE include/deal.II/algorithms/theta_timestepping.h
+UWE include/deal.II/algorithms/theta_timestepping.templates.h
+UWE include/deal.II/algorithms/timestep_control.h
+UWE include/deal.II/base/auto_derivative_function.h
+UWE include/deal.II/base/conditional_ostream.h
+UWE include/deal.II/base/convergence_table.h
+UWE include/deal.II/base/data_out_base.h
+UWE include/deal.II/base/derivative_form.h
+UWE include/deal.II/base/event.h
+UWE include/deal.II/base/exceptions.h
+UWE include/deal.II/base/flow_function.h
+UWE include/deal.II/base/function_bessel.h
+UWE include/deal.II/base/function_derivative.h
+UWE include/deal.II/base/function.h
+UWE include/deal.II/base/function_lib.h
+UWE include/deal.II/base/function_parser.h
+UWE include/deal.II/base/function_time.h
+UWE include/deal.II/base/geometry_info.h
+NATASHA include/deal.II/base/index_set.h
+GK include/deal.II/base/job_identifier.h
+GK include/deal.II/base/logstream.h
+BRUNO include/deal.II/base/memory_consumption.h
+BRUNO include/deal.II/base/mg_level_object.h
+BRUNO include/deal.II/base/mpi.h
+BRUNO include/deal.II/base/multithread_info.h
+BRUNO include/deal.II/base/named_data.h
+BRUNO include/deal.II/base/numbers.h
+BRUNO include/deal.II/base/parallel.h
+BRUNO include/deal.II/base/parameter_handler.h
+BRUNO include/deal.II/base/parsed_function.h
+BRUNO include/deal.II/base/partitioner.h
+BRUNO include/deal.II/base/path_search.h
+BRUNO include/deal.II/base/point.h
+BRUNO include/deal.II/base/polynomial.h
+BRUNO include/deal.II/base/polynomials_abf.h
+BRUNO include/deal.II/base/polynomials_adini.h
+BRUNO include/deal.II/base/polynomials_bdm.h
+BRUNO include/deal.II/base/polynomials_nedelec.h
+BRUNO include/deal.II/base/polynomial_space.h
+BRUNO include/deal.II/base/polynomials_p.h
+BRUNO include/deal.II/base/polynomials_raviart_thomas.h
+BRUNO include/deal.II/base/qprojector.h
+BRUNO include/deal.II/base/quadrature.h
+BRUNO include/deal.II/base/quadrature_lib.h
+BRUNO include/deal.II/base/quadrature_selector.h
+BRUNO include/deal.II/base/smartpointer.h
+BRUNO include/deal.II/base/subscriptor.h
+BRUNO include/deal.II/base/symmetric_tensor.h
+BRUNO include/deal.II/base/synchronous_iterator.h
+BRUNO include/deal.II/base/table.h
+BRUNO include/deal.II/base/table_handler.h
+BRUNO include/deal.II/base/table_indices.h
+BRUNO include/deal.II/base/template_constraints.h
+BRUNO include/deal.II/base/tensor_base.h
+BRUNO include/deal.II/base/tensor_function.h
+BRUNO include/deal.II/base/tensor.h
+BRUNO include/deal.II/base/tensor_product_polynomials.h
+BRUNO include/deal.II/base/thread_local_storage.h
+BRUNO include/deal.II/base/thread_management.h
+BRUNO include/deal.II/base/timer.h
+BRUNO include/deal.II/base/types.h
+BRUNO include/deal.II/base/utilities.h
+BRUNO include/deal.II/base/vectorization.h
+BRUNO include/deal.II/base/vector_slice.h
+BRUNO include/deal.II/base/work_stream.h
+TIMO include/deal.II/distributed/grid_refinement.h
+TIMO include/deal.II/distributed/solution_transfer.h
+TIMO include/deal.II/distributed/tria.h
+MARKUS include/deal.II/dofs/block_info.h
+TIMO include/deal.II/dofs/dof_accessor.h
+TIMO include/deal.II/dofs/dof_accessor.templates.h
+include/deal.II/dofs/dof_constraints.h
+UWE include/deal.II/dofs/dof_faces.h
+MARKUS include/deal.II/dofs/dof_handler.h
+TIMO include/deal.II/dofs/dof_handler_policy.h
+include/deal.II/dofs/dof_iterator_selector.h
+UWE include/deal.II/dofs/dof_levels.h
+UWE include/deal.II/dofs/dof_objects.h
+HELENE include/deal.II/dofs/dof_renumbering.h
+UWE include/deal.II/dofs/dof_tools.h
+include/deal.II/dofs/function_map.h
+TIMO include/deal.II/dofs/number_cache.h
+GK include/deal.II/fe/fe_abf.h
+GK include/deal.II/fe/fe_base.h
+GK include/deal.II/fe/fe_bdm.h
+GK include/deal.II/fe/fe_dgp.h
+GK include/deal.II/fe/fe_dgp_monomial.h
+GK include/deal.II/fe/fe_dgp_nonparametric.h
+GK include/deal.II/fe/fe_dgq.h
+GK include/deal.II/fe/fe_dg_vector.h
+GK include/deal.II/fe/fe_dg_vector.templates.h
+GK include/deal.II/fe/fe_face.h
+GK include/deal.II/fe/fe.h
+GK include/deal.II/fe/fe_nedelec.h
+GK include/deal.II/fe/fe_nothing.h
+GK include/deal.II/fe/fe_poly_face.h
+GK include/deal.II/fe/fe_poly_face.templates.h
+KAINAN include/deal.II/fe/fe_poly.h
+KAINAN include/deal.II/fe/fe_poly.templates.h
+KAINAN include/deal.II/fe/fe_poly_tensor.h
+KAINAN include/deal.II/fe/fe_q.h
+KAINAN include/deal.II/fe/fe_q_hierarchical.h
+KAINAN include/deal.II/fe/fe_raviart_thomas.h
+KAINAN include/deal.II/fe/fe_system.h
+GK include/deal.II/fe/fe_tools.h
+KAINAN include/deal.II/fe/fe_update_flags.h
+GK include/deal.II/fe/fe_values.h
+KAINAN include/deal.II/fe/mapping_c1.h
+KAINAN include/deal.II/fe/mapping_cartesian.h
+KAINAN include/deal.II/fe/mapping.h
+KAINAN include/deal.II/fe/mapping_q1_eulerian.h
+KAINAN include/deal.II/fe/mapping_q1.h
+KAINAN include/deal.II/fe/mapping_q_eulerian.h
+KAINAN include/deal.II/fe/mapping_q.h
+include/deal.II/grid/filtered_iterator.h
+include/deal.II/grid/geometry_info.h
+include/deal.II/grid/grid_generator.h
+include/deal.II/grid/grid_in.h
+include/deal.II/grid/grid_out.h
+include/deal.II/grid/grid_refinement.h
+include/deal.II/grid/grid_reordering.h
+include/deal.II/grid/grid_reordering_internal.h
+include/deal.II/grid/grid_tools.h
+include/deal.II/grid/intergrid_map.h
+include/deal.II/grid/magic_numbers.h
+include/deal.II/grid/persistent_tria.h
+include/deal.II/grid/tria_accessor.h
+include/deal.II/grid/tria_accessor.templates.h
+include/deal.II/grid/tria_boundary.h
+include/deal.II/grid/tria_boundary_lib.h
+BRUNO include/deal.II/grid/tria_faces.h
+BRUNO include/deal.II/grid/tria.h
+BRUNO include/deal.II/grid/tria_iterator_base.h
+BRUNO include/deal.II/grid/tria_iterator.h
+BRUNO include/deal.II/grid/tria_iterator_selector.h
+BRUNO include/deal.II/grid/tria_iterator.templates.h
+BRUNO include/deal.II/grid/tria_levels.h
+BRUNO include/deal.II/grid/tria_object.h
+BRUNO include/deal.II/grid/tria_objects.h
+MARKUS include/deal.II/hp/dof_faces.h
+MARKUS include/deal.II/hp/dof_handler.h
+NATASHA include/deal.II/hp/dof_levels.h
+NATASHA include/deal.II/hp/dof_objects.h
+BRUNO include/deal.II/hp/fe_collection.h
+MARKUS include/deal.II/hp/fe_values.h
+BRUNO include/deal.II/hp/mapping_collection.h
+BRUNO include/deal.II/hp/q_collection.h
+BRUNO include/deal.II/integrators/divergence.h
+BRUNO include/deal.II/integrators/elasticity.h
+BRUNO include/deal.II/integrators/l2.h
+BRUNO include/deal.II/integrators/laplace.h
+BRUNO include/deal.II/integrators/local_integrators.h
+BRUNO include/deal.II/integrators/maxwell.h
+BRUNO include/deal.II/integrators/patches.h
+include/deal.II/lac/arpack_solver.h
+include/deal.II/lac/block_indices.h
+include/deal.II/lac/block_list.h
+include/deal.II/lac/block_matrix_array.h
+include/deal.II/lac/block_matrix_base.h
+include/deal.II/lac/block_matrix.h
+MARKUS include/deal.II/lac/block_sparse_matrix_ez.h
+MARKUS include/deal.II/lac/block_sparse_matrix_ez.templates.h
+MARKUS include/deal.II/lac/block_sparse_matrix.h
+MARKUS include/deal.II/lac/block_sparse_matrix.templates.h
+MARKUS include/deal.II/lac/block_sparsity_pattern.h
+MARKUS include/deal.II/lac/block_vector_base.h
+MARKUS include/deal.II/lac/block_vector.h
+MARKUS include/deal.II/lac/block_vector.templates.h
+MARKUS include/deal.II/lac/chunk_sparse_matrix.h
+MARKUS include/deal.II/lac/chunk_sparse_matrix.templates.h
+MARKUS include/deal.II/lac/chunk_sparsity_pattern.h
+MARKUS include/deal.II/lac/compressed_set_sparsity_pattern.h
+MARKUS include/deal.II/lac/compressed_simple_sparsity_pattern.h
+MARKUS include/deal.II/lac/compressed_sparsity_pattern.h
+WOLFGANG include/deal.II/lac/constraint_matrix.h
+WOLFGANG include/deal.II/lac/constraint_matrix.templates.h
+include/deal.II/lac/eigen.h
+include/deal.II/lac/exceptions.h
+include/deal.II/lac/filtered_matrix.h
+include/deal.II/lac/full_matrix.h
+include/deal.II/lac/full_matrix.templates.h
+include/deal.II/lac/householder.h
+include/deal.II/lac/identity_matrix.h
+include/deal.II/lac/iterative_inverse.h
+include/deal.II/lac/lapack_full_matrix.h
+include/deal.II/lac/lapack_support.h
+include/deal.II/lac/matrix_block.h
+include/deal.II/lac/matrix_iterator.h
+include/deal.II/lac/matrix_lib.h
+include/deal.II/lac/matrix_lib.templates.h
+include/deal.II/lac/matrix_out.h
+MARKUS include/deal.II/lac/parallel_block_vector.h
+MARKUS include/deal.II/lac/parallel_vector.h
+MARKUS include/deal.II/lac/parallel_vector.templates.h
+include/deal.II/lac/petsc_block_sparse_matrix.h
+include/deal.II/lac/petsc_block_vector.h
+include/deal.II/lac/petsc_full_matrix.h
+include/deal.II/lac/petsc_matrix_base.h
+include/deal.II/lac/petsc_parallel_block_sparse_matrix.h
+include/deal.II/lac/petsc_parallel_block_vector.h
+include/deal.II/lac/petsc_parallel_sparse_matrix.h
+include/deal.II/lac/petsc_parallel_vector.h
+include/deal.II/lac/petsc_precondition.h
+include/deal.II/lac/petsc_solver.h
+include/deal.II/lac/petsc_sparse_matrix.h
+include/deal.II/lac/petsc_vector_base.h
+include/deal.II/lac/petsc_vector.h
+include/deal.II/lac/pointer_matrix.h
+include/deal.II/lac/precondition_block_base.h
+include/deal.II/lac/precondition_block.h
+include/deal.II/lac/precondition_block.templates.h
+include/deal.II/lac/precondition.h
+include/deal.II/lac/precondition_selector.h
+include/deal.II/lac/relaxation_block.h
+include/deal.II/lac/relaxation_block.templates.h
+include/deal.II/lac/schur_matrix.h
+include/deal.II/lac/shifted_matrix.h
+include/deal.II/lac/slepc_solver.h
+include/deal.II/lac/slepc_spectral_transformation.h
+include/deal.II/lac/solver_bicgstab.h
+include/deal.II/lac/solver_cg.h
+include/deal.II/lac/solver_control.h
+include/deal.II/lac/solver_gmres.h
+include/deal.II/lac/solver.h
+include/deal.II/lac/solver_minres.h
+include/deal.II/lac/solver_qmrs.h
+include/deal.II/lac/solver_relaxation.h
+include/deal.II/lac/solver_richardson.h
+include/deal.II/lac/solver_selector.h
+include/deal.II/lac/sparse_decomposition.h
+include/deal.II/lac/sparse_decomposition.templates.h
+include/deal.II/lac/sparse_direct.h
+include/deal.II/lac/sparse_ilu.h
+include/deal.II/lac/sparse_ilu.templates.h
+include/deal.II/lac/sparse_matrix_ez.h
+include/deal.II/lac/sparse_matrix_ez.templates.h
+include/deal.II/lac/sparse_matrix.h
+include/deal.II/lac/sparse_matrix.templates.h
+include/deal.II/lac/sparse_mic.h
+include/deal.II/lac/sparse_mic.templates.h
+include/deal.II/lac/sparse_vanka.h
+include/deal.II/lac/sparse_vanka.templates.h
+include/deal.II/lac/sparsity_pattern.h
+include/deal.II/lac/sparsity_tools.h
+include/deal.II/lac/swappable_vector.h
+include/deal.II/lac/swappable_vector.templates.h
+include/deal.II/lac/transpose_matrix.h
+include/deal.II/lac/tridiagonal_matrix.h
+include/deal.II/lac/trilinos_block_sparse_matrix.h
+include/deal.II/lac/trilinos_block_vector.h
+include/deal.II/lac/trilinos_parallel_block_vector.h
+include/deal.II/lac/trilinos_precondition.h
+include/deal.II/lac/trilinos_solver.h
+include/deal.II/lac/trilinos_sparse_matrix.h
+include/deal.II/lac/trilinos_sparsity_pattern.h
+include/deal.II/lac/trilinos_vector_base.h
+include/deal.II/lac/trilinos_vector.h
+include/deal.II/lac/vector.h
+include/deal.II/lac/vector_memory.h
+include/deal.II/lac/vector.templates.h
+include/deal.II/lac/vector_view.h
+KAINAN include/deal.II/matrix_free/dof_info.h
+KAINAN include/deal.II/matrix_free/dof_info.templates.h
+BRUNO include/deal.II/matrix_free/fe_evaluation.h
+BRUNO include/deal.II/matrix_free/helper_functions.h
+BRUNO include/deal.II/matrix_free/mapping_info.h
+BRUNO include/deal.II/matrix_free/mapping_info.templates.h
+BRUNO include/deal.II/matrix_free/matrix_free.h
+BRUNO include/deal.II/matrix_free/matrix_free.templates.h
+BRUNO include/deal.II/matrix_free/shape_info.h
+BRUNO include/deal.II/matrix_free/shape_info.templates.h
+WOLFGANG include/deal.II/meshworker/assembler.h
+WOLFGANG include/deal.II/meshworker/dof_info.h
+WOLFGANG include/deal.II/meshworker/dof_info.templates.h
+WOLFGANG include/deal.II/meshworker/functional.h
+BRUNO include/deal.II/meshworker/integration_info.h
+BRUNO include/deal.II/meshworker/integration_info.templates.h
+BRUNO include/deal.II/meshworker/local_results.h
+WOLFGANG include/deal.II/meshworker/loop.h
+WOLFGANG include/deal.II/meshworker/output.h
+BRUNO include/deal.II/meshworker/simple.h
+BRUNO include/deal.II/meshworker/vector_selector.h
+BRUNO include/deal.II/meshworker/vector_selector.templates.h
+include/deal.II/multigrid/mg_base.h
+include/deal.II/multigrid/mg_block_smoother.h
+include/deal.II/multigrid/mg_coarse.h
+include/deal.II/multigrid/mg_constrained_dofs.h
+include/deal.II/multigrid/mg_dof_accessor.h
+include/deal.II/multigrid/mg_dof_handler.h
+include/deal.II/multigrid/mg_dof_iterator_selector.h
+include/deal.II/multigrid/mg_matrix.h
+include/deal.II/multigrid/mg_smoother.h
+include/deal.II/multigrid/mg_tools.h
+include/deal.II/multigrid/mg_transfer_block.h
+include/deal.II/multigrid/mg_transfer_block.templates.h
+include/deal.II/multigrid/mg_transfer_component.h
+include/deal.II/multigrid/mg_transfer_component.templates.h
+include/deal.II/multigrid/mg_transfer.h
+include/deal.II/multigrid/mg_transfer.templates.h
+include/deal.II/multigrid/multigrid.h
+include/deal.II/multigrid/multigrid.templates.h
+UWE include/deal.II/numerics/data_component_interpretation.h
+UWE include/deal.II/numerics/data_out_faces.h
+UWE include/deal.II/numerics/data_out.h
+UWE include/deal.II/numerics/data_out_rotation.h
+UWE include/deal.II/numerics/data_out_stack.h
+UWE include/deal.II/numerics/data_postprocessor.h
+UWE include/deal.II/numerics/derivative_approximation.h
+UWE include/deal.II/numerics/dof_output_operator.h
+UWE include/deal.II/numerics/dof_output_operator.templates.h
+UWE include/deal.II/numerics/dof_print_solver_step.h
+UWE include/deal.II/numerics/error_estimator.h
+UWE include/deal.II/numerics/fe_field_function.h
+UWE include/deal.II/numerics/fe_field_function.templates.h
+UWE include/deal.II/numerics/histogram.h
+UWE include/deal.II/numerics/matrix_tools.h
+UWE include/deal.II/numerics/mesh_worker_assembler.h
+UWE include/deal.II/numerics/mesh_worker.h
+UWE include/deal.II/numerics/mesh_worker_info.h
+UWE include/deal.II/numerics/mesh_worker_loop.h
+UWE include/deal.II/numerics/mesh_worker_output.h
+UWE include/deal.II/numerics/mesh_worker_vector_selector.h
+UWE include/deal.II/numerics/newton.h
+UWE include/deal.II/numerics/operator.h
+UWE include/deal.II/numerics/point_value_history.h
+UWE include/deal.II/numerics/solution_transfer.h
+UWE include/deal.II/numerics/theta_timestepping.h
+UWE include/deal.II/numerics/time_dependent.h
+UWE include/deal.II/numerics/timestep_control.h
+UWE include/deal.II/numerics/vectors.h
+UWE include/deal.II/numerics/vectors.templates.h
+UWE include/deal.II/numerics/vector_tools.h
+UWE include/deal.II/numerics/vector_tools.templates.h
index f8666206b629f16f836bbfc213a26bbcf3c4942a..3731e02d56d2b3b0cbf30af8283f1c2f0c40e459 100644 (file)
@@ -64,7 +64,7 @@ public:
    * overall size of the index
    * range.
    */
-  explicit IndexSet (const unsigned int size);
+  explicit IndexSet (const types::global_dof_index size);
 
   /**
    * Remove all indices from this
@@ -136,7 +136,7 @@ public:
    * index is an element of the
    * index set.
    */
-  bool is_element (const unsigned int index) const;
+  bool is_element (const types::global_dof_index index) const;
 
   /**
    * Return whether the index set
@@ -151,7 +151,7 @@ public:
    * Return the number of elements
    * stored in this index set.
    */
-  unsigned int n_elements () const;
+  types::global_dof_index n_elements () const;
 
   /**
    * Return the global index of the local
@@ -160,7 +160,7 @@ public:
    * local_index obviously needs to be less
    * than n_elements().
    */
-  unsigned int nth_index_in_set (const unsigned int local_index) const;
+  types::global_dof_index nth_index_in_set (const unsigned int local_index) const;
 
   /**
    * Return the how-manyth element of this
@@ -172,7 +172,7 @@ public:
    * a member of this index set, i.e. if
    * is_element(global_index) is false.
    */
-  unsigned int index_within_set (const unsigned int global_index) const;
+  unsigned int index_within_set (const types::global_dof_index global_index) const;
 
   /**
    * Each index set can be
@@ -245,8 +245,8 @@ public:
    * to the range <tt>[0,
    * end-begin)</tt>.
    */
-  IndexSet get_view (const unsigned int begin,
-                     const unsigned int end) const;
+  IndexSet get_view (const types::global_dof_index begin,
+                     const types::global_dof_index end) const;
 
 
   /**
@@ -263,7 +263,7 @@ public:
    * Fills the given vector with all
    * indices contained in this IndexSet.
    */
-  void fill_index_vector(std::vector<unsigned int> &indices) const;
+  void fill_index_vector(std::vector<types::global_dof_index> &indices) const;
 
   /**
    * Fill the given vector with either
@@ -427,10 +427,10 @@ private:
    */
   struct Range
   {
-    unsigned int begin;
-    unsigned int end;
+    types::global_dof_index begin;
+    types::global_dof_index end;
 
-    unsigned int nth_index_in_set;
+    types::global_dof_index nth_index_in_set;
 
     /**
      * Default constructor. Since there is no useful choice for
@@ -449,8 +449,8 @@ private:
      * @param i1 Left end point of the interval.
      * @param i2 First index greater than the last index of the indicated range.
      **/
-    Range (const unsigned int i1,
-           const unsigned int i2);
+    Range (const types::global_dof_index i1,
+           const types::global_dof_index i2);
 
     friend
     inline bool operator< (const Range &range_1,
@@ -572,8 +572,8 @@ IndexSet::Range::Range ()
 
 
 inline
-IndexSet::Range::Range (const unsigned int i1,
-                        const unsigned int i2)
+IndexSet::Range::Range (const types::global_dof_index i1,
+                        const types::global_dof_index i2)
   :
   begin(i1),
   end(i2)
@@ -591,7 +591,7 @@ IndexSet::IndexSet ()
 
 
 inline
-IndexSet::IndexSet (const unsigned int size)
+IndexSet::IndexSet (const types::global_dof_index size)
   :
   is_compressed (true),
   index_space_size (size),
@@ -646,8 +646,8 @@ IndexSet::compress () const
 
 inline
 void
-IndexSet::add_range (const unsigned int begin,
-                     const unsigned int end)
+IndexSet::add_range (const types::global_dof_index begin,
+                     const types::global_dof_index end)
 {
   Assert ((begin < index_space_size)
           ||
@@ -680,7 +680,7 @@ IndexSet::add_range (const unsigned int begin,
 
 inline
 void
-IndexSet::add_index (const unsigned int index)
+IndexSet::add_index (const types::global_dof_index index)
 {
   Assert (index < index_space_size,
           ExcIndexRange (index, 0, index_space_size));
@@ -712,8 +712,8 @@ IndexSet::add_indices (const ForwardIterator &begin,
   // range
   for (ForwardIterator p=begin; p!=end;)
     {
-      const unsigned int begin_index = *p;
-      unsigned int       end_index   = begin_index + 1;
+      const types::global_dof_index begin_index = *p;
+      types::global_dof_index       end_index   = begin_index + 1;
       ForwardIterator q = p;
       ++q;
       while ((q != end) && (*q == end_index))
@@ -750,7 +750,7 @@ IndexSet::add_indices(const IndexSet &other)
 
 inline
 bool
-IndexSet::is_element (const unsigned int index) const
+IndexSet::is_element (const types::global_dof_index index) const
 {
   if (ranges.empty() == false)
     {
@@ -828,7 +828,7 @@ IndexSet::is_contiguous () const
 
 
 inline
-unsigned int
+types::global_dof_index
 IndexSet::n_elements () const
 {
   // make sure we have
@@ -858,7 +858,7 @@ IndexSet::n_elements () const
 
 inline
 unsigned int
-IndexSet::nth_index_in_set (const unsigned int n) const
+IndexSet::nth_index_in_set (const types::global_dof_index n) const
 {
   // to make this call thread-safe, compress()
   // must not be called through this function
@@ -908,7 +908,7 @@ IndexSet::nth_index_in_set (const unsigned int n) const
 
 
 inline
-unsigned int
+types::global_dof_index
 IndexSet::index_within_set (const unsigned int n) const
 {
   // to make this call thread-safe, compress()
index 7fa0ca79dc53ec1a73d04b7736b07f47b9102f81..999040040b48c8d525c18cd914bab5c043ec73fa 100644 (file)
@@ -44,7 +44,7 @@ DEAL_II_NAMESPACE_OPEN
  * set_numbering() function.
  *
  * The standard ordering of polynomials is that indices for the first
- * space dimension vasry fastest and the last space dimension is
+ * space dimension vary fastest and the last space dimension is
  * slowest. In particular, if we take for simplicity the vector of
  * monomials <i>x<sup>0</sup>, x<sup>1</sup>, x<sup>2</sup>,...,
  * x<sup>n</sup></i>, we get
index 6e4f5414fe97761f60f19bda6eaa3d4bc7ef675b..7ae2fb781428c311b92e23fa5b73b10276bb42e0 100644 (file)
@@ -142,7 +142,7 @@ public:
 };
 
 //TODO: Remove the default arguments and trickery below and put all
-//the constructors into the class demplate
+//the constructors into the class template
 
 /**
  * Array of indices of fixed size used for the TableBase
index 2a37e62c29b90cd115371dd10cb5191525de3bf1..3e762a1276a6cc572eee8de05e9dab61ea6b63a9 100644 (file)
@@ -1,7 +1,7 @@
 //---------------------------------------------------------------------------
 //    $Id$
 //
-//    Copyright (C) 2009, 2012 by the deal.II authors
+//    Copyright (C) 2009, 2012, 2013 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -14,7 +14,6 @@
 
 
 #include <deal.II/base/config.h>
-
 DEAL_II_NAMESPACE_OPEN
 
 /**
@@ -52,14 +51,56 @@ namespace types
    */
   const unsigned int artificial_subdomain_id DEAL_II_DEPRECATED = static_cast<subdomain_id>(-2);
 
+//#define DEAL_II_USE_LARGE_INDEX_TYPE
+#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.
+   */
+  // TODO: we should check that unsigned long long int
+  // has the same size as uint64_t
+  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 to denote global dof
-   * indices.
+   * 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;
+   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
+
 
   /**
-  *  @deprecated Use numbers::invalid_dof_index
+   *  @deprecated Use numbers::invalid_dof_index
    */
   const global_dof_index invalid_dof_index DEAL_II_DEPRECATED = static_cast<global_dof_index>(-1);
 
@@ -99,6 +140,7 @@ namespace types
 
 }
 
+
 // this part of the namespace numbers got moved to the bottom types.h file,
 // because otherwise we get a circular inclusion of config.h, types.h, and
 // numbers.h
@@ -196,7 +238,6 @@ namespace numbers
    * more information.
    */
   const types::subdomain_id artificial_subdomain_id = static_cast<types::subdomain_id>(-2);
-
 }
 
 
index cf321eff618f46d7f8186d09e20fe24287c9952d..2abc60e50f79560dac0db3be0f4ba48c3b54c9d1 100644 (file)
@@ -666,6 +666,7 @@ namespace Utilities
 
 #endif
 
+
 }
 
 
index c177fa92f6a8353e9a9a6617041532bdaaefe62f..5057b6a101a1f473810cf9e65391496009e3aaa5 100644 (file)
@@ -49,7 +49,7 @@ DEAL_II_NAMESPACE_OPEN
  * shared memory. However, some other part of this work may need to be
  * synchronised and be done in order. In the example of assembling a matrix,
  * the computation of local contributions can be done entirely in parallel,
- * but copying the the local contributions into the global matrix requires
+ * but copying the local contributions into the global matrix requires
  * some care: First, several threads can't write at the same time, but need to
  * synchronise writing using a mutex; secondly, we want the order in which
  * local contributions are added to the global matrix to be always the same
index beebb359665561af27457d83f497adafacbb77ca..27a731ddd2d6f3d97632a876c0ca3331f05e31c9 100644 (file)
@@ -1,7 +1,7 @@
 //---------------------------------------------------------------------------
 //    $Id$
 //
-//    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 by the deal.II authors
+//    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -438,11 +438,11 @@ public:
    * <code>cell-@>active_fe_index</code>
    * as last argument.
    */
-  void get_dof_indices (std::vector<unsigned int> &dof_indices,
+  void get_dof_indices (std::vector<types::global_dof_index> &dof_indices,
                         const unsigned int fe_index = DH::default_fe_index) const;
 
-  void get_mg_dof_indices (const int level, std::vector<unsigned int> &dof_indices, const unsigned int fe_index = DH::default_fe_index) const;
-  void set_mg_dof_indices (const int level, const std::vector<unsigned int> &dof_indices, const unsigned int fe_index = DH::default_fe_index);
+  void get_mg_dof_indices (const int level, std::vector<types::global_dof_index> &dof_indices, const unsigned int fe_index = DH::default_fe_index) const;
+  void set_mg_dof_indices (const int level, const std::vector<types::global_dof_index> &dof_indices, const unsigned int fe_index = DH::default_fe_index);
 
   /**
    * Global DoF index of the <i>i</i>
@@ -480,11 +480,11 @@ public:
    * match the result of
    * active_fe_index().
    */
-  unsigned int vertex_dof_index (const unsigned int vertex,
-                                 const unsigned int i,
-                                 const unsigned int fe_index = DH::default_fe_index) const;
+  types::global_dof_index vertex_dof_index (const unsigned int vertex,
+                                            const unsigned int i,
+                                            const unsigned int fe_index = DH::default_fe_index) const;
 
-  unsigned int mg_vertex_dof_index (const int level, const unsigned int vertex, const unsigned int i, const unsigned int fe_index = DH::default_fe_index) const;
+  types::global_dof_index mg_vertex_dof_index (const int level, const unsigned int vertex, const unsigned int i, const unsigned int fe_index = DH::default_fe_index) const;
 
   /**
    * Index of the <i>i</i>th degree
@@ -540,10 +540,10 @@ public:
    * degrees are defined in the interior of
    * the face.
    */
-  unsigned int dof_index (const unsigned int i,
-                          const unsigned int fe_index = DH::default_fe_index) const;
+  types::global_dof_index dof_index (const unsigned int i,
+                                     const unsigned int fe_index = DH::default_fe_index) const;
 
-  unsigned int mg_dof_index (const int level, const unsigned int i) const;
+  types::global_dof_index mg_dof_index (const int level, const unsigned int i) const;
 
   /**
    * @}
@@ -754,10 +754,10 @@ protected:
    * active_fe_index().
    */
   void set_dof_index (const unsigned int i,
-                      const unsigned int index,
+                      const types::global_dof_index index,
                       const unsigned int fe_index = DH::default_fe_index) const;
 
-  void set_mg_dof_index (const int level, const unsigned int i, const unsigned int index) const;
+  void set_mg_dof_index (const int level, const unsigned int i, const types::global_dof_index index) const;
 
   /**
    * Set the global index of the <i>i</i>
@@ -797,10 +797,10 @@ protected:
    */
   void set_vertex_dof_index (const unsigned int vertex,
                              const unsigned int i,
-                             const unsigned int index,
+                             const types::global_dof_index index,
                              const unsigned int fe_index = DH::default_fe_index) const;
 
-  void set_mg_vertex_dof_index (const int level, const unsigned int vertex, const unsigned int i, const unsigned int index, const unsigned int fe_index = DH::default_fe_index) const;
+  void set_mg_vertex_dof_index (const int level, const unsigned int vertex, const unsigned int i, const types::global_dof_index index, const unsigned int fe_index = DH::default_fe_index) const;
 
   /**
    * Iterator classes need to be friends
@@ -1149,7 +1149,7 @@ public:
    * <code>cell-@>active_fe_index</code>
    * as last argument.
    */
-  void get_dof_indices (std::vector<unsigned int> &dof_indices,
+  void get_dof_indices (std::vector<types::global_dof_index> &dof_indices,
                         const unsigned int fe_index = AccessorData::default_fe_index) const;
 
   /**
@@ -1188,9 +1188,9 @@ public:
    * match the result of
    * active_fe_index().
    */
-  unsigned int vertex_dof_index (const unsigned int vertex,
-                                 const unsigned int i,
-                                 const unsigned int fe_index = AccessorData::default_fe_index) const;
+  types::global_dof_index vertex_dof_index (const unsigned int vertex,
+                                            const unsigned int i,
+                                            const unsigned int fe_index = AccessorData::default_fe_index) const;
 
   /**
    * Index of the <i>i</i>th degree
@@ -1246,8 +1246,8 @@ public:
    * degrees are defined in the interior of
    * the face.
    */
-  unsigned int dof_index (const unsigned int i,
-                          const unsigned int fe_index = AccessorData::default_fe_index) const;
+  types::global_dof_index dof_index (const unsigned int i,
+                                     const unsigned int fe_index = AccessorData::default_fe_index) const;
 
   /**
    * @}
@@ -1436,7 +1436,7 @@ protected:
    * active_fe_index().
    */
   void set_dof_index (const unsigned int i,
-                      const unsigned int index,
+                      const types::global_dof_index index,
                       const unsigned int fe_index = AccessorData::default_fe_index) const;
 
   /**
@@ -1477,7 +1477,7 @@ protected:
    */
   void set_vertex_dof_index (const unsigned int vertex,
                              const unsigned int i,
-                             const unsigned int index,
+                             const types::global_dof_index index,
                              const unsigned int fe_index = AccessorData::default_fe_index) const;
 
   /**
@@ -2076,7 +2076,7 @@ public:
    *
    * Examples for this use are in the implementation of DoFRenumbering.
    */
-  void dof_indices (std::vector<unsigned int> &dof_indices) const;
+  void dof_indices (std::vector<types::global_dof_index> &dof_indices) const;
 
   /**
    * @deprecated Use dof_indices() instead.
@@ -2113,13 +2113,13 @@ public:
    *
    * @deprecated Currently, this function can also be called for non-active cells, if all degrees of freedom of the FiniteElement are located in vertices. This functionality will vanish in a future release.
    */
-  void get_dof_indices (std::vector<unsigned int> &dof_indices) const;
+  void get_dof_indices (std::vector<types::global_dof_index> &dof_indices) const;
   /**
    * @deprecated Use dof_indices() with level_cell_iterator returned from begin_mg().
    *
    * Retrieve the global indices of the degrees of freedom on this cell in the level vector associated to the level of the cell.
    */
-  void get_mg_dof_indices (std::vector<unsigned int> &dof_indices) const;
+  void get_mg_dof_indices (std::vector<types::global_dof_index> &dof_indices) const;
 
   /**
    * @}
@@ -2169,8 +2169,8 @@ public:
    * cache, if one exists for the
    * given DoF handler class.
    */
-  void set_dof_indices (const std::vector<unsigned int> &dof_indices);
-  void set_mg_dof_indices (const std::vector<unsigned int> &dof_indices);
+  void set_dof_indices (const std::vector<types::global_dof_index> &dof_indices);
+  void set_mg_dof_indices (const std::vector<types::global_dof_index> &dof_indices);
 
   /**
    * Update the cache in which we
index 10aef3789fed1b87d37edf06cad19d98ec5bffd2..6bf22668e1ec310c1b478a0d9d57f90506a026cf 100644 (file)
@@ -1,7 +1,7 @@
 //---------------------------------------------------------------------------
 //    $Id$
 //
-//    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 by the deal.II authors
+//    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -14,6 +14,7 @@
 
 
 #include <deal.II/base/config.h>
+#include <deal.II/base/types.h>
 #include <deal.II/lac/constraint_matrix.h>
 #include <deal.II/dofs/dof_accessor.h>
 #include <deal.II/dofs/dof_levels.h>
@@ -24,6 +25,7 @@
 #include <deal.II/grid/tria_iterator.templates.h>
 
 #include <vector>
+#include <limits>
 
 DEAL_II_NAMESPACE_OPEN
 
@@ -219,7 +221,7 @@ namespace internal
        */
       template <int spacedim>
       static
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::DoFHandler<1,spacedim>   &dof_handler,
                      const unsigned int                      obj_level,
                      const unsigned int                      obj_index,
@@ -244,7 +246,7 @@ namespace internal
                      const unsigned int              fe_index,
                      const unsigned int              local_index,
                      dealii::internal::int2type<1>,
-                     const unsigned int              global_index)
+                     const types::global_dof_index              global_index)
       {
         dof_handler.levels[obj_level]->dof_object.
         set_dof_index (dof_handler,
@@ -257,7 +259,7 @@ namespace internal
 
       template <int spacedim>
       static
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::DoFHandler<2,spacedim>   &dof_handler,
                      const unsigned int              obj_level,
                      const unsigned int              obj_index,
@@ -284,7 +286,7 @@ namespace internal
                      const unsigned int              fe_index,
                      const unsigned int              local_index,
                      dealii::internal::int2type<1>,
-                     const unsigned int              global_index)
+                     const types::global_dof_index              global_index)
       {
         // faces have no levels
         Assert (obj_level == 0, ExcInternalError());
@@ -299,7 +301,7 @@ namespace internal
 
       template <int spacedim>
       static
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::DoFHandler<2,spacedim>   &dof_handler,
                      const unsigned int              obj_level,
                      const unsigned int              obj_index,
@@ -324,7 +326,7 @@ namespace internal
                      const unsigned int              fe_index,
                      const unsigned int              local_index,
                      dealii::internal::int2type<2>,
-                     const unsigned int              global_index)
+                     const types::global_dof_index              global_index)
       {
         dof_handler.levels[obj_level]->dof_object.
         set_dof_index (dof_handler,
@@ -337,7 +339,7 @@ namespace internal
 
       template <int spacedim>
       static
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::DoFHandler<3,spacedim>   &dof_handler,
                      const unsigned int              obj_level,
                      const unsigned int              obj_index,
@@ -364,7 +366,7 @@ namespace internal
                      const unsigned int              fe_index,
                      const unsigned int              local_index,
                      dealii::internal::int2type<1>,
-                     const unsigned int              global_index)
+                     const types::global_dof_index              global_index)
       {
         // faces have no levels
         Assert (obj_level == 0, ExcInternalError());
@@ -380,7 +382,7 @@ namespace internal
 
       template <int spacedim>
       static
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::DoFHandler<3,spacedim>   &dof_handler,
                      const unsigned int              obj_level,
                      const unsigned int              obj_index,
@@ -407,7 +409,7 @@ namespace internal
                      const unsigned int              fe_index,
                      const unsigned int              local_index,
                      dealii::internal::int2type<2>,
-                     const unsigned int              global_index)
+                     const types::global_dof_index              global_index)
       {
         // faces have no levels
         Assert (obj_level == 0, ExcInternalError());
@@ -423,7 +425,7 @@ namespace internal
 
       template <int spacedim>
       static
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::DoFHandler<3,spacedim>   &dof_handler,
                      const unsigned int              obj_level,
                      const unsigned int              obj_index,
@@ -448,7 +450,7 @@ namespace internal
                      const unsigned int              fe_index,
                      const unsigned int              local_index,
                      dealii::internal::int2type<3>,
-                     const unsigned int              global_index)
+                     const types::global_dof_index              global_index)
       {
         dof_handler.levels[obj_level]->dof_object.
         set_dof_index (dof_handler,
@@ -461,7 +463,7 @@ namespace internal
 
       template <int spacedim>
       static
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::hp::DoFHandler<1,spacedim> &dof_handler,
                      const unsigned int       obj_level,
                      const unsigned int       obj_index,
@@ -487,7 +489,7 @@ namespace internal
                      const unsigned int       fe_index,
                      const unsigned int       local_index,
                      const dealii::internal::int2type<1> &,
-                     const unsigned int       global_index)
+                     const types::global_dof_index       global_index)
       {
         dof_handler.levels[obj_level]->dof_object.
         set_dof_index (dof_handler,
@@ -501,7 +503,7 @@ namespace internal
 
       template <int spacedim>
       static
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::hp::DoFHandler<2,spacedim> &dof_handler,
                      const unsigned int       obj_level,
                      const unsigned int       obj_index,
@@ -527,7 +529,7 @@ namespace internal
                      const unsigned int       fe_index,
                      const unsigned int       local_index,
                      const dealii::internal::int2type<1> &,
-                     const unsigned int       global_index)
+                     const types::global_dof_index       global_index)
       {
         dof_handler.faces->lines.
         set_dof_index (dof_handler,
@@ -541,7 +543,7 @@ namespace internal
 
       template <int spacedim>
       static
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::hp::DoFHandler<2,spacedim> &dof_handler,
                      const unsigned int       obj_level,
                      const unsigned int       obj_index,
@@ -567,7 +569,7 @@ namespace internal
                      const unsigned int       fe_index,
                      const unsigned int       local_index,
                      const dealii::internal::int2type<2> &,
-                     const unsigned int       global_index)
+                     const types::global_dof_index       global_index)
       {
         dof_handler.levels[obj_level]->dof_object.
         set_dof_index (dof_handler,
@@ -581,7 +583,7 @@ namespace internal
 
       template <int spacedim>
       static
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::hp::DoFHandler<3,spacedim> &dof_handler,
                      const unsigned int       obj_level,
                      const unsigned int       obj_index,
@@ -607,7 +609,7 @@ namespace internal
                      const unsigned int       fe_index,
                      const unsigned int       local_index,
                      const dealii::internal::int2type<1> &,
-                     const unsigned int       global_index)
+                     const types::global_dof_index       global_index)
       {
         dof_handler.faces->lines.
         set_dof_index (dof_handler,
@@ -621,7 +623,7 @@ namespace internal
 
       template <int spacedim>
       static
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::hp::DoFHandler<3,spacedim> &dof_handler,
                      const unsigned int       obj_level,
                      const unsigned int       obj_index,
@@ -647,7 +649,7 @@ namespace internal
                      const unsigned int       fe_index,
                      const unsigned int       local_index,
                      const dealii::internal::int2type<2> &,
-                     const unsigned int       global_index)
+                     const types::global_dof_index       global_index)
       {
         dof_handler.faces->quads.
         set_dof_index (dof_handler,
@@ -661,7 +663,7 @@ namespace internal
 
       template <int spacedim>
       static
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::hp::DoFHandler<3,spacedim> &dof_handler,
                      const unsigned int       obj_level,
                      const unsigned int       obj_index,
@@ -687,7 +689,7 @@ namespace internal
                      const unsigned int       fe_index,
                      const unsigned int       local_index,
                      const dealii::internal::int2type<3> &,
-                     const unsigned int       global_index)
+                     const types::global_dof_index       global_index)
       {
         dof_handler.levels[obj_level]->dof_object.
         set_dof_index (dof_handler,
@@ -1103,7 +1105,7 @@ namespace internal
                             const unsigned int vertex_index,
                             const unsigned int fe_index,
                             const unsigned int local_index,
-                            const unsigned int global_index)
+                            const types::global_dof_index global_index)
       {
         Assert ((fe_index == dealii::DoFHandler<dim,spacedim>::default_fe_index),
                 ExcMessage ("Only the default FE index is allowed for non-hp DoFHandler objects"));
@@ -1128,7 +1130,7 @@ namespace internal
                             const unsigned int vertex_index,
                             const unsigned int fe_index,
                             const unsigned int local_index,
-                            const unsigned int global_index)
+                            const types::global_dof_index global_index)
       {
         Assert ( (fe_index != dealii::hp::DoFHandler<dim,spacedim>::default_fe_index),
                  ExcMessage ("You need to specify a FE index when working "
@@ -1153,12 +1155,14 @@ namespace internal
         // we can't find a set for this
         // particular fe_index
         const unsigned int starting_offset = dof_handler.vertex_dofs_offsets[vertex_index];
-        unsigned int *pointer              = &dof_handler.vertex_dofs[starting_offset];
+        types::global_dof_index *pointer = &dof_handler.vertex_dofs[starting_offset];
         while (true)
           {
             Assert (pointer <= &dof_handler.vertex_dofs.back(), ExcInternalError());
 
-            const unsigned int this_fe_index = *pointer;
+            // a fe index is always small
+            Assert((*pointer)<std::numeric_limits<unsigned int>::max(), ExcInternalError());
+            const unsigned int this_fe_index = static_cast<unsigned int>(*pointer);
 
             Assert (this_fe_index != numbers::invalid_unsigned_int,
                     ExcInternalError());
@@ -1243,12 +1247,13 @@ namespace internal
         // we can't find a set for this
         // particular fe_index
         const unsigned int starting_offset = dof_handler.vertex_dofs_offsets[vertex_index];
-        const unsigned int *pointer        = &dof_handler.vertex_dofs[starting_offset];
+        const types::global_dof_index *pointer = &dof_handler.vertex_dofs[starting_offset];
         while (true)
           {
             Assert (pointer <= &dof_handler.vertex_dofs.back(), ExcInternalError());
 
-            const unsigned int this_fe_index = *pointer;
+            Assert((*pointer)<std::numeric_limits<unsigned int>::max(), ExcInternalError());
+            const unsigned int this_fe_index = static_cast<unsigned int>(*pointer);
 
             Assert (this_fe_index != numbers::invalid_unsigned_int,
                     ExcInternalError());
@@ -1287,7 +1292,7 @@ namespace internal
         // sets and count the number of
         // hops
         const unsigned int starting_offset = dof_handler.vertex_dofs_offsets[vertex_index];
-        const unsigned int *pointer        = &dof_handler.vertex_dofs[starting_offset];
+        const types::global_dof_index *pointer = &dof_handler.vertex_dofs[starting_offset];
 
         Assert (*pointer != numbers::invalid_unsigned_int,
                 ExcInternalError());
@@ -1297,7 +1302,8 @@ namespace internal
           {
             Assert (pointer <= &dof_handler.vertex_dofs.back(), ExcInternalError());
 
-            const unsigned int this_fe_index = *pointer;
+            Assert((*pointer)<std::numeric_limits<unsigned int>::max(), ExcInternalError());
+            const unsigned int this_fe_index = static_cast<unsigned int>(*pointer);
 
             if (this_fe_index == numbers::invalid_unsigned_int)
               return counter;
@@ -1339,7 +1345,7 @@ namespace internal
         // sets and count the number of
         // hops
         const unsigned int starting_offset = dof_handler.vertex_dofs_offsets[vertex_index];
-        const unsigned int *pointer        = &dof_handler.vertex_dofs[starting_offset];
+        const types::global_dof_index *pointer = &dof_handler.vertex_dofs[starting_offset];
 
         Assert (*pointer != numbers::invalid_unsigned_int,
                 ExcInternalError());
@@ -1349,7 +1355,8 @@ namespace internal
           {
             Assert (pointer <= &dof_handler.vertex_dofs.back(), ExcInternalError());
 
-            const unsigned int this_fe_index = *pointer;
+            Assert((*pointer)<std::numeric_limits<unsigned int>::max(), ExcInternalError());
+            const unsigned int this_fe_index = static_cast<unsigned int>(*pointer);
 
             Assert (this_fe_index < dof_handler.finite_elements->size(),
                     ExcInternalError());
@@ -1399,7 +1406,7 @@ namespace internal
         // sets and see whether we find
         // the given index
         const unsigned int starting_offset = dof_handler.vertex_dofs_offsets[vertex_index];
-        const unsigned int *pointer        = &dof_handler.vertex_dofs[starting_offset];
+        const types::global_dof_index *pointer = &dof_handler.vertex_dofs[starting_offset];
 
         Assert (*pointer != numbers::invalid_unsigned_int,
                 ExcInternalError());
@@ -1408,7 +1415,8 @@ namespace internal
           {
             Assert (pointer <= &dof_handler.vertex_dofs.back(), ExcInternalError());
 
-            const unsigned int this_fe_index = *pointer;
+            Assert((*pointer)<std::numeric_limits<unsigned int>::max(), ExcInternalError());
+            const unsigned int this_fe_index = static_cast<unsigned int>(*pointer);
 
             Assert (this_fe_index < dof_handler.finite_elements->size(),
                     ExcInternalError());
@@ -1478,7 +1486,7 @@ namespace internal
 
 template <int dim, class DH, bool lda>
 inline
-unsigned int
+types::global_dof_index
 DoFAccessor<dim,DH,lda>::dof_index (const unsigned int i,
                                     const unsigned int fe_index) const
 {
@@ -1494,7 +1502,9 @@ DoFAccessor<dim,DH,lda>::dof_index (const unsigned int i,
 
 template<int structdim, class DH, bool lda>
 inline
-unsigned int DoFAccessor<structdim, DH,lda>::mg_dof_index (const int level, const unsigned int i) const
+types::global_dof_index
+DoFAccessor<structdim, DH,lda>::mg_dof_index (const int level,
+                                             const unsigned int i) const
 {
   return this->dof_handler->template get_dof_index<structdim> (level, this->present_index, 0, i);
 }
@@ -1504,7 +1514,7 @@ template <int dim, class DH, bool lda>
 inline
 void
 DoFAccessor<dim,DH,lda>::set_dof_index (const unsigned int i,
-                                        const unsigned int index,
+                                        const types::global_dof_index index,
                                         const unsigned int fe_index) const
 {
   // access the respective DoF
@@ -1571,7 +1581,7 @@ DoFAccessor<dim,DH,lda>::fe_index_is_active (const unsigned int fe_index) const
 
 template <int structdim, class DH, bool lda>
 inline
-unsigned int
+types::global_dof_index
 DoFAccessor<structdim, DH,lda>::vertex_dof_index (const unsigned int vertex,
                                                   const unsigned int i,
                                                   const unsigned int fe_index) const
@@ -1587,8 +1597,11 @@ DoFAccessor<structdim, DH,lda>::vertex_dof_index (const unsigned int vertex,
 
 template<int structdim, class DH, bool lda>
 inline
-unsigned
-DoFAccessor<structdim, DH,lda>::mg_vertex_dof_index (const int level, const unsigned int vertex, const unsigned int i, const unsigned int fe_index) const
+types::global_dof_index
+DoFAccessor<structdim, DH,lda>::mg_vertex_dof_index (const int level,
+                                                    const unsigned int vertex,
+                                                    const unsigned int i,
+                                                    const unsigned int fe_index) const
 {
   Assert (this->dof_handler != 0, ExcInvalidObject ());
   Assert (&this->dof_handler->get_fe () != 0, ExcInvalidObject ());
@@ -1603,7 +1616,7 @@ inline
 void
 DoFAccessor<structdim, DH,lda>::set_vertex_dof_index (const unsigned int vertex,
                                                       const unsigned int i,
-                                                      const unsigned int index,
+                                                     const types::global_dof_index index,
                                                       const unsigned int fe_index) const
 {
   dealii::internal::DoFAccessor::Implementation::set_vertex_dof_index
@@ -1618,7 +1631,11 @@ DoFAccessor<structdim, DH,lda>::set_vertex_dof_index (const unsigned int vertex,
 template<int structdim, class DH, bool lda>
 inline
 void
-DoFAccessor<structdim, DH,lda>::set_mg_vertex_dof_index (const int level, const unsigned int vertex, const unsigned int i, const unsigned int index, const unsigned int fe_index) const
+DoFAccessor<structdim, DH,lda>::set_mg_vertex_dof_index (const int level,
+                                                        const unsigned int vertex,
+                                                        const unsigned int i,
+                                                        const types::global_dof_index index,
+                                                        const unsigned int fe_index) const
 {
   Assert (this->dof_handler != 0, ExcInvalidObject ());
   Assert (&this->dof_handler->get_fe () != 0, ExcInvalidObject ());
@@ -1631,7 +1648,9 @@ DoFAccessor<structdim, DH,lda>::set_mg_vertex_dof_index (const int level, const
 template<int structdim, class DH, bool lda>
 inline
 void
-DoFAccessor<structdim, DH,lda>::set_mg_dof_index (const int level, const unsigned int i, const unsigned int index) const
+DoFAccessor<structdim, DH,lda>::set_mg_dof_index (const int level,
+                                                 const unsigned int i,
+                                                 const types::global_dof_index index) const
 {
   this->dof_handler->template set_dof_index<structdim> (level, this->present_index, 0, i, index);
 }
@@ -1683,12 +1702,12 @@ namespace internal
   {
     template <class DH, bool lda>
     void get_dof_indices (const dealii::DoFAccessor<1,DH,lda>   &accessor,
-                          std::vector<unsigned int> &dof_indices,
+                          std::vector<types::global_dof_index> &dof_indices,
                           const unsigned int         fe_index)
     {
       const unsigned int dofs_per_vertex = accessor.get_fe(fe_index).dofs_per_vertex,
                          dofs_per_line   = accessor.get_fe(fe_index).dofs_per_line;
-      std::vector<unsigned int>::iterator next = dof_indices.begin();
+      std::vector<types::global_dof_index>::iterator next = dof_indices.begin();
       for (unsigned int vertex=0; vertex<2; ++vertex)
         for (unsigned int d=0; d<dofs_per_vertex; ++d)
           *next++ = accessor.vertex_dof_index(vertex,d,fe_index);
@@ -1700,13 +1719,13 @@ namespace internal
 
     template <class DH, bool lda>
     void get_dof_indices (const dealii::DoFAccessor<2,DH,lda>   &accessor,
-                          std::vector<unsigned int> &dof_indices,
+                          std::vector<types::global_dof_index> &dof_indices,
                           const unsigned int         fe_index)
     {
       const unsigned int dofs_per_vertex = accessor.get_fe(fe_index).dofs_per_vertex,
                          dofs_per_line   = accessor.get_fe(fe_index).dofs_per_line,
                          dofs_per_quad   = accessor.get_fe(fe_index).dofs_per_quad;
-      std::vector<unsigned int>::iterator next = dof_indices.begin();
+      std::vector<types::global_dof_index>::iterator next = dof_indices.begin();
       for (unsigned int vertex=0; vertex<4; ++vertex)
         for (unsigned int d=0; d<dofs_per_vertex; ++d)
           *next++ = accessor.vertex_dof_index(vertex,d,fe_index);
@@ -1735,14 +1754,14 @@ namespace internal
 
     template <class DH, bool lda>
     void get_dof_indices (const dealii::DoFAccessor<3,DH,lda>   &accessor,
-                          std::vector<unsigned int> &dof_indices,
+                          std::vector<types::global_dof_index> &dof_indices,
                           const unsigned int         fe_index)
     {
       const unsigned int dofs_per_vertex = accessor.get_fe(fe_index).dofs_per_vertex,
                          dofs_per_line   = accessor.get_fe(fe_index).dofs_per_line,
                          dofs_per_quad   = accessor.get_fe(fe_index).dofs_per_quad,
                          dofs_per_hex    = accessor.get_fe(fe_index).dofs_per_hex;
-      std::vector<unsigned int>::iterator next = dof_indices.begin();
+      std::vector<types::global_dof_index>::iterator next = dof_indices.begin();
       for (unsigned int vertex=0; vertex<8; ++vertex)
         for (unsigned int d=0; d<dofs_per_vertex; ++d)
           *next++ = accessor.vertex_dof_index(vertex,d,fe_index);
@@ -1792,7 +1811,7 @@ namespace internal
     template<class DH, bool lda>
     void get_mg_dof_indices (const dealii::DoFAccessor<1, DH,lda> &accessor,
                              const int level,
-                             std::vector<unsigned int> &dof_indices,
+                             std::vector<types::global_dof_index> &dof_indices,
                              const unsigned int fe_index)
     {
       const DH &handler = accessor.get_dof_handler();
@@ -1801,7 +1820,7 @@ namespace internal
 
       const FiniteElement<DH::dimension, DH::space_dimension> &fe
         = handler.get_fe ()[fe_index];
-      std::vector<unsigned int>::iterator next = dof_indices.begin ();
+      std::vector<types::global_dof_index>::iterator next = dof_indices.begin ();
 
       for (unsigned int vertex = 0; vertex < GeometryInfo<1>::vertices_per_cell; ++vertex)
         for (unsigned int dof = 0; dof < fe.dofs_per_vertex; ++dof)
@@ -1818,7 +1837,7 @@ namespace internal
     template<class DH, bool lda>
     void get_mg_dof_indices (const dealii::DoFAccessor<2, DH,lda> &accessor,
                              const int level,
-                             std::vector<unsigned int> &dof_indices,
+                             std::vector<types::global_dof_index> &dof_indices,
                              const unsigned int fe_index)
     {
       const DH &handler = accessor.get_dof_handler();
@@ -1826,7 +1845,7 @@ namespace internal
              ExcNotInitialized());
 
       const FiniteElement<DH::dimension, DH::space_dimension> &fe = handler.get_fe ()[fe_index];
-      std::vector<unsigned int>::iterator next = dof_indices.begin ();
+      std::vector<types::global_dof_index>::iterator next = dof_indices.begin ();
 
       for (unsigned int vertex = 0; vertex < GeometryInfo<2>::vertices_per_cell; ++vertex)
         for (unsigned int dof = 0; dof < fe.dofs_per_vertex; ++dof)
@@ -1847,7 +1866,7 @@ namespace internal
     template<class DH, bool lda>
     void get_mg_dof_indices (const dealii::DoFAccessor<3, DH,lda> &accessor,
                              const int level,
-                             std::vector<unsigned int> &dof_indices,
+                             std::vector<types::global_dof_index> &dof_indices,
                              const unsigned int fe_index)
     {
       const DH &handler = accessor.get_dof_handler();
@@ -1855,7 +1874,7 @@ namespace internal
              ExcNotInitialized());
 
       const FiniteElement<DH::dimension, DH::space_dimension> &fe = handler.get_fe ()[fe_index];
-      std::vector<unsigned int>::iterator next = dof_indices.begin ();
+      std::vector<types::global_dof_index>::iterator next = dof_indices.begin ();
 
       for (unsigned int vertex = 0; vertex < GeometryInfo<3>::vertices_per_cell; ++vertex)
         for (unsigned int dof = 0; dof < fe.dofs_per_vertex; ++dof)
@@ -1883,7 +1902,7 @@ namespace internal
 template <int structdim, class DH, bool lda>
 inline
 void
-DoFAccessor<structdim,DH,lda>::get_dof_indices (std::vector<unsigned int> &dof_indices,
+DoFAccessor<structdim,DH,lda>::get_dof_indices (std::vector<types::global_dof_index> &dof_indices,
                                                 const unsigned int         fe_index) const
 {
   Assert (this->dof_handler != 0, ExcNotInitialized());
@@ -1946,7 +1965,7 @@ DoFAccessor<structdim,DH,lda>::get_dof_indices (std::vector<unsigned int> &dof_i
 template<int structdim, class DH, bool lda>
 inline
 void DoFAccessor<structdim, DH,lda>::get_mg_dof_indices (const int level,
-                                                         std::vector<unsigned int> &dof_indices,
+                                                         std::vector<types::global_dof_index> &dof_indices,
                                                          const unsigned int fe_index) const
 {
   Assert (this->dof_handler != 0, ExcInvalidObject ());
@@ -1998,7 +2017,7 @@ void DoFAccessor<structdim, DH,lda>::get_mg_dof_indices (const int level,
 template<int structdim, class DH, bool lda>
 inline
 void DoFAccessor<structdim, DH,lda>::set_mg_dof_indices (const int level,
-                                                         const std::vector<unsigned int> &dof_indices,
+                                                         const std::vector<types::global_dof_index> &dof_indices,
                                                          const unsigned int fe_index)
 {
   Assert (this->dof_handler != 0, ExcInvalidObject ());
@@ -2055,7 +2074,7 @@ namespace internal
     inline
     typename dealii::internal::DoFHandler::Iterators<DH>::line_iterator
     get_line(const dealii::Triangulation<DH::dimension, DH::space_dimension> *tria,
-             unsigned int index,
+             const unsigned int index,
              DH *dof_handler)
     {
       return typename dealii::internal::DoFHandler::Iterators<DH>::line_iterator
@@ -2344,7 +2363,7 @@ template <template <int, int> class DH, int spacedim, bool lda>
 inline
 void
 DoFAccessor<0,DH<1,spacedim>, lda>::get_dof_indices (
-  std::vector<unsigned int> &dof_indices,
+  std::vector<types::global_dof_index> &dof_indices,
   const unsigned int fe_index) const
 {
   for (unsigned int i=0; i<dof_indices.size(); ++i)
@@ -2360,7 +2379,7 @@ DoFAccessor<0,DH<1,spacedim>, lda>::get_dof_indices (
 
 template <template <int, int> class DH, int spacedim, bool lda>
 inline
-unsigned int
+types::global_dof_index
 DoFAccessor<0,DH<1,spacedim>, lda>::
 vertex_dof_index (const unsigned int vertex,
                   const unsigned int i,
@@ -2483,7 +2502,7 @@ namespace internal
                 ->cell_dof_indices_cache.size(),
                 ExcInternalError());
 
-        std::vector<unsigned int>::iterator next
+        std::vector<types::global_dof_index>::iterator next
           = (accessor.dof_handler->levels[accessor.present_level]
              ->cell_dof_indices_cache.begin() + accessor.present_index * dofs_per_cell);
 
@@ -2529,7 +2548,7 @@ namespace internal
                 ->cell_dof_indices_cache.size(),
                 ExcInternalError());
 
-        std::vector<unsigned int>::iterator next
+        std::vector<types::global_dof_index>::iterator next
           = (accessor.dof_handler->levels[accessor.present_level]
              ->cell_dof_indices_cache.begin() + accessor.present_index * dofs_per_cell);
 
@@ -2578,7 +2597,7 @@ namespace internal
                 ->cell_dof_indices_cache.size(),
                 ExcInternalError());
 
-        std::vector<unsigned int>::iterator next
+        std::vector<types::global_dof_index>::iterator next
           = (accessor.dof_handler->levels[accessor.present_level]
              ->cell_dof_indices_cache.begin() + accessor.present_index * dofs_per_cell);
 
@@ -2653,7 +2672,7 @@ namespace internal
       static
       void
       set_dof_indices (DoFCellAccessor<DoFHandler<1,spacedim>, lda> &accessor,
-                       const std::vector<unsigned int>          &local_dof_indices)
+                       const std::vector<types::global_dof_index>          &local_dof_indices)
       {
         Assert (accessor.has_children() == false,
                 ExcInternalError());
@@ -2662,7 +2681,7 @@ namespace internal
                            dofs_per_line   = accessor.get_fe().dofs_per_line,
                            dofs_per_cell   = accessor.get_fe().dofs_per_cell;
 
-        Assert (local_dof_indices.size() == dofs_per_cell,
+        Assert (dof_indices.size() == dofs_per_cell,
                 ExcInternalError());
 
         unsigned int index = 0;
@@ -2670,9 +2689,9 @@ namespace internal
         for (unsigned int vertex=0; vertex<2; ++vertex)
           for (unsigned int d=0; d<dofs_per_vertex; ++d, ++index)
             accessor.set_vertex_dof_index(vertex,d,
-                                          local_dof_indices[index]);
+                                          dof_indices[index]);
         for (unsigned int d=0; d<dofs_per_line; ++d, ++index)
-          accessor.dof_index(d, local_dof_indices[index]);
+          accessor.dof_index(d, dof_indices[index]);
 
         Assert (index == dofs_per_cell,
                 ExcInternalError());
@@ -2684,7 +2703,7 @@ namespace internal
       static
       void
       set_dof_indices (DoFCellAccessor<DoFHandler<2,spacedim>, lda> &accessor,
-                       const std::vector<unsigned int>          &local_dof_indices)
+                       const std::vector<types::global_dof_index>          &local_dof_indices)
       {
         Assert (accessor.has_children() == false,
                 ExcInternalError());
@@ -2720,7 +2739,7 @@ namespace internal
       static
       void
       set_dof_indices (DoFCellAccessor<DoFHandler<3,spacedim>, lda> &accessor,
-                       const std::vector<unsigned int>          &local_dof_indices)
+                       const std::vector<types::global_dof_index>          &local_dof_indices)
       {
         Assert (accessor.has_children() == false,
                 ExcInternalError());
@@ -2731,7 +2750,7 @@ namespace internal
                            dofs_per_hex    = accessor.get_fe().dofs_per_hex,
                            dofs_per_cell   = accessor.get_fe().dofs_per_cell;
 
-        Assert (local_dof_indices.size() == dofs_per_cell,
+        Assert (dof_indices.size() == dofs_per_cell,
                 ExcInternalError());
 
         unsigned int index = 0;
@@ -2739,7 +2758,7 @@ namespace internal
         for (unsigned int vertex=0; vertex<8; ++vertex)
           for (unsigned int d=0; d<dofs_per_vertex; ++d, ++index)
             accessor.set_vertex_dof_index(vertex,d,
-                                          local_dof_indices[index]);
+                                          dof_indices[index]);
         // now copy dof numbers into the line. for
         // lines with the wrong orientation, we have
         // already made sure that we're ok by picking
@@ -2756,7 +2775,7 @@ namespace internal
             accessor.line(line)->set_dof_index(accessor.dof_handler->get_fe().
                                                adjust_line_dof_index_for_line_orientation(d,
                                                    accessor.line_orientation(line)),
-                                               local_dof_indices[index]);
+                                               dof_indices[index]);
         // now copy dof numbers into the face. for
         // faces with the wrong orientation, we
         // have already made sure that we're ok by
@@ -2777,9 +2796,9 @@ namespace internal
                                                    accessor.face_orientation(quad),
                                                    accessor.face_flip(quad),
                                                    accessor.face_rotation(quad)),
-                                               local_dof_indices[index]);
+                                               dof_indices[index]);
         for (unsigned int d=0; d<dofs_per_hex; ++d, ++index)
-          accessor.set_dof_index(d, local_dof_indices[index]);
+          accessor.set_dof_index(d, dof_indices[index]);
 
         Assert (index == dofs_per_cell,
                 ExcInternalError());
@@ -2794,7 +2813,7 @@ namespace internal
       static
       void
       set_dof_indices (const DoFCellAccessor<dealii::hp::DoFHandler<dim,spacedim>, lda> &,
-                       const std::vector<unsigned int> &)
+                       const std::vector<types::global_dof_index> &)
       {
         Assert (false, ExcNotImplemented());
       }
@@ -2813,7 +2832,7 @@ namespace internal
       static
       void
       get_dof_indices (const DoFCellAccessor<DoFHandler<dim,spacedim>, lda> &accessor,
-                       std::vector<unsigned int>                        &dof_indices)
+                       std::vector<types::global_dof_index>                        &dof_indices)
       {
         AssertDimension (dof_indices.size(), accessor.get_fe().dofs_per_cell);
 
@@ -2826,8 +2845,8 @@ namespace internal
                  accessor.get_fe().dofs_per_vertex * GeometryInfo<dim>::vertices_per_cell),
                 ExcMessage ("Cell must either be active, or all DoFs must be in vertices"));
 
-        unsigned int *cache = &accessor.dof_handler->levels[accessor.level()]
-                              ->cell_dof_indices_cache[accessor.present_index * accessor.get_fe().dofs_per_cell];
+        types::global_dof_index *cache = &accessor.dof_handler->levels[accessor.level()]
+                                         ->cell_dof_indices_cache[accessor.present_index * accessor.get_fe().dofs_per_cell];
         for (unsigned int i=0; i<accessor.get_fe().dofs_per_cell; ++i, ++cache)
           dof_indices[i] = *cache;
       }
@@ -2843,7 +2862,7 @@ namespace internal
       static
       void
       get_dof_indices (const DoFCellAccessor<dealii::hp::DoFHandler<dim,spacedim>, lda> &accessor,
-                       std::vector<unsigned int>                            &dof_indices)
+                       std::vector<types::global_dof_index>                            &dof_indices)
       {
         // no caching for
         // hp::DoFHandler
@@ -2888,9 +2907,9 @@ namespace internal
                  accessor.get_fe().dofs_per_vertex * GeometryInfo<dim>::vertices_per_cell),
                 ExcMessage ("Cell must either be active, or all DoFs must be in vertices"));
 
-        unsigned int *cache = &accessor.dof_handler->levels[accessor.level()]
-                              ->cell_dof_indices_cache[accessor.present_index *
-                                                       accessor.get_fe().dofs_per_cell];
+        types::global_dof_index *cache = &accessor.dof_handler->levels[accessor.level()]
+                                         ->cell_dof_indices_cache[accessor.present_index *
+                                                                  accessor.get_fe().dofs_per_cell];
         for ( ; local_values_begin != local_values_end; ++local_values_begin, ++cache)
           *local_values_begin = values(*cache);
       }
@@ -2919,7 +2938,7 @@ namespace internal
                 typename BaseClass::ExcVectorDoesNotMatch());
         const unsigned int dofs_per_cell = accessor.get_fe().dofs_per_cell;
 
-        std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+        std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
         get_dof_indices (accessor, local_dof_indices);
 
         for (unsigned int i=0; i<dofs_per_cell; ++i, ++local_values_begin)
@@ -2961,9 +2980,9 @@ namespace internal
                  accessor.get_fe().dofs_per_vertex * GeometryInfo<dim>::vertices_per_cell),
                 ExcMessage ("Cell must either be active, or all DoFs must be in vertices"));
 
-        unsigned int *cache = &accessor.dof_handler->levels[accessor.level()]
-                              ->cell_dof_indices_cache[accessor.present_index *
-                                                       accessor.get_fe().dofs_per_cell];
+        types::global_dof_index *cache = &accessor.dof_handler->levels[accessor.level()]
+                                         ->cell_dof_indices_cache[accessor.present_index *
+                                                                  accessor.get_fe().dofs_per_cell];
         constraints.get_dof_values(values, *cache, local_values_begin,
                                    local_values_end);
       }
@@ -2992,7 +3011,7 @@ namespace internal
                 typename BaseClass::ExcVectorDoesNotMatch());
         const unsigned int dofs_per_cell = accessor.get_fe().dofs_per_cell;
 
-        std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+        std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
         get_dof_indices (accessor, local_dof_indices);
 
         constraints.get_dof_values (values, local_dof_indices.begin(),
@@ -3027,8 +3046,8 @@ namespace internal
                  accessor.get_fe().dofs_per_vertex * GeometryInfo<dim>::vertices_per_cell),
                 ExcMessage ("Cell must either be active, or all DoFs must be in vertices"));
 
-        unsigned int *cache = &accessor.dof_handler->levels[accessor.level()]
-                              ->cell_dof_indices_cache[accessor.present_index * accessor.get_fe().dofs_per_cell];
+        types::global_dof_index *cache = &accessor.dof_handler->levels[accessor.level()]
+                                         ->cell_dof_indices_cache[accessor.present_index * accessor.get_fe().dofs_per_cell];
         for (unsigned int i=0; i<accessor.get_fe().dofs_per_cell; ++i, ++cache)
           values(*cache) = local_values(i);
       }
@@ -3046,7 +3065,7 @@ namespace internal
         // implemented
         const unsigned int dofs_per_cell = accessor.get_fe().dofs_per_cell;
 
-        std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+        std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
         get_dof_indices (accessor, local_dof_indices);
 
         for (unsigned int i=0; i<dofs_per_cell; ++i)
@@ -3163,8 +3182,8 @@ namespace internal
 
         const unsigned int n_dofs = local_source_end - local_source_begin;
 
-        unsigned int *dofs = &accessor.dof_handler->levels[accessor.level()]
-                             ->cell_dof_indices_cache[accessor.present_index * n_dofs];
+        types::global_dof_index *dofs = &accessor.dof_handler->levels[accessor.level()]
+                                        ->cell_dof_indices_cache[accessor.present_index * n_dofs];
 
         // distribute cell vector
         global_destination.add(n_dofs, dofs, local_source_begin);
@@ -3195,7 +3214,7 @@ namespace internal
 //TODO[WB/MK]: This function could me made more efficient because it allocates memory, which could be avoided by passing in another argument as a scratch array. This should be fixed eventually
 
         // get indices of dofs
-        std::vector<unsigned int> dofs (n_dofs);
+        std::vector<types::global_dof_index> dofs (n_dofs);
         accessor.get_dof_indices (dofs);
 
         // distribute cell vector
@@ -3234,8 +3253,8 @@ namespace internal
 
         const unsigned int n_dofs = local_source_end - local_source_begin;
 
-        unsigned int *dofs = &accessor.dof_handler->levels[accessor.level()]
-                             ->cell_dof_indices_cache[accessor.present_index * n_dofs];
+        types::global_dof_index *dofs = &accessor.dof_handler->levels[accessor.level()]
+                                        ->cell_dof_indices_cache[accessor.present_index * n_dofs];
 
         // distribute cell vector
         constraints.distribute_local_to_global (local_source_begin, local_source_end,
@@ -3268,7 +3287,7 @@ namespace internal
 //TODO[WB/MK]: This function could me made more efficient because it allocates memory, which could be avoided by passing in another argument as a scratch array. This should be fixed eventually
 
         // get indices of dofs
-        std::vector<unsigned int> dofs (n_dofs);
+        std::vector<types::global_dof_index> dofs (n_dofs);
         accessor.get_dof_indices (dofs);
 
         // distribute cell vector
@@ -3310,8 +3329,8 @@ namespace internal
 
         const unsigned int n_dofs = local_source.m();
 
-        unsigned int *dofs = &accessor.dof_handler->levels[accessor.level()]
-                             ->cell_dof_indices_cache[accessor.present_index * n_dofs];
+        types::global_dof_index *dofs = &accessor.dof_handler->levels[accessor.level()]
+                                        ->cell_dof_indices_cache[accessor.present_index * n_dofs];
 
         // distribute cell matrix
         for (unsigned int i=0; i<n_dofs; ++i)
@@ -3347,7 +3366,7 @@ namespace internal
 //TODO[WB/MK]: This function could me made more efficient because it allocates memory, which could be avoided by passing in another argument as a scratch array.
 
         // get indices of dofs
-        std::vector<unsigned int> dofs (n_dofs);
+        std::vector<types::global_dof_index> dofs (n_dofs);
         accessor.get_dof_indices (dofs);
 
         // distribute cell matrix
@@ -3394,8 +3413,8 @@ namespace internal
                 ExcMessage ("Cell must either be active, or all DoFs must be in vertices"));
 
         const unsigned int n_dofs = accessor.get_fe().dofs_per_cell;
-        unsigned int *dofs = &accessor.dof_handler->levels[accessor.level()]
-                             ->cell_dof_indices_cache[accessor.present_index *n_dofs];
+        types::global_dof_index *dofs = &accessor.dof_handler->levels[accessor.level()]
+                                        ->cell_dof_indices_cache[accessor.present_index *n_dofs];
 
         // distribute cell matrices
         for (unsigned int i=0; i<n_dofs; ++i)
@@ -3443,7 +3462,7 @@ namespace internal
 //to ConstraintMatrix or MeshWorker::Assembler
 
         // get indices of dofs
-        std::vector<unsigned int> dofs (n_dofs);
+        std::vector<types::global_dof_index> dofs (n_dofs);
         accessor.get_dof_indices (dofs);
 
         // distribute cell matrix and vector
@@ -3620,14 +3639,14 @@ DoFCellAccessor<DH,lda>::get_dof_indices (std::vector<unsigned int> &dof_indices
 
 template<class DH, bool lda>
 inline
-void DoFCellAccessor<DH,lda>::get_mg_dof_indices (std::vector<unsigned int> &dof_indices) const
+void DoFCellAccessor<DH,lda>::get_mg_dof_indices (std::vector<types::global_dof_index> &dof_indices) const
 {
   DoFAccessor<dim, DH,lda>::get_mg_dof_indices (this->level (), dof_indices);
 }
 
 template<class DH, bool lda>
 inline
-void DoFCellAccessor<DH,lda>::set_mg_dof_indices (const std::vector<unsigned int> &dof_indices)
+void DoFCellAccessor<DH,lda>::set_mg_dof_indices (const std::vector<types::global_dof_index> &dof_indices)
 {
   DoFAccessor<dim, DH,lda>::set_mg_dof_indices (this->level (), dof_indices);
 }
@@ -3635,7 +3654,7 @@ void DoFCellAccessor<DH,lda>::set_mg_dof_indices (const std::vector<unsigned int
 
 template<class DH, bool lda>
 inline
-void DoFCellAccessor<DH,lda>::dof_indices (std::vector<unsigned int> &dof_indices) const
+void DoFCellAccessor<DH,lda>::dof_indices (std::vector<types::global_dof_index> &dof_indices) const
 {
   if (lda)
     get_mg_dof_indices (dof_indices);
index a69f3d467aafb53a19aac5703b0c3732c2e482b4..6fce801585f9c7f286e47341fd033e1375ae7ae5 100644 (file)
@@ -135,7 +135,7 @@ namespace internal
  * respective degree of freedom shall be assigned. This number may, for
  * example, be obtained by sorting the support points of the degrees of
  * freedom in downwind direction.  Then call the
- * <tt>renumber_dofs(vector<unsigned int>)</tt> function with the array, which
+ * <tt>renumber_dofs(vector<types::global_dof_index>)</tt> function with the array, which
  * converts old into new degree of freedom indices.
  *
  *
@@ -311,6 +311,8 @@ public:
    */
   virtual void distribute_dofs (const FiniteElement<dim,spacedim> &fe);
 
+  virtual void distribute_mg_dofs (const FiniteElement<dim, spacedim> &fe, const types::global_dof_index offset = 0);
+
   /**
    * Distribute multigrid degrees of freedom similar
    * to distribute_dofs() but on each level.
@@ -425,7 +427,7 @@ public:
    * case that only one processor
    * participates in the mesh.
    */
-  void renumber_dofs (const std::vector<unsigned int> &new_numbers);
+  void renumber_dofs (const std::vector<types::global_dof_index> &new_numbers);
 
   /**
    * The same function as above, but
@@ -433,7 +435,7 @@ public:
    * single level of a multigrid hierarchy.
    */
   void renumber_dofs (const unsigned int level,
-                      const std::vector<unsigned int> &new_numbers);
+                      const std::vector<types::global_dof_index> &new_numbers);
 
   /**
    * Return the maximum number of
@@ -603,7 +605,7 @@ public:
    * DoFs which are constrained by
    * hanging nodes, see @ref constraints.
    */
-  unsigned int n_dofs () const;
+  types::global_dof_index n_dofs () const;
 
   /**
    * The (global) number of multilevel
@@ -617,13 +619,13 @@ public:
    * returns the number of
    * degrees of freedom on this level.
    */
-  unsigned int n_dofs (const unsigned int level) const;
+  types::global_dof_index n_dofs (const unsigned int level) const;
 
   /**
    * Return the number of degrees of freedom
    * located on the boundary.
    */
-  unsigned int n_boundary_dofs () const;
+  types::global_dof_index n_boundary_dofs () const;
 
   /**
    * Return the number of degrees
@@ -638,7 +640,7 @@ public:
    * @p make_boundary_sparsity_pattern
    * function.
    */
-  unsigned int
+  types::global_dof_index
   n_boundary_dofs (const FunctionMap &boundary_indicators) const;
 
   /**
@@ -649,7 +651,7 @@ public:
    * indicators under
    * consideration.
    */
-  unsigned int
+  types::global_dof_index
   n_boundary_dofs (const std::set<types::boundary_id> &boundary_indicators) const;
 
   /**
@@ -779,7 +781,7 @@ public:
    * then the vector has a single
    * element equal to n_dofs().
    */
-  const std::vector<unsigned int> &
+  const std::vector<types::global_dof_index> &
   n_locally_owned_dofs_per_processor () const;
 
   /**
@@ -891,7 +893,7 @@ protected:
    * degrees of freedom located at
    * vertices.
    */
-  std::vector<unsigned int>      vertex_dofs;
+  std::vector<types::global_dof_index>      vertex_dofs;
 
 
 
@@ -971,8 +973,8 @@ private:
   private:
     unsigned int coarsest_level;
     unsigned int finest_level;
-    unsigned int *indices;
-    unsigned int *indices_offset;
+    types::global_dof_index *indices;
+    types::global_dof_index *indices_offset;
 
   public:
     DeclException0 (ExcNoMemory);
@@ -980,9 +982,9 @@ private:
     ~MGVertexDoFs ();
     unsigned int get_coarsest_level () const;
     unsigned int get_finest_level () const;
-    unsigned int get_index (const unsigned int level, const unsigned int dof_number) const;
+    types::global_dof_index get_index (const unsigned int level, const unsigned int dof_number) const;
     void init (const unsigned int coarsest_level, const unsigned int finest_level, const unsigned int dofs_per_vertex);
-    void set_index (const unsigned int level, const unsigned int dof_number, const unsigned int index);
+    void set_index (const unsigned int level, const unsigned int dof_number, const types::global_dof_index index);
   };
 
   void clear_mg_space ();
@@ -995,10 +997,10 @@ private:
   void reserve_space ();
 
   template <int structdim>
-  unsigned int get_dof_index (const unsigned int obj_level, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index) const;
+  types::global_dof_index get_dof_index (const unsigned int obj_level, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index) const;
 
   template<int structdim>
-  void set_dof_index (const unsigned int obj_level, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const unsigned int global_index) const;
+  void set_dof_index (const unsigned int obj_level, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const types::global_dof_index global_index) const;
 
   /**
    * Space to store the DoF numbers
@@ -1044,13 +1046,13 @@ private:
 
 #ifndef DOXYGEN
 
-template <> unsigned int DoFHandler<1>::n_boundary_dofs () const;
-template <> unsigned int DoFHandler<1>::n_boundary_dofs (const FunctionMap &) const;
-template <> unsigned int DoFHandler<1>::n_boundary_dofs (const std::set<types::boundary_id> &) const;
+template <> types::global_dof_index DoFHandler<1>::n_boundary_dofs () const;
+template <> types::global_dof_index DoFHandler<1>::n_boundary_dofs (const FunctionMap &) const;
+template <> types::global_dof_index DoFHandler<1>::n_boundary_dofs (const std::set<types::boundary_id> &) const;
 
-template <> void DoFHandler<1>::renumber_dofs(unsigned int,const std::vector<unsigned int>  &new_numbers);
-template <> void DoFHandler<2>::renumber_dofs(unsigned int,const std::vector<unsigned int>  &new_numbers);
-template <> void DoFHandler<3>::renumber_dofs(unsigned int,const std::vector<unsigned int>  &new_numbers);
+template <> void DoFHandler<1>::renumber_dofs(unsigned int,const std::vector<types::global_dof_index>  &new_numbers);
+template <> void DoFHandler<2>::renumber_dofs(unsigned int,const std::vector<types::global_dof_index>  &new_numbers);
+template <> void DoFHandler<3>::renumber_dofs(unsigned int,const std::vector<types::global_dof_index>  &new_numbers);
 
 
 /* ----------------------- Inline functions ---------------------------------- */
@@ -1074,7 +1076,7 @@ DoFHandler<dim,spacedim>::has_active_dofs() const
 
 template <int dim, int spacedim>
 inline
-unsigned int
+types::global_dof_index
 DoFHandler<dim,spacedim>::n_dofs () const
 {
   return number_cache.n_global_dofs;
@@ -1114,7 +1116,7 @@ DoFHandler<dim, spacedim>::locally_owned_mg_dofs(const unsigned int level) const
 }
 
 template <int dim, int spacedim>
-const std::vector<unsigned int> &
+const std::vector<types::global_dof_index> &
 DoFHandler<dim, spacedim>::n_locally_owned_dofs_per_processor() const
 {
   return number_cache.n_locally_owned_dofs_per_processor;
index f2d1654c4dbb2d45d7a6c1091ec15394a79dc979..bff790cb47543072f069b8b1fb80219953e2dc90 100644 (file)
@@ -81,7 +81,7 @@ namespace internal
          */
         virtual
         NumberCache
-        renumber_dofs (const std::vector<unsigned int> &new_numbers,
+        renumber_dofs (const std::vector<types::global_dof_index> &new_numbers,
                        dealii::DoFHandler<dim,spacedim> &dof_handler) const = 0;
       };
 
@@ -118,7 +118,7 @@ namespace internal
          */
         virtual
         NumberCache
-        renumber_dofs (const std::vector<unsigned int> &new_numbers,
+        renumber_dofs (const std::vector<types::global_dof_index>  &new_numbers,
                        dealii::DoFHandler<dim,spacedim> &dof_handler) const;
       };
 
@@ -156,7 +156,7 @@ namespace internal
          */
         virtual
         NumberCache
-        renumber_dofs (const std::vector<unsigned int> &new_numbers,
+        renumber_dofs (const std::vector<types::global_dof_index>  &new_numbers,
                        dealii::DoFHandler<dim,spacedim> &dof_handler) const;
       };
     }
index b721b1f61f0517ae3455d8ec1fdec55ed172b49f..b07494cd2faa9eba3f3c904b0d0e8222d06cff12 100644 (file)
@@ -77,7 +77,7 @@ namespace internal
        * times
        * selected_fe.dofs_per_cell.
        */
-      std::vector<unsigned int> cell_dof_indices_cache;
+      std::vector<types::global_dof_index> cell_dof_indices_cache;
 
       /**
        * The object containing dof-indices
index 2d0f9d1c8da3f42cb9798372f56b7e51b27285f8..66ed7f8315a802c87379811e1e75c4fe416145b0 100644 (file)
@@ -63,7 +63,7 @@ namespace internal
        * Store the global indices of
        * the degrees of freedom.
        */
-      std::vector<unsigned int> dofs;
+      std::vector<types::global_dof_index> dofs;
 
     public:
       /**
@@ -99,7 +99,7 @@ namespace internal
                      const unsigned int       obj_index,
                      const unsigned int       fe_index,
                      const unsigned int       local_index,
-                     const unsigned int       global_index);
+                     const types::global_dof_index       global_index);
 
       /**
        * Return the global index of
@@ -127,7 +127,7 @@ namespace internal
        * and non-hp classes.
        */
       template <int dh_dim, int spacedim>
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::DoFHandler<dh_dim,spacedim> &dof_handler,
                      const unsigned int       obj_index,
                      const unsigned int       fe_index,
@@ -144,7 +144,7 @@ namespace internal
       template <int dh_dim, int spacedim>
       unsigned int
       n_active_fe_indices (const dealii::DoFHandler<dh_dim,spacedim> &dof_handler,
-                           const unsigned int       index) const;
+                           const types::global_dof_index       index) const;
 
       /**
        * Similar to the function
@@ -155,7 +155,7 @@ namespace internal
       template <int dh_dim, int spacedim>
       bool
       fe_index_is_active (const dealii::DoFHandler<dh_dim,spacedim> &dof_handler,
-                          const unsigned int       index,
+                          const types::global_dof_index       index,
                           const unsigned int       fe_index) const;
 
       /**
@@ -204,7 +204,7 @@ namespace internal
     inline
     bool
     DoFObjects<dim>::fe_index_is_active (const dealii::DoFHandler<dh_dim,spacedim> &,
-                                         const unsigned int,
+                                         const types::global_dof_index,
                                          const unsigned int fe_index) const
     {
       Assert (fe_index == 0,
@@ -218,7 +218,7 @@ namespace internal
     template <int dim>
     template <int dh_dim, int spacedim>
     inline
-    unsigned int
+    types::global_dof_index
     DoFObjects<dim>::
     get_dof_index (const dealii::DoFHandler<dh_dim,spacedim> &dof_handler,
                    const unsigned int       obj_index,
index 07221368bd7637e374c8d6e62982b0df0e858312..9ed959c4543b4d920dd31ea508b8ef02551f13cd 100644 (file)
@@ -445,8 +445,8 @@ namespace DoFRenumbering
     /**
      * Return true if c1 less c2.
      */
-    bool operator () (const std::pair<Point<dim>,unsigned int> &c1,
-                      const std::pair<Point<dim>,unsigned int> &c2) const
+    bool operator () (const std::pair<Point<dim>,types::global_dof_index> &c1,
+                      const std::pair<Point<dim>,types::global_dof_index> &c2) const
     {
       const Point<dim> diff = c2.first-c1.first;
       return (diff*dir > 0 || (diff*dir==0 && c1.second<c2.second));
@@ -521,7 +521,7 @@ namespace DoFRenumbering
      */
     template <class DH>
     void
-    compute_Cuthill_McKee (std::vector<unsigned int> &new_dof_indices,
+    compute_Cuthill_McKee (std::vector<types::global_dof_index> &new_dof_indices,
                            const DH &,
                            const bool reversed_numbering = false,
                            const bool use_constraints    = false);
@@ -566,7 +566,7 @@ namespace DoFRenumbering
      */
     template <class DH>
     void
-    compute_king_ordering (std::vector<unsigned int> &new_dof_indices,
+    compute_king_ordering (std::vector<types::global_dof_index> &new_dof_indices,
                            const DH &,
                            const bool reversed_numbering = false,
                            const bool use_constraints    = false);
@@ -612,7 +612,7 @@ namespace DoFRenumbering
      */
     template <class DH>
     void
-    compute_minimum_degree (std::vector<unsigned int> &new_dof_indices,
+    compute_minimum_degree (std::vector<types::global_dof_index> &new_dof_indices,
                             const DH &,
                             const bool reversed_numbering = false,
                             const bool use_constraints    = false);
@@ -641,7 +641,7 @@ namespace DoFRenumbering
   Cuthill_McKee (DH                              &dof_handler,
                  const bool                       reversed_numbering = false,
                  const bool                       use_constraints    = false,
-                 const std::vector<unsigned int> &starting_indices   = std::vector<unsigned int>());
+                 const std::vector<types::global_dof_index> &starting_indices   = std::vector<types::global_dof_index>());
 
   /**
    * Computes the renumbering
@@ -654,11 +654,11 @@ namespace DoFRenumbering
    */
   template <class DH>
   void
-  compute_Cuthill_McKee (std::vector<unsigned int> &new_dof_indices,
+  compute_Cuthill_McKee (std::vector<types::global_dof_index> &new_dof_indices,
                          const DH &,
                          const bool reversed_numbering = false,
                          const bool use_constraints    = false,
-                         const std::vector<unsigned int> &starting_indices   = std::vector<unsigned int>());
+                         const std::vector<types::global_dof_index> &starting_indices   = std::vector<types::global_dof_index>());
 
   /**
    * Renumber the degrees of
@@ -688,7 +688,7 @@ namespace DoFRenumbering
   Cuthill_McKee (DH &dof_handler,
                  const unsigned int          level,
                  const bool                  reversed_numbering = false,
-                 const std::vector<unsigned int> &starting_indices   = std::vector<unsigned int> ());
+                 const std::vector<types::global_dof_index> &starting_indices   = std::vector<types::global_dof_index> ());
 
   /**
    * @name Component-wise numberings
@@ -817,8 +817,8 @@ namespace DoFRenumbering
    * the renumbering vector.
    */
   template <int dim, int spacedim, class ITERATOR, class ENDITERATOR>
-  unsigned int
-  compute_component_wise (std::vector<unsigned int> &new_dof_indices,
+  types::global_dof_index
+  compute_component_wise (std::vector<types::global_dof_index> &new_dof_indices,
                           const ITERATOR &start,
                           const ENDITERATOR &end,
                           const std::vector<unsigned int> &target_component);
@@ -972,8 +972,8 @@ namespace DoFRenumbering
    */
   template <class DH>
   void
-  compute_cell_wise (std::vector<unsigned int> &renumbering,
-                     std::vector<unsigned int> &inverse_renumbering,
+  compute_cell_wise (std::vector<types::global_dof_index> &renumbering,
+                     std::vector<types::global_dof_index> &inverse_renumbering,
                      const DH &dof_handler,
                      const std::vector<typename DH::active_cell_iterator> &cell_order);
 
@@ -999,8 +999,8 @@ namespace DoFRenumbering
    */
   template <class DH>
   void
-  compute_cell_wise (std::vector<unsigned int> &renumbering,
-                     std::vector<unsigned int> &inverse_renumbering,
+  compute_cell_wise (std::vector<types::global_dof_index> &renumbering,
+                     std::vector<types::global_dof_index> &inverse_renumbering,
                      const DH   &dof_handler,
                      const unsigned int         level,
                      const std::vector<typename DH::level_cell_iterator> &cell_order);
@@ -1138,8 +1138,8 @@ namespace DoFRenumbering
    */
   template <class DH>
   void
-  compute_downstream (std::vector<unsigned int> &new_dof_indices,
-                      std::vector<unsigned int> &reverse,
+  compute_downstream (std::vector<types::global_dof_index> &new_dof_indices,
+                      std::vector<types::global_dof_index> &reverse,
                       const DH                  &dof_handler,
                       const Point<DH::space_dimension>          &direction,
                       const bool                 dof_wise_renumbering);
@@ -1155,8 +1155,8 @@ namespace DoFRenumbering
    */
   template <class DH>
   void
-  compute_downstream (std::vector<unsigned int> &new_dof_indices,
-                      std::vector<unsigned int> &reverse,
+  compute_downstream (std::vector<types::global_dof_index> &new_dof_indices,
+                      std::vector<types::global_dof_index> &reverse,
                       const DH &dof_handler,
                       const unsigned int         level,
                       const Point<DH::space_dimension>          &direction,
@@ -1205,7 +1205,7 @@ namespace DoFRenumbering
    */
   template <class DH>
   void
-  compute_clockwise_dg (std::vector<unsigned int> &new_dof_indices,
+  compute_clockwise_dg (std::vector<types::global_dof_index> &new_dof_indices,
                         const DH                  &dof_handler,
                         const Point<DH::space_dimension>          &center,
                         const bool                 counter);
@@ -1274,7 +1274,7 @@ namespace DoFRenumbering
    */
   template <class DH>
   void
-  compute_sort_selected_dofs_back (std::vector<unsigned int> &new_dof_indices,
+  compute_sort_selected_dofs_back (std::vector<types::global_dof_index> &new_dof_indices,
                                    const DH                  &dof_handler,
                                    const std::vector<bool>   &selected_dofs);
 
@@ -1295,7 +1295,7 @@ namespace DoFRenumbering
    */
   template <class DH>
   void
-  compute_sort_selected_dofs_back (std::vector<unsigned int> &new_dof_indices,
+  compute_sort_selected_dofs_back (std::vector<types::global_dof_index> &new_dof_indices,
                                    const DH                  &dof_handler,
                                    const std::vector<bool>   &selected_dofs,
                                    const unsigned int         level);
@@ -1318,7 +1318,7 @@ namespace DoFRenumbering
    */
   template <class DH>
   void
-  compute_random (std::vector<unsigned int> &new_dof_indices,
+  compute_random (std::vector<types::global_dof_index> &new_dof_indices,
                   const DH &dof_handler);
 
   /**
@@ -1380,7 +1380,7 @@ namespace DoFRenumbering
    */
   template <class DH>
   void
-  compute_subdomain_wise (std::vector<unsigned int> &new_dof_indices,
+  compute_subdomain_wise (std::vector<types::global_dof_index> &new_dof_indices,
                           const DH                  &dof_handler);
 
   /**
index 858b6e8949b65e419458914eeb7fc07d1932df52..cf6ee8659b9a469309e9eb6f04050ccfca1b1cfc 100644 (file)
@@ -1,7 +1,7 @@
 //---------------------------------------------------------------------------
 //    $Id$
 //
-//    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 by the deal.II authors
+//    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -738,7 +738,7 @@ namespace DoFTools
   template <class DH, class SparsityPattern>
   void
   make_boundary_sparsity_pattern (const DH                        &dof,
-                                  const std::vector<unsigned int> &dof_to_boundary_mapping,
+                                  const std::vector<types::global_dof_index> &dof_to_boundary_mapping,
                                   SparsityPattern                 &sparsity_pattern);
 
   /**
@@ -775,7 +775,7 @@ namespace DoFTools
   void
   make_boundary_sparsity_pattern (const DH &dof,
                                   const typename FunctionMap<DH::space_dimension>::type &boundary_indicators,
-                                  const std::vector<unsigned int> &dof_to_boundary_mapping,
+                                  const std::vector<types::global_dof_index> &dof_to_boundary_mapping,
                                   SparsityPattern    &sparsity);
 
   /**
@@ -2257,10 +2257,10 @@ namespace DoFTools
   template <class DH>
   void
   count_dofs_per_component (const DH      &dof_handler,
-                            std::vector<unsigned int> &dofs_per_component,
+                            std::vector<types::global_dof_index> &dofs_per_component,
                             const bool vector_valued_once = false,
-                            std::vector<unsigned int>  target_component
-                            = std::vector<unsigned int>());
+                            std::vector<types::global_dof_index>  target_component
+                            = std::vector<types::global_dof_index>());
 
   /**
    * Count the degrees of freedom
@@ -2296,9 +2296,9 @@ namespace DoFTools
   template <class DH>
   void
   count_dofs_per_block (const DH &dof,
-                        std::vector<unsigned int> &dofs_per_block,
-                        const std::vector<unsigned int> &target_block
-                        = std::vector<unsigned int>());
+                        std::vector<types::global_dof_index> &dofs_per_block,
+                        const std::vector<types::global_dof_index>  &target_block
+                        = std::vector<types::global_dof_index>());
 
   /**
    * @deprecated See the previous
@@ -2311,8 +2311,8 @@ namespace DoFTools
   template <int dim, int spacedim>
   void
   count_dofs_per_component (const DoFHandler<dim,spacedim>     &dof_handler,
-                            std::vector<unsigned int> &dofs_per_component,
-                            std::vector<unsigned int>  target_component) DEAL_II_DEPRECATED;
+                            std::vector<types::global_dof_index> &dofs_per_component,
+                            std::vector<types::global_dof_index>  target_component) DEAL_II_DEPRECATED;
 
   /**
    * This function can be used when
@@ -2600,7 +2600,7 @@ namespace DoFTools
   template <class DH>
   void
   map_dof_to_boundary_indices (const DH                   &dof_handler,
-                               std::vector<unsigned int> &mapping);
+                               std::vector<types::global_dof_index>  &mapping);
 
   /**
    * Same as the previous function,
@@ -2619,7 +2619,7 @@ namespace DoFTools
   void
   map_dof_to_boundary_indices (const DH                      &dof_handler,
                                const std::set<types::boundary_id> &boundary_indicators,
-                               std::vector<unsigned int>     &mapping);
+                               std::vector<types::global_dof_index>     &mapping);
 
   /**
    * Return a list of support
@@ -2742,7 +2742,7 @@ namespace DoFTools
   void
   map_support_points_to_dofs (const Mapping<DH::dimension, DH::space_dimension> &mapping,
                               const DH                                          &dof_handler,
-                              std::map<Point<DH::space_dimension>, unsigned int, Comp> &point_to_index_map);
+                              std::map<Point<DH::space_dimension>, types::global_dof_index, Comp> &point_to_index_map);
 
   /**
    * Map a coupling table from the
@@ -3073,7 +3073,7 @@ namespace DoFTools
   map_support_points_to_dofs (
     const Mapping<DH::dimension,DH::space_dimension>         &mapping,
     const DH                                                 &dof_handler,
-    std::map<Point<DH::space_dimension>, unsigned int, Comp> &point_to_index_map)
+    std::map<Point<DH::space_dimension>, types::global_dof_index, Comp> &point_to_index_map)
   {
     // let the checking of arguments be
     // done by the function first
index 4d107d39f95e43f560224e3620d8b8bd395ae5f9..35bc8ecf78cc3f2980eb9d4ce80476cc98a05f9c 100644 (file)
@@ -55,7 +55,7 @@ namespace internal
        * processors that may
        * participate on this mesh.
        */
-      unsigned int n_global_dofs;
+      types::global_dof_index n_global_dofs;
 
       /**
        * Number of dofs owned by
@@ -64,7 +64,7 @@ namespace internal
        * computation, then this
        * equals n_global_dofs.
        */
-      unsigned int n_locally_owned_dofs;
+      types::global_dof_index n_locally_owned_dofs;
 
       /**
        * An index set denoting the
@@ -86,7 +86,7 @@ namespace internal
        * element equal to
        * n_global_dofs.
        */
-      std::vector<unsigned int> n_locally_owned_dofs_per_processor;
+      std::vector<types::global_dof_index> n_locally_owned_dofs_per_processor;
 
       /**
        * The dofs owned by each of
index d0cb7482c679dca5d9fa371b67e634c37c737f0f..326f105b4f0e3d27eb93b52d721b19e201ab2c27 100644 (file)
@@ -167,12 +167,22 @@ namespace FETools
    * component in the local block
    * vector.
    *
-   * The second vector is organized
-   * such that there is a vector
-   * for each base element
-   * containing the start index for
-   * each component served by this
-   * base element.
+  * @param fe: The finite element
+   * used, typically an FESystem.
+  *
+  * @param renumbering: A vector
+   * with as many entries as
+   * <tt>fe</tt> has dofs per
+   * cell. The indices reference the
+   * local dofs on the cell, not the
+   * global dofs.
+  *
+   * @param <tt>start_indice</tt>:
+   * This vector is organized such
+   * that there is a vector for each
+   * base element containing the
+   * start index for each component
+   * served by this base element.
    *
    * While the first vector is
    * checked to have the correct
@@ -207,7 +217,7 @@ namespace FETools
   void compute_block_renumbering (
     const FiniteElement<dim,spacedim> &fe,
     std::vector<unsigned int> &renumbering,
-    std::vector<unsigned int> &block_data,
+    std::vector<types::global_dof_index> &block_data,
     bool return_start_indices = true);
 
   /**
index 8b465e3c8a401e74a50501983d44d817762d1134..f305ca2e12322985edb8a48ea7ef2cfa932cef6d 100644 (file)
@@ -1,7 +1,7 @@
 //---------------------------------------------------------------------------
 //    $Id$
 //
-//    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 by the deal.II authors
+//    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -2033,7 +2033,7 @@ public:
    */
   template <class InputVector, typename number>
   void get_function_values (const InputVector &fe_function,
-                            const VectorSlice<const std::vector<unsigned int> > &indices,
+                            const VectorSlice<const std::vector<types::global_dof_index> > &indices,
                             std::vector<number> &values) const;
 
   /**
@@ -2076,7 +2076,7 @@ public:
    */
   template <class InputVector, typename number>
   void get_function_values (const InputVector &fe_function,
-                            const VectorSlice<const std::vector<unsigned int> > &indices,
+                            const VectorSlice<const std::vector<types::global_dof_index> > &indices,
                             std::vector<Vector<number> > &values) const;
 
 
@@ -2140,7 +2140,7 @@ public:
    */
   template <class InputVector>
   void get_function_values (const InputVector &fe_function,
-                            const VectorSlice<const std::vector<unsigned int> > &indices,
+                            const VectorSlice<const std::vector<types::global_dof_index> > &indices,
                             VectorSlice<std::vector<std::vector<double> > > values,
                             const bool quadrature_points_fastest) const;
 
@@ -2264,7 +2264,7 @@ public:
    */
   template <class InputVector>
   void get_function_gradients (const InputVector &fe_function,
-                               const VectorSlice<const std::vector<unsigned int> > &indices,
+                               const VectorSlice<const std::vector<types::global_dof_index> > &indices,
                                std::vector<Tensor<1,spacedim> > &gradients) const;
 
   /**
@@ -2275,7 +2275,7 @@ public:
    */
   template <class InputVector>
   void get_function_gradients (const InputVector &fe_function,
-                               const VectorSlice<const std::vector<unsigned int> > &indices,
+                               const VectorSlice<const std::vector<types::global_dof_index> > &indices,
                                VectorSlice<std::vector<std::vector<Tensor<1,spacedim> > > > gradients,
                                bool quadrature_points_fastest = false) const;
 
@@ -2301,7 +2301,7 @@ public:
    */
   template <class InputVector>
   void get_function_grads (const InputVector &fe_function,
-                           const VectorSlice<const std::vector<unsigned int> > &indices,
+                           const VectorSlice<const std::vector<types::global_dof_index> > &indices,
                            std::vector<Tensor<1,spacedim> > &gradients) const DEAL_II_DEPRECATED;
 
   /**
@@ -2310,7 +2310,7 @@ public:
    */
   template <class InputVector>
   void get_function_grads (const InputVector &fe_function,
-                           const VectorSlice<const std::vector<unsigned int> > &indices,
+                           const VectorSlice<const std::vector<types::global_dof_index> > &indices,
                            std::vector<std::vector<Tensor<1,spacedim> > > &gradients,
                            bool quadrature_points_fastest = false) const DEAL_II_DEPRECATED;
 
@@ -2441,7 +2441,7 @@ public:
   template <class InputVector>
   void get_function_hessians (
     const InputVector &fe_function,
-    const VectorSlice<const std::vector<unsigned int> > &indices,
+    const VectorSlice<const std::vector<types::global_dof_index> > &indices,
     std::vector<Tensor<2,spacedim> > &hessians) const;
 
   /**
@@ -2454,7 +2454,7 @@ public:
   template <class InputVector>
   void get_function_hessians (
     const InputVector &fe_function,
-    const VectorSlice<const std::vector<unsigned int> > &indices,
+    const VectorSlice<const std::vector<types::global_dof_index> > &indices,
     VectorSlice<std::vector<std::vector<Tensor<2,spacedim> > > > hessians,
     bool quadrature_points_fastest = false) const;
 
@@ -2606,7 +2606,7 @@ public:
   template <class InputVector, typename number>
   void get_function_laplacians (
     const InputVector &fe_function,
-    const VectorSlice<const std::vector<unsigned int> > &indices,
+    const VectorSlice<const std::vector<types::global_dof_index> > &indices,
     std::vector<number> &laplacians) const;
 
   /**
@@ -2619,7 +2619,7 @@ public:
   template <class InputVector, typename number>
   void get_function_laplacians (
     const InputVector &fe_function,
-    const VectorSlice<const std::vector<unsigned int> > &indices,
+    const VectorSlice<const std::vector<types::global_dof_index> > &indices,
     std::vector<Vector<number> > &laplacians) const;
 
   /**
@@ -2632,7 +2632,7 @@ public:
   template <class InputVector, typename number>
   void get_function_laplacians (
     const InputVector &fe_function,
-    const VectorSlice<const std::vector<unsigned int> > &indices,
+    const VectorSlice<const std::vector<types::global_dof_index> > &indices,
     std::vector<std::vector<number> > &laplacians,
     bool quadrature_points_fastest = false) const;
   //@}
index 22afa6548c25999a95097d862a00a15b43706614..74616d5410fd3e364ff1ac376adaf17979fc251d 100644 (file)
@@ -3761,7 +3761,7 @@ Triangulation<dim,spacedim>::load (Archive &ar,
 
   // as discussed in the documentation, do
   // not store the signals as well as
-  // boundary and manifold descrption
+  // boundary and manifold description
   // but everything else
   ar &smooth_grid;
   ar &levels;
index e9c7928db90fc105441689c1e4de536c61f4d70d..008159b3918dc12e3fd934cfec1a72d200f03998 100644 (file)
@@ -254,7 +254,7 @@ namespace hp
      * number of the degree of
      * freedom referenced.
      */
-    void renumber_dofs (const std::vector<unsigned int> &new_numbers);
+    void renumber_dofs (const std::vector<types::global_dof_index> &new_numbers);
 
     /**
      * Return the maximum number of
@@ -378,7 +378,7 @@ namespace hp
      * DoFs which are constrained by
      * hanging nodes, see @ref constraints.
      */
-    unsigned int n_dofs () const;
+   types::global_dof_index  n_dofs () const;
 
     /**
     * The number of multilevel
@@ -389,7 +389,7 @@ namespace hp
     * numbers::invalid_unsigned
     * int independent of its argument.
     */
-    unsigned int n_dofs(const unsigned int level) const;
+    types::global_dof_index int n_dofs(const unsigned int level) const;
 
     /**
      * Return the number of degrees of freedom
@@ -410,7 +410,7 @@ namespace hp
      * @p make_boundary_sparsity_pattern
      * function.
      */
-    unsigned int
+    types::global_dof_index
     n_boundary_dofs (const FunctionMap &boundary_indicators) const;
 
     /**
@@ -421,7 +421,7 @@ namespace hp
      * indicators under
      * consideration.
      */
-    unsigned int
+    types::global_dof_index
     n_boundary_dofs (const std::set<types::boundary_id> &boundary_indicators) const;
 
     /**
@@ -662,8 +662,8 @@ namespace hp
     public:
       MGVertexDoFs ();
       ~MGVertexDoFs ();
-      unsigned int get_index (const unsigned int level, const unsigned int dof_number) const;
-      void set_index (const unsigned int level, const unsigned int dof_number, const unsigned int index);
+      types::global_dof_index get_index (const unsigned int level, const unsigned int dof_number) const;
+      void set_index (const unsigned int level, const unsigned int dof_number, const types::global_dof_index index);
     };
 
     /**
@@ -672,10 +672,10 @@ namespace hp
     void clear_space ();
 
     template<int structdim>
-    unsigned int get_dof_index (const unsigned int obj_level, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index) const;
+    types::global_dof_index get_dof_index (const unsigned int obj_level, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index) const;
 
     template<int structdim>
-    void set_dof_index (const unsigned int obj_level, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const unsigned int global_index) const;
+    void set_dof_index (const unsigned int obj_level, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const types::global_dof_index global_index) const;
 
     /**
      *  Create default tables for
@@ -716,7 +716,7 @@ namespace hp
      * distribute_dofs().
      */
     void
-    compute_vertex_dof_identities (std::vector<unsigned int> &new_dof_indices) const;
+    compute_vertex_dof_identities (std::vector<types::global_dof_index> &new_dof_indices) const;
 
     /**
      * Compute identities between
@@ -725,7 +725,7 @@ namespace hp
      * distribute_dofs().
      */
     void
-    compute_line_dof_identities (std::vector<unsigned int> &new_dof_indices) const;
+    compute_line_dof_identities (std::vector<types::global_dof_index> &new_dof_indices) const;
 
     /**
      * Compute identities between
@@ -734,7 +734,7 @@ namespace hp
      * distribute_dofs().
      */
     void
-    compute_quad_dof_identities (std::vector<unsigned int> &new_dof_indices) const;
+    compute_quad_dof_identities (std::vector<types::global_dof_index> &new_dof_indices) const;
 
     /**
      * Renumber the objects with
@@ -761,16 +761,16 @@ namespace hp
      * co-located on the same
      * entity.
      */
-    void renumber_dofs_internal (const std::vector<unsigned int> &new_numbers,
+    void renumber_dofs_internal (const std::vector<types::global_dof_index> &new_numbers,
                                  dealii::internal::int2type<0>);
 
-    void renumber_dofs_internal (const std::vector<unsigned int> &new_numbers,
+    void renumber_dofs_internal (const std::vector<types::global_dof_index> &new_numbers,
                                  dealii::internal::int2type<1>);
 
-    void renumber_dofs_internal (const std::vector<unsigned int> &new_numbers,
+    void renumber_dofs_internal (const std::vector<types::global_dof_index> &new_numbers,
                                  dealii::internal::int2type<2>);
 
-    void renumber_dofs_internal (const std::vector<unsigned int> &new_numbers,
+    void renumber_dofs_internal (const std::vector<types::global_dof_index> &new_numbers,
                                  dealii::internal::int2type<3>);
 
     /**
@@ -826,7 +826,7 @@ namespace hp
      * actual data format used to
      * the present class.
      */
-    std::vector<unsigned int>      vertex_dofs;
+    std::vector<types::global_dof_index>      vertex_dofs;
 
     /**
      * For each vertex in the
@@ -903,7 +903,7 @@ namespace hp
 
   template <int dim, int spacedim>
   inline
-  unsigned int
+  types::global_dof_index
   DoFHandler<dim,spacedim>::n_dofs () const
   {
     return number_cache.n_global_dofs;
@@ -988,7 +988,7 @@ namespace hp
 
   template<int dim, int spacedim>
   inline
-  unsigned int DoFHandler<dim, spacedim>::MGVertexDoFs::get_index (const unsigned int,
+  types::global_dof_index DoFHandler<dim, spacedim>::MGVertexDoFs::get_index (const unsigned int,
       const unsigned int) const
   {
     Assert (false, ExcNotImplemented ());
@@ -999,7 +999,7 @@ namespace hp
   inline
   void DoFHandler<dim, spacedim>::MGVertexDoFs::set_index (const unsigned int,
                                                            const unsigned int,
-                                                           const unsigned int)
+                                                           types::global_dof_index)
   {
     Assert (false, ExcNotImplemented ());
   }
index e67564239883e74fc4cc0d690cacd1e16a097261..cfcb837f6022b0c086d47c5099a82bb959d3b9c0 100644 (file)
@@ -101,7 +101,7 @@ namespace internal
        * the degrees of freedom of each
        * hex in the @p hex_dofs array.
        */
-      std::vector<unsigned int> dof_offsets;
+      std::vector<types::global_dof_index> dof_offsets;
 
       /**
        * Store the global indices of
@@ -109,7 +109,7 @@ namespace internal
        * DoFLevel() for detailed
        * information.
        */
-      std::vector<unsigned int> dofs;
+      std::vector<types::global_dof_index > dofs;
 
       /**
        * Set the global index of
@@ -142,7 +142,7 @@ namespace internal
                      const unsigned int               obj_index,
                      const unsigned int               fe_index,
                      const unsigned int               local_index,
-                     const unsigned int               global_index,
+                     const types::global_dof_index    global_index,
                      const unsigned int               obj_level);
 
       /**
@@ -169,7 +169,7 @@ namespace internal
        * information.
        */
       template <int dimm, int spacedim>
-      unsigned int
+      types::global_dof_index
       get_dof_index (const dealii::hp::DoFHandler<dimm,spacedim> &dof_handler,
                      const unsigned int               obj_index,
                      const unsigned int               fe_index,
@@ -243,7 +243,7 @@ namespace internal
     template <int dim>
     template <int dimm, int spacedim>
     inline
-    unsigned int
+    types::global_dof_index
     DoFObjects<dim>::
     get_dof_index (const dealii::hp::DoFHandler<dimm,spacedim> &dof_handler,
                    const unsigned int                obj_index,
@@ -304,7 +304,7 @@ namespace internal
           // an exception if we can't
           // find a set for this
           // particular fe_index
-          const unsigned int starting_offset = dof_offsets[obj_index];
+          const types::global_dof_index starting_offset = dof_offsets[obj_index];
           const unsigned int *pointer        = &dofs[starting_offset];
           while (true)
             {
@@ -330,7 +330,7 @@ namespace internal
                    const unsigned int                obj_index,
                    const unsigned int                fe_index,
                    const unsigned int                local_index,
-                   const unsigned int                global_index,
+                   const types::global_dof_index     global_index,
                    const unsigned int                obj_level)
     {
       Assert ((fe_index != dealii::hp::DoFHandler<dimm,spacedim>::default_fe_index),
@@ -386,7 +386,7 @@ namespace internal
           // an exception if we can't
           // find a set for this
           // particular fe_index
-          const unsigned int starting_offset = dof_offsets[obj_index];
+          const types::global_dof_index starting_offset = dof_offsets[obj_index];
           unsigned int      *pointer         = &dofs[starting_offset];
           while (true)
             {
@@ -450,7 +450,7 @@ namespace internal
           // find a set for this
           // particular fe_index
           const unsigned int starting_offset = dof_offsets[obj_index];
-          const unsigned int *pointer        = &dofs[starting_offset];
+          const types::global_dof_index *pointer        = &dofs[starting_offset];
           unsigned int counter = 0;
           while (true)
             {
@@ -472,7 +472,7 @@ namespace internal
     template <int dim>
     template <int dimm, int spacedim>
     inline
-    unsigned int
+    types::global_dof_index
     DoFObjects<dim>::
     nth_active_fe_index (const dealii::hp::DoFHandler<dimm,spacedim> &dof_handler,
                          const unsigned int                obj_level,
@@ -525,7 +525,7 @@ namespace internal
           // find a set for this
           // particular fe_index
           const unsigned int starting_offset = dof_offsets[obj_index];
-          const unsigned int *pointer        = &dofs[starting_offset];
+          const types::global_dof_index *pointer = &dofs[starting_offset];
           unsigned int counter = 0;
           while (true)
             {
@@ -607,7 +607,7 @@ namespace internal
           // find a set for this
           // particular fe_index
           const unsigned int starting_offset = dof_offsets[obj_index];
-          const unsigned int *pointer        = &dofs[starting_offset];
+          const types::global_dof_index  *pointer = &dofs[starting_offset];
           while (true)
             {
               if (*pointer == numbers::invalid_unsigned_int)
index 32abdf96741de195e45fa58707d1c3829860312c..b034e7ce81ba8e0a1b097d6abdb9e5ceaec85f95 100644 (file)
@@ -204,7 +204,7 @@ public:
    * Return the number of entries
    * in a specific row.
    */
-  unsigned int get_row_length (const unsigned int row) const;
+  unsigned int get_row_length (const types::global_dof_index row) const;
 
   /**
    * Return the number of nonzero
index c50ac4fc00c2493ec033eadacc41158e2c83dacd..d31077225a07bf2f47f458f56846ced120a741c1 100644 (file)
@@ -128,7 +128,7 @@ BlockSparseMatrix<number>::empty () const
 
 template <typename number>
 unsigned int
-BlockSparseMatrix<number>::get_row_length (const unsigned int row) const
+BlockSparseMatrix<number>::get_row_length (const types::global_dof_index row) const
 {
   return sparsity_pattern->row_length(row);
 }
index c42d51ece13e6f3a4183b955e6adc7a8fc812e3c..f623643e9b964776dc38027d4d98a881ed61b8c1 100644 (file)
@@ -189,7 +189,7 @@ public:
    * space. It is the sum of rows
    * of the rows of sub-matrices.
    */
-  unsigned int n_rows () const;
+  types::global_dof_index n_rows () const;
 
   /**
    * Return number of columns of
@@ -199,7 +199,7 @@ public:
    * columns of the columns of
    * sub-matrices.
    */
-  unsigned int n_cols () const;
+  types::global_dof_index n_cols () const;
 
   /**
    * Return the dimension of the
@@ -207,7 +207,7 @@ public:
    * matrix is of dimension
    * $m \times n$.
    */
-  unsigned int m () const;
+  types::global_dof_index m () const;
 
   /**
    * Return the dimension of the
@@ -215,7 +215,7 @@ public:
    * matrix is of dimension
    * $m \times n$.
    */
-  unsigned int n () const;
+  types::global_dof_index n () const;
 
   /**
    * Set the element <tt>(i,j)</tt>
@@ -226,8 +226,8 @@ public:
    * allowed to store zero values
    * in non-existent fields.
    */
-  void set (const unsigned int i,
-            const unsigned int j,
+  void set (const types::global_dof_index i,
+            const types::global_dof_index j,
             const Number value);
 
   /**
@@ -239,7 +239,7 @@ public:
    * is allowed to store zero
    * values in non-existent fields.
    */
-  void add (const unsigned int i, const unsigned int j,
+  void add (const types::global_dof_index i, const types::global_dof_index j,
             const Number value);
 
 
@@ -396,7 +396,7 @@ BlockSparseMatrixEZ<Number>::block (const unsigned int row,
 
 template <typename Number>
 inline
-unsigned int
+types::global_dof_index
 BlockSparseMatrixEZ<Number>::m () const
 {
   return n_rows();
@@ -406,7 +406,7 @@ BlockSparseMatrixEZ<Number>::m () const
 
 template <typename Number>
 inline
-unsigned int
+types::global_dof_index
 BlockSparseMatrixEZ<Number>::n () const
 {
   return n_cols();
@@ -417,14 +417,14 @@ BlockSparseMatrixEZ<Number>::n () const
 template <typename Number>
 inline
 void
-BlockSparseMatrixEZ<Number>::set (const unsigned int i,
-                                  const unsigned int j,
+BlockSparseMatrixEZ<Number>::set (const types::global_dof_index i,
+                                  const types::global_dof_index j,
                                   const Number value)
 {
 
   Assert (numbers::is_finite(value), ExcNumberNotFinite());
 
-  const std::pair<unsigned int,unsigned int>
+  const std::pair<unsigned int,types::global_dof_index>
   row_index = row_indices.global_to_local (i),
   col_index = column_indices.global_to_local (j);
   block(row_index.first,col_index.first).set (row_index.second,
@@ -437,14 +437,14 @@ BlockSparseMatrixEZ<Number>::set (const unsigned int i,
 template <typename Number>
 inline
 void
-BlockSparseMatrixEZ<Number>::add (const unsigned int i,
-                                  const unsigned int j,
+BlockSparseMatrixEZ<Number>::add (const types::global_dof_index i,
+                                  const types::global_dof_index j,
                                   const Number value)
 {
 
   Assert (numbers::is_finite(value), ExcNumberNotFinite());
 
-  const std::pair<unsigned int,unsigned int>
+  const std::pair<unsigned int,types::global_dof_index>
   row_index = row_indices.global_to_local (i),
   col_index = column_indices.global_to_local (j);
   block(row_index.first,col_index.first).add (row_index.second,
index 033773ee169ad05112dda298ee8bb7c11cd4c237..7b77108246f12a5c6f63d154db4dc7c00fa47fef 100644 (file)
@@ -137,8 +137,8 @@ BlockSparseMatrixEZ<number>::collect_sizes ()
 {
   const unsigned int rows = n_block_rows();
   const unsigned int columns = n_block_cols();
-  std::vector<unsigned int> row_sizes (rows);
-  std::vector<unsigned int> col_sizes (columns);
+  std::vector<types::global_dof_index> row_sizes (rows);
+  std::vector<types::global_dof_index> col_sizes (columns);
 
   // first find out the row sizes
   // from the first block column
index 9b412967b02bfb639c38a88c74319ab9f0e70dc1..3ceac28524f89b2b51b0081217e1186924e31271 100644 (file)
@@ -282,7 +282,7 @@ public:
    * to which block <tt>(i,j)</tt> belongs
    * and then relays to that block.
    */
-  void add (const unsigned int i, const unsigned int j);
+  void add (const types::global_dof_index i, const types::global_dof_index j);
 
   /**
    * Add several nonzero entries to the
@@ -313,7 +313,7 @@ public:
    * of the (block-)rows of
    * sub-matrices.
    */
-  unsigned int n_rows () const;
+  types::global_dof_index n_rows () const;
 
   /**
    * Return number of columns of
@@ -323,13 +323,13 @@ public:
    * columns of the (block-)columns
    * of sub-matrices.
    */
-  unsigned int n_cols () const;
+  types::global_dof_index n_cols () const;
 
   /**
    * Check if a value at a certain
    * position may be non-zero.
    */
-  bool exists (const unsigned int i, const unsigned int j) const;
+  bool exists (const types::global_dof_index i, const types::global_dof_index j) const;
 
   /**
    * Number of entries in a
@@ -337,7 +337,7 @@ public:
    * all the blocks that form this
    * row.
    */
-  unsigned int row_length (const unsigned int row) const;
+  unsigned int row_length (const types::global_dof_index row) const;
 
   /**
    * Return the number of nonzero
@@ -535,7 +535,7 @@ public:
    */
   void reinit (const BlockIndices &row_indices,
                const BlockIndices &col_indices,
-               const std::vector<std::vector<unsigned int> > &row_lengths);
+               const std::vector<std::vector<types::global_dof_index> > &row_lengths);
 
 
   /**
@@ -686,8 +686,8 @@ public:
    * and then entering the index
    * values.
    */
-  BlockCompressedSparsityPattern (const std::vector<unsigned int> &row_block_sizes,
-                                  const std::vector<unsigned int> &col_block_sizes);
+  BlockCompressedSparsityPattern (const std::vector<types::global_dof_index> &row_block_sizes,
+                                  const std::vector<types::global_dof_index> &col_block_sizes);
 
   /**
    * Initialize the pattern with
@@ -713,8 +713,8 @@ public:
    * <tt>row_block_sizes[i]</tt>
    * times <tt>col_block_sizes[j]</tt>.
    */
-  void reinit (const std::vector< unsigned int > &row_block_sizes,
-               const std::vector< unsigned int > &col_block_sizes);
+  void reinit (const std::vector< types::global_dof_index > &row_block_sizes,
+               const std::vector< types::global_dof_index > &col_block_sizes);
 
   /**
    * Resize the matrix to a tensor
@@ -803,8 +803,8 @@ public:
    * and then entering the index
    * values.
    */
-  BlockCompressedSetSparsityPattern (const std::vector<unsigned int> &row_block_sizes,
-                                     const std::vector<unsigned int> &col_block_sizes);
+  BlockCompressedSetSparsityPattern (const std::vector<types::global_dof_index> &row_block_sizes,
+                                     const std::vector<types::global_dof_index> &col_block_sizes);
 
   /**
    * Initialize the pattern with
@@ -830,8 +830,8 @@ public:
    * <tt>row_block_sizes[i]</tt>
    * times <tt>col_block_sizes[j]</tt>.
    */
-  void reinit (const std::vector< unsigned int > &row_block_sizes,
-               const std::vector< unsigned int > &col_block_sizes);
+  void reinit (const std::vector< types::global_dof_index > &row_block_sizes,
+               const std::vector< types::global_dof_index > &col_block_sizes);
 
   /**
    * Resize the matrix to a tensor
@@ -913,8 +913,8 @@ public:
    * and then entering the index
    * values.
    */
-  BlockCompressedSimpleSparsityPattern (const std::vector<unsigned int> &row_block_sizes,
-                                        const std::vector<unsigned int> &col_block_sizes);
+  BlockCompressedSimpleSparsityPattern (const std::vector<types::global_dof_index> &row_block_sizes,
+                                        const std::vector<types::global_dof_index> &col_block_sizes);
 
   /**
    * Initialize the pattern with symmetric
@@ -945,8 +945,8 @@ public:
    * <tt>row_block_sizes[i]</tt>
    * times <tt>col_block_sizes[j]</tt>.
    */
-  void reinit (const std::vector< unsigned int > &row_block_sizes,
-               const std::vector< unsigned int > &col_block_sizes);
+  void reinit (const std::vector< types::global_dof_index > &row_block_sizes,
+               const std::vector< types::global_dof_index > &col_block_sizes);
 
   /**
    * Resize the pattern with symmetric
@@ -1039,8 +1039,8 @@ namespace TrilinosWrappers
      * and then entering the index
      * values.
      */
-    BlockSparsityPattern (const std::vector<unsigned int> &row_block_sizes,
-                          const std::vector<unsigned int> &col_block_sizes);
+    BlockSparsityPattern (const std::vector<types::global_dof_index> &row_block_sizes,
+                          const std::vector<types::global_dof_index> &col_block_sizes);
 
     /**
      * Initialize the pattern with an array
@@ -1087,8 +1087,8 @@ namespace TrilinosWrappers
      * <tt>row_block_sizes[i]</tt>
      * times <tt>col_block_sizes[j]</tt>.
      */
-    void reinit (const std::vector< unsigned int > &row_block_sizes,
-                 const std::vector< unsigned int > &col_block_sizes);
+    void reinit (const std::vector< types::global_dof_index > &row_block_sizes,
+                 const std::vector< types::global_dof_index > &col_block_sizes);
 
     /**
      * Resize the matrix to a square tensor
@@ -1175,13 +1175,13 @@ BlockSparsityPatternBase<SparsityPatternBase>::get_column_indices () const
 template <class SparsityPatternBase>
 inline
 void
-BlockSparsityPatternBase<SparsityPatternBase>::add (const unsigned int i,
-                                                    const unsigned int j)
+BlockSparsityPatternBase<SparsityPatternBase>::add (const types::global_dof_index i,
+                                                    const types::global_dof_index j)
 {
   // if you get an error here, are
   // you sure you called
   // <tt>collect_sizes()</tt> before?
-  const std::pair<unsigned int,unsigned int>
+  const std::pair<unsigned int,types::global_dof_index>
   row_index = row_indices.global_to_local (i),
   col_index = column_indices.global_to_local (j);
   sub_objects[row_index.first][col_index.first]->add (row_index.second,
@@ -1193,7 +1193,7 @@ BlockSparsityPatternBase<SparsityPatternBase>::add (const unsigned int i,
 template <class SparsityPatternBase>
 template <typename ForwardIterator>
 void
-BlockSparsityPatternBase<SparsityPatternBase>::add_entries (const unsigned int row,
+BlockSparsityPatternBase<SparsityPatternBase>::add_entries (const types::global_dof_index row,
                                                             ForwardIterator    begin,
                                                             ForwardIterator    end,
                                                             const bool         indices_are_sorted)
@@ -1205,7 +1205,7 @@ BlockSparsityPatternBase<SparsityPatternBase>::add_entries (const unsigned int r
       counter_within_block.resize (this->n_block_cols());
     }
 
-  const unsigned int n_cols = static_cast<unsigned int>(end - begin);
+  const types::global_dof_index n_cols = static_cast<types::global_dof_index>(end - begin);
 
   // Resize sub-arrays to n_cols. This
   // is a bit wasteful, but we resize
@@ -1237,9 +1237,9 @@ BlockSparsityPatternBase<SparsityPatternBase>::add_entries (const unsigned int r
   // comes from an element matrix).
   for (ForwardIterator it = begin; it != end; ++it)
     {
-      const unsigned int col = *it;
+      const types::global_dof_index col = *it;
 
-      const std::pair<unsigned int, unsigned int>
+      const std::pair<unsigned int, types::global_dof_index>
       col_index = this->column_indices.global_to_local(col);
 
       const unsigned int local_index = counter_within_block[col_index.first]++;
@@ -1261,7 +1261,7 @@ BlockSparsityPatternBase<SparsityPatternBase>::add_entries (const unsigned int r
   // where we should start reading out
   // data. Now let's write the data into
   // the individual blocks!
-  const std::pair<unsigned int,unsigned int>
+  const std::pair<unsigned int,types::global_dof_index>
   row_index = this->row_indices.global_to_local (row);
   for (unsigned int block_col=0; block_col<n_block_cols(); ++block_col)
     {
@@ -1280,13 +1280,13 @@ BlockSparsityPatternBase<SparsityPatternBase>::add_entries (const unsigned int r
 template <class SparsityPatternBase>
 inline
 bool
-BlockSparsityPatternBase<SparsityPatternBase>::exists (const unsigned int i,
-                                                       const unsigned int j) const
+BlockSparsityPatternBase<SparsityPatternBase>::exists (const types::global_dof_index i,
+                                                       const types::global_dof_index j) const
 {
   // if you get an error here, are
   // you sure you called
   // <tt>collect_sizes()</tt> before?
-  const std::pair<unsigned int,unsigned int>
+  const std::pair<unsigned int,types::global_dof_index>
   row_index = row_indices.global_to_local (i),
   col_index = column_indices.global_to_local (j);
   return sub_objects[row_index.first][col_index.first]->exists (row_index.second,
@@ -1299,9 +1299,9 @@ template <class SparsityPatternBase>
 inline
 unsigned int
 BlockSparsityPatternBase<SparsityPatternBase>::
-row_length (const unsigned int row) const
+row_length (const types::global_dof_index row) const
 {
-  const std::pair<unsigned int,unsigned int>
+  const std::pair<unsigned int,types::global_dof_index>
   row_index = row_indices.global_to_local (row);
 
   unsigned int c = 0;
index 5502e1ba7857c4d05ae7c2e9d9213a931c928abf..5a86446e24d0f4a5e1b99cc33dfa8cc74b21a6bd 100644 (file)
@@ -101,8 +101,8 @@ public:
    *  use blocks of different
    *  sizes.
    */
-  explicit BlockVector (const unsigned int num_blocks = 0,
-                        const unsigned int block_size = 0);
+  explicit BlockVector (const unsigned int            num_blocks = 0,
+                        const types::global_dof_index block_size = 0);
 
   /**
    * Copy-Constructor. Dimension set to
@@ -157,7 +157,7 @@ public:
    * <tt>block_sizes[i]</tt> zero
    * elements.
    */
-  BlockVector (const std::vector<unsigned int> &block_sizes);
+  BlockVector (const std::vector<types::global_dof_index> &block_sizes);
 
   /**
    * Constructor. Initialize vector
@@ -271,7 +271,7 @@ public:
    * is filled with zeros.
    */
   void reinit (const unsigned int num_blocks,
-               const unsigned int block_size = 0,
+               const types::global_dof_index block_size = 0,
                const bool fast = false);
 
   /**
@@ -305,8 +305,8 @@ public:
    * since they may be routed to
    * the wrong block.
    */
-  void reinit (const std::vector<unsigned int> &N,
-               const bool                       fast=false);
+  void reinit (const std::vector<types::global_dof_index> &N,
+               const bool                                 fast=false);
 
   /**
    * Reinitialize the BlockVector
index 5203de26fb534b8693893c75fd82b2b587745771..690077e4c972eafaa887cc30c5836a8ddf949195 100644 (file)
@@ -23,7 +23,7 @@ DEAL_II_NAMESPACE_OPEN
 
 template <typename Number>
 BlockVector<Number>::BlockVector (const unsigned int n_blocks,
-                                  const unsigned int block_size)
+                                  const types::global_dof_index block_size)
 {
   reinit (n_blocks, block_size);
 }
@@ -31,7 +31,7 @@ BlockVector<Number>::BlockVector (const unsigned int n_blocks,
 
 
 template <typename Number>
-BlockVector<Number>::BlockVector (const std::vector<unsigned int> &n)
+BlockVector<Number>::BlockVector (const std::vector<types::global_dof_index> &n)
 {
   reinit (n, false);
 }
@@ -88,18 +88,18 @@ BlockVector<Number>::BlockVector (const TrilinosWrappers::BlockVector &v)
 
 
 template <typename Number>
-void BlockVector<Number>::reinit (const unsigned int n_bl,
-                                  const unsigned int bl_sz,
-                                  const bool         fast)
+void BlockVector<Number>::reinit (const unsigned int            n_bl,
+                                  const types::global_dof_index bl_sz,
+                                  const bool                    fast)
 {
-  std::vector<unsigned int> n(n_bl, bl_sz);
+  std::vector<types::global_dof_index> n(n_bl, bl_sz);
   reinit(n, fast);
 }
 
 
 template <typename Number>
-void BlockVector<Number>::reinit (const std::vector<unsigned int> &n,
-                                  const bool                       fast)
+void BlockVector<Number>::reinit (const std::vector<types::global_dof_index> &n,
+                                  const bool                                 fast)
 {
   this->block_indices.reinit (n);
   if (this->components.size() != this->n_blocks())
index 3d50e964fde89cad6896869415ff4965c4ee554f..1ff8d6da8b9624ef3cf2be9b9cad1fc5c80fb65e 100644 (file)
@@ -354,8 +354,8 @@ namespace internal
        * const or non-const
        * reference.
        */
-      Iterator (BlockVector    &parent,
-                const unsigned int  global_index);
+      Iterator (BlockVector                   &parent,
+                const types::global_dof_index global_index);
 
       /**
        * Copy constructor.
@@ -383,11 +383,11 @@ namespace internal
        * variables.
        */
       Iterator (BlockVector        &parent,
-                const unsigned int  global_index,
-                const unsigned int  current_block,
-                const unsigned int  index_within_block,
-                const unsigned int  next_break_forward,
-                const unsigned int  next_break_backward);
+                const types::global_dof_index  global_index,
+                const unsigned int             current_block,
+                const types::global_dof_index  index_within_block,
+                const types::global_dof_index  next_break_forward,
+                const types::global_dof_index  next_break_backward);
 
     public:
 
@@ -614,7 +614,7 @@ namespace internal
        * element to which we
        * presently point.
        */
-      unsigned int     global_index;
+      types::global_dof_index     global_index;
 
       /**
        * Current block and index
@@ -623,7 +623,7 @@ namespace internal
        * to.
        */
       unsigned int current_block;
-      unsigned int index_within_block;
+      types::global_dof_index index_within_block;
 
       /**
        * Indices of the global
@@ -637,8 +637,8 @@ namespace internal
        * efficient than always
        * asking the parent object.
        */
-      unsigned int next_break_forward;
-      unsigned int next_break_backward;
+      types::global_dof_index next_break_forward;
+      types::global_dof_index next_break_backward;
 
       /**
        * Move forward one element.
@@ -828,7 +828,7 @@ public:
    * is the sum of the dimensions of all
    * components.
    */
-  unsigned int size () const;
+  types::global_dof_index size () const;
 
   /**
    * Return an iterator pointing to
@@ -859,20 +859,20 @@ public:
   /**
    * Access components, returns U(i).
    */
-  value_type operator() (const unsigned int i) const;
+  value_type operator() (const types::global_dof_index i) const;
 
   /**
    * Access components, returns U(i)
    * as a writeable reference.
    */
-  reference operator() (const unsigned int i);
+  reference operator() (const types::global_dof_index i);
 
   /**
    * Access components, returns U(i).
    *
    * Exactly the same as operator().
    */
-  value_type operator[] (const unsigned int i) const;
+  value_type operator[] (const types::global_dof_index i) const;
 
   /**
    * Access components, returns U(i)
@@ -880,7 +880,7 @@ public:
    *
    * Exactly the same as operator().
    */
-  reference operator[] (const unsigned int i);
+  reference operator[] (const types::global_dof_index i);
 
   /**
    * Copy operator: fill all components of
@@ -1008,8 +1008,8 @@ public:
    * indices.
    */
   template <typename Number>
-  void add (const std::vector<unsigned int> &indices,
-            const std::vector<Number>       &values);
+  void add (const std::vector<types::global_dof_index> &indices,
+            const std::vector<Number>                  &values);
 
   /**
    * This is a second collective
@@ -1019,8 +1019,8 @@ public:
    * values.
    */
   template <typename Number>
-  void add (const std::vector<unsigned int> &indices,
-            const Vector<Number>            &values);
+  void add (const std::vector<types::global_dof_index> &indices,
+            const Vector<Number>                       &values);
 
   /**
    * Take an address where
@@ -1032,9 +1032,9 @@ public:
    * functions above.
    */
   template <typename Number>
-  void add (const unsigned int  n_elements,
-            const unsigned int *indices,
-            const Number       *values);
+  void add (const unsigned int            n_elements,
+            const types::global_dof_index *indices,
+            const Number                  *values);
 
   /**
    * $U(0-DIM)+=s$.  Addition of <tt>s</tt>
@@ -1229,11 +1229,11 @@ namespace internal
     inline
     Iterator<BlockVectorType,constness>::
     Iterator (BlockVector        &parent,
-              const unsigned int  global_index,
-              const unsigned int  current_block,
-              const unsigned int  index_within_block,
-              const unsigned int  next_break_forward,
-              const unsigned int  next_break_backward)
+              const types::global_dof_index  global_index,
+              const unsigned int             current_block,
+              const types::global_dof_index  index_within_block,
+              const types::global_dof_index  next_break_forward,
+              const types::global_dof_index  next_break_backward)
       :
       parent (&parent),
       global_index (global_index),
@@ -1637,8 +1637,8 @@ namespace internal
 
     template <class BlockVectorType, bool constness>
     Iterator<BlockVectorType,constness>::
-    Iterator (BlockVector       &parent,
-              const unsigned int global_index)
+    Iterator (BlockVector                   &parent,
+              const types::global_dof_index global_index)
       :
       parent (&parent),
       global_index (global_index)
@@ -1651,7 +1651,7 @@ namespace internal
       // past-the-end
       if (global_index < parent.size())
         {
-          const std::pair<unsigned int, unsigned int>
+          const std::pair<unsigned int, types::global_dof_index>
           indices = parent.block_indices.global_to_local(global_index);
           current_block      = indices.first;
           index_within_block = indices.second;
@@ -1759,7 +1759,7 @@ BlockVectorBase<VectorType>::BlockVectorBase ()
 
 template <class VectorType>
 inline
-unsigned int
+types::global_dof_index
 BlockVectorBase<VectorType>::size () const
 {
   return block_indices.total_size();
@@ -1814,7 +1814,7 @@ inline
 void
 BlockVectorBase<VectorType>::collect_sizes ()
 {
-  std::vector<unsigned int> sizes (n_blocks());
+  std::vector<types::global_dof_index> sizes (n_blocks());
 
   for (unsigned int i=0; i<n_blocks(); ++i)
     sizes[i] = block(i).size();
@@ -2022,8 +2022,8 @@ template <class VectorType>
 template <typename Number>
 inline
 void
-BlockVectorBase<VectorType>::add (const std::vector<unsigned int> &indices,
-                                  const std::vector<Number>       &values)
+BlockVectorBase<VectorType>::add (const std::vector<types::global_dof_index> &indices,
+                                  const std::vector<Number>                  &values)
 {
   Assert (indices.size() == values.size(),
           ExcDimensionMismatch(indices.size(), values.size()));
@@ -2036,8 +2036,8 @@ template <class VectorType>
 template <typename Number>
 inline
 void
-BlockVectorBase<VectorType>::add (const std::vector<unsigned int> &indices,
-                                  const Vector<Number>            &values)
+BlockVectorBase<VectorType>::add (const std::vector<types::global_dof_index> &indices,
+                                  const Vector<Number>                       &values)
 {
   Assert (indices.size() == values.size(),
           ExcDimensionMismatch(indices.size(), values.size()));
@@ -2052,9 +2052,9 @@ template <class VectorType>
 template <typename Number>
 inline
 void
-BlockVectorBase<VectorType>::add (const unsigned int  n_indices,
-                                  const unsigned int *indices,
-                                  const Number       *values)
+BlockVectorBase<VectorType>::add (const unsigned int            n_indices,
+                                  const types::global_dof_index *indices,
+                                  const Number                  *values)
 {
   for (unsigned int i=0; i<n_indices; ++i)
     (*this)(indices[i]) += values[i];
@@ -2408,9 +2408,9 @@ BlockVectorBase<VectorType>::operator /= (const value_type factor)
 template <class VectorType>
 inline
 typename BlockVectorBase<VectorType>::value_type
-BlockVectorBase<VectorType>::operator() (const unsigned int i) const
+BlockVectorBase<VectorType>::operator() (const types::global_dof_index i) const
 {
-  const std::pair<unsigned int,unsigned int> local_index
+  const std::pair<unsigned int,types::global_dof_index> local_index
     = block_indices.global_to_local (i);
   return components[local_index.first](local_index.second);
 }
@@ -2420,9 +2420,9 @@ BlockVectorBase<VectorType>::operator() (const unsigned int i) const
 template <class VectorType>
 inline
 typename BlockVectorBase<VectorType>::reference
-BlockVectorBase<VectorType>::operator() (const unsigned int i)
+BlockVectorBase<VectorType>::operator() (const types::global_dof_index i)
 {
-  const std::pair<unsigned int,unsigned int> local_index
+  const std::pair<unsigned int,types::global_dof_index> local_index
     = block_indices.global_to_local (i);
   return components[local_index.first](local_index.second);
 }
@@ -2432,7 +2432,7 @@ BlockVectorBase<VectorType>::operator() (const unsigned int i)
 template <class VectorType>
 inline
 typename BlockVectorBase<VectorType>::value_type
-BlockVectorBase<VectorType>::operator[] (const unsigned int i) const
+BlockVectorBase<VectorType>::operator[] (const types::global_dof_index i) const
 {
   return operator()(i);
 }
@@ -2442,7 +2442,7 @@ BlockVectorBase<VectorType>::operator[] (const unsigned int i) const
 template <class VectorType>
 inline
 typename BlockVectorBase<VectorType>::reference
-BlockVectorBase<VectorType>::operator[] (const unsigned int i)
+BlockVectorBase<VectorType>::operator[] (const types::global_dof_index i)
 {
   return operator()(i);
 }
index 59cdb14d5bb6cf55a603da22a757a4b107d70e6d..cacc1a5abacbc58de80612433beb01e9ff7e963d 100644 (file)
@@ -290,7 +290,7 @@ public:
    * matrix is of dimension
    * $m \times n$.
    */
-  unsigned int m () const;
+  types::global_dof_index m () const;
 
   /**
    * Return the dimension of the
@@ -298,7 +298,7 @@ public:
    * matrix is of dimension
    * $m \times n$.
    */
-  unsigned int n () const;
+  types::global_dof_index n () const;
 
   /**
    * Return the number of nonzero
@@ -361,8 +361,8 @@ public:
    * is allowed to store zero
    * values in non-existent fields.
    */
-  void set (const unsigned int i,
-            const unsigned int j,
+  void set (const types::global_dof_index i,
+            const types::global_dof_index j,
             const number value);
 
   /**
@@ -374,8 +374,8 @@ public:
    * is allowed to store zero
    * values in non-existent fields.
    */
-  void add (const unsigned int i,
-            const unsigned int j,
+  void add (const types::global_dof_index i,
+            const types::global_dof_index j,
             const number value);
 
   /**
@@ -574,8 +574,8 @@ public:
    * tailored better to a sparse matrix
    * structure.
    */
-  number operator () (const unsigned int i,
-                      const unsigned int j) const;
+  number operator () (const types::global_dof_index i,
+                      const types::global_dof_index j) const;
 
   /**
    * This function is mostly like
@@ -601,8 +601,8 @@ public:
    * tailored better to a sparse matrix
    * structure.
    */
-  number el (const unsigned int i,
-             const unsigned int j) const;
+  number el (const types::global_dof_index i,
+             const types::global_dof_index j) const;
 
   /**
    * Return the main diagonal
@@ -621,14 +621,14 @@ public:
    * involve searching for the
    * right column number.
    */
-  number diag_element (const unsigned int i) const;
+  number diag_element (const types::global_dof_index i) const;
 
   /**
    * Same as above, but return a
    * writeable reference. You're
    * sure you know what you do?
    */
-  number &diag_element (const unsigned int i);
+  number &diag_element (const types::global_dof_index i);
 
 //@}
   /**
@@ -1209,8 +1209,8 @@ private:
    * Return the location of entry
    * $(i,j)$ within the val array.
    */
-  unsigned int compute_location (const unsigned int i,
-                                 const unsigned int j) const;
+  unsigned int compute_location (const types::global_dof_index i,
+                                 const types::global_dof_index j) const;
 
   // make all other sparse matrices
   // friends
@@ -1226,7 +1226,7 @@ private:
 
 template <typename number>
 inline
-unsigned int ChunkSparseMatrix<number>::m () const
+types::global_dof_index ChunkSparseMatrix<number>::m () const
 {
   Assert (cols != 0, ExcNotInitialized());
   return cols->rows;
@@ -1235,7 +1235,7 @@ unsigned int ChunkSparseMatrix<number>::m () const
 
 template <typename number>
 inline
-unsigned int ChunkSparseMatrix<number>::n () const
+types::global_dof_index ChunkSparseMatrix<number>::n () const
 {
   Assert (cols != 0, ExcNotInitialized());
   return cols->cols;
@@ -1246,8 +1246,8 @@ unsigned int ChunkSparseMatrix<number>::n () const
 template <typename number>
 inline
 unsigned int
-ChunkSparseMatrix<number>::compute_location (const unsigned int i,
-                                             const unsigned int j) const
+ChunkSparseMatrix<number>::compute_location (const types::global_dof_index i,
+                                             const types::global_dof_index j) const
 {
   const unsigned int chunk_size = cols->get_chunk_size();
   const unsigned int chunk_index
@@ -1268,8 +1268,8 @@ ChunkSparseMatrix<number>::compute_location (const unsigned int i,
 
 template <typename number>
 inline
-void ChunkSparseMatrix<number>::set (const unsigned int i,
-                                     const unsigned int j,
+void ChunkSparseMatrix<number>::set (const types::global_dof_index i,
+                                     const types::global_dof_index j,
                                      const number value)
 {
 
@@ -1293,8 +1293,8 @@ void ChunkSparseMatrix<number>::set (const unsigned int i,
 
 template <typename number>
 inline
-void ChunkSparseMatrix<number>::add (const unsigned int i,
-                                     const unsigned int j,
+void ChunkSparseMatrix<number>::add (const types::global_dof_index i,
+                                     const types::global_dof_index j,
                                      const number value)
 {
 
@@ -1399,8 +1399,8 @@ ChunkSparseMatrix<number>::operator /= (const number factor)
 
 template <typename number>
 inline
-number ChunkSparseMatrix<number>::operator () (const unsigned int i,
-                                               const unsigned int j) const
+number ChunkSparseMatrix<number>::operator () (const types::global_dof_index i,
+                                               const types::global_dof_index j) const
 {
   Assert (cols != 0, ExcNotInitialized());
   AssertThrow (compute_location(i,j) != SparsityPattern::invalid_entry,
@@ -1412,8 +1412,8 @@ number ChunkSparseMatrix<number>::operator () (const unsigned int i,
 
 template <typename number>
 inline
-number ChunkSparseMatrix<number>::el (const unsigned int i,
-                                      const unsigned int j) const
+number ChunkSparseMatrix<number>::el (const types::global_dof_index i,
+                                      const types::global_dof_index j) const
 {
   Assert (cols != 0, ExcNotInitialized());
   const unsigned int index = compute_location(i,j);
@@ -1428,7 +1428,7 @@ number ChunkSparseMatrix<number>::el (const unsigned int i,
 
 template <typename number>
 inline
-number ChunkSparseMatrix<number>::diag_element (const unsigned int i) const
+number ChunkSparseMatrix<number>::diag_element (const types::global_dof_index i) const
 {
   Assert (cols != 0, ExcNotInitialized());
   Assert (cols->optimize_diagonal(),  ExcNotQuadratic());
@@ -1451,7 +1451,7 @@ number ChunkSparseMatrix<number>::diag_element (const unsigned int i) const
 
 template <typename number>
 inline
-number &ChunkSparseMatrix<number>::diag_element (const unsigned int i)
+number &ChunkSparseMatrix<number>::diag_element (const types::global_dof_index i)
 {
   Assert (cols != 0, ExcNotInitialized());
   Assert (cols->optimize_diagonal(),  ExcNotQuadratic());
index 24115a92386ffbcbb5040a25b681fa348e334e7b..55d89cf4f9c83c77a8e8a3c2cb69bb73da0276fc 100644 (file)
@@ -133,8 +133,8 @@ public:
    * takes effect for quadratic
    * matrices only.
    */
-  ChunkSparsityPattern (const unsigned int m,
-                        const unsigned int n,
+  ChunkSparsityPattern (const types::global_dof_index m,
+                        const types::global_dof_index n,
                         const unsigned int max_chunks_per_row,
                         const unsigned int chunk_size,
                         const bool optimize_diagonal = true);
@@ -157,8 +157,8 @@ public:
    * takes effect for quadratic
    * matrices only.
    */
-  ChunkSparsityPattern (const unsigned int               m,
-                        const unsigned int               n,
+  ChunkSparsityPattern (const types::global_dof_index m,
+                        const types::global_dof_index n,
                         const std::vector<unsigned int> &row_lengths,
                         const unsigned int chunk_size,
                         const bool optimize_diagonal = true);
@@ -176,9 +176,9 @@ public:
    * taking row and column numbers
    * separately.
    */
-  ChunkSparsityPattern (const unsigned int n,
-                        const unsigned int max_per_row,
-                        const unsigned int chunk_size);
+  ChunkSparsityPattern (const types::global_dof_index n,
+                        const unsigned int            max_per_row,
+                        const unsigned int            chunk_size);
 
   /**
    * Initialize a quadratic matrix.
@@ -194,7 +194,7 @@ public:
    * diagonal entries first in row;
    * see optimize_diagonal().
    */
-  ChunkSparsityPattern (const unsigned int               m,
+  ChunkSparsityPattern (const types::global_dof_index    m,
                         const std::vector<unsigned int> &row_lengths,
                         const unsigned int               chunk_size,
                         const bool optimize_diagonal = true);
@@ -225,8 +225,8 @@ public:
    * operations to the other
    * <tt>reinit</tt> function.
    */
-  void reinit (const unsigned int m,
-               const unsigned int n,
+  void reinit (const types::global_dof_index m,
+               const types::global_dof_index n,
                const unsigned int max_per_row,
                const unsigned int chunk_size,
                const bool optimize_diagonal = true);
@@ -256,8 +256,8 @@ public:
    * optimized access in relaxation
    * methods of SparseMatrix.
    */
-  void reinit (const unsigned int               m,
-               const unsigned int               n,
+  void reinit (const types::global_dof_index m,
+               const types::global_dof_index n,
                const std::vector<unsigned int> &row_lengths,
                const unsigned int chunk_size,
                const bool optimize_diagonal = true);
@@ -266,8 +266,8 @@ public:
    * Same as above, but with a
    * VectorSlice argument instead.
    */
-  void reinit (const unsigned int               m,
-               const unsigned int               n,
+  void reinit (const types::global_dof_index m,
+               const types::global_dof_index n,
                const VectorSlice<const std::vector<unsigned int> > &row_lengths,
                const unsigned int chunk_size,
                const bool optimize_diagonal = true);
@@ -433,8 +433,8 @@ public:
    * pairs.
    */
   template <typename ForwardIterator>
-  void copy_from (const unsigned int    n_rows,
-                  const unsigned int    n_cols,
+  void copy_from (const types::global_dof_index n_rows,
+                  const types::global_dof_index n_cols,
                   const ForwardIterator begin,
                   const ForwardIterator end,
                   const unsigned int chunk_size,
@@ -503,8 +503,8 @@ public:
    * If the entry already exists, nothing
    * bad happens.
    */
-  void add (const unsigned int i,
-            const unsigned int j);
+  void add (const types::global_dof_index i,
+            const types::global_dof_index j);
 
   /**
    * Make the sparsity pattern
@@ -524,26 +524,26 @@ public:
    * matrix, which equals the dimension
    * of the image space.
    */
-  inline unsigned int n_rows () const;
+  inline types::global_dof_index n_rows () const;
 
   /**
    * Return number of columns of this
    * matrix, which equals the dimension
    * of the range space.
    */
-  inline unsigned int n_cols () const;
+  inline types::global_dof_index n_cols () const;
 
   /**
    * Check if a value at a certain
    * position may be non-zero.
    */
-  bool exists (const unsigned int i,
-               const unsigned int j) const;
+  bool exists (const types::global_dof_index i,
+               const types::global_dof_index j) const;
 
   /**
    * Number of entries in a specific row.
    */
-  unsigned int row_length (const unsigned int row) const;
+  unsigned int row_length (const types::global_dof_index row) const;
 
   /**
    * Compute the bandwidth of the matrix
@@ -811,13 +811,13 @@ private:
    * Number of rows that this sparsity
    * structure shall represent.
    */
-  unsigned int rows;
+  types::global_dof_index rows;
 
   /**
    * Number of columns that this sparsity
    * structure shall represent.
    */
-  unsigned int cols;
+  types::global_dof_index cols;
 
   /**
    * The size of chunks.
@@ -847,7 +847,7 @@ private:
 
 
 inline
-unsigned int
+types::global_dof_index
 ChunkSparsityPattern::n_rows () const
 {
   return rows;
@@ -855,7 +855,7 @@ ChunkSparsityPattern::n_rows () const
 
 
 inline
-unsigned int
+types::global_dof_index
 ChunkSparsityPattern::n_cols () const
 {
   return cols;
@@ -891,8 +891,8 @@ ChunkSparsityPattern::optimize_diagonal () const
 
 template <typename ForwardIterator>
 void
-ChunkSparsityPattern::copy_from (const unsigned int    n_rows,
-                                 const unsigned int    n_cols,
+ChunkSparsityPattern::copy_from (const types::global_dof_index n_rows,
+                                 const types::global_dof_index n_cols,
                                  const ForwardIterator begin,
                                  const ForwardIterator end,
                                  const unsigned int    chunk_size,
index 5f23cb011cd8d3ba5d3539e32851e675b594789c..7ef7288685715a5f0377b88166d7e62bc113d466 100644 (file)
@@ -150,14 +150,14 @@ public:
    * matrix with @p m rows and
    * @p n columns.
    */
-  CompressedSetSparsityPattern (const unsigned int m,
-                                const unsigned int n);
+  CompressedSetSparsityPattern (const types::global_dof_index m,
+                                const types::global_dof_index n);
 
   /**
    * Initialize a square matrix of
    * dimension @p n.
    */
-  CompressedSetSparsityPattern (const unsigned int n);
+  CompressedSetSparsityPattern (const types::global_dof_index n);
 
   /**
    * Copy operator. For this the
@@ -177,8 +177,8 @@ public:
    * max_entries_per_row() nonzero
    * entries per row.
    */
-  void reinit (const unsigned int m,
-               const unsigned int n);
+  void reinit (const types::global_dof_index m,
+               const types::global_dof_index n);
 
   /**
    * Since this object is kept
@@ -213,8 +213,8 @@ public:
    * matrix. If the entry already
    * exists, nothing bad happens.
    */
-  void add (const unsigned int i,
-            const unsigned int j);
+  void add (const types::global_dof_index i,
+            const types::global_dof_index j);
 
   /**
    * Add several nonzero entries to the
@@ -223,17 +223,17 @@ public:
    * happens.
    */
   template <typename ForwardIterator>
-  void add_entries (const unsigned int row,
-                    ForwardIterator    begin,
-                    ForwardIterator    end,
-                    const bool         indices_are_sorted = false);
+  void add_entries (const types::global_dof_index row,
+                    ForwardIterator               begin,
+                    ForwardIterator               end,
+                    const bool                    indices_are_sorted = false);
 
   /**
    * Check if a value at a certain
    * position may be non-zero.
    */
-  bool exists (const unsigned int i,
-               const unsigned int j) const;
+  bool exists (const types::global_dof_index i,
+               const types::global_dof_index j) const;
 
   /**
    * Make the sparsity pattern
@@ -289,19 +289,19 @@ public:
    * matrix, which equals the dimension
    * of the image space.
    */
-  unsigned int n_rows () const;
+  types::global_dof_index n_rows () const;
 
   /**
    * Return number of columns of this
    * matrix, which equals the dimension
    * of the range space.
    */
-  unsigned int n_cols () const;
+  types::global_dof_index n_cols () const;
 
   /**
    * Number of entries in a specific row.
    */
-  unsigned int row_length (const unsigned int row) const;
+  unsigned int row_length (const types::global_dof_index row) const;
 
   /**
    * Return an iterator that can loop over
@@ -309,12 +309,12 @@ public:
    * row. Dereferencing the iterator yields
    * a column index.
    */
-  row_iterator row_begin (const unsigned int row) const;
+  row_iterator row_begin (const types::global_dof_index row) const;
 
   /**
    * End iterator for the given row.
    */
-  row_iterator row_end (const unsigned int row) const;
+  row_iterator row_end (const types::global_dof_index row) const;
 
 
   /**
@@ -357,13 +357,13 @@ private:
    * Number of rows that this sparsity
    * structure shall represent.
    */
-  unsigned int rows;
+  types::global_dof_index rows;
 
   /**
    * Number of columns that this sparsity
    * structure shall represent.
    */
-  unsigned int cols;
+  types::global_dof_index cols;
 
   /**
    * For each row of the matrix, store the
@@ -385,7 +385,7 @@ private:
      * Add the given column number to
      * this line.
      */
-    void add (const unsigned int col_num);
+    void add (const types::global_dof_index col_num);
 
     /**
      * Add the columns specified by the
@@ -417,7 +417,7 @@ CompressedSetSparsityPattern::Line::Line ()
 
 inline
 void
-CompressedSetSparsityPattern::Line::add (const unsigned int j)
+CompressedSetSparsityPattern::Line::add (const types::global_dof_index j)
 {
   entries.insert (j);
 }
@@ -436,7 +436,7 @@ CompressedSetSparsityPattern::Line::add_entries (ForwardIterator begin,
 
 
 inline
-unsigned int
+types::global_dof_index
 CompressedSetSparsityPattern::n_rows () const
 {
   return rows;
@@ -445,7 +445,7 @@ CompressedSetSparsityPattern::n_rows () const
 
 
 inline
-unsigned int
+types::global_dof_index
 CompressedSetSparsityPattern::n_cols () const
 {
   return cols;
@@ -455,8 +455,8 @@ CompressedSetSparsityPattern::n_cols () const
 
 inline
 void
-CompressedSetSparsityPattern::add (const unsigned int i,
-                                   const unsigned int j)
+CompressedSetSparsityPattern::add (const types::global_dof_index i,
+                                   const types::global_dof_index j)
 {
   Assert (i<rows, ExcIndexRange(i, 0, rows));
   Assert (j<cols, ExcIndexRange(j, 0, cols));
@@ -469,7 +469,7 @@ CompressedSetSparsityPattern::add (const unsigned int i,
 template <typename ForwardIterator>
 inline
 void
-CompressedSetSparsityPattern::add_entries (const unsigned int row,
+CompressedSetSparsityPattern::add_entries (const types::global_dof_index row,
                                            ForwardIterator begin,
                                            ForwardIterator end,
                                            const bool         /*indices_are_sorted*/)
@@ -483,7 +483,7 @@ CompressedSetSparsityPattern::add_entries (const unsigned int row,
 
 inline
 unsigned int
-CompressedSetSparsityPattern::row_length (const unsigned int row) const
+CompressedSetSparsityPattern::row_length (const types::global_dof_index row) const
 {
   Assert (row < n_rows(), ExcIndexRange (row, 0, n_rows()));
 
@@ -494,7 +494,7 @@ CompressedSetSparsityPattern::row_length (const unsigned int row) const
 
 inline
 CompressedSetSparsityPattern::row_iterator
-CompressedSetSparsityPattern::row_begin (const unsigned int row) const
+CompressedSetSparsityPattern::row_begin (const types::global_dof_index row) const
 {
   return (lines[row].entries.begin ());
 }
@@ -503,7 +503,7 @@ CompressedSetSparsityPattern::row_begin (const unsigned int row) const
 
 inline
 CompressedSetSparsityPattern::row_iterator
-CompressedSetSparsityPattern::row_end (const unsigned int row) const
+CompressedSetSparsityPattern::row_end (const types::global_dof_index row) const
 {
   return (lines[row].entries.end ());
 }
index 09a9bffa7abbabf6b2b66d532a33f5de1633417b..78209fde07e5459fba30f6651f157af2b6a8e3cc 100644 (file)
@@ -136,15 +136,15 @@ public:
    * default argument keeps all
    * entries.
    */
-  CompressedSimpleSparsityPattern (const unsigned int m,
-                                   const unsigned int n,
+  CompressedSimpleSparsityPattern (const types::global_dof_index m,
+                                   const types::global_dof_index n,
                                    const IndexSet &rowset = IndexSet());
 
   /**
    * Initialize a square matrix of
    * dimension @p n.
    */
-  CompressedSimpleSparsityPattern (const unsigned int n);
+  CompressedSimpleSparsityPattern (const types::global_dof_index n);
 
   /**
    * Copy operator. For this the
@@ -170,8 +170,8 @@ public:
    * default argument keeps all
    * entries.
    */
-  void reinit (const unsigned int m,
-               const unsigned int n,
+  void reinit (const types::global_dof_index m,
+               const types::global_dof_index n,
                const IndexSet &rowset = IndexSet());
 
   /**
@@ -207,8 +207,8 @@ public:
    * matrix. If the entry already
    * exists, nothing bad happens.
    */
-  void add (const unsigned int i,
-            const unsigned int j);
+  void add (const types::global_dof_index i,
+            const types::global_dof_index j);
 
   /**
    * Add several nonzero entries to the
@@ -217,17 +217,17 @@ public:
    * happens.
    */
   template <typename ForwardIterator>
-  void add_entries (const unsigned int row,
-                    ForwardIterator    begin,
-                    ForwardIterator    end,
-                    const bool         indices_are_unique_and_sorted = false);
+  void add_entries (const types::global_dof_index row,
+                    ForwardIterator               begin,
+                    ForwardIterator               end,
+                    const bool                    indices_are_unique_and_sorted = false);
 
   /**
    * Check if a value at a certain
    * position may be non-zero.
    */
-  bool exists (const unsigned int i,
-               const unsigned int j) const;
+  bool exists (const types::global_dof_index i,
+               const types::global_dof_index j) const;
 
   /**
    * Make the sparsity pattern
@@ -283,14 +283,14 @@ public:
    * matrix, which equals the dimension
    * of the image space.
    */
-  unsigned int n_rows () const;
+  types::global_dof_index n_rows () const;
 
   /**
    * Return number of columns of this
    * matrix, which equals the dimension
    * of the range space.
    */
-  unsigned int n_cols () const;
+  types::global_dof_index n_cols () const;
 
   /**
    * Number of entries in a
@@ -300,15 +300,15 @@ public:
    * index set of rows that we want
    * to store.
    */
-  unsigned int row_length (const unsigned int row) const;
+  unsigned int row_length (const types::global_dof_index row) const;
 
   /**
    * Access to column number field.
    * Return the column number of
    * the @p indexth entry in @p row.
    */
-  unsigned int column_number (const unsigned int row,
-                              const unsigned int index) const;
+  unsigned int column_number (const types::global_dof_index row,
+                              const types::global_dof_index index) const;
 
   /**
    * Return an iterator that can loop over
@@ -316,12 +316,12 @@ public:
    * row. Dereferencing the iterator yields
    * a column index.
    */
-  row_iterator row_begin (const unsigned int row) const;
+  row_iterator row_begin (const types::global_dof_index row) const;
 
   /**
    * Returns the end of the current row.
    */
-  row_iterator row_end (const unsigned int row) const;
+  row_iterator row_end (const types::global_dof_index row) const;
   /**
    * Compute the bandwidth of the matrix
    * represented by this structure. The
@@ -377,13 +377,13 @@ private:
    * Number of rows that this sparsity
    * structure shall represent.
    */
-  unsigned int rows;
+  types::global_dof_index rows;
 
   /**
    * Number of columns that this sparsity
    * structure shall represent.
    */
-  unsigned int cols;
+  types::global_dof_index cols;
 
   /**
    * A set that contains the valid rows.
@@ -420,7 +420,7 @@ private:
      * Add the given column number to
      * this line.
      */
-    void add (const unsigned int col_num);
+    void add (const types::global_dof_index col_num);
 
     /**
      * Add the columns specified by the
@@ -452,7 +452,7 @@ private:
 
 inline
 void
-CompressedSimpleSparsityPattern::Line::add (const unsigned int j)
+CompressedSimpleSparsityPattern::Line::add (const types::global_dof_index j)
 {
   // first check the last element (or if line
   // is still empty)
@@ -483,7 +483,7 @@ CompressedSimpleSparsityPattern::Line::add (const unsigned int j)
 
 
 inline
-unsigned int
+types::global_dof_index
 CompressedSimpleSparsityPattern::n_rows () const
 {
   return rows;
@@ -492,7 +492,7 @@ CompressedSimpleSparsityPattern::n_rows () const
 
 
 inline
-unsigned int
+types::global_dof_index
 CompressedSimpleSparsityPattern::n_cols () const
 {
   return cols;
@@ -502,8 +502,8 @@ CompressedSimpleSparsityPattern::n_cols () const
 
 inline
 void
-CompressedSimpleSparsityPattern::add (const unsigned int i,
-                                      const unsigned int j)
+CompressedSimpleSparsityPattern::add (const types::global_dof_index i,
+                                      const types::global_dof_index j)
 {
   Assert (i<rows, ExcIndexRange(i, 0, rows));
   Assert (j<cols, ExcIndexRange(j, 0, cols));
@@ -521,7 +521,7 @@ CompressedSimpleSparsityPattern::add (const unsigned int i,
 template <typename ForwardIterator>
 inline
 void
-CompressedSimpleSparsityPattern::add_entries (const unsigned int row,
+CompressedSimpleSparsityPattern::add_entries (const types::global_dof_index row,
                                               ForwardIterator begin,
                                               ForwardIterator end,
                                               const bool      indices_are_sorted)
@@ -546,7 +546,7 @@ CompressedSimpleSparsityPattern::Line::Line ()
 
 inline
 unsigned int
-CompressedSimpleSparsityPattern::row_length (const unsigned int row) const
+CompressedSimpleSparsityPattern::row_length (const types::global_dof_index row) const
 {
   Assert (row < n_rows(), ExcIndexRange (row, 0, n_rows()));
   if (rowset.size() > 0 && !rowset.is_element(row))
@@ -561,8 +561,8 @@ CompressedSimpleSparsityPattern::row_length (const unsigned int row) const
 
 inline
 unsigned int
-CompressedSimpleSparsityPattern::column_number (const unsigned int row,
-                                                const unsigned int index) const
+CompressedSimpleSparsityPattern::column_number (const types::global_dof_index row,
+                                                const types::global_dof_index index) const
 {
   Assert (row < n_rows(), ExcIndexRange (row, 0, n_rows()));
   Assert( rowset.size() == 0 || rowset.is_element(row), ExcInternalError());
@@ -577,7 +577,7 @@ CompressedSimpleSparsityPattern::column_number (const unsigned int row,
 
 inline
 CompressedSimpleSparsityPattern::row_iterator
-CompressedSimpleSparsityPattern::row_begin (const unsigned int row) const
+CompressedSimpleSparsityPattern::row_begin (const types::global_dof_index row) const
 {
   Assert (row < n_rows(), ExcIndexRange (row, 0, n_rows()));
   const unsigned int local_row = rowset.size() ? rowset.index_within_set(row) : row;
@@ -588,7 +588,7 @@ CompressedSimpleSparsityPattern::row_begin (const unsigned int row) const
 
 inline
 CompressedSimpleSparsityPattern::row_iterator
-CompressedSimpleSparsityPattern::row_end (const unsigned int row) const
+CompressedSimpleSparsityPattern::row_end (const types::global_dof_index row) const
 {
   Assert (row < n_rows(), ExcIndexRange (row, 0, n_rows()));
   const unsigned int local_row = rowset.size() ? rowset.index_within_set(row) : row;
index ffb6333054893c9fa9eba539230affe26e4d53b7..d0bbf926d86951644accd93a900d050d02643afe 100644 (file)
@@ -131,14 +131,14 @@ public:
    * matrix with @p m rows and
    * @p n columns.
    */
-  CompressedSparsityPattern (const unsigned int m,
-                             const unsigned int n);
+  CompressedSparsityPattern (const types::global_dof_index m,
+                             const types::global_dof_index n);
 
   /**
    * Initialize a square matrix of
    * dimension @p n.
    */
-  CompressedSparsityPattern (const unsigned int n);
+  CompressedSparsityPattern (const types::global_dof_index n);
 
   /**
    * Copy operator. For this the
@@ -158,8 +158,8 @@ public:
    * max_entries_per_row() nonzero
    * entries per row.
    */
-  void reinit (const unsigned int m,
-               const unsigned int n);
+  void reinit (const types::global_dof_index m,
+               const types::global_dof_index n);
 
   /**
    * Since this object is kept
@@ -194,8 +194,8 @@ public:
    * matrix. If the entry already
    * exists, nothing bad happens.
    */
-  void add (const unsigned int i,
-            const unsigned int j);
+  void add (const types::global_dof_index i,
+            const types::global_dof_index j);
 
   /**
    * Add several nonzero entries to the
@@ -204,17 +204,17 @@ public:
    * happens.
    */
   template <typename ForwardIterator>
-  void add_entries (const unsigned int row,
-                    ForwardIterator    begin,
-                    ForwardIterator    end,
-                    const bool         indices_are_unique_and_sorted = false);
+  void add_entries (const types::global_dof_index row,
+                    ForwardIterator               begin,
+                    ForwardIterator               end,
+                    const bool                    indices_are_unique_and_sorted = false);
 
   /**
    * Check if a value at a certain
    * position may be non-zero.
    */
-  bool exists (const unsigned int i,
-               const unsigned int j) const;
+  bool exists (const types::global_dof_index i,
+               const types::global_dof_index j) const;
 
   /**
    * Make the sparsity pattern
@@ -270,27 +270,27 @@ public:
    * matrix, which equals the dimension
    * of the image space.
    */
-  unsigned int n_rows () const;
+  types::global_dof_index n_rows () const;
 
   /**
    * Return number of columns of this
    * matrix, which equals the dimension
    * of the range space.
    */
-  unsigned int n_cols () const;
+  types::global_dof_index n_cols () const;
 
   /**
    * Number of entries in a specific row.
    */
-  unsigned int row_length (const unsigned int row) const;
+  unsigned int row_length (const types::global_dof_index row) const;
 
   /**
    * Access to column number field.
    * Return the column number of
    * the @p indexth entry in @p row.
    */
-  unsigned int column_number (const unsigned int row,
-                              const unsigned int index) const;
+  unsigned int column_number (const types::global_dof_index row,
+                              const unsigned int            index) const;
 
   /**
    * Return an iterator that can loop over
@@ -298,12 +298,12 @@ public:
    * row. Dereferencing the iterator yields
    * a column index.
    */
-  row_iterator row_begin (const unsigned int row) const;
+  row_iterator row_begin (const types::global_dof_index row) const;
 
   /**
    * Returns the end of the current row.
    */
-  row_iterator row_end (const unsigned int row) const;
+  row_iterator row_end (const types::global_dof_index row) const;
 
   /**
    * Compute the bandwidth of the matrix
@@ -345,13 +345,13 @@ private:
    * Number of rows that this sparsity
    * structure shall represent.
    */
-  unsigned int rows;
+  types::global_dof_index rows;
 
   /**
    * Number of columns that this sparsity
    * structure shall represent.
    */
-  unsigned int cols;
+  types::global_dof_index cols;
 
   /**
    * Store some data for each row
@@ -447,7 +447,7 @@ private:
      * Add the given column number to
      * this line.
      */
-    void add (const unsigned int col_num);
+    void add (const types::global_dof_index col_num);
 
     /**
      * Add the columns specified by the
@@ -480,7 +480,7 @@ private:
 
 inline
 void
-CompressedSparsityPattern::Line::add (const unsigned int j)
+CompressedSparsityPattern::Line::add (const types::global_dof_index j)
 {
   // first check whether this entry is
   // already in the cache. if so, we can
@@ -502,7 +502,7 @@ CompressedSparsityPattern::Line::add (const unsigned int j)
 
 
 inline
-unsigned int
+types::global_dof_index
 CompressedSparsityPattern::n_rows () const
 {
   return rows;
@@ -511,7 +511,7 @@ CompressedSparsityPattern::n_rows () const
 
 
 inline
-unsigned int
+types::global_dof_index
 CompressedSparsityPattern::n_cols () const
 {
   return cols;
@@ -521,8 +521,8 @@ CompressedSparsityPattern::n_cols () const
 
 inline
 void
-CompressedSparsityPattern::add (const unsigned int i,
-                                const unsigned int j)
+CompressedSparsityPattern::add (const types::global_dof_index i,
+                                const types::global_dof_index j)
 {
   Assert (i<rows, ExcIndexRange(i, 0, rows));
   Assert (j<cols, ExcIndexRange(j, 0, cols));
@@ -535,7 +535,7 @@ CompressedSparsityPattern::add (const unsigned int i,
 template <typename ForwardIterator>
 inline
 void
-CompressedSparsityPattern::add_entries (const unsigned int row,
+CompressedSparsityPattern::add_entries (const types::global_dof_index row,
                                         ForwardIterator begin,
                                         ForwardIterator end,
                                         const bool      indices_are_sorted)
@@ -557,7 +557,7 @@ CompressedSparsityPattern::Line::Line ()
 
 inline
 unsigned int
-CompressedSparsityPattern::row_length (const unsigned int row) const
+CompressedSparsityPattern::row_length (const types::global_dof_index row) const
 {
   Assert (row < n_rows(), ExcIndexRange (row, 0, n_rows()));
 
@@ -570,8 +570,8 @@ CompressedSparsityPattern::row_length (const unsigned int row) const
 
 inline
 unsigned int
-CompressedSparsityPattern::column_number (const unsigned int row,
-                                          const unsigned int index) const
+CompressedSparsityPattern::column_number (const types::global_dof_index row,
+                                          const unsigned int            index) const
 {
   Assert (row < n_rows(), ExcIndexRange (row, 0, n_rows()));
   Assert (index < lines[row].entries.size(),
@@ -586,7 +586,7 @@ CompressedSparsityPattern::column_number (const unsigned int row,
 
 inline
 CompressedSparsityPattern::row_iterator
-CompressedSparsityPattern::row_begin (const unsigned int row) const
+CompressedSparsityPattern::row_begin (const types::global_dof_index row) const
 {
   Assert (row < n_rows(), ExcIndexRange (row, 0, n_rows()));
 
@@ -599,7 +599,7 @@ CompressedSparsityPattern::row_begin (const unsigned int row) const
 
 inline
 CompressedSparsityPattern::row_iterator
-CompressedSparsityPattern::row_end (const unsigned int row) const
+CompressedSparsityPattern::row_end (const types::global_dof_index row) const
 {
   Assert (row < n_rows(), ExcIndexRange (row, 0, n_rows()));
   return lines[row].entries.end();
index bf539e6b23f127e451d5c1797d802dc8b9d9d62a..3f7f3eb56cb75c378d6f9ba9fa71caf5053c9fe5 100644 (file)
@@ -54,8 +54,8 @@ namespace internals
 
 
 //TODO[WB]: We should have a function of the kind
-//   ConstraintMatrix::add_constraint (const unsigned int constrained_dof,
-//                const std::vector<std::pair<unsigned int, double> > &entries,
+//   ConstraintMatrix::add_constraint (const types::global_dof_index constrained_dof,
+//                const std::vector<std::pair<types::global_dof_index, double> > &entries,
 //                const double inhomogeneity = 0);
 // rather than building up constraints piecemeal through add_line/add_entry
 // etc. This would also eliminate the possibility of accidentally changing
@@ -221,7 +221,7 @@ public:
    * line. Always returns true if not in
    * the distributed case.
    */
-  bool can_store_line (const unsigned int line_index) const;
+  bool can_store_line (const types::global_dof_index line_index) const;
 
   /**
    * This function copies the content of @p
@@ -271,7 +271,7 @@ public:
    * line already exists, then the function
    * simply returns without doing anything.
    */
-  void add_line (const unsigned int line);
+  void add_line (const types::global_dof_index line);
 
   /**
    * Call the first add_line() function for
@@ -315,7 +315,7 @@ public:
    * inhomogeneities using
    * set_inhomogeneity().
    */
-  void add_lines (const std::set<unsigned int> &lines);
+  void add_lines (const std::set<types::global_dof_index> &lines);
 
   /**
    * Call the first add_line() function for
@@ -360,8 +360,8 @@ public:
    * same. Thus, it does no harm to
    * enter a constraint twice.
    */
-  void add_entry (const unsigned int line,
-                  const unsigned int column,
+  void add_entry (const types::global_dof_index line,
+                  const types::global_dof_index column,
                   const double value);
 
   /**
@@ -373,8 +373,8 @@ public:
    * function several times, but is
    * faster.
    */
-  void add_entries (const unsigned int                                  line,
-                    const std::vector<std::pair<unsigned int,double> > &col_val_pairs);
+  void add_entries (const types::global_dof_index                                  line,
+                    const std::vector<std::pair<types::global_dof_index,double> > &col_val_pairs);
 
   /**
    * Set an imhomogeneity to the
@@ -385,7 +385,7 @@ public:
    * @note the line needs to be added with
    * one of the add_line() calls first.
    */
-  void set_inhomogeneity (const unsigned int line,
+  void set_inhomogeneity (const types::global_dof_index line,
                           const double       value);
 
   /**
@@ -471,7 +471,7 @@ public:
    * finally merge() them together
    * again.
    */
-  void shift (const unsigned int offset);
+  void shift (const types::global_dof_index offset);
 
   /**
    * Clear all entries of this
@@ -515,7 +515,7 @@ public:
    * called, we have to perform a linear
    * search through all entries.
    */
-  bool is_constrained (const unsigned int index) const;
+  bool is_constrained (const types::global_dof_index index) const;
 
   /**
    * Return whether the dof is
@@ -536,7 +536,7 @@ public:
    * freedom but with a weight different
    * from one.
    */
-  bool is_identity_constrained (const unsigned int index) const;
+  bool is_identity_constrained (const types::global_dof_index index) const;
 
   /**
    * Return the maximum number of other
@@ -563,7 +563,7 @@ public:
    * non-trivial inhomogeneous valeus set
    * to the dof.
    */
-  bool is_inhomogeneously_constrained (const unsigned int index) const;
+  bool is_inhomogeneously_constrained (const types::global_dof_index index) const;
 
   /**
    * Returns <tt>false</tt> if all
@@ -580,8 +580,8 @@ public:
    * zero pointer in case the dof is not
    * constrained.
    */
-  const std::vector<std::pair<unsigned int,double> > *
-  get_constraint_entries (const unsigned int line) const;
+  const std::vector<std::pair<types::global_dof_index,double> > *
+  get_constraint_entries (const types::global_dof_index line) const;
 
   /**
    * Returns the value of the inhomogeneity
@@ -589,7 +589,7 @@ public:
    * line. Unconstrained dofs also return a
    * zero value.
    */
-  double get_inhomogeneity (const unsigned int line) const;
+  double get_inhomogeneity (const types::global_dof_index line) const;
 
   /**
    * Print the constraint lines. Mainly
@@ -986,7 +986,7 @@ public:
   template <class InVector, class OutVector>
   void
   distribute_local_to_global (const InVector                  &local_vector,
-                              const std::vector<unsigned int> &local_dof_indices,
+                              const std::vector<types::global_dof_index> &local_dof_indices,
                               OutVector                       &global_vector) const;
 
   /**
@@ -1063,7 +1063,7 @@ public:
   template <typename VectorType>
   void
   distribute_local_to_global (const Vector<double>            &local_vector,
-                              const std::vector<unsigned int> &local_dof_indices,
+                              const std::vector<types::global_dof_index> &local_dof_indices,
                               VectorType                      &global_vector,
                               const FullMatrix<double>        &local_matrix) const;
 
@@ -1196,7 +1196,7 @@ public:
   template <typename MatrixType>
   void
   distribute_local_to_global (const FullMatrix<double>        &local_matrix,
-                              const std::vector<unsigned int> &local_dof_indices,
+                              const std::vector<types::global_dof_index> &local_dof_indices,
                               MatrixType                      &global_matrix) const;
 
   /**
@@ -1207,8 +1207,8 @@ public:
   template <typename MatrixType>
   void
   distribute_local_to_global (const FullMatrix<double>        &local_matrix,
-                              const std::vector<unsigned int> &row_indices,
-                              const std::vector<unsigned int> &col_indices,
+                              const std::vector<types::global_dof_index> &row_indices,
+                              const std::vector<types::global_dof_index> &col_indices,
                               MatrixType                      &global_matrix) const;
 
   /**
@@ -1233,7 +1233,7 @@ public:
   void
   distribute_local_to_global (const FullMatrix<double>        &local_matrix,
                               const Vector<double>            &local_vector,
-                              const std::vector<unsigned int> &local_dof_indices,
+                              const std::vector<types::global_dof_index> &local_dof_indices,
                               MatrixType                      &global_matrix,
                               VectorType                      &global_vector,
                               bool                            use_inhomogeneities_for_rhs = false) const;
@@ -1319,7 +1319,7 @@ public:
    */
   template <typename SparsityType>
   void
-  add_entries_local_to_global (const std::vector<unsigned int> &local_dof_indices,
+  add_entries_local_to_global (const std::vector<types::global_dof_index> &local_dof_indices,
                                SparsityType                    &sparsity_pattern,
                                const bool                       keep_constrained_entries = true,
                                const Table<2,bool>             &dof_mask = default_empty_table) const;
@@ -1332,8 +1332,8 @@ public:
 
   template <typename SparsityType>
   void
-  add_entries_local_to_global (const std::vector<unsigned int> &row_indices,
-                               const std::vector<unsigned int> &col_indices,
+  add_entries_local_to_global (const std::vector<types::global_dof_index> &row_indices,
+                               const std::vector<types::global_dof_index> &col_indices,
                                SparsityType                    &sparsity_pattern,
                                const bool                       keep_constrained_entries = true,
                                const Table<2,bool>             &dof_mask = default_empty_table) const;
@@ -1451,7 +1451,7 @@ public:
    * @ingroup Exceptions
    */
   DeclException1 (ExcLineInexistant,
-                  unsigned int,
+                  types::global_dof_index,
                   << "The specified line " << arg1
                   << " does not exist.");
   /**
@@ -1520,7 +1520,7 @@ private:
      * of entries that make up the homogenous
      * part of a constraint.
      */
-    typedef std::vector<std::pair<unsigned int,double> > Entries;
+    typedef std::vector<std::pair<types::global_dof_index,double> > Entries;
 
     /**
      * Number of this line. Since only
@@ -1529,7 +1529,7 @@ private:
      * and have to store the line
      * number explicitly.
      */
-    unsigned int line;
+    types::global_dof_index line;
 
     /**
      * Row numbers and values of the
@@ -1658,7 +1658,7 @@ private:
    * contributions into vectors and
    * matrices.
    */
-  std::vector<unsigned int> lines_cache;
+  std::vector<types::global_dof_index> lines_cache;
 
   /**
    * This IndexSet is used to limit the
@@ -1681,7 +1681,7 @@ private:
    * index of line @p line in the vector
    * lines_cache using local_lines.
    */
-  unsigned int calculate_line_index (const unsigned int line) const;
+  unsigned int calculate_line_index (const types::global_dof_index line) const;
 
   /**
    * Return @p true if the weight of an
@@ -1690,7 +1690,7 @@ private:
    * used to delete entries with zero
    * weight.
    */
-  static bool check_zero_weight (const std::pair<unsigned int, double> &p);
+  static bool check_zero_weight (const std::pair<types::global_dof_index, double> &p);
 
   /**
    * Dummy table that serves as default
@@ -1708,7 +1708,7 @@ private:
   void
   distribute_local_to_global (const FullMatrix<double>        &local_matrix,
                               const Vector<double>            &local_vector,
-                              const std::vector<unsigned int> &local_dof_indices,
+                              const std::vector<types::global_dof_index> &local_dof_indices,
                               MatrixType                      &global_matrix,
                               VectorType                      &global_vector,
                               bool                            use_inhomogeneities_for_rhs,
@@ -1723,7 +1723,7 @@ private:
   void
   distribute_local_to_global (const FullMatrix<double>        &local_matrix,
                               const Vector<double>            &local_vector,
-                              const std::vector<unsigned int> &local_dof_indices,
+                              const std::vector<types::global_dof_index> &local_dof_indices,
                               MatrixType                      &global_matrix,
                               VectorType                      &global_vector,
                               bool                            use_inhomogeneities_for_rhs,
@@ -1736,7 +1736,7 @@ private:
    */
   template <typename SparsityType>
   void
-  add_entries_local_to_global (const std::vector<unsigned int> &local_dof_indices,
+  add_entries_local_to_global (const std::vector<types::global_dof_index> &local_dof_indices,
                                SparsityType                    &sparsity_pattern,
                                const bool                       keep_constrained_entries,
                                const Table<2,bool>             &dof_mask,
@@ -1749,7 +1749,7 @@ private:
    */
   template <typename SparsityType>
   void
-  add_entries_local_to_global (const std::vector<unsigned int> &local_dof_indices,
+  add_entries_local_to_global (const std::vector<types::global_dof_index> &local_dof_indices,
                                SparsityType                    &sparsity_pattern,
                                const bool                       keep_constrained_entries,
                                const Table<2,bool>             &dof_mask,
@@ -1766,7 +1766,7 @@ private:
    * row indices.
    */
   void
-  make_sorted_row_list (const std::vector<unsigned int> &local_dof_indices,
+  make_sorted_row_list (const std::vector<types::global_dof_index> &local_dof_indices,
                         internals::GlobalRowsFromLocal &global_rows) const;
 
   /**
@@ -1780,18 +1780,18 @@ private:
    * function.
    */
   void
-  make_sorted_row_list (const std::vector<unsigned int> &local_dof_indices,
-                        std::vector<unsigned int>       &active_dofs) const;
+  make_sorted_row_list (const std::vector<types::global_dof_index> &local_dof_indices,
+                        std::vector<types::global_dof_index>       &active_dofs) const;
 
   /**
    * Internal helper function for
    * distribute_local_to_global function.
    */
   double
-  resolve_vector_entry (const unsigned int                    i,
+  resolve_vector_entry (const types::global_dof_index                    i,
                         const internals::GlobalRowsFromLocal &global_rows,
                         const Vector<double>                 &local_vector,
-                        const std::vector<unsigned int>      &local_dof_indices,
+                        const std::vector<types::global_dof_index>      &local_dof_indices,
                         const FullMatrix<double>             &local_matrix) const;
 };
 
@@ -1822,7 +1822,7 @@ ConstraintMatrix::ConstraintMatrix (const ConstraintMatrix &constraint_matrix)
 
 inline
 void
-ConstraintMatrix::add_line (const unsigned int line)
+ConstraintMatrix::add_line (const types::global_dof_index line)
 {
   Assert (sorted==false, ExcMatrixIsClosed());
 
@@ -1864,8 +1864,8 @@ ConstraintMatrix::add_line (const unsigned int line)
 
 inline
 void
-ConstraintMatrix::add_entry (const unsigned int line,
-                             const unsigned int column,
+ConstraintMatrix::add_entry (const types::global_dof_index line,
+                             const types::global_dof_index column,
                              const double       value)
 {
   Assert (sorted==false, ExcMatrixIsClosed());
@@ -1901,7 +1901,7 @@ ConstraintMatrix::add_entry (const unsigned int line,
 
 inline
 void
-ConstraintMatrix::set_inhomogeneity (const unsigned int line,
+ConstraintMatrix::set_inhomogeneity (const types::global_dof_index line,
                                      const double       value)
 {
   const unsigned int line_index = calculate_line_index(line);
@@ -1926,7 +1926,7 @@ ConstraintMatrix::n_constraints () const
 
 inline
 bool
-ConstraintMatrix::is_constrained (const unsigned int index) const
+ConstraintMatrix::is_constrained (const types::global_dof_index index) const
 {
   const unsigned int line_index = calculate_line_index(index);
   return ((line_index < lines_cache.size())
@@ -1938,7 +1938,7 @@ ConstraintMatrix::is_constrained (const unsigned int index) const
 
 inline
 bool
-ConstraintMatrix::is_inhomogeneously_constrained (const unsigned int index) const
+ConstraintMatrix::is_inhomogeneously_constrained (const types::global_dof_index index) const
 {
   // check whether the entry is
   // constrained. could use is_constrained, but
@@ -1957,8 +1957,8 @@ ConstraintMatrix::is_inhomogeneously_constrained (const unsigned int index) cons
 
 
 inline
-const std::vector<std::pair<unsigned int,double> > *
-ConstraintMatrix::get_constraint_entries (unsigned int line) const
+const std::vector<std::pair<types::global_dof_index,double> > *
+ConstraintMatrix::get_constraint_entries (const types::global_dof_index line) const
 {
   // check whether the entry is
   // constrained. could use is_constrained, but
@@ -1975,7 +1975,7 @@ ConstraintMatrix::get_constraint_entries (unsigned int line) const
 
 inline
 double
-ConstraintMatrix::get_inhomogeneity (const unsigned int line) const
+ConstraintMatrix::get_inhomogeneity (const types::global_dof_index line) const
 {
   // check whether the entry is
   // constrained. could use is_constrained, but
@@ -1991,7 +1991,7 @@ ConstraintMatrix::get_inhomogeneity (const unsigned int line) const
 
 
 inline unsigned int
-ConstraintMatrix::calculate_line_index (const unsigned int line) const
+ConstraintMatrix::calculate_line_index (const types::global_dof_index line) const
 {
   //IndexSet is unused (serial case)
   if (!local_lines.size())
@@ -2006,7 +2006,7 @@ ConstraintMatrix::calculate_line_index (const unsigned int line) const
 
 
 inline bool
-ConstraintMatrix::can_store_line (unsigned int line_index) const
+ConstraintMatrix::can_store_line (types::global_dof_index line_index) const
 {
   return !local_lines.size() || local_lines.is_element(line_index);
 }
@@ -2016,7 +2016,7 @@ ConstraintMatrix::can_store_line (unsigned int line_index) const
 template <class VectorType>
 inline
 void ConstraintMatrix::distribute_local_to_global (
-  const unsigned int index,
+  const types::global_dof_index index,
   const double       value,
   VectorType        &global_vector) const
 {
@@ -2112,7 +2112,7 @@ inline
 void
 ConstraintMatrix::
 distribute_local_to_global (const FullMatrix<double>        &local_matrix,
-                            const std::vector<unsigned int> &local_dof_indices,
+                            const std::vector<types::global_dof_index> &local_dof_indices,
                             MatrixType                      &global_matrix) const
 {
   // create a dummy and hand on to the
@@ -2132,7 +2132,7 @@ void
 ConstraintMatrix::
 distribute_local_to_global (const FullMatrix<double>        &local_matrix,
                             const Vector<double>            &local_vector,
-                            const std::vector<unsigned int> &local_dof_indices,
+                            const std::vector<types::global_dof_index> &local_dof_indices,
                             MatrixType                      &global_matrix,
                             VectorType                      &global_vector,
                             bool                            use_inhomogeneities_for_rhs) const
@@ -2152,7 +2152,7 @@ template <typename SparsityType>
 inline
 void
 ConstraintMatrix::
-add_entries_local_to_global (const std::vector<unsigned int> &local_dof_indices,
+add_entries_local_to_global (const std::vector<types::global_dof_index> &local_dof_indices,
                              SparsityType                    &sparsity_pattern,
                              const bool                       keep_constrained_entries,
                              const Table<2,bool>             &dof_mask) const
index 56154db94943aabda16a2ea335e1382e502d0539..a66f8b7459a843e4b073932249a818a4a2ed1b24 100644 (file)
@@ -396,7 +396,7 @@ ConstraintMatrix::condense (SparseMatrix<number> &uncondensed,
                entry = uncondensed.begin(row);
                entry != uncondensed.end(row); ++entry)
             {
-              const unsigned int column = entry->column();
+              const types::global_dof_index column = entry->column();
 
               // end of row reached?
               // this should not
@@ -442,7 +442,7 @@ ConstraintMatrix::condense (SparseMatrix<number> &uncondensed,
                entry = uncondensed.begin(row);
                entry != uncondensed.end(row); ++entry)
             {
-              const unsigned int column = entry->column();
+              const types::global_dof_index column = entry->column();
 
               // end of row reached?
               // this should not
index 90c7fccdabb9a907fc3f8f56580f7891f3d4344f..4fc5dcb36aa8d0ae3ba87f63335595d74392086e 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $Name$
 //
-//    Copyright (C) 2011-2012 by the deal.II authors
+//    Copyright (C) 2011-2013 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -69,13 +69,13 @@ namespace internal
       /**
        * Returns a pointer to the first index in the DoF row @p row.
        */
-      const unsigned int *begin_indices (const unsigned int row) const;
+      const types::global_dof_index *begin_indices (const unsigned int row) const;
 
       /**
        * Returns a pointer to the one past the last DoF index in the row @p
        * row.
        */
-      const unsigned int *end_indices (const unsigned int row) const;
+      const types::global_dof_index *end_indices (const unsigned int row) const;
 
       /**
        * Returns the number of entries in the indices field for the given row.
@@ -106,13 +106,13 @@ namespace internal
        * Returns a pointer to the first index in the DoF row @p row for plain
        * indices (i.e., the entries where constraints are not embedded).
        */
-      const unsigned int *begin_indices_plain (const unsigned int row) const;
+      const types::global_dof_index *begin_indices_plain (const unsigned int row) const;
 
       /**
        * Returns a pointer to the one past the last DoF index in the row @p
        * row (i.e., the entries where constraints are not embedded).
        */
-      const unsigned int *end_indices_plain (const unsigned int row) const;
+      const types::global_dof_index *end_indices_plain (const unsigned int row) const;
 
       /**
        * Returns the FE index for a given finite element degree. If not in hp
@@ -265,7 +265,7 @@ namespace internal
       /**
        * Renumbers the degrees of freedom to give good access for this class.
        */
-      void renumber_dofs (std::vector<unsigned int> &renumbering);
+      void renumber_dofs (std::vector<types::global_dof_index> &renumbering);
 
       /**
        * Returns the memory consumption in bytes of this class.
@@ -304,14 +304,14 @@ namespace internal
           unsigned int> > row_starts;
 
       /**
-       * Stores the indices of the degrees of freedom for each cell. This
+       * Stores the (global) indices of the degrees of freedom for each cell. This
        * array also includes the indirect contributions from constraints,
        * which are described by the @p constraint_indicator field. Because of
        * variable lengths of rows, this would be a vector of a
        * vector. However, we use one contiguous memory region and store the
        * rowstart in the variable @p row_starts.
        */
-      std::vector<unsigned int> dof_indices;
+      std::vector<types::global_dof_index> dof_indices;
 
       /**
        * This variable describes the position of constraints in terms of the
@@ -336,13 +336,13 @@ namespace internal
        * This stores a (sorted) list of all locally owned degrees of freedom
        * that are constrained.
        */
-      std::vector<unsigned int> constrained_dofs;
+      std::vector<types::global_dof_index> constrained_dofs;
 
       /**
        * Stores the rowstart indices of the compressed row storage in the @p
-       * dof_indices_plain fields.
+       * plain_dof_indices fields.
        */
-      std::vector<unsigned int> row_starts_plain_indices;
+      std::vector<types::global_dof_index> row_starts_plain_indices;
 
       /**
        * Stores the indices of the degrees of freedom for each cell. This
@@ -352,7 +352,7 @@ namespace internal
        * contiguous memory region and store the rowstart in the variable @p
        * row_starts_plain_indices.
        */
-      std::vector<unsigned int> plain_dof_indices;
+      std::vector<types::global_dof_index> plain_dof_indices;
 
       /**
        * Stores the number of components in the DoFHandler where the indices
@@ -398,7 +398,7 @@ namespace internal
        * calling @p assign_ghosts. Then, all information is collected by the
        * partitioner.
        */
-      std::vector<unsigned int> ghost_dofs;
+      std::vector<types::global_dof_index> ghost_dofs;
     };
 
 
@@ -407,7 +407,7 @@ namespace internal
 #ifndef DOXYGEN
 
     inline
-    const unsigned int *
+      const types::global_dof_index *
     DoFInfo::begin_indices (const unsigned int row) const
     {
       AssertIndexRange (row, row_starts.size()-1);
@@ -419,7 +419,7 @@ namespace internal
 
 
     inline
-    const unsigned int *
+      const types::global_dof_index *
     DoFInfo::end_indices (const unsigned int row) const
     {
       AssertIndexRange (row, row_starts.size()-1);
index 2430dcecdb386efb36376fbc97a1d57b175538f2..5d5e090204a8635e3f9112f251d64211e39363dd 100644 (file)
@@ -27,8 +27,8 @@ namespace internal
 
     struct ConstraintComparator
     {
-      bool operator()(const std::pair<unsigned int,double> &p1,
-                      const std::pair<unsigned int,double> &p2) const
+      bool operator()(const std::pair<types::global_dof_index,double> &p1,
+                      const std::pair<types::global_dof_index,double> &p2) const
       {
         return p1.second < p2.second;
       }
@@ -51,12 +51,13 @@ namespace internal
        * access later on.
        */
       unsigned short
-      insert_entries (const std::vector<std::pair<unsigned int,double> > &entries);
+      insert_entries (const std::vector<std::pair<types::global_dof_index,double> > &entries);
 
-      std::vector<std::pair<unsigned int, double> > constraint_entries;
-      std::vector<unsigned int> constraint_indices;
-      std::pair<std::vector<Number>,unsigned int> next_constraint;
-      std::map<std::vector<Number>,unsigned int,FPArrayComparator<double> > constraints;
+      std::vector<std::pair<types::global_dof_index, double> > constraint_entries;
+      std::vector<types::global_dof_index> constraint_indices;
+
+      std::pair<std::vector<Number>, types::global_dof_index> next_constraint;
+      std::map<std::vector<Number>, types::global_dof_index, FPArrayComparator<double> > constraints;
     };
 
 
@@ -69,7 +70,7 @@ namespace internal
     template <typename Number>
     unsigned short
     ConstraintValues<Number>::
-    insert_entries (const std::vector<std::pair<unsigned int,double> > &entries)
+      insert_entries (const std::vector<std::pair<types::global_dof_index,double> > &entries)
     {
       next_constraint.first.resize(entries.size());
       if (entries.size() > 0)
@@ -165,7 +166,7 @@ namespace internal
 
 
     void
-    DoFInfo::read_dof_indices (const std::vector<unsigned int> &local_indices,
+      DoFInfo::read_dof_indices (const std::vector<types::global_dof_index> &local_indices,
                                const std::vector<unsigned int> &lexicographic_inv,
                                const ConstraintMatrix          &constraints,
                                const unsigned int               cell_number,
@@ -174,8 +175,8 @@ namespace internal
     {
       Assert (vector_partitioner.get() !=0, ExcInternalError());
       const unsigned int n_mpi_procs = vector_partitioner->n_mpi_processes();
-      const unsigned int first_owned = vector_partitioner->local_range().first;
-      const unsigned int last_owned  = vector_partitioner->local_range().second;
+      const types::global_dof_index first_owned = vector_partitioner->local_range().first;
+      const types::global_dof_index last_owned  = vector_partitioner->local_range().second;
       const unsigned int n_owned     = last_owned - first_owned;
       std::pair<unsigned short,unsigned short> constraint_iterator (0,0);
 
@@ -183,7 +184,7 @@ namespace internal
                                     dofs_per_cell[0] : dofs_per_cell[cell_active_fe_index[cell_number]];
       for (unsigned int i=0; i<dofs_this_cell; i++)
         {
-          unsigned int current_dof =
+         types::global_dof_index current_dof =
             local_indices[lexicographic_inv[i]];
           const std::vector<std::pair<unsigned int,double> >
           *entries_ptr =
index 76fef0934ebecb749c7e42bcb8df1f8e46e15531..0f6f3242fbb9ec3fcd7c2d2f5c18036dc1879a1f 100644 (file)
@@ -154,7 +154,7 @@ namespace MeshWorker
        */
       void assemble(VECTOR &global,
                     const BlockVector<double> &local,
-                    const std::vector<unsigned int> &dof);
+                    const std::vector<types::global_dof_index> &dof);
 
       /**
        * The global matrices,
@@ -270,10 +270,10 @@ namespace MeshWorker
       void assemble(
         MatrixBlock<MATRIX> &global,
         const FullMatrix<number> &local,
-        unsigned int block_row,
-        unsigned int block_col,
-        const std::vector<unsigned int> &dof1,
-        const std::vector<unsigned int> &dof2);
+        const unsigned int block_row,
+        const unsigned int block_col,
+        const std::vector<types::global_dof_index> &dof1,
+        const std::vector<types::global_dof_index> &dof2);
 
       /**
        * The global matrices,
@@ -428,12 +428,12 @@ namespace MeshWorker
       void assemble(
         MATRIX &global,
         const FullMatrix<number> &local,
-        unsigned int block_row,
-        unsigned int block_col,
-        const std::vector<unsigned int> &dof1,
-        const std::vector<unsigned int> &dof2,
-        unsigned int level1,
-        unsigned int level2,
+        const unsigned int block_row,
+        const unsigned int block_col,
+        const std::vector<types::global_dof_index> &dof1,
+        const std::vector<types::global_dof_index> &dof2,
+        const unsigned int level1,
+        const unsigned int level2,
         bool transpose = false);
 
       /**
@@ -443,12 +443,12 @@ namespace MeshWorker
       void assemble_fluxes(
         MATRIX &global,
         const FullMatrix<number> &local,
-        unsigned int block_row,
-        unsigned int block_col,
-        const std::vector<unsigned int> &dof1,
-        const std::vector<unsigned int> &dof2,
-        unsigned int level1,
-        unsigned int level2);
+        const unsigned int block_row,
+        const unsigned int block_col,
+        const std::vector<types::global_dof_index> &dof1,
+        const std::vector<types::global_dof_index> &dof2,
+        const unsigned int level1,
+        const unsigned int level2);
 
       /**
        * Assemble a single local
@@ -457,12 +457,12 @@ namespace MeshWorker
       void assemble_up(
         MATRIX &global,
         const FullMatrix<number> &local,
-        unsigned int block_row,
-        unsigned int block_col,
-        const std::vector<unsigned int> &dof1,
-        const std::vector<unsigned int> &dof2,
-        unsigned int level1,
-        unsigned int level2);
+        const unsigned int block_row,
+        const unsigned int block_col,
+        const std::vector<types::global_dof_index> &dof1,
+        const std::vector<types::global_dof_index> &dof2,
+        const unsigned int level1,
+        const unsigned int level2);
 
       /**
        * Assemble a single local
@@ -471,12 +471,12 @@ namespace MeshWorker
       void assemble_down(
         MATRIX &global,
         const FullMatrix<number> &local,
-        unsigned int block_row,
-        unsigned int block_col,
-        const std::vector<unsigned int> &dof1,
-        const std::vector<unsigned int> &dof2,
-        unsigned int level1,
-        unsigned int level2);
+        const unsigned int block_row,
+        const unsigned int block_col,
+        const std::vector<types::global_dof_index> &dof1,
+        const std::vector<types::global_dof_index> &dof2,
+        const unsigned int level1,
+        const unsigned int level2);
 
       /**
        * Assemble a single local
@@ -485,12 +485,12 @@ namespace MeshWorker
       void assemble_in(
         MATRIX &global,
         const FullMatrix<number> &local,
-        unsigned int block_row,
-        unsigned int block_col,
-        const std::vector<unsigned int> &dof1,
-        const std::vector<unsigned int> &dof2,
-        unsigned int level1,
-        unsigned int level2);
+        const unsigned int block_row,
+        const unsigned int block_col,
+        const std::vector<types::global_dof_index> &dof1,
+        const std::vector<types::global_dof_index> &dof2,
+        const unsigned int level1,
+        const unsigned int level2);
 
       /**
        * Assemble a single local
@@ -499,12 +499,12 @@ namespace MeshWorker
       void assemble_out(
         MATRIX &global,
         const FullMatrix<number> &local,
-        unsigned int block_row,
-        unsigned int block_col,
-        const std::vector<unsigned int> &dof1,
-        const std::vector<unsigned int> &dof2,
-        unsigned int level1,
-        unsigned int level2);
+        const unsigned int block_row,
+        const unsigned int block_col,
+        const std::vector<types::global_dof_index> &dof1,
+        const std::vector<types::global_dof_index> &dof2,
+        const unsigned int level1,
+        const unsigned int level2);
 
       /**
        * The level matrices,
@@ -599,7 +599,7 @@ namespace MeshWorker
     ResidualLocalBlocksToGlobalBlocks<VECTOR>::assemble(
       VECTOR &global,
       const BlockVector<double> &local,
-      const std::vector<unsigned int> &dof)
+      const std::vector<types::global_dof_index> &dof)
     {
       if (constraints == 0)
         {
@@ -699,10 +699,10 @@ namespace MeshWorker
     MatrixLocalBlocksToGlobalBlocks<MATRIX, number>::assemble(
       MatrixBlock<MATRIX> &global,
       const FullMatrix<number> &local,
-      unsigned int block_row,
-      unsigned int block_col,
-      const std::vector<unsigned int> &dof1,
-      const std::vector<unsigned int> &dof2)
+      const unsigned int block_row,
+      const unsigned int block_col,
+      const std::vector<types::global_dof_index> &dof1,
+      const std::vector<types::global_dof_index> &dof2)
     {
       if (constraints == 0)
         {
@@ -727,11 +727,11 @@ namespace MeshWorker
       else
         {
           const BlockIndices &bi = this->block_info->local();
-          std::vector<unsigned int> sliced_row_indices (bi.block_size(block_row));
+          std::vector<types::global_dof_index> sliced_row_indices (bi.block_size(block_row));
           for (unsigned int i=0; i<sliced_row_indices.size(); ++i)
             sliced_row_indices[i] = dof1[bi.block_start(block_row)+i];
 
-          std::vector<unsigned int> sliced_col_indices (bi.block_size(block_col));
+          std::vector<types::global_dof_index> sliced_col_indices (bi.block_size(block_col));
           for (unsigned int i=0; i<sliced_col_indices.size(); ++i)
             sliced_col_indices[i] = dof2[bi.block_start(block_col)+i];
 
@@ -751,8 +751,8 @@ namespace MeshWorker
         {
           // Row and column index of
           // the block we are dealing with
-          const unsigned int row = matrices->block(i).row;
-          const unsigned int col = matrices->block(i).column;
+          const types::global_dof_index row = matrices->block(i).row;
+          const types::global_dof_index col = matrices->block(i).column;
 
           assemble(matrices->block(i), info.matrix(i,false).matrix, row, col, info.indices, info.indices);
         }
@@ -770,8 +770,8 @@ namespace MeshWorker
         {
           // Row and column index of
           // the block we are dealing with
-          const unsigned int row = matrices->block(i).row;
-          const unsigned int col = matrices->block(i).column;
+          const types::global_dof_index row = matrices->block(i).row;
+          const types::global_dof_index col = matrices->block(i).column;
 
           assemble(matrices->block(i), info1.matrix(i,false).matrix, row, col, info1.indices, info1.indices);
           assemble(matrices->block(i), info1.matrix(i,true).matrix, row, col, info1.indices, info2.indices);
@@ -852,12 +852,12 @@ namespace MeshWorker
     MGMatrixLocalBlocksToGlobalBlocks<MATRIX, number>::assemble(
       MATRIX &global,
       const FullMatrix<number> &local,
-      unsigned int block_row,
-      unsigned int block_col,
-      const std::vector<unsigned int> &dof1,
-      const std::vector<unsigned int> &dof2,
-      unsigned int level1,
-      unsigned int level2,
+      const unsigned int block_row,
+      const unsigned int block_col,
+      const std::vector<types::global_dof_index> &dof1,
+      const std::vector<types::global_dof_index> &dof2,
+      const unsigned int level1,
+      const unsigned int level2,
       bool transpose)
     {
       for (unsigned int j=0; j<local.n_rows(); ++j)
@@ -931,12 +931,12 @@ namespace MeshWorker
     MGMatrixLocalBlocksToGlobalBlocks<MATRIX, number>::assemble_fluxes(
       MATRIX &global,
       const FullMatrix<number> &local,
-      unsigned int block_row,
-      unsigned int block_col,
-      const std::vector<unsigned int> &dof1,
-      const std::vector<unsigned int> &dof2,
-      unsigned int level1,
-      unsigned int level2)
+      const unsigned int block_row,
+      const unsigned int block_col,
+      const std::vector<types::global_dof_index> &dof1,
+      const std::vector<types::global_dof_index> &dof2,
+      const unsigned int level1,
+      const unsigned int level2)
     {
       for (unsigned int j=0; j<local.n_rows(); ++j)
         for (unsigned int k=0; k<local.n_cols(); ++k)
@@ -984,12 +984,12 @@ namespace MeshWorker
     MGMatrixLocalBlocksToGlobalBlocks<MATRIX, number>::assemble_up(
       MATRIX &global,
       const FullMatrix<number> &local,
-      unsigned int block_row,
-      unsigned int block_col,
-      const std::vector<unsigned int> &dof1,
-      const std::vector<unsigned int> &dof2,
-      unsigned int level1,
-      unsigned int level2)
+      const unsigned int block_row,
+      const unsigned int block_col,
+      const std::vector<types::global_dof_index> &dof1,
+      const std::vector<types::global_dof_index> &dof2,
+      const unsigned int level1,
+      const unsigned int level2)
     {
       for (unsigned int j=0; j<local.n_rows(); ++j)
         for (unsigned int k=0; k<local.n_cols(); ++k)
@@ -1037,12 +1037,12 @@ namespace MeshWorker
     MGMatrixLocalBlocksToGlobalBlocks<MATRIX, number>::assemble_down(
       MATRIX &global,
       const FullMatrix<number> &local,
-      unsigned int block_row,
-      unsigned int block_col,
-      const std::vector<unsigned int> &dof1,
-      const std::vector<unsigned int> &dof2,
-      unsigned int level1,
-      unsigned int level2)
+      const unsigned int block_row,
+      const unsigned int block_col,
+      const std::vector<types::global_dof_index> &dof1,
+      const std::vector<types::global_dof_index> &dof2,
+      const unsigned int level1,
+      const unsigned int level2)
     {
       for (unsigned int j=0; j<local.n_rows(); ++j)
         for (unsigned int k=0; k<local.n_cols(); ++k)
@@ -1090,12 +1090,12 @@ namespace MeshWorker
     MGMatrixLocalBlocksToGlobalBlocks<MATRIX, number>::assemble_in(
       MATRIX &global,
       const FullMatrix<number> &local,
-      unsigned int block_row,
-      unsigned int block_col,
-      const std::vector<unsigned int> &dof1,
-      const std::vector<unsigned int> &dof2,
-      unsigned int level1,
-      unsigned int level2)
+      const unsigned int block_row,
+      const unsigned int block_col,
+      const std::vector<types::global_dof_index> &dof1,
+      const std::vector<types::global_dof_index> &dof2,
+      const unsigned int level1,
+      const unsigned int level2)
     {
 //      AssertDimension(local.n(), dof1.size());
 //      AssertDimension(local.m(), dof2.size());
@@ -1155,12 +1155,12 @@ namespace MeshWorker
     MGMatrixLocalBlocksToGlobalBlocks<MATRIX, number>::assemble_out(
       MATRIX &global,
       const FullMatrix<number> &local,
-      unsigned int block_row,
-      unsigned int block_col,
-      const std::vector<unsigned int> &dof1,
-      const std::vector<unsigned int> &dof2,
-      unsigned int level1,
-      unsigned int level2)
+      const unsigned int block_row,
+      const unsigned int block_col,
+      const std::vector<types::global_dof_index> &dof1,
+      const std::vector<types::global_dof_index> &dof2,
+      const unsigned int level1,
+      const unsigned int level2)
     {
 //      AssertDimension(local.n(), dof1.size());
 //      AssertDimension(local.m(), dof2.size());
index cf8543169b46b38125f569e5b0a9df32fd50b586..504d178970f46a1e912b1b88c994f1a85b2628f2 100644 (file)
@@ -1,7 +1,7 @@
 //---------------------------------------------------------------------------
 //    $Id$
 //
-//    Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012 by the deal.II authors
+//    Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -97,14 +97,14 @@ namespace MeshWorker
      * The DoF indices of the
      * current cell
      */
-    std::vector<unsigned int> indices;
+    std::vector<types::global_dof_index> indices;
 
     /**
      * The DoF indices on the
      * current cell, organized by
      * local blocks
      */
-    std::vector<std::vector<unsigned int> > indices_by_block;
+    std::vector<std::vector<types::global_dof_index> > indices_by_block;
 
     /**
      * Constructor setting the
@@ -136,7 +136,7 @@ namespace MeshWorker
     template <class DHCellIterator, class DHFaceIterator>
     void reinit(const DHCellIterator &c,
                 const DHFaceIterator &f,
-                const unsigned int n);
+                const unsigned int face_no);
 
     /**
      * Set the current subface
@@ -146,8 +146,8 @@ namespace MeshWorker
     template <class DHCellIterator, class DHFaceIterator>
     void reinit(const DHCellIterator &c,
                 const DHFaceIterator &f,
-                const unsigned int n,
-                const unsigned int s);
+                const unsigned int face_no,
+                const unsigned int subface_no);
 
     /**
      * Switch to a new face of the
@@ -157,7 +157,7 @@ namespace MeshWorker
      */
     template <class DHFaceIterator>
     void set_face (const DHFaceIterator &f,
-                   const unsigned int n);
+                   const unsigned int face_no);
     /**
      * Switch to a new subface of the
      * same cell. Does not change
@@ -166,8 +166,8 @@ namespace MeshWorker
      */
     template <class DHFaceIterator>
     void set_subface (const DHFaceIterator &f,
-                      const unsigned int n,
-                      const unsigned int s);
+                      const unsigned int face_no,
+                      const unsigned int subface_no);
 
     const BlockIndices &local_indices() const;
 
@@ -198,7 +198,7 @@ namespace MeshWorker
     //void get_indices(const typename MGDoFHandler<dim, spacedim>::cell_iterator& c);
 
     /// Auxiliary vector
-    std::vector<unsigned int> indices_org;
+    std::vector<types::global_dof_index> indices_org;
 
     /**
      * An auxiliary local
@@ -344,10 +344,10 @@ namespace MeshWorker
   inline void
   DoFInfo<dim,spacedim,number>::set_face(
     const DHFaceIterator &f,
-    unsigned int n)
+    const unsigned int face_no)
   {
     face = static_cast<typename Triangulation<dim>::face_iterator> (f);
-    face_number = n;
+    face_number = face_no;
     sub_number = deal_II_numbers::invalid_unsigned_int;
   }
 
@@ -358,7 +358,7 @@ namespace MeshWorker
   DoFInfo<dim,spacedim,number>::reinit(
     const DHCellIterator &c,
     const DHFaceIterator &f,
-    unsigned int n)
+    const unsigned int face_no)
   {
     if ((cell.state() != IteratorState::valid)
         ||  cell != static_cast<typename Triangulation<dim>::cell_iterator> (c))
@@ -366,7 +366,7 @@ namespace MeshWorker
     level_cell = c->is_level_cell();
 
     cell = static_cast<typename Triangulation<dim>::cell_iterator> (c);
-    set_face(f,n);
+    set_face(f,face_no);
 
     if (block_info)
       LocalResults<number>::reinit(block_info->local());
@@ -380,12 +380,12 @@ namespace MeshWorker
   inline void
   DoFInfo<dim,spacedim,number>::set_subface(
     const DHFaceIterator &f,
-    unsigned int n,
-    unsigned int s)
+    const unsigned int face_no,
+    const unsigned int subface_no)
   {
     face = static_cast<typename Triangulation<dim>::face_iterator> (f);
-    face_number = n;
-    sub_number = s;
+    face_number = face_no;
+    sub_number = subface_no;
   }
 
 
@@ -395,8 +395,8 @@ namespace MeshWorker
   DoFInfo<dim,spacedim,number>::reinit(
     const DHCellIterator &c,
     const DHFaceIterator &f,
-    unsigned int n,
-    unsigned int s)
+    const unsigned int face_no,
+    const unsigned int subface_no)
   {
     if (cell.state() != IteratorState::valid
         || cell != static_cast<typename Triangulation<dim>::cell_iterator> (c))
@@ -404,7 +404,7 @@ namespace MeshWorker
     level_cell = c->is_level_cell();
 
     cell = static_cast<typename Triangulation<dim>::cell_iterator> (c);
-    set_subface(f,n,s);
+    set_subface(f, face_no, subface_no);
 
     if (block_info)
       LocalResults<number>::reinit(block_info->local());
index de6fc83ebf012b93d42c68ee9c09c70f07b7ccc0..89d62e159ce56522daca5d5c1c08797df1250106 100644 (file)
@@ -237,8 +237,8 @@ namespace MeshWorker
        * into #matrix.
        */
       void assemble(const FullMatrix<double> &M,
-                    const std::vector<unsigned int> &i1,
-                    const std::vector<unsigned int> &i2);
+                    const std::vector<types::global_dof_index> &i1,
+                    const std::vector<types::global_dof_index> &i2);
 
       /**
        * The global matrix being
@@ -402,8 +402,8 @@ namespace MeshWorker
        */
       void assemble(MATRIX &G,
                     const FullMatrix<double> &M,
-                    const std::vector<unsigned int> &i1,
-                    const std::vector<unsigned int> &i2);
+                    const std::vector<types::global_dof_index> &i1,
+                    const std::vector<types::global_dof_index> &i2);
 
       /**
        * Assemble a single matrix
@@ -411,8 +411,8 @@ namespace MeshWorker
        */
       void assemble(MATRIX &G,
                     const FullMatrix<double> &M,
-                    const std::vector<unsigned int> &i1,
-                    const std::vector<unsigned int> &i2,
+                    const std::vector<types::global_dof_index> &i1,
+                    const std::vector<types::global_dof_index> &i2,
                     const unsigned int level);
 
       /**
@@ -422,8 +422,8 @@ namespace MeshWorker
 
       void assemble_up(MATRIX &G,
                        const FullMatrix<double> &M,
-                       const std::vector<unsigned int> &i1,
-                       const std::vector<unsigned int> &i2,
+                       const std::vector<types::global_dof_index> &i1,
+                       const std::vector<types::global_dof_index> &i2,
                        const unsigned int level = numbers::invalid_unsigned_int);
       /**
        * Assemble a single matrix
@@ -432,8 +432,8 @@ namespace MeshWorker
 
       void assemble_down(MATRIX &G,
                          const FullMatrix<double> &M,
-                         const std::vector<unsigned int> &i1,
-                         const std::vector<unsigned int> &i2,
+                         const std::vector<types::global_dof_index> &i1,
+                         const std::vector<types::global_dof_index> &i2,
                          const unsigned int level = numbers::invalid_unsigned_int);
 
       /**
@@ -443,8 +443,8 @@ namespace MeshWorker
 
       void assemble_in(MATRIX &G,
                        const FullMatrix<double> &M,
-                       const std::vector<unsigned int> &i1,
-                       const std::vector<unsigned int> &i2,
+                       const std::vector<types::global_dof_index> &i1,
+                       const std::vector<types::global_dof_index> &i2,
                        const unsigned int level = numbers::invalid_unsigned_int);
 
       /**
@@ -454,8 +454,8 @@ namespace MeshWorker
 
       void assemble_out(MATRIX &G,
                         const FullMatrix<double> &M,
-                        const std::vector<unsigned int> &i1,
-                        const std::vector<unsigned int> &i2,
+                        const std::vector<types::global_dof_index> &i1,
+                        const std::vector<types::global_dof_index> &i2,
                         const unsigned int level = numbers::invalid_unsigned_int);
 
       /**
@@ -728,8 +728,8 @@ namespace MeshWorker
     template <class MATRIX>
     inline void
     MatrixSimple<MATRIX>::assemble(const FullMatrix<double> &M,
-                                   const std::vector<unsigned int> &i1,
-                                   const std::vector<unsigned int> &i2)
+                                   const std::vector<types::global_dof_index> &i1,
+                                   const std::vector<types::global_dof_index> &i2)
     {
       AssertDimension(M.m(), i1.size());
       AssertDimension(M.n(), i2.size());
@@ -885,8 +885,8 @@ namespace MeshWorker
     MGMatrixSimple<MATRIX>::assemble(
       MATRIX &G,
       const FullMatrix<double> &M,
-      const std::vector<unsigned int> &i1,
-      const std::vector<unsigned int> &i2)
+      const std::vector<types::global_dof_index> &i1,
+      const std::vector<types::global_dof_index> &i2)
     {
       AssertDimension(M.m(), i1.size());
       AssertDimension(M.n(), i2.size());
@@ -916,8 +916,8 @@ namespace MeshWorker
     MGMatrixSimple<MATRIX>::assemble(
       MATRIX &G,
       const FullMatrix<double> &M,
-      const std::vector<unsigned int> &i1,
-      const std::vector<unsigned int> &i2,
+      const std::vector<types::global_dof_index> &i1,
+      const std::vector<types::global_dof_index> &i2,
       const unsigned int level)
     {
       AssertDimension(M.m(), i1.size());
@@ -969,8 +969,8 @@ namespace MeshWorker
     MGMatrixSimple<MATRIX>::assemble_up(
       MATRIX &G,
       const FullMatrix<double> &M,
-      const std::vector<unsigned int> &i1,
-      const std::vector<unsigned int> &i2,
+      const std::vector<types::global_dof_index> &i1,
+      const std::vector<types::global_dof_index> &i2,
       const unsigned int level)
     {
       AssertDimension(M.n(), i1.size());
@@ -999,8 +999,8 @@ namespace MeshWorker
     MGMatrixSimple<MATRIX>::assemble_down(
       MATRIX &G,
       const FullMatrix<double> &M,
-      const std::vector<unsigned int> &i1,
-      const std::vector<unsigned int> &i2,
+      const std::vector<types::global_dof_index> &i1,
+      const std::vector<types::global_dof_index> &i2,
       const unsigned int level)
     {
       AssertDimension(M.m(), i1.size());
@@ -1029,8 +1029,8 @@ namespace MeshWorker
     MGMatrixSimple<MATRIX>::assemble_in(
       MATRIX &G,
       const FullMatrix<double> &M,
-      const std::vector<unsigned int> &i1,
-      const std::vector<unsigned int> &i2,
+      const std::vector<types::global_dof_index> &i1,
+      const std::vector<types::global_dof_index> &i2,
       const unsigned int level)
     {
       AssertDimension(M.m(), i1.size());
@@ -1072,8 +1072,8 @@ namespace MeshWorker
     MGMatrixSimple<MATRIX>::assemble_out(
       MATRIX &G,
       const FullMatrix<double> &M,
-      const std::vector<unsigned int> &i1,
-      const std::vector<unsigned int> &i2,
+      const std::vector<types::global_dof_index> &i1,
+      const std::vector<types::global_dof_index> &i2,
       const unsigned int level)
     {
       AssertDimension(M.n(), i1.size());
index a34eec00b157d08ffeebd603141724d7e34054a5..e5221e99b78a686a35d6178da51ce0124b29d42d 100644 (file)
@@ -367,7 +367,7 @@ namespace MatrixCreator
                                     SparseMatrix<double>     &matrix,
                                     const typename FunctionMap<spacedim>::type &boundary_functions,
                                     Vector<double>           &rhs_vector,
-                                    std::vector<unsigned int> &dof_to_boundary_mapping,
+                                    std::vector<types::global_dof_index> &dof_to_boundary_mapping,
                                     const Function<spacedim> *const weight = 0,
                                     std::vector<unsigned int> component_mapping = std::vector<unsigned int>());
 
@@ -380,7 +380,7 @@ namespace MatrixCreator
 //                                    SparseMatrix<double>   &matrix,
 //                                    const FunctionMap<1>::type &boundary_functions,
 //                                    Vector<double>         &rhs_vector,
-//                                    std::vector<unsigned int>&dof_to_boundary_mapping,
+//                                    std::vector<types::global_dof_index>&dof_to_boundary_mapping,
 //                                    const Function<1> * const a = 0);
 // //codimension 1
 //
@@ -390,7 +390,7 @@ namespace MatrixCreator
 //                                    SparseMatrix<double>   &matrix,
 //                                    const FunctionMap<2>::type &boundary_functions,
 //                                    Vector<double>         &rhs_vector,
-//                                    std::vector<unsigned int>&dof_to_boundary_mapping,
+//                                    std::vector<types::global_dof_index>&dof_to_boundary_mapping,
 //                                    const Function<2> * const a = 0);
 
 
@@ -408,7 +408,7 @@ namespace MatrixCreator
                                     SparseMatrix<double>     &matrix,
                                     const typename FunctionMap<spacedim>::type        &boundary_functions,
                                     Vector<double>           &rhs_vector,
-                                    std::vector<unsigned int> &dof_to_boundary_mapping,
+                                    std::vector<types::global_dof_index> &dof_to_boundary_mapping,
                                     const Function<spacedim> *const a = 0,
                                     std::vector<unsigned int> component_mapping = std::vector<unsigned int>());
 
@@ -424,7 +424,7 @@ namespace MatrixCreator
                                     SparseMatrix<double>     &matrix,
                                     const typename FunctionMap<spacedim>::type &boundary_functions,
                                     Vector<double>           &rhs_vector,
-                                    std::vector<unsigned int> &dof_to_boundary_mapping,
+                                    std::vector<types::global_dof_index> &dof_to_boundary_mapping,
                                     const Function<spacedim> *const a = 0,
                                     std::vector<unsigned int> component_mapping = std::vector<unsigned int>());
 
@@ -439,7 +439,7 @@ namespace MatrixCreator
 //                                    SparseMatrix<double>   &matrix,
 //                                    const FunctionMap<1>::type &boundary_functions,
 //                                    Vector<double>         &rhs_vector,
-//                                    std::vector<unsigned int>&dof_to_boundary_mapping,
+//                                    std::vector<types::global_dof_index>&dof_to_boundary_mapping,
 //                                    const Function<1> * const a = 0);
 
   /**
@@ -453,7 +453,7 @@ namespace MatrixCreator
                                     SparseMatrix<double>     &matrix,
                                     const typename FunctionMap<spacedim>::type        &boundary_functions,
                                     Vector<double>           &rhs_vector,
-                                    std::vector<unsigned int> &dof_to_boundary_mapping,
+                                    std::vector<types::global_dof_index> &dof_to_boundary_mapping,
                                     const Function<spacedim> *const a = 0,
                                     std::vector<unsigned int> component_mapping = std::vector<unsigned int>());
 
@@ -805,7 +805,7 @@ namespace MatrixTools
    */
   template <typename number>
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          SparseMatrix<number> &matrix,
                          Vector<number>        &solution,
                          Vector<number>        &right_hand_side,
@@ -822,7 +822,7 @@ namespace MatrixTools
    */
   template <typename number>
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          BlockSparseMatrix<number>           &matrix,
                          BlockVector<number>                 &solution,
                          BlockVector<number>                 &right_hand_side,
@@ -867,7 +867,7 @@ namespace MatrixTools
    * step-18.
    */
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          PETScWrappers::SparseMatrix &matrix,
                          PETScWrappers::Vector &solution,
                          PETScWrappers::Vector &right_hand_side,
@@ -878,7 +878,7 @@ namespace MatrixTools
    * matrices.
    */
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          PETScWrappers::MPI::SparseMatrix &matrix,
                          PETScWrappers::MPI::Vector &solution,
                          PETScWrappers::MPI::Vector &right_hand_side,
@@ -910,7 +910,7 @@ namespace MatrixTools
    * to this function is the same.
    */
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          PETScWrappers::MPI::SparseMatrix &matrix,
                          PETScWrappers::Vector       &solution,
                          PETScWrappers::MPI::Vector &right_hand_side,
@@ -920,7 +920,7 @@ namespace MatrixTools
    * Same as above but for BlockSparseMatrix.
    */
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double>  &boundary_values,
                          PETScWrappers::MPI::BlockSparseMatrix &matrix,
                          PETScWrappers::MPI::BlockVector        &solution,
                          PETScWrappers::MPI::BlockVector        &right_hand_side,
@@ -968,7 +968,7 @@ namespace MatrixTools
    * across an MPI system.
    */
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          TrilinosWrappers::SparseMatrix &matrix,
                          TrilinosWrappers::Vector        &solution,
                          TrilinosWrappers::Vector        &right_hand_side,
@@ -980,7 +980,7 @@ namespace MatrixTools
    * working on block structures.
    */
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          TrilinosWrappers::BlockSparseMatrix &matrix,
                          TrilinosWrappers::BlockVector        &solution,
                          TrilinosWrappers::BlockVector        &right_hand_side,
@@ -1023,7 +1023,7 @@ namespace MatrixTools
    * types.
    */
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          TrilinosWrappers::SparseMatrix &matrix,
                          TrilinosWrappers::MPI::Vector   &solution,
                          TrilinosWrappers::MPI::Vector   &right_hand_side,
@@ -1035,7 +1035,7 @@ namespace MatrixTools
    * on block structures.
    */
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          TrilinosWrappers::BlockSparseMatrix &matrix,
                          TrilinosWrappers::MPI::BlockVector   &solution,
                          TrilinosWrappers::MPI::BlockVector   &right_hand_side,
@@ -1079,8 +1079,8 @@ namespace MatrixTools
    * documentation of this class.
    */
   void
-  local_apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
-                               const std::vector<unsigned int> &local_dof_indices,
+  local_apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
+                               const std::vector<types::global_dof_index> &local_dof_indices,
                                FullMatrix<double> &local_matrix,
                                Vector<double>     &local_rhs,
                                const bool          eliminate_columns);
index 46bce989f9fd153bb2a0c7ed3e6b5fdbbaa610b1..08f22f16668c064455b47c001fee866e4e42cbf9 100644 (file)
@@ -408,7 +408,7 @@ private:
    * and stores all dof indices
    * of the cells that'll be refined
    */
-  std::vector<std::vector<unsigned int> > indices_on_cell;
+  std::vector<std::vector<types::global_dof_index> > indices_on_cell;
 
   /**
    * All cell data (the dof indices and
index 2b437befa5167e2cdd54590aa99fc5e874509668..994ede58bfcfd795dc5fe8600b58ef605d89404b 100644 (file)
@@ -747,7 +747,7 @@ namespace VectorTools
   interpolate_boundary_values (const Mapping<DH::dimension,DH::space_dimension>            &mapping,
                                const DH                 &dof,
                                const typename FunctionMap<DH::space_dimension>::type &function_map,
-                               std::map<unsigned int,double> &boundary_values,
+                               std::map<types::global_dof_index,double> &boundary_values,
                                const ComponentMask       &component_mask = ComponentMask());
 
   /**
@@ -767,7 +767,7 @@ namespace VectorTools
                                const DH                 &dof,
                                const types::boundary_id            boundary_component,
                                const Function<DH::space_dimension>           &boundary_function,
-                               std::map<unsigned int,double> &boundary_values,
+                               std::map<types::global_dof_index,double> &boundary_values,
                                const ComponentMask       &component_mask = ComponentMask());
 
   /**
@@ -783,7 +783,7 @@ namespace VectorTools
   interpolate_boundary_values (const DH        &dof,
                                const types::boundary_id            boundary_component,
                                const Function<DH::space_dimension>           &boundary_function,
-                               std::map<unsigned int,double> &boundary_values,
+                               std::map<types::global_dof_index,double> &boundary_values,
                                const ComponentMask       &component_mask = ComponentMask());
 
 
@@ -797,7 +797,7 @@ namespace VectorTools
   void
   interpolate_boundary_values (const DH                &dof,
                                const typename FunctionMap<DH::space_dimension>::type &function_map,
-                               std::map<unsigned int,double>         &boundary_values,
+                               std::map<types::global_dof_index,double>         &boundary_values,
                                const ComponentMask               &component_mask = ComponentMask());
 
 
@@ -996,7 +996,7 @@ namespace VectorTools
                                 const DoFHandler<dim,spacedim>    &dof,
                                 const typename FunctionMap<spacedim>::type &boundary_functions,
                                 const Quadrature<dim-1>  &q,
-                                std::map<unsigned int,double> &boundary_values,
+                                std::map<types::global_dof_index,double> &boundary_values,
                                 std::vector<unsigned int> component_mapping = std::vector<unsigned int>());
 
   /**
@@ -1008,7 +1008,7 @@ namespace VectorTools
   void project_boundary_values (const DoFHandler<dim,spacedim>    &dof,
                                 const typename FunctionMap<spacedim>::type &boundary_function,
                                 const Quadrature<dim-1>  &q,
-                                std::map<unsigned int,double> &boundary_values,
+                                std::map<types::global_dof_index,double> &boundary_values,
                                 std::vector<unsigned int> component_mapping = std::vector<unsigned int>());
 
   /**
index 8a81c86a507bc8a44df620deb273a5b7baff6e9a..f780389e5986d52bef419d6cbe4efb64710c5e53 100644 (file)
@@ -152,10 +152,10 @@ namespace VectorTools
     // the following vector collects all rep dofs.
     // the position of a rep dof within this vector
     // is called rep index.
-    std::vector<std::vector<unsigned int> > dofs_of_rep_points(fe.size());
+    std::vector<std::vector<types::global_dof_index> > dofs_of_rep_points(fe.size());
     // the following table converts a dof i
     // to the rep index.
-    std::vector<std::vector<unsigned int> > dof_to_rep_index_table(fe.size());
+    std::vector<std::vector<types::global_dof_index> > dof_to_rep_index_table(fe.size());
 
     std::vector<unsigned int> n_rep_points (fe.size(), 0);
 
@@ -197,7 +197,7 @@ namespace VectorTools
 
     const unsigned int max_rep_points = *std::max_element (n_rep_points.begin(),
                                                            n_rep_points.end());
-    std::vector<unsigned int> dofs_on_cell (fe.max_dofs_per_cell());
+    std::vector<types::global_dof_index> dofs_on_cell (fe.max_dofs_per_cell());
     std::vector<Point<DH::space_dimension> >  rep_points (max_rep_points);
 
     // get space for the values of the
@@ -311,8 +311,8 @@ namespace VectorTools
     Vector<double> cell_data_1(dof_1.get_fe().dofs_per_cell);
     Vector<double> cell_data_2(dof_2.get_fe().dofs_per_cell);
 
-    std::vector<short unsigned int> touch_count (dof_2.n_dofs(), 0);
-    std::vector<unsigned int>       local_dof_indices (dof_2.get_fe().dofs_per_cell);
+    std::vector<short unsigned int> touch_count (dof_2.n_dofs(), 0); //TODO: check on datatype... kinda strange (UK)
+    std::vector<types::global_dof_index>       local_dof_indices (dof_2.get_fe().dofs_per_cell);
 
     typename DoFHandler<dim,spacedim>::active_cell_iterator h = dof_1.begin_active();
     typename DoFHandler<dim,spacedim>::active_cell_iterator l = dof_2.begin_active();
@@ -355,7 +355,7 @@ namespace VectorTools
   {
     void
     interpolate_zero_boundary_values (const dealii::DoFHandler<1>   &dof_handler,
-                                      std::map<unsigned int,double> &boundary_values)
+                                      std::map<types::global_dof_index,double> &boundary_values)
     {
       // we only need to find the
       // left-most and right-most
@@ -378,7 +378,7 @@ namespace VectorTools
     // codimension 1
     void
     interpolate_zero_boundary_values (const dealii::DoFHandler<1,2> &dof_handler,
-                                      std::map<unsigned int,double> &boundary_values)
+                                      std::map<types::global_dof_index,double> &boundary_values)
     {
       // we only need to find the
       // left-most and right-most
@@ -401,7 +401,7 @@ namespace VectorTools
     template <int dim, int spacedim>
     void
     interpolate_zero_boundary_values (const dealii::DoFHandler<dim,spacedim>       &dof_handler,
-                                      std::map<unsigned int,double> &boundary_values)
+                                      std::map<types::global_dof_index,double> &boundary_values)
     {
       const FiniteElement<dim,spacedim> &fe = dof_handler.get_fe();
 
@@ -429,7 +429,7 @@ namespace VectorTools
       typename dealii::DoFHandler<dim,spacedim>::active_cell_iterator
       cell = dof_handler.begin_active(),
       endc = dof_handler.end();
-      std::vector<unsigned int> face_dof_indices (fe.dofs_per_face);
+      std::vector<types::global_dof_index> face_dof_indices (fe.dofs_per_face);
       for (; cell!=endc; ++cell)
         for (unsigned int f=0; f<GeometryInfo<dim>::faces_per_cell; ++f)
           if (cell->at_boundary(f))
@@ -575,7 +575,7 @@ namespace VectorTools
             ExcDimensionMismatch (vec_result.size(), dof.n_dofs()));
 
     // make up boundary values
-    std::map<unsigned int,double> boundary_values;
+    std::map<types::global_dof_index,double> boundary_values;
 
     if (enforce_zero_boundary == true)
       // no need to project boundary
@@ -700,7 +700,7 @@ namespace VectorTools
                        n_q_points    = fe_values.n_quadrature_points,
                        n_components  = fe.n_components();
 
-    std::vector<unsigned int> dofs (dofs_per_cell);
+    std::vector<types::global_dof_index> dofs (dofs_per_cell);
     Vector<double> cell_vector (dofs_per_cell);
 
     typename DoFHandler<dim,spacedim>::active_cell_iterator
@@ -822,7 +822,7 @@ namespace VectorTools
 
     const unsigned int n_components  = fe.n_components();
 
-    std::vector<unsigned int> dofs (fe.max_dofs_per_cell());
+    std::vector<types::global_dof_index> dofs (fe.max_dofs_per_cell());
     Vector<double> cell_vector (fe.max_dofs_per_cell());
 
     typename hp::DoFHandler<dim,spacedim>::active_cell_iterator
@@ -965,7 +965,7 @@ namespace VectorTools
 
     const unsigned int dofs_per_cell = dof_handler.get_fe().dofs_per_cell;
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
     cell_point.first->get_dof_indices (local_dof_indices);
 
     for (unsigned int i=0; i<dofs_per_cell; i++)
@@ -1009,7 +1009,7 @@ namespace VectorTools
 
     const unsigned int dofs_per_cell = cell_point.first->get_fe().dofs_per_cell;
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
     cell_point.first->get_dof_indices (local_dof_indices);
 
     for (unsigned int i=0; i<dofs_per_cell; i++)
@@ -1058,7 +1058,7 @@ namespace VectorTools
 
     const unsigned int dofs_per_cell = dof_handler.get_fe().dofs_per_cell;
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
     cell_point.first->get_dof_indices (local_dof_indices);
 
     for (unsigned int i=0; i<dofs_per_cell; i++)
@@ -1105,7 +1105,7 @@ namespace VectorTools
 
     const unsigned int dofs_per_cell = cell_point.first->get_fe().dofs_per_cell;
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
     cell_point.first->get_dof_indices (local_dof_indices);
 
     for (unsigned int i=0; i<dofs_per_cell; i++)
@@ -1183,7 +1183,7 @@ namespace VectorTools
                        n_q_points    = fe_values.n_quadrature_points,
                        n_components  = fe.n_components();
 
-    std::vector<unsigned int> dofs (dofs_per_cell);
+    std::vector<types::global_dof_index> dofs (dofs_per_cell);
     Vector<double> cell_vector (dofs_per_cell);
 
     typename DoFHandler<dim,spacedim>::active_cell_iterator cell = dof_handler.begin_active(),
@@ -1350,7 +1350,7 @@ namespace VectorTools
 
     const unsigned int n_components  = fe.n_components();
 
-    std::vector<unsigned int> dofs (fe.max_dofs_per_cell());
+    std::vector<types::global_dof_index> dofs (fe.max_dofs_per_cell());
     Vector<double> cell_vector (fe.max_dofs_per_cell());
 
     typename hp::DoFHandler<dim,spacedim>::active_cell_iterator
@@ -1493,7 +1493,7 @@ namespace VectorTools
     void interpolate_boundary_values (const Mapping<DH::dimension, DH::space_dimension> &,
                                       const DH                 &dof,
                                       const typename FunctionMap<DH::space_dimension>::type &function_map,
-                                      std::map<unsigned int,double> &boundary_values,
+                                      std::map<types::global_dof_index,double> &boundary_values,
                                       const ComponentMask       &component_mask,
                                       const dealii::internal::int2type<1>)
     {
@@ -1577,7 +1577,7 @@ namespace VectorTools
     interpolate_boundary_values (const Mapping<DH::dimension, DH::space_dimension> &mapping,
                                  const DH                 &dof,
                                  const typename FunctionMap<DH::space_dimension>::type &function_map,
-                                 std::map<unsigned int,double> &boundary_values,
+                                 std::map<types::global_dof_index,double> &boundary_values,
                                  const ComponentMask       &component_mask,
                                  const dealii::internal::int2type<DH::dimension>)
     {
@@ -1608,7 +1608,7 @@ namespace VectorTools
                 ExcDimensionMismatch(n_components, i->second->n_components));
 
       // field to store the indices
-      std::vector<unsigned int> face_dofs;
+      std::vector<types::global_dof_index> face_dofs;
       face_dofs.reserve (DoFTools::max_dofs_per_face(dof));
 
       std::vector<Point<spacedim> >  dof_locations;
@@ -1922,7 +1922,7 @@ namespace VectorTools
   interpolate_boundary_values (const Mapping<DH::dimension, DH::space_dimension>            &mapping,
                                const DH                 &dof,
                                const typename FunctionMap<DH::space_dimension>::type &function_map,
-                               std::map<unsigned int,double> &boundary_values,
+                               std::map<types::global_dof_index,double> &boundary_values,
                                const ComponentMask       &component_mask_)
   {
     internal::
@@ -1939,7 +1939,7 @@ namespace VectorTools
                                const DH                 &dof,
                                const types::boundary_id            boundary_component,
                                const Function<DH::space_dimension>           &boundary_function,
-                               std::map<unsigned int,double> &boundary_values,
+                               std::map<types::global_dof_index,double> &boundary_values,
                                const ComponentMask       &component_mask)
   {
     typename FunctionMap<DH::space_dimension>::type function_map;
@@ -1955,7 +1955,7 @@ namespace VectorTools
   interpolate_boundary_values (const DH                 &dof,
                                const types::boundary_id            boundary_component,
                                const Function<DH::space_dimension>           &boundary_function,
-                               std::map<unsigned int,double> &boundary_values,
+                               std::map<types::global_dof_index,double> &boundary_values,
                                const ComponentMask       &component_mask)
   {
     interpolate_boundary_values(StaticMappingQ1<DH::dimension,DH::space_dimension>::mapping,
@@ -1969,7 +1969,7 @@ namespace VectorTools
   void
   interpolate_boundary_values (const DH                 &dof,
                                const typename FunctionMap<DH::space_dimension>::type &function_map,
-                               std::map<unsigned int,double> &boundary_values,
+                               std::map<types::global_dof_index,double> &boundary_values,
                                const ComponentMask       &component_mask)
   {
     interpolate_boundary_values(StaticMappingQ1<DH::dimension,DH::space_dimension>::mapping,
@@ -1993,10 +1993,10 @@ namespace VectorTools
    ConstraintMatrix                                      &constraints,
    const ComponentMask                               &component_mask_)
   {
-    std::map<unsigned int,double> boundary_values;
+    std::map<types::global_dof_index,double> boundary_values;
     interpolate_boundary_values (mapping, dof, function_map,
                                  boundary_values, component_mask_);
-    std::map<unsigned int,double>::const_iterator boundary_value =
+    std::map<types::global_dof_index,double>::const_iterator boundary_value =
       boundary_values.begin();
     for ( ; boundary_value !=boundary_values.end(); ++boundary_value)
       {
@@ -2073,7 +2073,7 @@ namespace VectorTools
                            const DoFHandler<1,1>      &dof,
                            const FunctionMap<1>::type &boundary_functions,
                            const Quadrature<0> &,
-                           std::map<unsigned int,double> &boundary_values,
+                           std::map<types::global_dof_index,double> &boundary_values,
                            std::vector<unsigned int>   component_mapping)
   {
     Assert (component_mapping.size() == 0, ExcNotImplemented());
@@ -2091,7 +2091,7 @@ namespace VectorTools
                            const DoFHandler<1,2>      &dof,
                            const FunctionMap<2>::type &boundary_functions,
                            const Quadrature<0> &,
-                           std::map<unsigned int,double> &boundary_values,
+                           std::map<types::global_dof_index,double> &boundary_values,
                            std::vector<unsigned int>   component_mapping)
   {
     Assert (component_mapping.size() == 0, ExcNotImplemented());
@@ -2110,7 +2110,7 @@ namespace VectorTools
                            const DoFHandler<dim, spacedim> &dof,
                            const typename FunctionMap<spacedim>::type &boundary_functions,
                            const Quadrature<dim-1>        &q,
-                           std::map<unsigned int,double> &boundary_values,
+                           std::map<types::global_dof_index,double>  &boundary_values,
                            std::vector<unsigned int>       component_mapping)
   {
 //TODO:[?] In project_boundary_values, no condensation of sparsity
@@ -2132,7 +2132,7 @@ namespace VectorTools
     else
       AssertDimension (dof.get_fe().n_components(), component_mapping.size());
 
-    std::vector<unsigned int> dof_to_boundary_mapping;
+    std::vector<types::global_dof_index> dof_to_boundary_mapping;
     std::set<types::boundary_id> selected_boundary_components;
     for (typename FunctionMap<spacedim>::type::const_iterator i=boundary_functions.begin();
          i!=boundary_functions.end(); ++i)
@@ -2279,7 +2279,7 @@ namespace VectorTools
   project_boundary_values (const DoFHandler<dim,spacedim>    &dof,
                            const typename FunctionMap<spacedim>::type &boundary_functions,
                            const Quadrature<dim-1>  &q,
-                           std::map<unsigned int,double> &boundary_values,
+                           std::map<types::global_dof_index,double> &boundary_values,
                            std::vector<unsigned int> component_mapping)
   {
     project_boundary_values(StaticMappingQ1<dim,spacedim>::mapping, dof, boundary_functions, q,
@@ -2301,10 +2301,10 @@ namespace VectorTools
                            ConstraintMatrix &constraints,
                            std::vector<unsigned int> component_mapping)
   {
-    std::map<unsigned int,double> boundary_values;
+    std::map<types::global_dof_index,double> boundary_values;
     project_boundary_values (mapping, dof, boundary_functions, q,
                              boundary_values, component_mapping);
-    std::map<unsigned int,double>::const_iterator boundary_value =
+    std::map<types::global_dof_index,double>::const_iterator boundary_value =
       boundary_values.begin();
     for ( ; boundary_value !=boundary_values.end(); ++boundary_value)
       {
@@ -2345,7 +2345,7 @@ namespace VectorTools
     template <int dim>
     struct VectorDoFTuple
     {
-      unsigned int dof_indices[dim];
+      types::global_dof_index dof_indices[dim];
 
       VectorDoFTuple ()
       {
@@ -2614,7 +2614,7 @@ namespace VectorTools
       // vector t is largest by
       // magnitude, then
       // x1=t[1]/t[0]*x_0, etc.
-      unsigned int largest_component = 0;
+      types::global_dof_index largest_component = 0;
       for (unsigned int d=1; d<dim; ++d)
         if (std::fabs(tangent_vector[d]) > std::fabs(tangent_vector[largest_component]) + 1e-10)
           largest_component = d;
@@ -3581,7 +3581,7 @@ namespace VectorTools
                                       update_values);
     std::vector<bool> dofs_processed;
     std::vector<double> dof_values;
-    std::vector<unsigned int> face_dof_indices;
+    std::vector<types::global_dof_index> face_dof_indices;
     typename hp::DoFHandler<dim>::active_cell_iterator cell = dof_handler.begin_active ();
 
     switch (dim)
@@ -3820,7 +3820,7 @@ namespace VectorTools
                                      * fe_values[vec].value (fe.face_to_cell_index (i, face), q_point));
         }
 
-      std::vector<unsigned int> face_dof_indices (fe.dofs_per_face);
+      std::vector<types::global_dof_index> face_dof_indices (fe.dofs_per_face);
 
       cell->face (face)->get_dof_indices (face_dof_indices, cell->active_fe_index ());
 
@@ -3867,7 +3867,7 @@ namespace VectorTools
                                             const Function<3> &boundary_function,
                                             const std::vector<DerivativeForm<1,3,3> > &jacobians,
                                             std::vector<double> &dof_values,
-                                            std::vector<unsigned int> &projected_dofs)
+                                            std::vector<types::global_dof_index> &projected_dofs)
     {
       // Compute the intergral over
       // the product of the normal
@@ -3924,7 +3924,7 @@ namespace VectorTools
                                            * fe_values[vec].value (fe.face_to_cell_index (i, face), q_point));
         }
 
-      std::vector<unsigned int> face_dof_indices (fe.dofs_per_face);
+      std::vector<types::global_dof_index> face_dof_indices (fe.dofs_per_face);
 
       cell->face (face)->get_dof_indices (face_dof_indices, cell->active_fe_index ());
 
@@ -4063,7 +4063,7 @@ namespace VectorTools
         // compute a second one.
         const unsigned int &n_dofs = dof_handler.n_dofs ();
         std::vector<double> dof_values (n_dofs);
-        std::vector<unsigned int> projected_dofs (n_dofs);
+        std::vector<types::global_dof_index> projected_dofs (n_dofs);
 
         for (unsigned int dof = 0; dof < n_dofs; ++dof)
           projected_dofs[dof] = 0;
@@ -4200,7 +4200,7 @@ namespace VectorTools
       {
         const unsigned int &n_dofs = dof_handler.n_dofs ();
         std::vector<double> dof_values (n_dofs);
-        std::vector<unsigned int> projected_dofs (n_dofs);
+        std::vector<types::global_dof_index> projected_dofs (n_dofs);
 
         for (unsigned int dof = 0; dof < n_dofs; ++dof)
           projected_dofs[dof] = 0;
@@ -4272,7 +4272,7 @@ namespace VectorTools
                         "to imposing Dirichlet values on the vector-valued "
                         "quantity."));
 
-    std::vector<unsigned int> face_dofs;
+    std::vector<types::global_dof_index> face_dofs;
 
     // create FE and mapping
     // collections for all elements in
index 2b1c3f0d531133b77e1c88dcbcddec438fcf8328..2308695bbf357c74034941e65cf5f20625e3a27d 100644 (file)
@@ -42,8 +42,8 @@ IndexSet::do_compress () const
       next = i;
       ++next;
 
-      unsigned int first_index = i->begin;
-      unsigned int last_index  = i->end;
+      types::global_dof_index first_index = i->begin;
+      types::global_dof_index last_index  = i->end;
 
       // see if we can merge any of
       // the following ranges
@@ -174,8 +174,8 @@ IndexSet::n_intervals () const
 
 
 IndexSet
-IndexSet::get_view (const unsigned int begin,
-                    const unsigned int end) const
+IndexSet::get_view (const types::global_dof_index begin,
+                    const types::global_dof_index end) const
 {
   Assert (begin <= end,
           ExcMessage ("End index needs to be larger or equal to begin index!"));
@@ -225,12 +225,15 @@ IndexSet::write(std::ostream &out) const
 void
 IndexSet::read(std::istream &in)
 {
-  unsigned int s, numranges, b, e;
+  types::global_dof_index s;
+  unsigned int numranges;
+
   in >> s >> numranges;
   ranges.clear();
   set_size(s);
   for (unsigned int i=0; i<numranges; ++i)
     {
+      types::global_dof_index b, e;
       in >> b >> e;
       add_range(b,e);
     }
@@ -255,7 +258,7 @@ IndexSet::block_write(std::ostream &out) const
 void
 IndexSet::block_read(std::istream &in)
 {
-  unsigned int size;
+  types::global_dof_index size;
   size_t n_ranges;
   in.read(reinterpret_cast<char *>(&size), sizeof(size));
   in.read(reinterpret_cast<char *>(&n_ranges), sizeof(n_ranges));
@@ -351,7 +354,7 @@ IndexSet::subtract_set (const IndexSet &other)
 }
 
 
-void IndexSet::fill_index_vector(std::vector<unsigned int> &indices) const
+void IndexSet::fill_index_vector(std::vector<types::global_dof_index> &indices) const
 {
   compress();
 
@@ -361,7 +364,7 @@ void IndexSet::fill_index_vector(std::vector<unsigned int> &indices) const
   for (std::vector<Range>::iterator it = ranges.begin();
        it != ranges.end();
        ++it)
-    for (unsigned int i=it->begin; i<it->end; ++i)
+    for (types::global_dof_index i=it->begin; i<it->end; ++i)
       indices.push_back (i);
 
   Assert (indices.size() == n_elements(), ExcInternalError());
@@ -390,7 +393,7 @@ IndexSet::make_trilinos_map (const MPI_Comm &communicator,
 #endif
   else
     {
-      std::vector<unsigned int> indices;
+      std::vector<types::global_dof_index> indices;
       fill_index_vector(indices);
 
       return Epetra_Map (-1,
@@ -417,9 +420,9 @@ IndexSet::make_trilinos_map (const MPI_Comm &communicator,
 std::size_t
 IndexSet::memory_consumption () const
 {
-  return MemoryConsumption::memory_consumption (ranges) +
-         MemoryConsumption::memory_consumption (is_compressed) +
-         MemoryConsumption::memory_consumption (index_space_size);
+  return (MemoryConsumption::memory_consumption (ranges) +
+          MemoryConsumption::memory_consumption (is_compressed) +
+          MemoryConsumption::memory_consumption (index_space_size));
 }
 
 
index 9122243fca9b05b567466e92d83fd091bd60a541..954fe4d44843f63b8fa3cd96b57ff84e65f72284 100644 (file)
@@ -465,6 +465,46 @@ namespace Utilities
   }
 
 
+  template <typename Integer>
+  std::vector<Integer>
+  reverse_permutation (const std::vector<Integer> &permutation)
+  {
+    const unsigned int n = permutation.size();
+
+    std::vector<Integer> out (n);
+    for (unsigned int i=0; i<n; ++i)
+      out[i] = n - 1 - permutation[i];
+
+    return out;
+  }
+
+
+
+  template <typename Integer>
+  std::vector<Integer>
+  invert_permutation (const std::vector<Integer> &permutation)
+  {
+    const unsigned int n = permutation.size();
+
+    std::vector<Integer> out (n, numbers::invalid_unsigned_int);
+
+    for (unsigned int i=0; i<n; ++i)
+      {
+        Assert (permutation[i] < n, ExcIndexRange (permutation[i], 0, n));
+        out[permutation[i]] = i;
+      }
+
+    // check that we have actually reached
+    // all indices
+    for (unsigned int i=0; i<n; ++i)
+      Assert (out[i] != numbers::invalid_unsigned_int,
+              ExcMessage ("The given input permutation had duplicate entries!"));
+
+    return out;
+  }
+
+
+
 
   namespace System
   {
index f5dbb393bb55a3bb8a0cb899bb8145cffdbb25f3..b1cd8573f5d927959c0ef6bb2b39f5b2809e9a4a 100644 (file)
@@ -3001,7 +3001,11 @@ namespace parallel
       number_cache.n_global_active_cells
         = std::accumulate (number_cache.n_locally_owned_active_cells.begin(),
                            number_cache.n_locally_owned_active_cells.end(),
-                           0);
+                           /* ensure sum is
+                              computed with
+                              correct data
+                              type:*/
+                           static_cast<types::global_dof_index>(0));
       number_cache.n_global_levels = Utilities::MPI::max(this->n_levels(), mpi_communicator);
     }
 
index e5282b7d63d927b31640ce1f9bcd9eec53822876..255cb70d18690a3c2848627a3b0bd5ed6219b2fb 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $Name$
 //
-//    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012 by the deal.II authors
+//    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -68,7 +68,7 @@ DoFCellAccessor<DH,lda>::update_cell_dof_indices_cache () const
 
 template <class DH, bool lda>
 void
-DoFCellAccessor<DH,lda>::set_dof_indices (const std::vector<unsigned int> &local_dof_indices)
+DoFCellAccessor<DH,lda>::set_dof_indices (const std::vector<types::global_dof_index> &local_dof_indices)
 {
   Assert (static_cast<unsigned int>(this->present_level) < this->dof_handler->levels.size(),
           ExcMessage ("DoFHandler not initialized"));
index 8d575a0ceb87993577f58e311bbdaa0acb8bf522..dffe4724f54f78696710af5758b047fd049eb12f 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $Name$
 //
-//    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 by the deal.II authors
+//    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -42,7 +42,7 @@ template<int dim, int spacedim>
 const unsigned int DoFHandler<dim,spacedim>::space_dimension;
 
 template <int dim, int spacedim>
-const unsigned int DoFHandler<dim,spacedim>::invalid_dof_index;
+const types::global_dof_index DoFHandler<dim,spacedim>::invalid_dof_index;
 
 template <int dim, int spacedim>
 const unsigned int DoFHandler<dim,spacedim>::default_fe_index;
@@ -53,7 +53,7 @@ const unsigned int DoFHandler<dim,spacedim>::default_fe_index;
 namespace internal
 {
   template <int dim, int spacedim>
-  const unsigned int *dummy ()
+  const types::global_dof_index *dummy ()
   {
     return &dealii::DoFHandler<dim,spacedim>::invalid_dof_index;
   }
@@ -527,7 +527,7 @@ namespace internal
 
       template<int spacedim>
       static
-      unsigned int distribute_dofs_on_cell (typename DoFHandler<1, spacedim>::cell_iterator &cell, unsigned int next_free_dof)
+      types::global_dof_index distribute_dofs_on_cell (typename DoFHandler<1, spacedim>::cell_iterator &cell, types::global_dof_index next_free_dof)
       {
         const FiniteElement<1, spacedim> &fe = cell->get_fe ();
 
@@ -564,7 +564,7 @@ namespace internal
 
       template<int spacedim>
       static
-      unsigned int distribute_dofs_on_cell (typename DoFHandler<2, spacedim>::cell_iterator &cell, unsigned int next_free_dof)
+      types::global_dof_index distribute_dofs_on_cell (typename DoFHandler<2, spacedim>::cell_iterator &cell, types::global_dof_index next_free_dof)
       {
         const FiniteElement<2, spacedim> &fe = cell->get_fe ();
 
@@ -594,7 +594,7 @@ namespace internal
 
       template<int spacedim>
       static
-      unsigned int distribute_dofs_on_cell (typename DoFHandler<3, spacedim>::cell_iterator &cell, unsigned int next_free_dof)
+      types::global_dof_index distribute_dofs_on_cell (typename DoFHandler<3, spacedim>::cell_iterator &cell, types::global_dof_index next_free_dof)
       {
         const FiniteElement<3, spacedim> &fe = cell->get_fe ();
 
@@ -634,7 +634,8 @@ namespace internal
 
       template<int spacedim>
       static
-      unsigned int get_dof_index (
+      types::global_dof_index
+      get_dof_index (
         const DoFHandler<1, spacedim> &dof_handler,
         internal::DoFHandler::DoFLevel<1> &mg_level,
         internal::DoFHandler::DoFFaces<1> &,
@@ -648,77 +649,82 @@ namespace internal
 
       template<int spacedim>
       static
-      unsigned int get_dof_index (const DoFHandler<2, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<2> &, internal::DoFHandler::DoFFaces<2> &mg_faces, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const int2type<1>)
+      types::global_dof_index
+      get_dof_index (const DoFHandler<2, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<2> &, internal::DoFHandler::DoFFaces<2> &mg_faces, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const int2type<1>)
       {
         return mg_faces.lines.get_dof_index (dof_handler, obj_index, fe_index, local_index);
       }
 
       template<int spacedim>
       static
-      unsigned int get_dof_index (const DoFHandler<2, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<2> &mg_level, internal::DoFHandler::DoFFaces<2> &, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const int2type<2>)
+      types::global_dof_index
+      get_dof_index (const DoFHandler<2, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<2> &mg_level, internal::DoFHandler::DoFFaces<2> &, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const int2type<2>)
       {
         return mg_level.dof_object.get_dof_index (dof_handler, obj_index, fe_index, local_index);
       }
 
       template<int spacedim>
       static
-      unsigned int get_dof_index (const DoFHandler<3, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<3> &, internal::DoFHandler::DoFFaces<3> &mg_faces, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const int2type<1>)
+      types::global_dof_index
+      get_dof_index (const DoFHandler<3, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<3> &, internal::DoFHandler::DoFFaces<3> &mg_faces, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const int2type<1>)
       {
         return mg_faces.lines.get_dof_index (dof_handler, obj_index, fe_index, local_index);
       }
 
       template<int spacedim>
       static
-      unsigned int get_dof_index (const DoFHandler<3, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<3> &, internal::DoFHandler::DoFFaces<3> &mg_faces, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const int2type<2>)
+      types::global_dof_index
+      get_dof_index (const DoFHandler<3, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<3> &, internal::DoFHandler::DoFFaces<3> &mg_faces, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const int2type<2>)
       {
         return mg_faces.quads.get_dof_index (dof_handler, obj_index, fe_index, local_index);
       }
 
       template<int spacedim>
       static
-      unsigned int get_dof_index (const DoFHandler<3, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<3> &mg_level, internal::DoFHandler::DoFFaces<3> &, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const int2type<3>)
+      types::global_dof_index
+      get_dof_index (const DoFHandler<3, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<3> &mg_level, internal::DoFHandler::DoFFaces<3> &, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const int2type<3>)
       {
         return mg_level.dof_object.get_dof_index (dof_handler, obj_index, fe_index, local_index);
       }
 
       template<int spacedim>
       static
-      void set_dof_index (const DoFHandler<1, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<1> &mg_level, internal::DoFHandler::DoFFaces<1> &, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const unsigned int global_index, const int2type<1>)
+      void set_dof_index (const DoFHandler<1, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<1> &mg_level, internal::DoFHandler::DoFFaces<1> &, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const types::global_dof_index global_index, const int2type<1>)
       {
         mg_level.dof_object.set_dof_index (dof_handler, obj_index, fe_index, local_index, global_index);
       }
 
       template<int spacedim>
       static
-      void set_dof_index (const DoFHandler<2, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<2> &, internal::DoFHandler::DoFFaces<2> &mg_faces, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const unsigned int global_index, const int2type<1>)
+      void set_dof_index (const DoFHandler<2, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<2> &, internal::DoFHandler::DoFFaces<2> &mg_faces, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const types::global_dof_index global_index, const int2type<1>)
       {
         mg_faces.lines.set_dof_index (dof_handler, obj_index, fe_index, local_index, global_index);
       }
 
       template<int spacedim>
       static
-      void set_dof_index (const DoFHandler<2, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<2> &mg_level, internal::DoFHandler::DoFFaces<2> &, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const unsigned int global_index, const int2type<2>)
+      void set_dof_index (const DoFHandler<2, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<2> &mg_level, internal::DoFHandler::DoFFaces<2> &, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const types::global_dof_index global_index, const int2type<2>)
       {
         mg_level.dof_object.set_dof_index (dof_handler, obj_index, fe_index, local_index, global_index);
       }
 
       template<int spacedim>
       static
-      void set_dof_index (const DoFHandler<3, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<3> &, internal::DoFHandler::DoFFaces<3> &mg_faces, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const unsigned int global_index, const int2type<1>)
+      void set_dof_index (const DoFHandler<3, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<3> &, internal::DoFHandler::DoFFaces<3> &mg_faces, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const types::global_dof_index global_index, const int2type<1>)
       {
         mg_faces.lines.set_dof_index (dof_handler, obj_index, fe_index, local_index, global_index);
       }
 
       template<int spacedim>
       static
-      void set_dof_index (const DoFHandler<3, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<3> &, internal::DoFHandler::DoFFaces<3> &mg_faces, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const unsigned int global_index, const int2type<2>)
+      void set_dof_index (const DoFHandler<3, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<3> &, internal::DoFHandler::DoFFaces<3> &mg_faces, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const types::global_dof_index global_index, const int2type<2>)
       {
         mg_faces.quads.set_dof_index (dof_handler, obj_index, fe_index, local_index, global_index);
       }
 
       template<int spacedim>
       static
-      void set_dof_index (const DoFHandler<3, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<3> &mg_level, internal::DoFHandler::DoFFaces<3> &, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const unsigned int global_index, const int2type<3>)
+      void set_dof_index (const DoFHandler<3, spacedim> &dof_handler, internal::DoFHandler::DoFLevel<3> &mg_level, internal::DoFHandler::DoFFaces<3> &, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const types::global_dof_index global_index, const int2type<3>)
       {
         mg_level.dof_object.set_dof_index (dof_handler, obj_index, fe_index, local_index, global_index);
       }
@@ -888,7 +894,7 @@ DoFHandler<dim, spacedim>::end_mg () const
 
 
 template <>
-unsigned int DoFHandler<1>::n_boundary_dofs () const
+types::global_dof_index DoFHandler<1>::n_boundary_dofs () const
 {
   return 2*get_fe().dofs_per_vertex;
 }
@@ -896,7 +902,7 @@ unsigned int DoFHandler<1>::n_boundary_dofs () const
 
 
 template <>
-unsigned int DoFHandler<1>::n_boundary_dofs (const FunctionMap &boundary_indicators) const
+types::global_dof_index DoFHandler<1>::n_boundary_dofs (const FunctionMap &boundary_indicators) const
 {
   // check that only boundary
   // indicators 0 and 1 are allowed
@@ -912,7 +918,7 @@ unsigned int DoFHandler<1>::n_boundary_dofs (const FunctionMap &boundary_indicat
 
 
 template <>
-unsigned int DoFHandler<1>::n_boundary_dofs (const std::set<types::boundary_id> &boundary_indicators) const
+types::global_dof_index DoFHandler<1>::n_boundary_dofs (const std::set<types::boundary_id> &boundary_indicators) const
 {
   // check that only boundary
   // indicators 0 and 1 are allowed
@@ -927,7 +933,7 @@ unsigned int DoFHandler<1>::n_boundary_dofs (const std::set<types::boundary_id>
 
 
 template <>
-unsigned int DoFHandler<1,2>::n_boundary_dofs () const
+types::global_dof_index DoFHandler<1,2>::n_boundary_dofs () const
 {
   return 2*get_fe().dofs_per_vertex;
 }
@@ -935,7 +941,7 @@ unsigned int DoFHandler<1,2>::n_boundary_dofs () const
 
 
 template <>
-unsigned int DoFHandler<1,2>::n_boundary_dofs (const FunctionMap &boundary_indicators) const
+types::global_dof_index DoFHandler<1,2>::n_boundary_dofs (const FunctionMap &boundary_indicators) const
 {
   // check that only boundary
   // indicators 0 and 1 are allowed
@@ -951,7 +957,7 @@ unsigned int DoFHandler<1,2>::n_boundary_dofs (const FunctionMap &boundary_indic
 
 
 template <>
-unsigned int DoFHandler<1,2>::n_boundary_dofs (const std::set<types::boundary_id> &boundary_indicators) const
+types::global_dof_index DoFHandler<1,2>::n_boundary_dofs (const std::set<types::boundary_id> &boundary_indicators) const
 {
   // check that only boundary
   // indicators 0 and 1 are allowed
@@ -967,12 +973,12 @@ unsigned int DoFHandler<1,2>::n_boundary_dofs (const std::set<types::boundary_id
 
 
 template<int dim, int spacedim>
-unsigned int DoFHandler<dim,spacedim>::n_boundary_dofs () const
+types::global_dof_index DoFHandler<dim,spacedim>::n_boundary_dofs () const
 {
   std::set<int> boundary_dofs;
 
   const unsigned int dofs_per_face = get_fe().dofs_per_face;
-  std::vector<unsigned int> dofs_on_face(dofs_per_face);
+  std::vector<types::global_dof_index> dofs_on_face(dofs_per_face);
 
   // loop over all faces of all cells
   // and see whether they are at a
@@ -1005,7 +1011,7 @@ unsigned int DoFHandler<dim,spacedim>::n_boundary_dofs () const
 
 
 template<int dim, int spacedim>
-unsigned int
+types::global_dof_index
 DoFHandler<dim,spacedim>::n_boundary_dofs (const FunctionMap &boundary_indicators) const
 {
   Assert (boundary_indicators.find(numbers::internal_face_boundary_id) == boundary_indicators.end(),
@@ -1014,7 +1020,7 @@ DoFHandler<dim,spacedim>::n_boundary_dofs (const FunctionMap &boundary_indicator
   std::set<int> boundary_dofs;
 
   const unsigned int dofs_per_face = get_fe().dofs_per_face;
-  std::vector<unsigned int> dofs_on_face(dofs_per_face);
+  std::vector<types::global_dof_index> dofs_on_face(dofs_per_face);
 
   // same as in the previous
   // function, but with an additional
@@ -1039,7 +1045,7 @@ DoFHandler<dim,spacedim>::n_boundary_dofs (const FunctionMap &boundary_indicator
 
 
 template<int dim, int spacedim>
-unsigned int
+types::global_dof_index
 DoFHandler<dim,spacedim>::n_boundary_dofs (const std::set<types::boundary_id> &boundary_indicators) const
 {
   Assert (boundary_indicators.find (numbers::internal_face_boundary_id) == boundary_indicators.end(),
@@ -1048,7 +1054,7 @@ DoFHandler<dim,spacedim>::n_boundary_dofs (const std::set<types::boundary_id> &b
   std::set<int> boundary_dofs;
 
   const unsigned int dofs_per_face = get_fe().dofs_per_face;
-  std::vector<unsigned int> dofs_on_face(dofs_per_face);
+  std::vector<types::global_dof_index> dofs_on_face(dofs_per_face);
 
   // same as in the previous
   // function, but with a different
@@ -1097,7 +1103,7 @@ DoFHandler<dim,spacedim>::memory_consumption () const
     mem += MemoryConsumption::memory_consumption (*mg_faces);
 
   for (unsigned int i = 0; i < mg_vertex_dofs.size (); ++i)
-    mem += sizeof (MGVertexDoFs) + (1 + mg_vertex_dofs[i].get_finest_level () - mg_vertex_dofs[i].get_coarsest_level ()) * sizeof (unsigned int);
+    mem += sizeof (MGVertexDoFs) + (1 + mg_vertex_dofs[i].get_finest_level () - mg_vertex_dofs[i].get_coarsest_level ()) * sizeof (types::global_dof_index);
 
   return mem;
 }
@@ -1213,7 +1219,7 @@ void DoFHandler<dim,spacedim>::clear ()
 
 template <int dim, int spacedim>
 void
-DoFHandler<dim,spacedim>::renumber_dofs (const std::vector<unsigned int> &new_numbers)
+DoFHandler<dim,spacedim>::renumber_dofs (const std::vector<types::global_dof_index> &new_numbers)
 {
   Assert (new_numbers.size() == n_locally_owned_dofs(),
           ExcRenumberingIncomplete());
@@ -1230,15 +1236,15 @@ DoFHandler<dim,spacedim>::renumber_dofs (const std::vector<unsigned int> &new_nu
   // processor
   if (n_locally_owned_dofs() == n_dofs())
     {
-      std::vector<unsigned int> tmp(new_numbers);
+      std::vector<types::global_dof_index> tmp(new_numbers);
       std::sort (tmp.begin(), tmp.end());
-      std::vector<unsigned int>::const_iterator p = tmp.begin();
-      unsigned int                         i = 0;
+      std::vector<types::global_dof_index>::const_iterator p = tmp.begin();
+      types::global_dof_index i = 0;
       for (; p!=tmp.end(); ++p, ++i)
         Assert (*p == i, ExcNewNumbersNotConsecutive(i));
     }
   else
-    for (unsigned int i=0; i<new_numbers.size(); ++i)
+    for (types::global_dof_index i=0; i<new_numbers.size(); ++i)
       Assert (new_numbers[i] < n_dofs(),
               ExcMessage ("New DoF index is not less than the total number of dofs."));
 #endif
@@ -1250,7 +1256,7 @@ DoFHandler<dim,spacedim>::renumber_dofs (const std::vector<unsigned int> &new_nu
 template <int dim, int spacedim>
 void
 DoFHandler<dim,spacedim>::renumber_dofs (const unsigned int,
-                                         const std::vector<unsigned int> &)
+                                         const std::vector<types::global_dof_index> &)
 {
   Assert(false, ExcNotImplemented());
 }
@@ -1258,7 +1264,7 @@ DoFHandler<dim,spacedim>::renumber_dofs (const unsigned int,
 
 template<>
 void DoFHandler<1>::renumber_dofs (const unsigned int level,
-                                   const std::vector<unsigned int> &new_numbers)
+                                   const std::vector<types::global_dof_index> &new_numbers)
 {
   Assert (new_numbers.size() == n_dofs(level), DoFHandler<1>::ExcRenumberingIncomplete());
 
@@ -1292,7 +1298,7 @@ void DoFHandler<1>::renumber_dofs (const unsigned int level,
 
 template<>
 void DoFHandler<2>::renumber_dofs (const unsigned int  level,
-                                   const std::vector<unsigned int>  &new_numbers)
+                                   const std::vector<types::global_dof_index>  &new_numbers)
 {
   Assert (new_numbers.size() == n_dofs(level),
           DoFHandler<2>::ExcRenumberingIncomplete());
@@ -1351,7 +1357,7 @@ void DoFHandler<2>::renumber_dofs (const unsigned int  level,
 
 template<>
 void DoFHandler<3>::renumber_dofs (const unsigned int  level,
-                                   const std::vector<unsigned int>  &new_numbers)
+                                   const std::vector<types::global_dof_index>  &new_numbers)
 {
   Assert (new_numbers.size() == n_dofs(level),
           DoFHandler<3>::ExcRenumberingIncomplete());
@@ -1502,7 +1508,7 @@ void DoFHandler<dim,spacedim>::clear_space ()
   delete faces;
   faces = 0;
 
-  std::vector<unsigned int> tmp;
+  std::vector<types::global_dof_index> tmp;
   std::swap (vertex_dofs, tmp);
 
   number_cache.clear ();
@@ -1510,7 +1516,8 @@ void DoFHandler<dim,spacedim>::clear_space ()
 
 template<int dim, int spacedim>
 template<int structdim>
-unsigned int DoFHandler<dim, spacedim>::get_dof_index (
+types::global_dof_index
+DoFHandler<dim, spacedim>::get_dof_index (
   const unsigned int obj_level,
   const unsigned int obj_index,
   const unsigned int fe_index,
@@ -1524,16 +1531,18 @@ unsigned int DoFHandler<dim, spacedim>::get_dof_index (
 
 template<int dim, int spacedim>
 template<int structdim>
-void DoFHandler<dim, spacedim>::set_dof_index (const unsigned int obj_level, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const unsigned int global_index) const
+void DoFHandler<dim, spacedim>::set_dof_index (const unsigned int obj_level, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const types::global_dof_index global_index) const
 {
   internal::DoFHandler::Implementation::set_dof_index (*this, *this->mg_levels[obj_level], *this->mg_faces, obj_index, fe_index, local_index, global_index, internal::int2type<structdim> ());
 }
 
+
 template<int dim, int spacedim>
 DoFHandler<dim, spacedim>::MGVertexDoFs::MGVertexDoFs (): coarsest_level (numbers::invalid_unsigned_int), finest_level (0), indices (0), indices_offset (0)
 {
 }
 
+
 template<int dim, int spacedim>
 DoFHandler<dim, spacedim>::MGVertexDoFs::~MGVertexDoFs ()
 {
index 6a2e07d419baf2800dee2941ada613b5659efe77..80634abba3d1507a7cbda48b682a5c44a4893d51 100644 (file)
@@ -16,9 +16,9 @@ for (deal_II_dimension : DIMENSIONS)
   {
     namespace internal
     \{
-      template const unsigned int * dummy<deal_II_dimension,deal_II_dimension> ();
+      template const types::global_dof_index * dummy<deal_II_dimension,deal_II_dimension> ();
 #if deal_II_dimension < 3
-      template const unsigned int * dummy<deal_II_dimension,deal_II_dimension+1> ();
+      template const types::global_dof_index * dummy<deal_II_dimension,deal_II_dimension+1> ();
 #endif
     \}
 
index 7de2d8a957d7af38f6a9e8ad16ac9c2513e5bc25..0a8ad997ad96686f09813d22cbeb06578973d20d 100644 (file)
@@ -59,10 +59,10 @@ namespace internal
          */
         template <int spacedim>
         static
-        unsigned int
+        types::global_dof_index
         distribute_dofs_on_cell (const DoFHandler<1,spacedim> &dof_handler,
                                  const typename DoFHandler<1,spacedim>::active_cell_iterator &cell,
-                                 unsigned int          next_free_dof)
+                                 types::global_dof_index next_free_dof)
         {
 
           // distribute dofs of vertices
@@ -103,10 +103,10 @@ namespace internal
 
         template <int spacedim>
         static
-        unsigned int
+        types::global_dof_index
         distribute_dofs_on_cell (const DoFHandler<2,spacedim> &dof_handler,
                                  const typename DoFHandler<2,spacedim>::active_cell_iterator &cell,
-                                 unsigned int          next_free_dof)
+                                 types::global_dof_index next_free_dof)
         {
           if (dof_handler.get_fe().dofs_per_vertex > 0)
             // number dofs on vertices
@@ -150,10 +150,10 @@ namespace internal
 
         template <int spacedim>
         static
-        unsigned int
+        types::global_dof_index
         distribute_dofs_on_cell (const DoFHandler<3,spacedim> &dof_handler,
                                  const typename DoFHandler<3,spacedim>::active_cell_iterator &cell,
-                                 unsigned int          next_free_dof)
+                                 types::global_dof_index next_free_dof)
         {
           if (dof_handler.get_fe().dofs_per_vertex > 0)
             // number dofs on vertices
@@ -216,12 +216,12 @@ namespace internal
          * Distribute degrees of freedom on all cells, or on cells with the
          * correct subdomain_id if the corresponding argument is not equal to
          * numbers::invalid_subdomain_id. Return the total number of dofs
-         * returned.
+         * distributed.
          */
         template <int dim, int spacedim>
         static
-        unsigned int
-        distribute_dofs (const unsigned int        offset,
+        types::global_dof_index
+        distribute_dofs (const types::global_dof_index        offset,
                          const types::subdomain_id subdomain_id,
                          DoFHandler<dim,spacedim> &dof_handler)
         {
@@ -237,7 +237,7 @@ namespace internal
           tria.save_user_flags(user_flags);
           const_cast<dealii::Triangulation<dim,spacedim> &>(tria).clear_user_flags ();
 
-          unsigned int next_free_dof = offset;
+          types::global_dof_index next_free_dof = offset;
           typename DoFHandler<dim,spacedim>::active_cell_iterator
           cell = dof_handler.begin_active(),
           endc = dof_handler.end();
@@ -529,7 +529,7 @@ namespace internal
         template <int spacedim>
         static
         void
-        renumber_dofs (const std::vector<unsigned int> &new_numbers,
+        renumber_dofs (const std::vector<types::global_dof_index> &new_numbers,
                        const IndexSet &,
                        DoFHandler<1,spacedim>          &dof_handler,
                        const bool check_validity)
@@ -544,7 +544,7 @@ namespace internal
           // numbers may be invalid_dof_index,
           // namely when the appropriate
           // vertex/line/etc is unused
-          for (std::vector<unsigned int>::iterator
+          for (std::vector<types::global_dof_index>::iterator
                i=dof_handler.vertex_dofs.begin();
                i!=dof_handler.vertex_dofs.end(); ++i)
             if (*i != DoFHandler<1,spacedim>::invalid_dof_index)
@@ -561,7 +561,7 @@ namespace internal
                       ExcInternalError ());
 
           for (unsigned int level=0; level<dof_handler.levels.size(); ++level)
-            for (std::vector<unsigned int>::iterator
+            for (std::vector<types::global_dof_index>::iterator
                  i=dof_handler.levels[level]->dof_object.dofs.begin();
                  i!=dof_handler.levels[level]->dof_object.dofs.end(); ++i)
               if (*i != DoFHandler<1,spacedim>::invalid_dof_index)
@@ -622,9 +622,9 @@ namespace internal
         template <int spacedim>
         static
         void
-        renumber_dofs (const std::vector<unsigned int> &new_numbers,
+        renumber_dofs (const std::vector<types::global_dof_index> &new_numbers,
                        const IndexSet &indices,
-                       DoFHandler<2,spacedim>          &dof_handler,
+                       DoFHandler<2,spacedim> &dof_handler,
                        const bool check_validity)
         {
           // note that we can not use cell
@@ -637,7 +637,7 @@ namespace internal
           // numbers may be invalid_dof_index,
           // namely when the appropriate
           // vertex/line/etc is unused
-          for (std::vector<unsigned int>::iterator
+          for (std::vector<types::global_dof_index>::iterator
                i=dof_handler.vertex_dofs.begin();
                i!=dof_handler.vertex_dofs.end(); ++i)
             if (*i != DoFHandler<2,spacedim>::invalid_dof_index)
@@ -654,7 +654,7 @@ namespace internal
                       == false,
                       ExcInternalError ());
 
-          for (std::vector<unsigned int>::iterator
+          for (std::vector<types::global_dof_index>::iterator
                i=dof_handler.faces->lines.dofs.begin();
                i!=dof_handler.faces->lines.dofs.end(); ++i)
             if (*i != DoFHandler<2,spacedim>::invalid_dof_index)
@@ -664,7 +664,7 @@ namespace internal
 
           for (unsigned int level=0; level<dof_handler.levels.size(); ++level)
             {
-              for (std::vector<unsigned int>::iterator
+              for (std::vector<types::global_dof_index>::iterator
                    i=dof_handler.levels[level]->dof_object.dofs.begin();
                    i!=dof_handler.levels[level]->dof_object.dofs.end(); ++i)
                 if (*i != DoFHandler<2,spacedim>::invalid_dof_index)
@@ -768,7 +768,7 @@ namespace internal
         template <int spacedim>
         static
         void
-        renumber_dofs (const std::vector<unsigned int> &new_numbers,
+        renumber_dofs (const std::vector<types::global_dof_index> &new_numbers,
                        const IndexSet &indices,
                        DoFHandler<3,spacedim>          &dof_handler,
                        const bool check_validity)
@@ -783,7 +783,7 @@ namespace internal
           // numbers may be invalid_dof_index,
           // namely when the appropriate
           // vertex/line/etc is unused
-          for (std::vector<unsigned int>::iterator
+          for (std::vector<types::global_dof_index>::iterator
                i=dof_handler.vertex_dofs.begin();
                i!=dof_handler.vertex_dofs.end(); ++i)
             if (*i != DoFHandler<3,spacedim>::invalid_dof_index)
@@ -800,14 +800,14 @@ namespace internal
                       == false,
                       ExcInternalError ());
 
-          for (std::vector<unsigned int>::iterator
+          for (std::vector<types::global_dof_index>::iterator
                i=dof_handler.faces->lines.dofs.begin();
                i!=dof_handler.faces->lines.dofs.end(); ++i)
             if (*i != DoFHandler<3,spacedim>::invalid_dof_index)
               *i = ((indices.n_elements() == 0) ?
                     new_numbers[*i] :
                     new_numbers[indices.index_within_set(*i)]);
-          for (std::vector<unsigned int>::iterator
+          for (std::vector<types::global_dof_index>::iterator
                i=dof_handler.faces->quads.dofs.begin();
                i!=dof_handler.faces->quads.dofs.end(); ++i)
             if (*i != DoFHandler<3,spacedim>::invalid_dof_index)
@@ -817,7 +817,7 @@ namespace internal
 
           for (unsigned int level=0; level<dof_handler.levels.size(); ++level)
             {
-              for (std::vector<unsigned int>::iterator
+              for (std::vector<types::global_dof_index>::iterator
                    i=dof_handler.levels[level]->dof_object.dofs.begin();
                    i!=dof_handler.levels[level]->dof_object.dofs.end(); ++i)
                 if (*i != DoFHandler<3,spacedim>::invalid_dof_index)
@@ -869,7 +869,7 @@ namespace internal
       Sequential<dim,spacedim>::
       distribute_dofs (DoFHandler<dim,spacedim> &dof_handler) const
       {
-        const unsigned int n_dofs =
+        const types::global_dof_index n_dofs =
           Implementation::distribute_dofs (0,
                                            numbers::invalid_subdomain_id,
                                            dof_handler);
@@ -887,8 +887,8 @@ namespace internal
         number_cache.locally_owned_dofs.compress();
 
         number_cache.n_locally_owned_dofs_per_processor
-          = std::vector<unsigned int> (1,
-                                       number_cache.n_global_dofs);
+          = std::vector<types::global_dof_index> (1,
+                                                  number_cache.n_global_dofs);
 
         number_cache.locally_owned_dofs_per_processor
           = std::vector<IndexSet> (1,
@@ -922,7 +922,7 @@ namespace internal
       template <int dim, int spacedim>
       NumberCache
       Sequential<dim,spacedim>::
-      renumber_dofs (const std::vector<unsigned int> &new_numbers,
+      renumber_dofs (const std::vector<types::global_dof_index> &new_numbers,
                      dealii::DoFHandler<dim,spacedim> &dof_handler) const
       {
         Implementation::renumber_dofs (new_numbers, IndexSet(0),
@@ -945,8 +945,8 @@ namespace internal
         number_cache.locally_owned_dofs.compress();
 
         number_cache.n_locally_owned_dofs_per_processor
-          = std::vector<unsigned int> (1,
-                                       number_cache.n_global_dofs);
+          = std::vector<types::global_dof_index> (1,
+                                                  number_cache.n_global_dofs);
 
         number_cache.locally_owned_dofs_per_processor
           = std::vector<IndexSet> (1,
@@ -979,7 +979,7 @@ namespace internal
           {
             std::vector<unsigned int> tree_index;
             std::vector<typename dealii::internal::p4est::types<dim>::quadrant> quadrants;
-            std::vector<unsigned int> dofs;
+            std::vector<dealii::types::global_dof_index> dofs;
 
             unsigned int bytes_for_buffer () const
             {
@@ -987,7 +987,7 @@ namespace internal
                       tree_index.size() * sizeof(unsigned int) +
                       quadrants.size() * sizeof(typename dealii::internal::p4est
                                                 ::types<dim>::quadrant) +
-                      dofs.size() * sizeof(unsigned int));
+                      dofs.size() * sizeof(dealii::types::global_dof_index));
             }
 
             void pack_data (std::vector<char> &buffer) const
@@ -1014,8 +1014,8 @@ namespace internal
 
               std::memcpy(ptr,
                           &dofs[0],
-                          dofs.size() * sizeof(unsigned int));
-              ptr += dofs.size() * sizeof(unsigned int);
+                          dofs.size() * sizeof(dealii::types::global_dof_index));
+              ptr += dofs.size() * sizeof(dealii::types::global_dof_index);
 
               Assert (ptr == &buffer[0]+buffer.size(),
                       ExcInternalError());
@@ -1089,7 +1089,7 @@ namespace internal
                   // this cell's dof_indices
                   // need to be sent to
                   // someone
-                  std::vector<unsigned int>
+                  std::vector<dealii::types::global_dof_index>
                   local_dof_indices (dealii_cell->get_fe().dofs_per_cell);
                   dealii_cell->get_dof_indices (local_dof_indices);
 
@@ -1250,7 +1250,7 @@ namespace internal
           const typename dealii::internal::p4est::types<dim>::quadrant &p4est_cell,
           const typename DoFHandler<dim,spacedim>::level_cell_iterator &dealii_cell,
           const typename dealii::internal::p4est::types<dim>::quadrant &quadrant,
-          unsigned int *dofs)
+          dealii::types::global_dof_index *dofs)
         {
           if (internal::p4est::quadrant_is_equal<dim>(p4est_cell, quadrant))
             {
@@ -1258,7 +1258,7 @@ namespace internal
               Assert(dealii_cell->is_ghost(), ExcInternalError());
 
               // update dof indices of cell
-              std::vector<unsigned int>
+              std::vector<dealii::types::global_dof_index>
               dof_indices (dealii_cell->get_fe().dofs_per_cell);
               dealii_cell->update_cell_dof_indices_cache();
               dealii_cell->get_dof_indices(dof_indices);
@@ -1517,7 +1517,7 @@ namespace internal
           // that are going to send stuff to us
           std::set<dealii::types::subdomain_id> senders;
           {
-            std::vector<unsigned int> local_dof_indices;
+            std::vector<dealii::types::global_dof_index> local_dof_indices;
             typename DoFHandler<dim,spacedim>::active_cell_iterator
             cell, endc = dof_handler.end();
 
@@ -1565,13 +1565,13 @@ namespace internal
               memcpy(&cells, ptr, sizeof(unsigned int));
               ptr+=sizeof(unsigned int);
 
-              //reinterpret too evil?
+              //TODO: reinterpret too evil?
               unsigned int *treeindex=reinterpret_cast<unsigned int *>(ptr);
               ptr+=cells*sizeof(unsigned int);
               typename dealii::internal::p4est::types<dim>::quadrant *quadrant
                 =reinterpret_cast<typename dealii::internal::p4est::types<dim>::quadrant *>(ptr);
               ptr+=cells*sizeof(typename dealii::internal::p4est::types<dim>::quadrant);
-              unsigned int *dofs=reinterpret_cast<unsigned int *>(ptr);
+              dealii::types::global_dof_index *dofs=reinterpret_cast<dealii::types::global_dof_index *>(ptr);
 
               for (unsigned int c=0; c<cells; ++c, dofs+=1+dofs[0])
                 {
@@ -1905,19 +1905,19 @@ namespace internal
 
         //* 1. distribute on own
         //* subdomain
-        const unsigned int n_initial_local_dofs =
+        const dealii::types::global_dof_index n_initial_local_dofs =
           Implementation::distribute_dofs (0, tr->locally_owned_subdomain(),
                                            dof_handler);
 
         //* 2. iterate over ghostcells and
         //kill dofs that are not owned
         //by us
-        std::vector<unsigned int> renumbering(n_initial_local_dofs);
+        std::vector<dealii::types::global_dof_index> renumbering(n_initial_local_dofs);
         for (unsigned int i=0; i<renumbering.size(); ++i)
           renumbering[i] = i;
 
         {
-          std::vector<unsigned int> local_dof_indices;
+          std::vector<dealii::types::global_dof_index> local_dof_indices;
 
           typename DoFHandler<dim,spacedim>::active_cell_iterator
           cell = dof_handler.begin_active(),
@@ -1951,7 +1951,7 @@ namespace internal
 
         // make indices consecutive
         number_cache.n_locally_owned_dofs = 0;
-        for (std::vector<unsigned int>::iterator it=renumbering.begin();
+        for (std::vector<dealii::types::global_dof_index>::iterator it=renumbering.begin();
              it!=renumbering.end(); ++it)
           if (*it != DoFHandler<dim,spacedim>::invalid_dof_index)
             *it = number_cache.n_locally_owned_dofs++;
@@ -1966,14 +1966,14 @@ namespace internal
                         1, MPI_UNSIGNED,
                         tr->get_communicator());
 
-        const unsigned int
+        const dealii::types::global_dof_index
         shift = std::accumulate (number_cache
                                  .n_locally_owned_dofs_per_processor.begin(),
                                  number_cache
                                  .n_locally_owned_dofs_per_processor.begin()
                                  + tr->locally_owned_subdomain(),
-                                 0);
-        for (std::vector<unsigned int>::iterator it=renumbering.begin();
+                                 static_cast<dealii::types::global_dof_index>(0));
+        for (std::vector<dealii::types::global_dof_index>::iterator it=renumbering.begin();
              it!=renumbering.end(); ++it)
           if (*it != DoFHandler<dim,spacedim>::invalid_dof_index)
             (*it) += shift;
@@ -1993,7 +1993,7 @@ namespace internal
                              .n_locally_owned_dofs_per_processor.begin(),
                              number_cache
                              .n_locally_owned_dofs_per_processor.end(),
-                             0);
+                             static_cast<dealii::types::global_dof_index>(0));
 
         number_cache.locally_owned_dofs = IndexSet(number_cache.n_global_dofs);
         number_cache.locally_owned_dofs
@@ -2004,7 +2004,7 @@ namespace internal
         // fill global_dof_indexsets
         number_cache.locally_owned_dofs_per_processor.resize(n_cpus);
         {
-          unsigned int lshift = 0;
+          dealii::types::global_dof_index lshift = 0;
           for (unsigned int i=0; i<n_cpus; ++i)
             {
               number_cache.locally_owned_dofs_per_processor[i]
@@ -2084,7 +2084,7 @@ namespace internal
 #ifdef DEBUG
         //check that we are really done
         {
-          std::vector<unsigned int> local_dof_indices;
+          std::vector<dealii::types::global_dof_index> local_dof_indices;
           typename DoFHandler<dim,spacedim>::active_cell_iterator
           cell, endc = dof_handler.end();
 
@@ -2365,7 +2365,7 @@ namespace internal
       template <int dim, int spacedim>
       NumberCache
       ParallelDistributed<dim, spacedim>::
-      renumber_dofs (const std::vector<unsigned int> &new_numbers,
+      renumber_dofs (const std::vector<dealii::types::global_dof_index> &new_numbers,
                      dealii::DoFHandler<dim,spacedim> &dof_handler) const
       {
         Assert (new_numbers.size() == dof_handler.locally_owned_dofs().n_elements(),
@@ -2390,9 +2390,9 @@ namespace internal
         number_cache.locally_owned_dofs = IndexSet (dof_handler.n_dofs());
         if (dof_handler.locally_owned_dofs().n_elements()>0)
           {
-            std::vector<unsigned int>::const_iterator it = new_numbers.begin();
+            std::vector<dealii::types::global_dof_index>::const_iterator it = new_numbers.begin();
             const unsigned int n_blocks = dof_handler.get_fe().n_blocks();
-            std::vector<std::pair<unsigned int,unsigned int> > block_indices(n_blocks);
+            std::vector<std::pair<dealii::types::global_dof_index,unsigned int> > block_indices(n_blocks);
             block_indices[0].first = *it++;
             block_indices[0].second = 1;
             unsigned int current_block = 0, n_filled_blocks = 1;
@@ -2475,7 +2475,7 @@ namespace internal
         // mark not locally active DoFs as
         // invalid
         {
-          std::vector<unsigned int> local_dof_indices;
+          std::vector<dealii::types::global_dof_index> local_dof_indices;
 
           typename DoFHandler<dim,spacedim>::active_cell_iterator
           cell = dof_handler.begin_active(),
@@ -2620,7 +2620,7 @@ namespace internal
                                .n_locally_owned_dofs_per_processor.begin(),
                                number_cache
                                .n_locally_owned_dofs_per_processor.end(),
-                               0);
+                               static_cast<dealii::types::global_dof_index>(0));
 
           tr->load_user_flags(user_flags);
         }
index f5709f131394e0a506a20c6ae5cb6b8ee1a73ce1..6fbb7f37aa252e78dd00202d3edffda7549f4eac 100644 (file)
@@ -41,7 +41,7 @@ namespace internal
                    const unsigned int       obj_index,
                    const unsigned int       fe_index,
                    const unsigned int       local_index,
-                   const unsigned int       global_index)
+                   const types::global_dof_index       global_index)
     {
       Assert ((fe_index == dealii::DoFHandler<dh_dim, spacedim>::default_fe_index),
               ExcMessage ("Only the default FE index is allowed for non-hp DoFHandler objects"));
index b2563c8dbe4dd30f3f10e2d12def6e0b887b01d7..9335c160ad02dc7ef814cefcebd020005f9ce1d5 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $Name$
 //
-//    Copyright (C) 2006, 2010 by the deal.II authors
+//    Copyright (C) 2006, 2010, 2011 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -21,7 +21,7 @@ for (deal_II_dimension : DIMENSIONS)
 for (deal_II_dimension, structdim : DIMENSIONS)
   {
     template
-    unsigned int
+    types::global_dof_index
     DoFObjects<structdim>::
     get_dof_index (const dealii::DoFHandler<deal_II_dimension> &dof_handler,
                   const unsigned int       obj_index,
@@ -35,12 +35,12 @@ for (deal_II_dimension, structdim : DIMENSIONS)
                   const unsigned int       obj_index,
                   const unsigned int       fe_index,
                   const unsigned int       local_index,
-                  const unsigned int       global_index);
+                  const types::global_dof_index       global_index);
 
 #if (deal_II_dimension < 3) && (structdim < 3)
 
     template
-    unsigned int
+    types::global_dof_index
     DoFObjects<structdim>::
     get_dof_index (const dealii::DoFHandler<deal_II_dimension,deal_II_dimension+1> &dof_handler,
                   const unsigned int       obj_index,
@@ -75,7 +75,7 @@ for (deal_II_dimension, structdim : DIMENSIONS)
                   const unsigned int       obj_index,
                   const unsigned int       fe_index,
                   const unsigned int       local_index,
-                  const unsigned int       global_index);
+                  const types::global_dof_index       global_index);
 #endif
   }
 
index 8037b4dd153a6a3f7c34aa3f44608a37af964b40..1981bbc8fcc650eeb7c31bb76a26147930097d1e 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $name$
 //
-//    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 by the deal.II authors
+//    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -15,6 +15,7 @@
 #include <deal.II/base/thread_management.h>
 #include <deal.II/base/utilities.h>
 #include <deal.II/base/quadrature_lib.h>
+#include <deal.II/base/types.h>
 #include <deal.II/base/template_constraints.h>
 
 #include <deal.II/lac/sparsity_pattern.h>
@@ -68,7 +69,7 @@ namespace DoFRenumbering
 {
   namespace boost
   {
-    namespace types
+    namespace boosttypes
     {
       using namespace ::boost;
       using namespace std;
@@ -88,8 +89,8 @@ namespace DoFRenumbering
       template <class DH>
       void create_graph (const DH                                                       &dof_handler,
                          const bool                                                      use_constraints,
-                         types::Graph                                                   &graph,
-                         types::property_map<types::Graph,types::vertex_degree_t>::type &graph_degree)
+                         boosttypes::Graph                                                   &graph,
+                         boosttypes::property_map<boosttypes::Graph,boosttypes::vertex_degree_t>::type &graph_degree)
       {
         {
           // create intermediate sparsity pattern
@@ -109,7 +110,7 @@ namespace DoFRenumbering
               add_edge (row, csp.column_number (row, col), graph);
         }
 
-        types::graph_traits<types::Graph>::vertex_iterator ui, ui_end;
+        boosttypes::graph_traits<boosttypes::Graph>::vertex_iterator ui, ui_end;
 
         graph_degree = get(::boost::vertex_degree, graph);
         for (::boost::tie(ui, ui_end) = vertices(graph); ui != ui_end; ++ui)
@@ -124,8 +125,8 @@ namespace DoFRenumbering
                    const bool       reversed_numbering,
                    const bool       use_constraints)
     {
-      std::vector<unsigned int> renumbering(dof_handler.n_dofs(),
-                                            DH::invalid_dof_index);
+      std::vector<types::global_dof_index> renumbering(dof_handler.n_dofs(),
+                                                       DH::invalid_dof_index);
       compute_Cuthill_McKee(renumbering, dof_handler, reversed_numbering,
                             use_constraints);
 
@@ -138,23 +139,23 @@ namespace DoFRenumbering
 
     template <class DH>
     void
-    compute_Cuthill_McKee (std::vector<unsigned int> &new_dof_indices,
+    compute_Cuthill_McKee (std::vector<types::global_dof_index> &new_dof_indices,
                            const DH        &dof_handler,
                            const bool       reversed_numbering,
                            const bool       use_constraints)
     {
-      types::Graph
+      boosttypes::Graph
       graph(dof_handler.n_dofs());
-      types::property_map<types::Graph,types::vertex_degree_t>::type
+      boosttypes::property_map<boosttypes::Graph,boosttypes::vertex_degree_t>::type
       graph_degree;
 
       internal::create_graph (dof_handler, use_constraints, graph, graph_degree);
 
-      types::property_map<types::Graph, types::vertex_index_t>::type
+      boosttypes::property_map<boosttypes::Graph, boosttypes::vertex_index_t>::type
       index_map = get(::boost::vertex_index, graph);
 
 
-      std::vector<types::Vertex> inv_perm(num_vertices(graph));
+      std::vector<boosttypes::Vertex> inv_perm(num_vertices(graph));
 
       if (reversed_numbering == false)
         ::boost::cuthill_mckee_ordering(graph, inv_perm.rbegin(),
@@ -165,7 +166,7 @@ namespace DoFRenumbering
                                         get(::boost::vertex_color, graph),
                                         make_degree_map(graph));
 
-      for (types::size_type c = 0; c != inv_perm.size(); ++c)
+      for (boosttypes::size_type c = 0; c != inv_perm.size(); ++c)
         new_dof_indices[index_map[inv_perm[c]]] = c;
 
       Assert (std::find (new_dof_indices.begin(), new_dof_indices.end(),
@@ -181,8 +182,8 @@ namespace DoFRenumbering
                    const bool       reversed_numbering,
                    const bool       use_constraints)
     {
-      std::vector<unsigned int> renumbering(dof_handler.n_dofs(),
-                                            DH::invalid_dof_index);
+      std::vector<types::global_dof_index> renumbering(dof_handler.n_dofs(),
+                                                       DH::invalid_dof_index);
       compute_king_ordering(renumbering, dof_handler, reversed_numbering,
                             use_constraints);
 
@@ -195,30 +196,30 @@ namespace DoFRenumbering
 
     template <class DH>
     void
-    compute_king_ordering (std::vector<unsigned int> &new_dof_indices,
+    compute_king_ordering (std::vector<types::global_dof_index> &new_dof_indices,
                            const DH        &dof_handler,
                            const bool       reversed_numbering,
                            const bool       use_constraints)
     {
-      types::Graph
+      boosttypes::Graph
       graph(dof_handler.n_dofs());
-      types::property_map<types::Graph,types::vertex_degree_t>::type
+      boosttypes::property_map<boosttypes::Graph,boosttypes::vertex_degree_t>::type
       graph_degree;
 
       internal::create_graph (dof_handler, use_constraints, graph, graph_degree);
 
-      types::property_map<types::Graph, types::vertex_index_t>::type
+      boosttypes::property_map<boosttypes::Graph, boosttypes::vertex_index_t>::type
       index_map = get(::boost::vertex_index, graph);
 
 
-      std::vector<types::Vertex> inv_perm(num_vertices(graph));
+      std::vector<boosttypes::Vertex> inv_perm(num_vertices(graph));
 
       if (reversed_numbering == false)
         ::boost::king_ordering(graph, inv_perm.rbegin());
       else
         ::boost::king_ordering(graph, inv_perm.begin());
 
-      for (types::size_type c = 0; c != inv_perm.size(); ++c)
+      for (boosttypes::size_type c = 0; c != inv_perm.size(); ++c)
         new_dof_indices[index_map[inv_perm[c]]] = c;
 
       Assert (std::find (new_dof_indices.begin(), new_dof_indices.end(),
@@ -234,8 +235,8 @@ namespace DoFRenumbering
                     const bool       reversed_numbering,
                     const bool       use_constraints)
     {
-      std::vector<unsigned int> renumbering(dof_handler.n_dofs(),
-                                            DH::invalid_dof_index);
+      std::vector<types::global_dof_index> renumbering(dof_handler.n_dofs(),
+                                                       DH::invalid_dof_index);
       compute_minimum_degree(renumbering, dof_handler, reversed_numbering,
                              use_constraints);
 
@@ -248,7 +249,7 @@ namespace DoFRenumbering
 
     template <class DH>
     void
-    compute_minimum_degree (std::vector<unsigned int> &new_dof_indices,
+    compute_minimum_degree (std::vector<types::global_dof_index> &new_dof_indices,
                             const DH        &dof_handler,
                             const bool       reversed_numbering,
                             const bool       use_constraints)
@@ -275,7 +276,7 @@ namespace DoFRenumbering
 
       Graph G(n);
 
-      std::vector<unsigned int> dofs_on_this_cell;
+      std::vector<dealii::types::global_dof_index> dofs_on_this_cell;
 
       typename DH::active_cell_iterator cell = dof_handler.begin_active(),
                                         endc = dof_handler.end();
@@ -353,10 +354,10 @@ namespace DoFRenumbering
   Cuthill_McKee (DH              &dof_handler,
                  const bool       reversed_numbering,
                  const bool       use_constraints,
-                 const std::vector<unsigned int> &starting_indices)
+                 const std::vector<types::global_dof_index> &starting_indices)
   {
-    std::vector<unsigned int> renumbering(dof_handler.n_dofs(),
-                                          DH::invalid_dof_index);
+    std::vector<types::global_dof_index> renumbering(dof_handler.n_dofs(),
+                                                     DH::invalid_dof_index);
     compute_Cuthill_McKee(renumbering, dof_handler, reversed_numbering,
                           use_constraints, starting_indices);
 
@@ -370,11 +371,11 @@ namespace DoFRenumbering
 
   template <class DH>
   void
-  compute_Cuthill_McKee (std::vector<unsigned int> &new_indices,
+  compute_Cuthill_McKee (std::vector<types::global_dof_index> &new_indices,
                          const DH                  &dof_handler,
                          const bool                 reversed_numbering,
                          const bool                 use_constraints,
-                         const std::vector<unsigned int> &starting_indices)
+                         const std::vector<types::global_dof_index> &starting_indices)
   {
     // make the connection graph. in
     // more than 2d use an intermediate
@@ -432,7 +433,7 @@ namespace DoFRenumbering
   void Cuthill_McKee (DH               &dof_handler,
                       const unsigned int               level,
                       const bool                       reversed_numbering,
-                      const std::vector<unsigned int> &starting_indices)
+                      const std::vector<types::global_dof_index> &starting_indices)
   {
     Assert(dof_handler.n_dofs(level) != numbers::invalid_unsigned_int,
            ExcNotInitialized());
@@ -443,7 +444,7 @@ namespace DoFRenumbering
                               dof_handler.max_couplings_between_dofs());
     MGTools::make_sparsity_pattern (dof_handler, sparsity, level);
 
-    std::vector<unsigned int> new_indices(sparsity.n_rows());
+    std::vector<types::global_dof_index> new_indices(sparsity.n_rows());
     SparsityTools::reorder_Cuthill_McKee (sparsity, new_indices,
                                           starting_indices);
 
@@ -463,15 +464,15 @@ namespace DoFRenumbering
   component_wise (DoFHandler<dim,spacedim>        &dof_handler,
                   const std::vector<unsigned int> &component_order_arg)
   {
-    std::vector<unsigned int> renumbering (dof_handler.n_locally_owned_dofs(),
-                                           DoFHandler<dim>::invalid_dof_index);
+    std::vector<types::global_dof_index> renumbering (dof_handler.n_locally_owned_dofs(),
+                                                      DoFHandler<dim>::invalid_dof_index);
 
     typename DoFHandler<dim,spacedim>::active_cell_iterator
     start = dof_handler.begin_active();
     const typename DoFHandler<dim,spacedim>::level_cell_iterator
     end = dof_handler.end();
 
-    const unsigned int result =
+    const types::global_dof_index result =
       compute_component_wise<dim,spacedim,
       typename DoFHandler<dim,spacedim>::active_cell_iterator,
       typename DoFHandler<dim,spacedim>::level_cell_iterator>
@@ -519,7 +520,7 @@ namespace DoFRenumbering
                   const std::vector<unsigned int> &component_order_arg)
   {
 //TODO: Merge with previous function
-    std::vector<unsigned int> renumbering (dof_handler.n_dofs(),
+    std::vector<types::global_dof_index> renumbering (dof_handler.n_dofs(),
                                            hp::DoFHandler<dim>::invalid_dof_index);
 
     typename hp::DoFHandler<dim>::active_cell_iterator
@@ -527,7 +528,7 @@ namespace DoFRenumbering
     const typename hp::DoFHandler<dim>::level_cell_iterator
     end = dof_handler.end();
 
-    const unsigned int result =
+    const types::global_dof_index result =
       compute_component_wise<hp::DoFHandler<dim>::dimension,hp::DoFHandler<dim>::space_dimension,
       typename hp::DoFHandler<dim>::active_cell_iterator,
       typename hp::DoFHandler<dim>::level_cell_iterator>
@@ -552,13 +553,13 @@ namespace DoFRenumbering
     Assert(dof_handler.n_dofs(level) != numbers::invalid_unsigned_int,
            ExcNotInitialized());
 
-    std::vector<unsigned int> renumbering (dof_handler.n_dofs(level),
+    std::vector<types::global_dof_index> renumbering (dof_handler.n_dofs(level),
                                            DH::invalid_dof_index);
 
     typename DH::level_cell_iterator start =dof_handler.begin(level);
     typename DH::level_cell_iterator end = dof_handler.end(level);
 
-    const unsigned int result =
+    const types::global_dof_index result =
       compute_component_wise<DH::dimension, DH::space_dimension,
       typename DH::level_cell_iterator, typename DH::level_cell_iterator>
       (renumbering, start, end, component_order_arg);
@@ -575,8 +576,8 @@ namespace DoFRenumbering
 
 
   template <int dim, int spacedim, class ITERATOR, class ENDITERATOR>
-  unsigned int
-  compute_component_wise (std::vector<unsigned int> &new_indices,
+  types::global_dof_index
+  compute_component_wise (std::vector<types::global_dof_index> &new_indices,
                           const ITERATOR    &start,
                           const ENDITERATOR &end,
                           const std::vector<unsigned int> &component_order_arg)
@@ -612,7 +613,7 @@ namespace DoFRenumbering
 
     // vector to hold the dof indices on
     // the cell we visit at a time
-    std::vector<unsigned int> local_dof_indices;
+    std::vector<types::global_dof_index> local_dof_indices;
 
     // prebuilt list to which component
     // a given dof on a cell
@@ -657,7 +658,7 @@ namespace DoFRenumbering
     // dof indices are entered
     // multiply, so we will have to
     // take care of that
-    std::vector<std::vector<unsigned int> >
+    std::vector<std::vector<types::global_dof_index> >
     component_to_dof_map (fe_collection.n_components());
     for (ITERATOR cell=start; cell!=end; ++cell)
       if (cell->is_locally_owned())
@@ -712,24 +713,26 @@ namespace DoFRenumbering
     // calculate the number of locally owned
     // DoFs per bucket
     const unsigned int n_buckets = fe_collection.n_components();
-    std::vector<unsigned int> shifts(n_buckets);
+    std::vector<types::global_dof_index> shifts(n_buckets);
 
     if (const parallel::distributed::Triangulation<dim,spacedim> *tria
         = (dynamic_cast<const parallel::distributed::Triangulation<dim,spacedim>*>
            (&start->get_dof_handler().get_tria())))
       {
 #ifdef DEAL_II_USE_P4EST
-        std::vector<unsigned int> local_dof_count(n_buckets);
+        std::vector<types::global_dof_index> local_dof_count(n_buckets);
 
         for (unsigned int c=0; c<n_buckets; ++c)
           local_dof_count[c] = component_to_dof_map[c].size();
 
 
         // gather information from all CPUs
-        std::vector<unsigned int>
+        std::vector<types::global_dof_index>
         all_dof_counts(fe_collection.n_components() *
                        Utilities::MPI::n_mpi_processes (tria->get_communicator()));
 
+       Assert (sizeof(types::global_dof_index) == sizeof(unsigned int),
+               ExcNotImplemented());
         MPI_Allgather ( &local_dof_count[0], n_buckets, MPI_UNSIGNED, &all_dof_counts[0],
                         n_buckets, MPI_UNSIGNED, tria->get_communicator());
 
@@ -767,7 +770,7 @@ namespace DoFRenumbering
     // now concatenate all the
     // components in the order the user
     // desired to see
-    unsigned int next_free_index = 0;
+    types::global_dof_index next_free_index = 0;
     for (unsigned int component=0; component<fe_collection.n_components(); ++component)
       {
         const typename std::vector<unsigned int>::const_iterator
@@ -800,7 +803,7 @@ namespace DoFRenumbering
   void
   block_wise (DoFHandler<dim,spacedim> &dof_handler)
   {
-    std::vector<unsigned int> renumbering (dof_handler.n_locally_owned_dofs(),
+    std::vector<types::global_dof_index> renumbering (dof_handler.n_locally_owned_dofs(),
                                            DoFHandler<dim>::invalid_dof_index);
 
     typename DoFHandler<dim,spacedim>::active_cell_iterator
@@ -808,7 +811,7 @@ namespace DoFRenumbering
     const typename DoFHandler<dim,spacedim>::level_cell_iterator
     end = dof_handler.end();
 
-    const unsigned int result =
+    const types::global_dof_index result =
       compute_block_wise<dim, spacedim, typename DoFHandler<dim,spacedim>::active_cell_iterator,
       typename DoFHandler<dim,spacedim>::level_cell_iterator>
       (renumbering, start, end);
@@ -838,15 +841,15 @@ namespace DoFRenumbering
   void
   block_wise (hp::DoFHandler<dim> &dof_handler)
   {
-    std::vector<unsigned int> renumbering (dof_handler.n_dofs(),
-                                           hp::DoFHandler<dim>::invalid_dof_index);
+    std::vector<types::global_dof_index> renumbering (dof_handler.n_dofs(),
+                                                      hp::DoFHandler<dim>::invalid_dof_index);
 
     typename hp::DoFHandler<dim>::active_cell_iterator
     start = dof_handler.begin_active();
     const typename hp::DoFHandler<dim>::level_cell_iterator
     end = dof_handler.end();
 
-    const unsigned int result =
+    const types::global_dof_index result =
       compute_block_wise<dim, dim, typename hp::DoFHandler<dim>::active_cell_iterator,
       typename hp::DoFHandler<dim>::level_cell_iterator>(renumbering,
                                                          start, end);
@@ -869,7 +872,7 @@ namespace DoFRenumbering
     Assert(dof_handler.n_dofs(level) != numbers::invalid_unsigned_int,
            ExcNotInitialized());
 
-    std::vector<unsigned int> renumbering (dof_handler.n_dofs(level),
+    std::vector<types::global_dof_index> renumbering (dof_handler.n_dofs(level),
                                            DoFHandler<dim>::invalid_dof_index);
 
     typename DoFHandler<dim>::level_cell_iterator
@@ -877,7 +880,7 @@ namespace DoFRenumbering
     typename DoFHandler<dim>::level_cell_iterator
     end = dof_handler.end(level);
 
-    const unsigned int result =
+    const types::global_dof_index result =
       compute_block_wise<dim, dim, typename DoFHandler<dim>::level_cell_iterator,
       typename DoFHandler<dim>::level_cell_iterator>(
         renumbering, start, end);
@@ -919,8 +922,8 @@ namespace DoFRenumbering
 
 
   template <int dim, int spacedim, class ITERATOR, class ENDITERATOR>
-  unsigned int
-  compute_block_wise (std::vector<unsigned int> &new_indices,
+  types::global_dof_index
+  compute_block_wise (std::vector<types::global_dof_index> &new_indices,
                       const ITERATOR    &start,
                       const ENDITERATOR &end)
   {
@@ -937,12 +940,12 @@ namespace DoFRenumbering
 
     // vector to hold the dof indices on
     // the cell we visit at a time
-    std::vector<unsigned int> local_dof_indices;
+    std::vector<types::global_dof_index> local_dof_indices;
 
     // prebuilt list to which block
     // a given dof on a cell
     // should go.
-    std::vector<std::vector<unsigned int> > block_list (fe_collection.size());
+    std::vector<std::vector<types::global_dof_index> > block_list (fe_collection.size());
     for (unsigned int f=0; f<fe_collection.size(); ++f)
       {
         const FiniteElement<dim,spacedim> &fe = fe_collection[f];
@@ -963,7 +966,7 @@ namespace DoFRenumbering
     // dof indices are entered
     // multiply, so we will have to
     // take care of that
-    std::vector<std::vector<unsigned int> >
+    std::vector<std::vector<types::global_dof_index> >
     block_to_dof_map (fe_collection.n_blocks());
     for (ITERATOR cell=start; cell!=end; ++cell)
       if (cell->is_locally_owned())
@@ -1007,24 +1010,26 @@ namespace DoFRenumbering
     // calculate the number of locally owned
     // DoFs per bucket
     const unsigned int n_buckets = fe_collection.n_blocks();
-    std::vector<unsigned int> shifts(n_buckets);
+    std::vector<types::global_dof_index> shifts(n_buckets);
 
     if (const parallel::distributed::Triangulation<dim,spacedim> *tria
         = (dynamic_cast<const parallel::distributed::Triangulation<dim,spacedim>*>
            (&start->get_dof_handler().get_tria())))
       {
 #ifdef DEAL_II_USE_P4EST
-        std::vector<unsigned int> local_dof_count(n_buckets);
+        std::vector<types::global_dof_index> local_dof_count(n_buckets);
 
         for (unsigned int c=0; c<n_buckets; ++c)
           local_dof_count[c] = block_to_dof_map[c].size();
 
 
         // gather information from all CPUs
-        std::vector<unsigned int>
+        std::vector<types::global_dof_index>
         all_dof_counts(fe_collection.n_components() *
                        Utilities::MPI::n_mpi_processes (tria->get_communicator()));
 
+       Assert (sizeof(types::global_dof_index) == sizeof(unsigned int),
+               ExcNotImplemented());
         MPI_Allgather ( &local_dof_count[0], n_buckets, MPI_UNSIGNED, &all_dof_counts[0],
                         n_buckets, MPI_UNSIGNED, tria->get_communicator());
 
@@ -1062,7 +1067,7 @@ namespace DoFRenumbering
     // now concatenate all the
     // components in the order the user
     // desired to see
-    unsigned int next_free_index = 0;
+    types::global_dof_index next_free_index = 0;
     for (unsigned int block=0; block<fe_collection.n_blocks(); ++block)
       {
         const typename std::vector<unsigned int>::const_iterator
@@ -1097,10 +1102,10 @@ namespace DoFRenumbering
 
 // Note that this function only works for active dofs.
     template <int dim, class iterator>
-    unsigned int
+    types::global_dof_index
     compute_hierarchical_recursive (
-      unsigned int next_free,
-      std::vector<unsigned int> &new_indices,
+      types::global_dof_index next_free,
+      std::vector<types::global_dof_index> &new_indices,
       const iterator &cell,
       const IndexSet &locally_owned)
     {
@@ -1119,7 +1124,7 @@ namespace DoFRenumbering
           if (cell->is_locally_owned())
             {
               const unsigned int dofs_per_cell = cell->get_fe().dofs_per_cell;
-              std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+              std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
               cell->get_dof_indices (local_dof_indices);
 
               for (unsigned int i = 0; i < dofs_per_cell; ++i)
@@ -1147,12 +1152,12 @@ namespace DoFRenumbering
   void
   hierarchical (DoFHandler<dim> &dof_handler)
   {
-    std::vector<unsigned int> renumbering (dof_handler.n_locally_owned_dofs(),
+    std::vector<types::global_dof_index> renumbering (dof_handler.n_locally_owned_dofs(),
                                            DoFHandler<dim>::invalid_dof_index);
 
     typename DoFHandler<dim>::level_cell_iterator cell;
 
-    unsigned int next_free = 0;
+    types::global_dof_index next_free = 0;
     const IndexSet locally_owned = dof_handler.locally_owned_dofs();
 
     const parallel::distributed::Triangulation<dim> *tria
@@ -1222,8 +1227,8 @@ namespace DoFRenumbering
   sort_selected_dofs_back (DH                      &dof_handler,
                            const std::vector<bool> &selected_dofs)
   {
-    std::vector<unsigned int> renumbering(dof_handler.n_dofs(),
-                                          DH::invalid_dof_index);
+    std::vector<types::global_dof_index> renumbering(dof_handler.n_dofs(),
+                                                     DH::invalid_dof_index);
     compute_sort_selected_dofs_back(renumbering, dof_handler, selected_dofs);
 
     dof_handler.renumber_dofs(renumbering);
@@ -1240,7 +1245,7 @@ namespace DoFRenumbering
     Assert(dof_handler.n_dofs(level) != numbers::invalid_unsigned_int,
            ExcNotInitialized());
 
-    std::vector<unsigned int> renumbering(dof_handler.n_dofs(level),
+    std::vector<types::global_dof_index> renumbering(dof_handler.n_dofs(level),
                                           DH::invalid_dof_index);
     compute_sort_selected_dofs_back(renumbering, dof_handler, selected_dofs, level);
 
@@ -1251,11 +1256,11 @@ namespace DoFRenumbering
 
   template <class DH>
   void
-  compute_sort_selected_dofs_back (std::vector<unsigned int> &new_indices,
+  compute_sort_selected_dofs_back (std::vector<types::global_dof_index> &new_indices,
                                    const DH                  &dof_handler,
                                    const std::vector<bool>   &selected_dofs)
   {
-    const unsigned int n_dofs = dof_handler.n_dofs();
+    const types::global_dof_index n_dofs = dof_handler.n_dofs();
     Assert (selected_dofs.size() == n_dofs,
             ExcDimensionMismatch (selected_dofs.size(), n_dofs));
 
@@ -1264,13 +1269,13 @@ namespace DoFRenumbering
     Assert (new_indices.size() == n_dofs,
             ExcDimensionMismatch(new_indices.size(), n_dofs));
 
-    const unsigned int   n_selected_dofs = std::count (selected_dofs.begin(),
-                                                       selected_dofs.end(),
-                                                       false);
+    const types::global_dof_index   n_selected_dofs = std::count (selected_dofs.begin(),
+                                                      selected_dofs.end(),
+                                                      false);
 
-    unsigned int next_unselected = 0;
-    unsigned int next_selected   = n_selected_dofs;
-    for (unsigned int i=0; i<n_dofs; ++i)
+    types::global_dof_index next_unselected = 0;
+    types::global_dof_index next_selected   = n_selected_dofs;
+    for (types::global_dof_index i=0; i<n_dofs; ++i)
       if (selected_dofs[i] == false)
         {
           new_indices[i] = next_unselected;
@@ -1289,7 +1294,7 @@ namespace DoFRenumbering
 
   template <class DH>
   void
-  compute_sort_selected_dofs_back (std::vector<unsigned int> &new_indices,
+  compute_sort_selected_dofs_back (std::vector<types::global_dof_index> &new_indices,
                                    const DH                  &dof_handler,
                                    const std::vector<bool>   &selected_dofs,
                                    const unsigned int         level)
@@ -1333,8 +1338,8 @@ namespace DoFRenumbering
   void
   cell_wise (DH &dof, const std::vector<typename DH::active_cell_iterator> &cells)
   {
-    std::vector<unsigned int> renumbering(dof.n_dofs());
-    std::vector<unsigned int> reverse(dof.n_dofs());
+    std::vector<types::global_dof_index> renumbering(dof.n_dofs());
+    std::vector<types::global_dof_index> reverse(dof.n_dofs());
     compute_cell_wise(renumbering, reverse, dof, cells);
 
     dof.renumber_dofs(renumbering);
@@ -1344,8 +1349,8 @@ namespace DoFRenumbering
   template <class DH>
   void
   compute_cell_wise (
-    std::vector<unsigned int> &new_indices,
-    std::vector<unsigned int> &reverse,
+    std::vector<types::global_dof_index> &new_indices,
+    std::vector<types::global_dof_index> &reverse,
     const DH &dof,
     const typename std::vector<typename DH::active_cell_iterator> &cells)
   {
@@ -1353,7 +1358,7 @@ namespace DoFRenumbering
            ExcDimensionMismatch(cells.size(),
                                 dof.get_tria().n_active_cells()));
 
-    unsigned int n_global_dofs = dof.n_dofs();
+    types::global_dof_index n_global_dofs = dof.n_dofs();
 
     // Actually, we compute the
     // inverse of the reordering
@@ -1371,7 +1376,7 @@ namespace DoFRenumbering
     // make sure, that each dof is
     // reordered only once.
     std::vector<bool> already_sorted(n_global_dofs, false);
-    std::vector<unsigned int> cell_dofs;
+    std::vector<types::global_dof_index> cell_dofs;
 
     unsigned int global_index = 0;
 
@@ -1405,7 +1410,7 @@ namespace DoFRenumbering
       }
     Assert(global_index == n_global_dofs, ExcRenumberingIncomplete());
 
-    for (unsigned int i=0; i<reverse.size(); ++i)
+    for (types::global_dof_index i=0; i<reverse.size(); ++i)
       new_indices[reverse[i]] = i;
   }
 
@@ -1420,8 +1425,8 @@ namespace DoFRenumbering
     Assert(dof.n_dofs(level) != numbers::invalid_unsigned_int,
            ExcNotInitialized());
 
-    std::vector<unsigned int> renumbering(dof.n_dofs(level));
-    std::vector<unsigned int> reverse(dof.n_dofs(level));
+    std::vector<types::global_dof_index> renumbering(dof.n_dofs(level));
+    std::vector<types::global_dof_index> reverse(dof.n_dofs(level));
 
     compute_cell_wise(renumbering, reverse, dof, level, cells);
     dof.renumber_dofs(level, renumbering);
@@ -1431,8 +1436,8 @@ namespace DoFRenumbering
 
   template <class DH>
   void compute_cell_wise (
-    std::vector<unsigned int> &new_order,
-    std::vector<unsigned int> &reverse,
+    std::vector<types::global_dof_index> &new_order,
+    std::vector<types::global_dof_index> &reverse,
     const DH &dof,
     const unsigned int level,
     const typename std::vector<typename DH::level_cell_iterator> &cells)
@@ -1449,7 +1454,7 @@ namespace DoFRenumbering
     unsigned int n_cell_dofs = dof.get_fe().n_dofs_per_cell();
 
     std::vector<bool> already_sorted(n_global_dofs, false);
-    std::vector<unsigned int> cell_dofs(n_cell_dofs);
+    std::vector<types::global_dof_index> cell_dofs(n_cell_dofs);
 
     unsigned int global_index = 0;
 
@@ -1473,7 +1478,7 @@ namespace DoFRenumbering
       }
     Assert(global_index == n_global_dofs, ExcRenumberingIncomplete());
 
-    for (unsigned int i=0; i<new_order.size(); ++i)
+    for (types::global_dof_index i=0; i<new_order.size(); ++i)
       new_order[reverse[i]] = i;
   }
 
@@ -1485,8 +1490,8 @@ namespace DoFRenumbering
               const Point<DH::space_dimension> &direction,
               const bool dof_wise_renumbering)
   {
-    std::vector<unsigned int> renumbering(dof.n_dofs());
-    std::vector<unsigned int> reverse(dof.n_dofs());
+    std::vector<types::global_dof_index> renumbering(dof.n_dofs());
+    std::vector<types::global_dof_index> reverse(dof.n_dofs());
     compute_downstream(renumbering, reverse, dof, direction,
                        dof_wise_renumbering);
 
@@ -1508,8 +1513,8 @@ namespace DoFRenumbering
   template <class DH>
   void
   compute_downstream (
-    std::vector<unsigned int> &new_indices,
-    std::vector<unsigned int> &reverse,
+    std::vector<types::global_dof_index> &new_indices,
+    std::vector<types::global_dof_index> &reverse,
     const DH &dof,
     const Point<DH::space_dimension> &direction,
     const bool dof_wise_renumbering)
@@ -1558,7 +1563,7 @@ namespace DoFRenumbering
 
         std::vector<bool> already_touched (n_dofs, false);
 
-        std::vector<unsigned int> local_dof_indices;
+        std::vector<types::global_dof_index> local_dof_indices;
         typename DH::active_cell_iterator begin = dof.begin_active();
         typename DH::active_cell_iterator end = dof.end();
         for ( ; begin != end; ++begin)
@@ -1584,7 +1589,7 @@ namespace DoFRenumbering
         ComparePointwiseDownstream<DH::space_dimension> comparator (direction);
         std::sort (support_point_list.begin(), support_point_list.end(),
                    comparator);
-        for (unsigned int i=0; i<n_dofs; ++i)
+        for (types::global_dof_index i=0; i<n_dofs; ++i)
           new_indices[support_point_list[i].second] = i;
       }
   }
@@ -1597,8 +1602,8 @@ namespace DoFRenumbering
                    const Point<DH::space_dimension>  &direction,
                    const bool         dof_wise_renumbering)
   {
-    std::vector<unsigned int> renumbering(dof.n_dofs(level));
-    std::vector<unsigned int> reverse(dof.n_dofs(level));
+    std::vector<types::global_dof_index> renumbering(dof.n_dofs(level));
+    std::vector<types::global_dof_index> reverse(dof.n_dofs(level));
     compute_downstream(renumbering, reverse, dof, level, direction,
                        dof_wise_renumbering);
 
@@ -1610,8 +1615,8 @@ namespace DoFRenumbering
   template <class DH>
   void
   compute_downstream (
-    std::vector<unsigned int> &new_indices,
-    std::vector<unsigned int> &reverse,
+    std::vector<types::global_dof_index> &new_indices,
+    std::vector<types::global_dof_index> &reverse,
     const DH &dof,
     const unsigned int level,
     const Point<DH::space_dimension> &direction,
@@ -1646,7 +1651,7 @@ namespace DoFRenumbering
         std::vector<bool> already_touched (dof.n_dofs(), false);
 
         const unsigned int dofs_per_cell = dof.get_fe().dofs_per_cell;
-        std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+        std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
         typename DH::level_cell_iterator begin = dof.begin(level);
         typename DH::level_cell_iterator end = dof.end(level);
         for ( ; begin != end; ++begin)
@@ -1669,7 +1674,7 @@ namespace DoFRenumbering
         ComparePointwiseDownstream<DH::space_dimension> comparator (direction);
         std::sort (support_point_list.begin(), support_point_list.end(),
                    comparator);
-        for (unsigned int i=0; i<n_dofs; ++i)
+        for (types::global_dof_index i=0; i<n_dofs; ++i)
           new_indices[support_point_list[i].second] = i;
       }
   }
@@ -1756,7 +1761,7 @@ namespace DoFRenumbering
     const Point<DH::space_dimension> &center,
     const bool counter)
   {
-    std::vector<unsigned int> renumbering(dof.n_dofs());
+    std::vector<types::global_dof_index> renumbering(dof.n_dofs());
     compute_clockwise_dg(renumbering, dof, center, counter);
 
     dof.renumber_dofs(renumbering);
@@ -1767,7 +1772,7 @@ namespace DoFRenumbering
   template <class DH>
   void
   compute_clockwise_dg (
-    std::vector<unsigned int> &new_indices,
+    std::vector<types::global_dof_index> &new_indices,
     const DH &dof,
     const Point<DH::space_dimension> &center,
     const bool counter)
@@ -1782,7 +1787,7 @@ namespace DoFRenumbering
     std::copy (begin, end, ordered_cells.begin());
     std::sort (ordered_cells.begin(), ordered_cells.end(), comparator);
 
-    std::vector<unsigned int> reverse(new_indices.size());
+    std::vector<types::global_dof_index> reverse(new_indices.size());
     compute_cell_wise(new_indices, reverse, dof, ordered_cells);
   }
 
@@ -1813,8 +1818,8 @@ namespace DoFRenumbering
   void
   random (DH &dof_handler)
   {
-    std::vector<unsigned int> renumbering(dof_handler.n_dofs(),
-                                          DH::invalid_dof_index);
+    std::vector<types::global_dof_index> renumbering(dof_handler.n_dofs(),
+                                                     DH::invalid_dof_index);
     compute_random(renumbering, dof_handler);
 
     dof_handler.renumber_dofs(renumbering);
@@ -1825,10 +1830,10 @@ namespace DoFRenumbering
   template <class DH>
   void
   compute_random (
-    std::vector<unsigned int> &new_indices,
+    std::vector<types::global_dof_index> &new_indices,
     const DH                  &dof_handler)
   {
-    const unsigned int n_dofs = dof_handler.n_dofs();
+    const types::global_dof_index n_dofs = dof_handler.n_dofs();
     Assert(new_indices.size() == n_dofs,
            ExcDimensionMismatch(new_indices.size(), n_dofs));
 
@@ -1844,8 +1849,8 @@ namespace DoFRenumbering
   void
   subdomain_wise (DH &dof_handler)
   {
-    std::vector<unsigned int> renumbering(dof_handler.n_dofs(),
-                                          DH::invalid_dof_index);
+    std::vector<types::global_dof_index> renumbering(dof_handler.n_dofs(),
+                                                     DH::invalid_dof_index);
     compute_subdomain_wise(renumbering, dof_handler);
 
     dof_handler.renumber_dofs(renumbering);
@@ -1855,10 +1860,10 @@ namespace DoFRenumbering
 
   template <class DH>
   void
-  compute_subdomain_wise (std::vector<unsigned int> &new_dof_indices,
+  compute_subdomain_wise (std::vector<types::global_dof_index> &new_dof_indices,
                           const DH                  &dof_handler)
   {
-    const unsigned int n_dofs = dof_handler.n_dofs();
+    const types::global_dof_index n_dofs = dof_handler.n_dofs();
     Assert (new_dof_indices.size() == n_dofs,
             ExcDimensionMismatch (new_dof_indices.size(), n_dofs));
 
@@ -1881,9 +1886,9 @@ namespace DoFRenumbering
     // this order also after reordering
     std::fill (new_dof_indices.begin(), new_dof_indices.end(),
                numbers::invalid_unsigned_int);
-    unsigned int next_free_index = 0;
-    for (unsigned int subdomain=0; subdomain<n_subdomains; ++subdomain)
-      for (unsigned int i=0; i<n_dofs; ++i)
+    types::global_dof_index next_free_index = 0;
+    for (types::subdomain_id_t subdomain=0; subdomain<n_subdomains; ++subdomain)
+      for (types::global_dof_index i=0; i<n_dofs; ++i)
         if (subdomain_association[i] == subdomain)
           {
             Assert (new_dof_indices[i] == numbers::invalid_unsigned_int,
index fcfc82d8433409f9616af5637bbfeca94f2c3f52..51be1bd94d9c309b84a34277e8f98d8083dcd1bc 100644 (file)
@@ -72,7 +72,7 @@ namespace DoFRenumbering
 
     template
     void
-    compute_Cuthill_McKee (std::vector<unsigned int> &,
+    compute_Cuthill_McKee (std::vector<dealii::types::global_dof_index> &,
                           const DoFHandler<deal_II_dimension> &, bool, bool);
 
     template
@@ -81,7 +81,7 @@ namespace DoFRenumbering
 
     template
     void
-    compute_king_ordering (std::vector<unsigned int> &,
+    compute_king_ordering (std::vector<dealii::types::global_dof_index> &,
                           const DoFHandler<deal_II_dimension> &, bool, bool);
 
     template
@@ -90,7 +90,7 @@ namespace DoFRenumbering
 
     template
     void
-    compute_minimum_degree (std::vector<unsigned int> &,
+    compute_minimum_degree (std::vector<dealii::types::global_dof_index> &,
                            const DoFHandler<deal_II_dimension> &, bool, bool);
 
 
@@ -100,7 +100,7 @@ namespace DoFRenumbering
 
     template
     void
-    compute_Cuthill_McKee (std::vector<unsigned int> &,
+    compute_Cuthill_McKee (std::vector<dealii::types::global_dof_index> &,
                           const hp::DoFHandler<deal_II_dimension> &, bool, bool);
 
     template
@@ -109,7 +109,7 @@ namespace DoFRenumbering
 
     template
     void
-    compute_king_ordering (std::vector<unsigned int> &,
+    compute_king_ordering (std::vector<dealii::types::global_dof_index> &,
                           const hp::DoFHandler<deal_II_dimension> &, bool, bool);
 
     template
@@ -118,7 +118,7 @@ namespace DoFRenumbering
 
     template
     void
-    compute_minimum_degree (std::vector<unsigned int> &,
+    compute_minimum_degree (std::vector<dealii::types::global_dof_index> &,
                            const hp::DoFHandler<deal_II_dimension> &, bool, bool);
     \}
     
index af93bf0d45ee321456458be257001154f0e27669..e0a5e64a34287fc7812c4f1221e247d5d00e0b0d 100644 (file)
@@ -81,7 +81,7 @@ namespace DoFTools
                   "associated DoF handler objects, asking for any subdomain other "
                   "than the locally owned one does not make sense."));
 
-    std::vector<unsigned int> dofs_on_this_cell;
+    std::vector<types::global_dof_index> dofs_on_this_cell;
     dofs_on_this_cell.reserve (max_dofs_per_cell(dof));
     typename DH::active_cell_iterator cell = dof.begin_active(),
                                       endc = dof.end();
@@ -192,7 +192,7 @@ namespace DoFTools
         }
 
 
-    std::vector<unsigned int> dofs_on_this_cell(fe_collection.max_dofs_per_cell());
+    std::vector<types::global_dof_index> dofs_on_this_cell(fe_collection.max_dofs_per_cell());
     typename DH::active_cell_iterator cell = dof.begin_active(),
                                       endc = dof.end();
 
@@ -263,9 +263,9 @@ namespace DoFTools
               cell_row->get_fe().dofs_per_cell;
             const unsigned int dofs_per_cell_col =
               cell_col->get_fe().dofs_per_cell;
-            std::vector<unsigned int>
+            std::vector<types::global_dof_index>
             local_dof_indices_row(dofs_per_cell_row);
-            std::vector<unsigned int>
+            std::vector<types::global_dof_index>
             local_dof_indices_col(dofs_per_cell_col);
             cell_row->get_dof_indices (local_dof_indices_row);
             cell_col->get_dof_indices (local_dof_indices_col);
@@ -286,9 +286,9 @@ namespace DoFTools
                   cell_row_child->get_fe().dofs_per_cell;
                 const unsigned int dofs_per_cell_col =
                   cell_col->get_fe().dofs_per_cell;
-                std::vector<unsigned int>
+                std::vector<types::global_dof_index>
                 local_dof_indices_row(dofs_per_cell_row);
-                std::vector<unsigned int>
+                std::vector<types::global_dof_index>
                 local_dof_indices_col(dofs_per_cell_col);
                 cell_row_child->get_dof_indices (local_dof_indices_row);
                 cell_col->get_dof_indices (local_dof_indices_col);
@@ -310,9 +310,9 @@ namespace DoFTools
                   cell_row->get_fe().dofs_per_cell;
                 const unsigned int dofs_per_cell_col =
                   cell_col_child->get_fe().dofs_per_cell;
-                std::vector<unsigned int>
+                std::vector<types::global_dof_index>
                 local_dof_indices_row(dofs_per_cell_row);
-                std::vector<unsigned int>
+                std::vector<types::global_dof_index>
                 local_dof_indices_col(dofs_per_cell_col);
                 cell_row->get_dof_indices (local_dof_indices_row);
                 cell_col_child->get_dof_indices (local_dof_indices_col);
@@ -331,7 +331,7 @@ namespace DoFTools
   void
   make_boundary_sparsity_pattern (
     const DH                        &dof,
-    const std::vector<unsigned int> &dof_to_boundary_mapping,
+    const std::vector<types::global_dof_index> &dof_to_boundary_mapping,
     SparsityPattern                 &sparsity)
   {
     if (DH::dimension == 1)
@@ -356,8 +356,8 @@ namespace DoFTools
 #ifdef DEBUG
     if (sparsity.n_rows() != 0)
       {
-        unsigned int max_element = 0;
-        for (std::vector<unsigned int>::const_iterator i=dof_to_boundary_mapping.begin();
+        types::global_dof_index max_element = 0;
+        for (std::vector<types::global_dof_index>::const_iterator i=dof_to_boundary_mapping.begin();
              i!=dof_to_boundary_mapping.end(); ++i)
           if ((*i != DH::invalid_dof_index) &&
               (*i > max_element))
@@ -366,7 +366,7 @@ namespace DoFTools
       };
 #endif
 
-    std::vector<unsigned int> dofs_on_this_face;
+    std::vector<types::global_dof_index> dofs_on_this_face;
     dofs_on_this_face.reserve (max_dofs_per_face(dof));
 
     // loop over all faces to check whether they are at a boundary. note
@@ -399,7 +399,7 @@ namespace DoFTools
   void make_boundary_sparsity_pattern (
     const DH                                        &dof,
     const typename FunctionMap<DH::space_dimension>::type &boundary_indicators,
-    const std::vector<unsigned int>                 &dof_to_boundary_mapping,
+    const std::vector<types::global_dof_index>                 &dof_to_boundary_mapping,
     SparsityPattern                                 &sparsity)
   {
     if (DH::dimension == 1)
@@ -421,7 +421,7 @@ namespace DoFTools
               cell = cell->child(direction);
 
             const unsigned int dofs_per_vertex = cell->get_fe().dofs_per_vertex;
-            std::vector<unsigned int> boundary_dof_boundary_indices (dofs_per_vertex);
+            std::vector<types::global_dof_index> boundary_dof_boundary_indices (dofs_per_vertex);
 
             // next get boundary mapped dof indices of boundary dofs
             for (unsigned int i=0; i<dofs_per_vertex; ++i)
@@ -448,8 +448,8 @@ namespace DoFTools
 #ifdef DEBUG
     if (sparsity.n_rows() != 0)
       {
-        unsigned int max_element = 0;
-        for (std::vector<unsigned int>::const_iterator i=dof_to_boundary_mapping.begin();
+        types::global_dof_index max_element = 0;
+        for (std::vector<types::global_dof_index>::const_iterator i=dof_to_boundary_mapping.begin();
              i!=dof_to_boundary_mapping.end(); ++i)
           if ((*i != DH::invalid_dof_index) &&
               (*i > max_element))
@@ -458,7 +458,7 @@ namespace DoFTools
       };
 #endif
 
-    std::vector<unsigned int> dofs_on_this_face;
+    std::vector<types::global_dof_index> dofs_on_this_face;
     dofs_on_this_face.reserve (max_dofs_per_face(dof));
     typename DH::active_cell_iterator cell = dof.begin_active(),
                                       endc = dof.end();
@@ -511,8 +511,8 @@ namespace DoFTools
                   "associated DoF handler objects, asking for any subdomain other "
                   "than the locally owned one does not make sense."));
 
-    std::vector<unsigned int> dofs_on_this_cell;
-    std::vector<unsigned int> dofs_on_other_cell;
+    std::vector<types::global_dof_index> dofs_on_this_cell;
+    std::vector<types::global_dof_index> dofs_on_other_cell;
     dofs_on_this_cell.reserve (max_dofs_per_cell(dof));
     dofs_on_other_cell.reserve (max_dofs_per_cell(dof));
     typename DH::active_cell_iterator cell = dof.begin_active(),
@@ -709,8 +709,8 @@ namespace DoFTools
       {
         const FiniteElement<DH::dimension,DH::space_dimension> &fe = dof.get_fe();
 
-        std::vector<unsigned int> dofs_on_this_cell(fe.dofs_per_cell);
-        std::vector<unsigned int> dofs_on_other_cell(fe.dofs_per_cell);
+        std::vector<types::global_dof_index> dofs_on_this_cell(fe.dofs_per_cell);
+        std::vector<types::global_dof_index> dofs_on_other_cell(fe.dofs_per_cell);
 
         const Table<2,Coupling>
         int_dof_mask  = dof_couplings_from_component_couplings(fe, int_mask),
@@ -949,8 +949,8 @@ namespace DoFTools
 
         const dealii::hp::FECollection<dim,spacedim> &fe = dof.get_fe();
 
-        std::vector<unsigned int> dofs_on_this_cell(DoFTools::max_dofs_per_cell(dof));
-        std::vector<unsigned int> dofs_on_other_cell(DoFTools::max_dofs_per_cell(dof));
+        std::vector<types::global_dof_index> dofs_on_this_cell(DoFTools::max_dofs_per_cell(dof));
+        std::vector<types::global_dof_index> dofs_on_other_cell(DoFTools::max_dofs_per_cell(dof));
 
         const std::vector<Table<2,Coupling> >
         int_dof_mask
@@ -1173,7 +1173,7 @@ namespace DoFTools
     {
       inline bool
       check_master_dof_list (const FullMatrix<double> &face_interpolation_matrix,
-                             const std::vector<unsigned int> &master_dof_list)
+                             const std::vector<types::global_dof_index> &master_dof_list)
       {
         const unsigned int N = master_dof_list.size();
 
@@ -1322,7 +1322,7 @@ namespace DoFTools
         // that base element are independent of that of the other one. this
         // latter case shows up when running hp/hp_constraints_q_system_06
 
-        std::vector<unsigned int> master_dof_list;
+        std::vector<types::global_dof_index> master_dof_list;
         unsigned int index = 0;
         for (int v=0;
              v<static_cast<signed int>(GeometryInfo<dim>::vertices_per_face);
@@ -1412,7 +1412,7 @@ namespace DoFTools
 
         // finally copy the list into the mask
         std::fill (master_dof_mask.begin(), master_dof_mask.end(), false);
-        for (std::vector<unsigned int>::const_iterator i=master_dof_list.begin();
+        for (std::vector<types::global_dof_index>::const_iterator i=master_dof_list.begin();
              i!=master_dof_list.end(); ++i)
           master_dof_mask[*i] = true;
       }
@@ -1670,8 +1670,8 @@ namespace DoFTools
        * avoid making the sparsity pattern fuller than necessary.
        */
       void
-      filter_constraints (const std::vector<unsigned int> &master_dofs,
-                          const std::vector<unsigned int> &slave_dofs,
+      filter_constraints (const std::vector<types::global_dof_index> &master_dofs,
+                          const std::vector<types::global_dof_index> &slave_dofs,
                           const FullMatrix<double> &face_constraints,
                           ConstraintMatrix &constraints)
       {
@@ -1885,8 +1885,8 @@ namespace DoFTools
 
       const unsigned int spacedim = DH::space_dimension;
 
-      std::vector<unsigned int> dofs_on_mother;
-      std::vector<unsigned int> dofs_on_children;
+      std::vector<types::global_dof_index> dofs_on_mother;
+      std::vector<types::global_dof_index> dofs_on_children;
 
       // loop over all lines; only on lines there can be constraints. We do
       // so by looping over all active cells and checking whether any of
@@ -2009,8 +2009,8 @@ namespace DoFTools
     {
       const unsigned int dim = 3;
 
-      std::vector<unsigned int> dofs_on_mother;
-      std::vector<unsigned int> dofs_on_children;
+      std::vector<types::global_dof_index> dofs_on_mother;
+      std::vector<types::global_dof_index> dofs_on_children;
 
       // loop over all quads; only on quads there can be constraints. We do
       // so by looping over all active cells and checking whether any of
@@ -2227,9 +2227,9 @@ namespace DoFTools
 
       // similarly have arrays that will hold master and slave dof numbers,
       // as well as a scratch array needed for the complicated case below
-      std::vector<unsigned int> master_dofs;
-      std::vector<unsigned int> slave_dofs;
-      std::vector<unsigned int> scratch_dofs;
+      std::vector<types::global_dof_index> master_dofs;
+      std::vector<types::global_dof_index> slave_dofs;
+      std::vector<types::global_dof_index> scratch_dofs;
 
       // caches for the face and subface interpolation matrices between
       // different (or the same) finite elements. we compute them only
@@ -2908,8 +2908,8 @@ namespace DoFTools
 
     const unsigned int dofs_per_face = fe.dofs_per_face;
 
-    std::vector<unsigned int> dofs_1(dofs_per_face);
-    std::vector<unsigned int> dofs_2(dofs_per_face);
+    std::vector<types::global_dof_index> dofs_1(dofs_per_face);
+    std::vector<types::global_dof_index> dofs_2(dofs_per_face);
 
     face_1->get_dof_indices(dofs_1, face_1_index);
     face_2->get_dof_indices(dofs_2, face_2_index);
@@ -3269,7 +3269,7 @@ namespace DoFTools
         }
 
       // then loop over all cells and do the work
-      std::vector<unsigned int> indices;
+      std::vector<types::global_dof_index> indices;
       for (typename DH::active_cell_iterator c=dof.begin_active();
            c!=dof.end(); ++ c)
         if (c->is_locally_owned())
@@ -3333,7 +3333,7 @@ namespace DoFTools
         }
 
       // then loop over all cells and do the work
-      std::vector<unsigned int> indices;
+      std::vector<types::global_dof_index> indices;
       for (typename DH::active_cell_iterator c=dof.begin_active();
            c!=dof.end(); ++ c)
         if (c->is_locally_owned())
@@ -3395,7 +3395,7 @@ namespace DoFTools
 
     typename DH::active_cell_iterator cell = dof_handler.begin_active(),
                                       endc = dof_handler.end();
-    std::vector<unsigned int> dof_indices;
+    std::vector<types::global_dof_index> dof_indices;
     dof_indices.reserve (max_dofs_per_cell(dof_handler));
 
     for (unsigned int present_cell = 0; cell!=endc; ++cell, ++present_cell)
@@ -3669,7 +3669,7 @@ namespace DoFTools
          (component_mask.n_selected_components(n_components(dof_handler)) !=
           n_components(dof_handler)));
 
-    std::vector<unsigned int> face_dof_indices;
+    std::vector<types::global_dof_index> face_dof_indices;
     face_dof_indices.reserve (max_dofs_per_face(dof_handler));
 
     // now loop over all cells and check whether their faces are at the
@@ -3771,7 +3771,7 @@ namespace DoFTools
     // clear and reset array by default values
     selected_dofs.clear ();
     selected_dofs.resize (dof_handler.n_dofs(), false);
-    std::vector<unsigned int> cell_dof_indices;
+    std::vector<types::global_dof_index> cell_dof_indices;
     cell_dof_indices.reserve (max_dofs_per_cell(dof_handler));
 
     // now loop over all cells and check whether their faces are at the
@@ -3968,7 +3968,7 @@ namespace DoFTools
     // preset all values by false
     std::fill_n (selected_dofs.begin(), dof_handler.n_dofs(), false);
 
-    std::vector<unsigned int> local_dof_indices;
+    std::vector<types::global_dof_index> local_dof_indices;
     local_dof_indices.reserve (max_dofs_per_cell(dof_handler));
 
     // this function is similar to the make_sparsity_pattern function, see
@@ -4012,8 +4012,8 @@ namespace DoFTools
     // add the DoF on the adjacent ghost cells to the IndexSet, cache them
     // in a set. need to check each dof manually because we can't be sure
     // that the dof range of locally_owned_dofs is really contiguous.
-    std::vector<unsigned int> dof_indices;
-    std::set<unsigned int> global_dof_indices;
+    std::vector<types::global_dof_index> dof_indices;
+    std::set<types::global_dof_index> global_dof_indices;
 
     typename DH::active_cell_iterator cell = dof_handler.begin_active(),
                                       endc = dof_handler.end();
@@ -4023,7 +4023,7 @@ namespace DoFTools
           dof_indices.resize(cell->get_fe().dofs_per_cell);
           cell->get_dof_indices(dof_indices);
 
-          for (std::vector<unsigned int>::iterator it=dof_indices.begin();
+          for (std::vector<types::global_dof_index>::iterator it=dof_indices.begin();
                it!=dof_indices.end();
                ++it)
             if (!dof_set.is_element(*it))
@@ -4048,8 +4048,8 @@ namespace DoFTools
     // add the DoF on the adjacent ghost cells to the IndexSet, cache them
     // in a set. need to check each dof manually because we can't be sure
     // that the dof range of locally_owned_dofs is really contiguous.
-    std::vector<unsigned int> dof_indices;
-    std::set<unsigned int> global_dof_indices;
+    std::vector<types::global_dof_index> dof_indices;
+    std::set<types::global_dof_index> global_dof_indices;
 
     typename DH::active_cell_iterator cell = dof_handler.begin_active(),
                                       endc = dof_handler.end();
@@ -4059,7 +4059,7 @@ namespace DoFTools
           dof_indices.resize(cell->get_fe().dofs_per_cell);
           cell->get_dof_indices(dof_indices);
 
-          for (std::vector<unsigned int>::iterator it=dof_indices.begin();
+          for (std::vector<types::global_dof_index>::iterator it=dof_indices.begin();
                it!=dof_indices.end();
                ++it)
             if (!dof_set.is_element(*it))
@@ -4155,7 +4155,7 @@ namespace DoFTools
     std::fill_n (subdomain_association.begin(), dof_handler.n_dofs(),
                  numbers::invalid_subdomain_id);
 
-    std::vector<unsigned int> local_dof_indices;
+    std::vector<types::global_dof_index> local_dof_indices;
     local_dof_indices.reserve (max_dofs_per_cell(dof_handler));
 
     // pseudo-randomly assign variables which lie on the interface between
@@ -4236,7 +4236,7 @@ namespace DoFTools
 
     IndexSet index_set (dof_handler.n_dofs());
 
-    std::vector<unsigned int> local_dof_indices;
+    std::vector<types::global_dof_index> local_dof_indices;
     local_dof_indices.reserve (max_dofs_per_cell(dof_handler));
 
     // first generate an unsorted list of all indices which we fill from
@@ -4244,7 +4244,7 @@ namespace DoFTools
     // that inserts indices in the middle, which is an O(n^2) algorithm and
     // hence too expensive. Could also use std::set, but that is in general
     // more expensive than a vector
-    std::vector<unsigned int> subdomain_indices;
+    std::vector<types::global_dof_index> subdomain_indices;
 
     typename DH::active_cell_iterator
     cell = dof_handler.begin_active(),
@@ -4335,7 +4335,7 @@ namespace DoFTools
                         const std::vector<unsigned char> &dofs_by_component,
                         const std::vector<unsigned int> &target_component,
                         const bool                        only_once,
-                        std::vector<unsigned int>        &dofs_per_component,
+                        std::vector<types::global_dof_index>        &dofs_per_component,
                         unsigned int                     &component)
     {
       for (unsigned int b=0; b<fe.n_base_elements(); ++b)
@@ -4376,7 +4376,7 @@ namespace DoFTools
                         const std::vector<unsigned char> &dofs_by_component,
                         const std::vector<unsigned int> &target_component,
                         const bool                        only_once,
-                        std::vector<unsigned int>        &dofs_per_component,
+                        std::vector<types::global_dof_index>        &dofs_per_component,
                         unsigned int                     &component)
     {
       // assert that all elements in the collection have the same structure
@@ -4438,7 +4438,7 @@ namespace DoFTools
   void
   count_dofs_per_component (
     const DH      &dof_handler,
-    std::vector<unsigned int> &dofs_per_component,
+    std::vector<types::global_dof_index> &dofs_per_component,
     bool only_once,
     std::vector<unsigned int>  target_component)
   {
@@ -4520,7 +4520,7 @@ namespace DoFTools
   template <class DH>
   void
   count_dofs_per_block (const DH &dof_handler,
-                        std::vector<unsigned int> &dofs_per_block,
+                        std::vector<types::global_dof_index> &dofs_per_block,
                         const std::vector<unsigned int> &target_block_)
   {
     std::vector<unsigned int>  target_block = target_block_;
@@ -4596,7 +4596,7 @@ namespace DoFTools
   template <int dim, int spacedim>
   void
   count_dofs_per_component (const DoFHandler<dim,spacedim> &dof_handler,
-                            std::vector<unsigned int>      &dofs_per_component,
+                            std::vector<types::global_dof_index>      &dofs_per_component,
                             std::vector<unsigned int>       target_component)
   {
     count_dofs_per_component (dof_handler, dofs_per_component,
@@ -4681,7 +4681,7 @@ namespace DoFTools
         dealii::Vector<double> global_parameter_representation (n_fine_dofs);
 
         typename dealii::DoFHandler<dim,spacedim>::active_cell_iterator cell;
-        std::vector<unsigned int> parameter_dof_indices (coarse_fe.dofs_per_cell);
+        std::vector<types::global_dof_index> parameter_dof_indices (coarse_fe.dofs_per_cell);
 
         for (cell=begin; cell!=end; ++cell)
           {
@@ -4920,7 +4920,7 @@ namespace DoFTools
             // if this is an interesting dof. finally count how many true's
             // there
             std::vector<bool> dof_is_interesting (fine_grid.n_dofs(), false);
-            std::vector<unsigned int>  local_dof_indices (fine_fe.dofs_per_cell);
+            std::vector<types::global_dof_index>  local_dof_indices (fine_fe.dofs_per_cell);
 
             for (typename dealii::DoFHandler<dim,spacedim>::active_cell_iterator
                  cell=fine_grid.begin_active();
@@ -4947,7 +4947,7 @@ namespace DoFTools
 
         if (true)
           {
-            std::vector<unsigned int> local_dof_indices(fine_fe.dofs_per_cell);
+            std::vector<types::global_dof_index> local_dof_indices(fine_fe.dofs_per_cell);
             unsigned int next_free_index=0;
             for (typename dealii::DoFHandler<dim,spacedim>::active_cell_iterator
                  cell=fine_grid.begin_active();
@@ -5279,7 +5279,7 @@ namespace DoFTools
   template <class DH>
   void
   map_dof_to_boundary_indices (const DH                  &dof_handler,
-                               std::vector<unsigned int> &mapping)
+                               std::vector<types::global_dof_index> &mapping)
   {
     Assert (&dof_handler.get_fe() != 0, ExcNoFESelected());
 
@@ -5287,7 +5287,7 @@ namespace DoFTools
     mapping.insert (mapping.end(), dof_handler.n_dofs(),
                     DH::invalid_dof_index);
 
-    std::vector<unsigned int> dofs_on_face;
+    std::vector<types::global_dof_index> dofs_on_face;
     dofs_on_face.reserve (max_dofs_per_face(dof_handler));
     unsigned int next_boundary_index = 0;
 
@@ -5321,7 +5321,7 @@ namespace DoFTools
   void map_dof_to_boundary_indices (
     const DH                      &dof_handler,
     const std::set<types::boundary_id> &boundary_indicators,
-    std::vector<unsigned int>     &mapping)
+    std::vector<types::global_dof_index>     &mapping)
   {
     Assert (&dof_handler.get_fe() != 0, ExcNoFESelected());
     Assert (boundary_indicators.find (numbers::internal_face_boundary_id) == boundary_indicators.end(),
@@ -5335,7 +5335,7 @@ namespace DoFTools
     if (boundary_indicators.size() == 0)
       return;
 
-    std::vector<unsigned int> dofs_on_face;
+    std::vector<types::global_dof_index> dofs_on_face;
     dofs_on_face.reserve (max_dofs_per_face(dof_handler));
     unsigned int next_boundary_index = 0;
 
@@ -5366,7 +5366,7 @@ namespace DoFTools
       void
       map_dofs_to_support_points(const hp::MappingCollection<DH::dimension, DH::space_dimension> &mapping,
                                  const DH &dof_handler,
-                                 std::map<unsigned int,Point<DH::space_dimension> > &support_points)
+                                 std::map<types::global_dof_index,Point<DH::space_dimension> >  &support_points)
       {
         const unsigned int dim = DH::dimension;
         const unsigned int spacedim = DH::space_dimension;
@@ -5396,7 +5396,7 @@ namespace DoFTools
         typename DH::active_cell_iterator cell =
           dof_handler.begin_active(), endc = dof_handler.end();
 
-        std::vector<unsigned int> local_dof_indices;
+        std::vector<types::global_dof_index> local_dof_indices;
         for (; cell != endc; ++cell)
           // only work on locally relevant cells
           if (cell->is_artificial() == false)
@@ -5423,7 +5423,7 @@ namespace DoFTools
                                  std::vector<Point<DH::space_dimension> > &support_points)
       {
         // get the data in the form of the map as above
-        std::map<unsigned int,Point<DH::space_dimension> >  x_support_points;
+        std::map<types::global_dof_index,Point<DH::space_dimension> >  x_support_points;
         map_dofs_to_support_points(mapping, dof_handler, x_support_points);
 
         // now convert from the map to the linear vector. make sure every
@@ -5488,7 +5488,7 @@ namespace DoFTools
   void
   map_dofs_to_support_points (const Mapping<dim,spacedim>       &mapping,
                               const DoFHandler<dim,spacedim>    &dof_handler,
-                              std::map<unsigned int, Point<spacedim> > &support_points)
+                              std::map<types::global_dof_index, Point<spacedim> > &support_points)
   {
     support_points.clear();
 
@@ -5506,7 +5506,7 @@ namespace DoFTools
   void
   map_dofs_to_support_points(const hp::MappingCollection<dim, spacedim> &mapping,
                              const hp::DoFHandler<dim, spacedim> &dof_handler,
-                             std::map<unsigned int, Point<spacedim> > &support_points)
+                             std::map<types::global_dof_index, Point<spacedim> > &support_points)
   {
     support_points.clear();
 
@@ -5593,7 +5593,7 @@ namespace DoFTools
             VectorTools::ExcNoComponentSelected());
 
     // a field to store the indices
-    std::vector<unsigned int> face_dofs;
+    std::vector<types::global_dof_index> face_dofs;
     face_dofs.reserve (max_dofs_per_face(dof));
 
     typename DH<dim,spacedim>::active_cell_iterator
@@ -5662,7 +5662,7 @@ namespace DoFTools
     const DH &dof_handler,
     const unsigned int level,
     const std::vector<bool> &selected_dofs,
-    unsigned int offset)
+    types::global_dof_index offset)
   {
     typename DH::level_cell_iterator cell;
     typename DH::level_cell_iterator endc = dof_handler.end(level);
index c935ac1dd8fae2507832530b45c3f499b9f0c7ad..a18d3cfc7d3b0a0c764a3241c257386afe737d82 100644 (file)
@@ -80,20 +80,20 @@ for (SP : SPARSITY_PATTERNS; deal_II_dimension : DIMENSIONS)
     template void
     DoFTools::make_boundary_sparsity_pattern<DoFHandler<deal_II_dimension>,SP>
     (const DoFHandler<deal_II_dimension>& dof,
-     const std::vector<unsigned int>  &,
+     const std::vector<types::global_dof_index>  &,
      SP    &);
 
     template void
     DoFTools::make_boundary_sparsity_pattern<hp::DoFHandler<deal_II_dimension>,SP>
     (const hp::DoFHandler<deal_II_dimension>& dof,
-     const std::vector<unsigned int>  &,
+     const std::vector<types::global_dof_index>  &,
      SP    &);
 
     template void
     DoFTools::make_boundary_sparsity_pattern<DoFHandler<deal_II_dimension>,SP>
     (const DoFHandler<deal_II_dimension>& dof,
      const FunctionMap<deal_II_dimension>::type  &boundary_indicators,
-     const std::vector<unsigned int>  &dof_to_boundary_mapping,
+     const std::vector<types::global_dof_index>  &dof_to_boundary_mapping,
      SP    &sparsity);
 
     template void
index 3b756c51122be9e8d73e55535b03c4cd9efe8c8e..6e9ba46271f3c70517b868bac5297c88cd19d930 100644 (file)
@@ -290,7 +290,7 @@ FE_ABF<dim>::initialize_support_points (const unsigned int deg)
 
 // This function is the same Raviart-Thomas interpolation performed by
 // interpolate. Still, we cannot use interpolate, since it was written
-// for smooth functions. Thefunctions interpolated here are not
+// for smooth functions. The functions interpolated here are not
 // smooth, maybe even not continuous. Therefore, we must double the
 // number of quadrature points in each direction in order to integrate
 // only smooth functions.
index 8707becfd3e783b8e9da69925817616133207517..4fff6f8cce420a61b492b9edc22afb0a07c1d7ba 100644 (file)
@@ -1337,7 +1337,7 @@ namespace FETools
     typename DH2<dim,spacedim>::active_cell_iterator cell2 = dof2.begin_active(),
                                                      endc2 = dof2.end();
 
-    std::vector<unsigned int> dofs;
+    std::vector<types::global_dof_index> dofs;
     dofs.reserve (DoFTools::max_dofs_per_cell (dof2));
 
     u2 = 0;
@@ -1431,7 +1431,7 @@ namespace FETools
     // for parallel vectors check,
     // if this component is owned by
     // this processor.
-    for (unsigned int i=0; i<dof2.n_dofs(); ++i)
+    for (types::global_dof_index i=0; i<dof2.n_dofs(); ++i)
       if (locally_owned_dofs.is_element(i))
         {
           Assert(touch_count(i)!=0, ExcInternalError());
@@ -1828,7 +1828,7 @@ namespace FETools
 
     Vector<double> u1_local(n1);
     Vector<double> u2_local(n2);
-    std::vector<unsigned int> dofs(n2);
+    std::vector<types::global_dof_index> dofs(n2);
 
     FullMatrix<double> matrix(n2,n1);
     get_projection_matrix(dof1.get_fe(), dof2.get_fe(), matrix);
index 05bc1281f6bb91f9c407d455f094b2409fcfbe31..95527273e3fe39d7ba985202b2a3b8d218326f03 100644 (file)
@@ -1474,7 +1474,7 @@ public:
    * to.
    */
   virtual
-  unsigned int
+  types::global_dof_index
   n_dofs_for_dof_handler () const = 0;
 
 #include "fe_values.decl.1.inst"
@@ -1543,7 +1543,7 @@ public:
    * to.
    */
   virtual
-  unsigned int
+  types::global_dof_index
   n_dofs_for_dof_handler () const;
 
 #include "fe_values.decl.2.inst"
@@ -1646,7 +1646,7 @@ public:
    * error.
    */
   virtual
-  unsigned int
+  types::global_dof_index
   n_dofs_for_dof_handler () const;
 
 #include "fe_values.decl.2.inst"
@@ -1706,7 +1706,7 @@ operator typename Triangulation<dim,spacedim>::cell_iterator () const
 
 template <int dim, int spacedim>
 template <typename CI>
-unsigned int
+types::global_dof_index
 FEValuesBase<dim,spacedim>::CellIterator<CI>::n_dofs_for_dof_handler () const
 {
   return cell->get_dof_handler().n_dofs();
@@ -1726,7 +1726,7 @@ get_interpolated_dof_values (const IndexSet &in,
 {
   Assert (cell->has_children() == false, ExcNotImplemented());
 
-  std::vector<unsigned int> dof_indices (cell->get_fe().dofs_per_cell);
+  std::vector<types::global_dof_index> dof_indices (cell->get_fe().dofs_per_cell);
   cell->get_dof_indices (dof_indices);
 
   for (unsigned int i=0; i<cell->get_fe().dofs_per_cell; ++i)
@@ -1767,7 +1767,7 @@ operator typename Triangulation<dim,spacedim>::cell_iterator () const
 
 
 template <int dim, int spacedim>
-unsigned int
+types::global_dof_index
 FEValuesBase<dim,spacedim>::TriaCellIterator::n_dofs_for_dof_handler () const
 {
   Assert (false, ExcMessage (message_string));
@@ -2318,7 +2318,7 @@ template <int dim, int spacedim>
 template <class InputVector, typename number>
 void FEValuesBase<dim,spacedim>::get_function_values (
   const InputVector &fe_function,
-  const VectorSlice<const std::vector<unsigned int> > &indices,
+  const VectorSlice<const std::vector<types::global_dof_index> > &indices,
   std::vector<number> &values) const
 {
   Assert (this->update_flags & update_values, ExcAccessToUninitializedField());
@@ -2371,7 +2371,7 @@ template <int dim, int spacedim>
 template <class InputVector, typename number>
 void FEValuesBase<dim,spacedim>::get_function_values (
   const InputVector &fe_function,
-  const VectorSlice<const std::vector<unsigned int> > &indices,
+  const VectorSlice<const std::vector<types::global_dof_index> > &indices,
   std::vector<Vector<number> > &values) const
 {
   // Size of indices must be a multiple of dofs_per_cell such that an integer
@@ -2407,7 +2407,7 @@ template <int dim, int spacedim>
 template <class InputVector>
 void FEValuesBase<dim,spacedim>::get_function_values (
   const InputVector &fe_function,
-  const VectorSlice<const std::vector<unsigned int> > &indices,
+  const VectorSlice<const std::vector<types::global_dof_index> > &indices,
   VectorSlice<std::vector<std::vector<double> > > values,
   bool quadrature_points_fastest) const
 {
@@ -2468,7 +2468,7 @@ template <int dim, int spacedim>
 template <class InputVector>
 void FEValuesBase<dim,spacedim>::get_function_gradients (
   const InputVector &fe_function,
-  const VectorSlice<const std::vector<unsigned int> > &indices,
+  const VectorSlice<const std::vector<types::global_dof_index> > &indices,
   std::vector<Tensor<1,spacedim> > &gradients) const
 {
   Assert (this->update_flags & update_gradients, ExcAccessToUninitializedField());
@@ -2522,7 +2522,7 @@ template <int dim, int spacedim>
 template <class InputVector>
 void FEValuesBase<dim,spacedim>::get_function_gradients (
   const InputVector &fe_function,
-  const VectorSlice<const std::vector<unsigned int> > &indices,
+  const VectorSlice<const std::vector<types::global_dof_index> > &indices,
   VectorSlice<std::vector<std::vector<Tensor<1,spacedim> > > > gradients,
   bool quadrature_points_fastest) const
 {
@@ -2581,7 +2581,7 @@ template <int dim, int spacedim>
 template <class InputVector>
 void FEValuesBase<dim,spacedim>::get_function_hessians (
   const InputVector &fe_function,
-  const VectorSlice<const std::vector<unsigned int> > &indices,
+  const VectorSlice<const std::vector<types::global_dof_index> > &indices,
   std::vector<Tensor<2,spacedim> > &hessians) const
 {
   Assert (this->update_flags & update_second_derivatives,
@@ -2637,7 +2637,7 @@ template <int dim, int spacedim>
 template <class InputVector>
 void FEValuesBase<dim, spacedim>::get_function_hessians (
   const InputVector &fe_function,
-  const VectorSlice<const std::vector<unsigned int> > &indices,
+  const VectorSlice<const std::vector<types::global_dof_index> > &indices,
   VectorSlice<std::vector<std::vector<Tensor<2,spacedim> > > > hessians,
   bool quadrature_points_fastest) const
 {
@@ -2694,7 +2694,7 @@ template <int dim, int spacedim>
 template <class InputVector, typename number>
 void FEValuesBase<dim,spacedim>::get_function_laplacians (
   const InputVector &fe_function,
-  const VectorSlice<const std::vector<unsigned int> > &indices,
+  const VectorSlice<const std::vector<types::global_dof_index> > &indices,
   std::vector<number> &laplacians) const
 {
   Assert (this->update_flags & update_hessians, ExcAccessToUninitializedField());
@@ -2745,7 +2745,7 @@ template <int dim, int spacedim>
 template <class InputVector, typename number>
 void FEValuesBase<dim,spacedim>::get_function_laplacians (
   const InputVector &fe_function,
-  const VectorSlice<const std::vector<unsigned int> > &indices,
+  const VectorSlice<const std::vector<types::global_dof_index> > &indices,
   std::vector<Vector<number> > &laplacians) const
 {
   // Size of indices must be a multiple of dofs_per_cell such that an integer
@@ -2781,7 +2781,7 @@ template <int dim, int spacedim>
 template <class InputVector, typename number>
 void FEValuesBase<dim,spacedim>::get_function_laplacians (
   const InputVector &fe_function,
-  const VectorSlice<const std::vector<unsigned int> > &indices,
+  const VectorSlice<const std::vector<types::global_dof_index> > &indices,
   std::vector<std::vector<number> > &laplacians,
   bool quadrature_points_fastest) const
 {
index a294849a02a44a6046c74ea0cae86002004d8342..22eb4c1d2aa9ad06e6bab200a41808e01eabd67e 100644 (file)
@@ -110,8 +110,8 @@ compute_mapping_support_points
   // first, basic assertion
   // with respect to vector size,
 
-  const unsigned int n_dofs      = euler_dof_handler->n_dofs();
-  const unsigned int vector_size = euler_vector->size();
+  const types::global_dof_index n_dofs  = euler_dof_handler->n_dofs();
+  const types::global_dof_index vector_size = euler_vector->size();
 
   AssertDimension(vector_size,n_dofs);
 
index 3ecf7d5b0fbbb0c1c036df1ab48e3666583d8d3a..30a294d1de5221e3eb65cf3a9bcccdf6f815b935 100644 (file)
@@ -147,7 +147,7 @@ namespace
 
 
 
-  // return, wheter a given @p cell will be
+  // return, whether a given @p cell will be
   // coarsened, which is the case if all
   // children are active and have their coarsen
   // flag set. In case only part of the coarsen
index 4dbeb003b9dd481906a52832387406fd57ba6886..ae1d246e04416c066d4ead27f84e0db064c33a7a 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $Name$
 //
-//    Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2011, 2012 by the deal.II authors
+//    Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -323,9 +323,9 @@ namespace internal
          */
         template <int spacedim>
         static
-        unsigned int
+        types::global_dof_index
         distribute_dofs_on_cell (const typename dealii::hp::DoFHandler<1,spacedim>::active_cell_iterator &cell,
-                                 unsigned int          next_free_dof)
+                                 types::global_dof_index                                                 next_free_dof)
         {
           const unsigned int dim = 1;
 
@@ -368,9 +368,9 @@ namespace internal
 
         template <int spacedim>
         static
-        unsigned int
+        types::global_dof_index
         distribute_dofs_on_cell (const typename dealii::hp::DoFHandler<2,spacedim>::active_cell_iterator &cell,
-                                 unsigned int          next_free_dof)
+                                 types::global_dof_index                                                 next_free_dof)
         {
           const unsigned int dim = 2;
 
@@ -431,9 +431,9 @@ namespace internal
 
         template <int spacedim>
         static
-        unsigned int
+        types::global_dof_index
         distribute_dofs_on_cell (const typename dealii::hp::DoFHandler<3,spacedim>::active_cell_iterator &cell,
-                                 unsigned int          next_free_dof)
+                                 types::global_dof_index                                                 next_free_dof)
         {
           const unsigned int dim = 3;
 
@@ -578,7 +578,7 @@ namespace internal
                 = std::vector<unsigned int> (dof_handler.tria->n_raw_lines(level),
                                              DoFHandler<dim,spacedim>::invalid_dof_index);
 
-              unsigned int next_free_dof = 0;
+              types::global_dof_index next_free_dof = 0;
               for (typename DoFHandler<dim,spacedim>::active_cell_iterator
                    cell=dof_handler.begin_active(level);
                    cell!=dof_handler.end_active(level); ++cell)
@@ -589,8 +589,8 @@ namespace internal
                   }
 
               dof_handler.levels[level]->dof_object.dofs
-                = std::vector<unsigned int> (next_free_dof,
-                                             DoFHandler<dim,spacedim>::invalid_dof_index);
+                = std::vector<types::global_dof_index> (next_free_dof,
+                                                        DoFHandler<dim,spacedim>::invalid_dof_index);
             }
 
           // safety check: make sure that
@@ -603,7 +603,7 @@ namespace internal
 #ifdef DEBUG
           for (unsigned int level=0; level<dof_handler.tria->n_levels(); ++level)
             {
-              unsigned int counter = 0;
+              types::global_dof_index counter = 0;
               for (typename DoFHandler<dim,spacedim>::cell_iterator
                    cell=dof_handler.begin_active(level);
                    cell!=dof_handler.end_active(level); ++cell)
@@ -694,7 +694,7 @@ namespace internal
                 = std::vector<unsigned int> (dof_handler.tria->n_raw_quads(level),
                                              DoFHandler<dim,spacedim>::invalid_dof_index);
 
-              unsigned int next_free_dof = 0;
+              types::global_dof_index next_free_dof = 0;
               for (typename DoFHandler<dim,spacedim>::active_cell_iterator
                    cell=dof_handler.begin_active(level);
                    cell!=dof_handler.end_active(level); ++cell)
@@ -705,8 +705,8 @@ namespace internal
                   }
 
               dof_handler.levels[level]->dof_object.dofs
-                = std::vector<unsigned int> (next_free_dof,
-                                             DoFHandler<dim,spacedim>::invalid_dof_index);
+                = std::vector<types::global_dof_index> (next_free_dof,
+                                                        DoFHandler<dim,spacedim>::invalid_dof_index);
             }
 
           // safety check: make sure that
@@ -719,7 +719,7 @@ namespace internal
 #ifdef DEBUG
           for (unsigned int level=0; level<dof_handler.tria->n_levels(); ++level)
             {
-              unsigned int counter = 0;
+              types::global_dof_index counter = 0;
               for (typename DoFHandler<dim,spacedim>::cell_iterator
                    cell=dof_handler.begin_active(level);
                    cell!=dof_handler.end_active(level); ++cell)
@@ -845,8 +845,8 @@ namespace internal
               = std::vector<unsigned int> (dof_handler.tria->n_raw_lines(),
                                            DoFHandler<dim,spacedim>::invalid_dof_index);
             dof_handler.faces->lines.dofs
-              = std::vector<unsigned int> (n_line_slots,
-                                           DoFHandler<dim,spacedim>::invalid_dof_index);
+              = std::vector<types::global_dof_index> (n_line_slots,
+                                                      DoFHandler<dim,spacedim>::invalid_dof_index);
 
             // with the memory now
             // allocated, loop over the
@@ -1058,7 +1058,7 @@ namespace internal
                 = std::vector<unsigned int> (dof_handler.tria->n_raw_hexs(level),
                                              DoFHandler<dim,spacedim>::invalid_dof_index);
 
-              unsigned int next_free_dof = 0;
+              types::global_dof_index next_free_dof = 0;
               for (typename DoFHandler<dim,spacedim>::active_cell_iterator
                    cell=dof_handler.begin_active(level);
                    cell!=dof_handler.end_active(level); ++cell)
@@ -1069,8 +1069,8 @@ namespace internal
                   }
 
               dof_handler.levels[level]->dof_object.dofs
-                = std::vector<unsigned int> (next_free_dof,
-                                             DoFHandler<dim,spacedim>::invalid_dof_index);
+                = std::vector<types::global_dof_index> (next_free_dof,
+                                                        DoFHandler<dim,spacedim>::invalid_dof_index);
             }
 
           // safety check: make sure that
@@ -1083,7 +1083,7 @@ namespace internal
 #ifdef DEBUG
           for (unsigned int level=0; level<dof_handler.tria->n_levels(); ++level)
             {
-              unsigned int counter = 0;
+              types::global_dof_index counter = 0;
               for (typename DoFHandler<dim,spacedim>::cell_iterator
                    cell=dof_handler.begin_active(level);
                    cell!=dof_handler.end_active(level); ++cell)
@@ -1213,8 +1213,8 @@ namespace internal
                   = std::vector<unsigned int> (dof_handler.tria->n_raw_quads(),
                                                DoFHandler<dim,spacedim>::invalid_dof_index);
                 dof_handler.faces->quads.dofs
-                  = std::vector<unsigned int> (n_quad_slots,
-                                               DoFHandler<dim,spacedim>::invalid_dof_index);
+                  = std::vector<types::global_dof_index> (n_quad_slots,
+                                                          DoFHandler<dim,spacedim>::invalid_dof_index);
               }
 
             // with the memory now
@@ -1703,12 +1703,12 @@ namespace hp
 
 
   template <>
-  unsigned int DoFHandler<1>::n_boundary_dofs () const
+  types::global_dof_index DoFHandler<1>::n_boundary_dofs () const
   {
     Assert (finite_elements != 0, ExcNoFESelected());
 
     DoFHandler<1,1>::cell_iterator cell;
-    unsigned int n = 0;
+    types::global_dof_index n = 0;
 
     // search left-most cell
     cell = this->begin_active();
@@ -1728,7 +1728,7 @@ namespace hp
 
 
   template <>
-  unsigned int DoFHandler<1>::n_boundary_dofs (const FunctionMap &boundary_indicators) const
+  types::global_dof_index DoFHandler<1>::n_boundary_dofs (const FunctionMap &boundary_indicators) const
   {
     Assert (finite_elements != 0, ExcNoFESelected());
 
@@ -1741,7 +1741,7 @@ namespace hp
               ExcInvalidBoundaryIndicator());
 
     DoFHandler<1,1>::active_cell_iterator cell;
-    unsigned int n = 0;
+    types::global_dof_index n = 0;
 
     // search left-most cell
     if (boundary_indicators.find (0) != boundary_indicators.end())
@@ -1767,7 +1767,7 @@ namespace hp
 
 
   template <>
-  unsigned int DoFHandler<1>::n_boundary_dofs (const std::set<types::boundary_id> &boundary_indicators) const
+  types::global_dof_index DoFHandler<1>::n_boundary_dofs (const std::set<types::boundary_id> &boundary_indicators) const
   {
     Assert (finite_elements != 0, ExcNoFESelected());
 
@@ -1780,7 +1780,7 @@ namespace hp
               ExcInvalidBoundaryIndicator());
 
     DoFHandler<1,1>::active_cell_iterator cell;
-    unsigned int n = 0;
+    types::global_dof_index n = 0;
 
     // search left-most cell
     if (boundary_indicators.find (0) != boundary_indicators.end())
@@ -1805,21 +1805,21 @@ namespace hp
 
 
   template <>
-  unsigned int DoFHandler<1,2>::n_boundary_dofs () const
+  types::global_dof_index DoFHandler<1,2>::n_boundary_dofs () const
   {
     Assert(false,ExcNotImplemented());
     return 0;
   }
 
   template <>
-  unsigned int DoFHandler<1,2>::n_boundary_dofs (const FunctionMap &) const
+  types::global_dof_index DoFHandler<1,2>::n_boundary_dofs (const FunctionMap &) const
   {
     Assert(false,ExcNotImplemented());
     return 0;
   }
 
   template <>
-  unsigned int DoFHandler<1,2>::n_boundary_dofs (const std::set<types::boundary_id> &) const
+  types::global_dof_index DoFHandler<1,2>::n_boundary_dofs (const std::set<types::boundary_id> &) const
   {
     Assert(false,ExcNotImplemented());
     return 0;
@@ -1828,21 +1828,21 @@ namespace hp
 
 
   template <>
-  unsigned int DoFHandler<1,3>::n_boundary_dofs () const
+  types::global_dof_index DoFHandler<1,3>::n_boundary_dofs () const
   {
     Assert(false,ExcNotImplemented());
     return 0;
   }
 
   template <>
-  unsigned int DoFHandler<1,3>::n_boundary_dofs (const FunctionMap &) const
+  types::global_dof_index DoFHandler<1,3>::n_boundary_dofs (const FunctionMap &) const
   {
     Assert(false,ExcNotImplemented());
     return 0;
   }
 
   template <>
-  unsigned int DoFHandler<1,3>::n_boundary_dofs (const std::set<types::boundary_id> &) const
+  types::global_dof_index DoFHandler<1,3>::n_boundary_dofs (const std::set<types::boundary_id> &) const
   {
     Assert(false,ExcNotImplemented());
     return 0;
@@ -1850,12 +1850,12 @@ namespace hp
 
 
   template<int dim, int spacedim>
-  unsigned int DoFHandler<dim,spacedim>::n_boundary_dofs () const
+  types::global_dof_index DoFHandler<dim,spacedim>::n_boundary_dofs () const
   {
     Assert (finite_elements != 0, ExcNoFESelected());
 
-    std::set<int> boundary_dofs;
-    std::vector<unsigned int> dofs_on_face;
+    std::set<types::global_dof_index> boundary_dofs;
+    std::vector<types::global_dof_index> dofs_on_face;
     dofs_on_face.reserve (this->get_fe ().max_dofs_per_face());
 
     // loop over all faces to check
@@ -1888,7 +1888,7 @@ namespace hp
 
 
   template<int dim, int spacedim>
-  unsigned int
+  types::global_dof_index
   DoFHandler<dim,spacedim>::n_boundary_dofs (const FunctionMap &boundary_indicators) const
   {
     Assert (finite_elements != 0, ExcNoFESelected());
@@ -1898,8 +1898,8 @@ namespace hp
     // same as above, but with
     // additional checks for set of
     // boundary indicators
-    std::set<int> boundary_dofs;
-    std::vector<unsigned int> dofs_on_face;
+    std::set<types::global_dof_index> boundary_dofs;
+    std::vector<types::global_dof_index> dofs_on_face;
     dofs_on_face.reserve (this->get_fe ().max_dofs_per_face());
 
     typename DoFHandler<dim,spacedim>::active_cell_iterator cell = this->begin_active (),
@@ -1924,7 +1924,7 @@ namespace hp
 
 
   template<int dim, int spacedim>
-  unsigned int
+  types::global_dof_index
   DoFHandler<dim,spacedim>::n_boundary_dofs (const std::set<types::boundary_id> &boundary_indicators) const
   {
     Assert (finite_elements != 0, ExcNoFESelected());
@@ -1934,8 +1934,8 @@ namespace hp
     // same as above, but with
     // additional checks for set of
     // boundary indicators
-    std::set<int> boundary_dofs;
-    std::vector<unsigned int> dofs_on_face;
+    std::set<types::global_dof_index> boundary_dofs;
+    std::vector<types::global_dof_index> dofs_on_face;
     dofs_on_face.reserve (this->get_fe ().max_dofs_per_face());
 
     typename DoFHandler<dim,spacedim>::active_cell_iterator cell = this->begin_active (),
@@ -1959,7 +1959,7 @@ namespace hp
 
 
   template <>
-  unsigned int DoFHandler<2,3>::n_boundary_dofs () const
+  types::global_dof_index DoFHandler<2,3>::n_boundary_dofs () const
   {
     Assert(false,ExcNotImplemented());
     return 0;
@@ -1968,7 +1968,7 @@ namespace hp
 
 
   template <>
-  unsigned int DoFHandler<2,3>::n_boundary_dofs (const FunctionMap &) const
+  types::global_dof_index DoFHandler<2,3>::n_boundary_dofs (const FunctionMap &) const
   {
     Assert(false,ExcNotImplemented());
     return 0;
@@ -1977,7 +1977,7 @@ namespace hp
 
 
   template <>
-  unsigned int DoFHandler<2,3>::n_boundary_dofs (const std::set<types::boundary_id> &) const
+  types::global_dof_index DoFHandler<2,3>::n_boundary_dofs (const std::set<types::boundary_id> &) const
   {
     Assert(false,ExcNotImplemented());
     return 0;
@@ -2010,7 +2010,7 @@ namespace hp
   template<int dim, int spacedim>
   void
   DoFHandler<dim,spacedim>::
-  compute_vertex_dof_identities (std::vector<unsigned int> &new_dof_indices) const
+  compute_vertex_dof_identities (std::vector<types::global_dof_index> &new_dof_indices) const
   {
     // Note: we may wish to have
     // something here similar to what
@@ -2092,13 +2092,13 @@ namespace hp
                   = *vertex_dof_identities[first_fe_index][other_fe_index];
                 for (unsigned int i=0; i<identities.size(); ++i)
                   {
-                    const unsigned int lower_dof_index
+                    const types::global_dof_index lower_dof_index
                       = dealii::internal::DoFAccessor::Implementation::
                         get_vertex_dof_index (*this,
                                               vertex_index,
                                               first_fe_index,
                                               identities[i].first);
-                    const unsigned int higher_dof_index
+                    const types::global_dof_index higher_dof_index
                       = dealii::internal::DoFAccessor::Implementation::
                         get_vertex_dof_index (*this,
                                               vertex_index,
@@ -2123,7 +2123,7 @@ namespace hp
   template <>
   void
   DoFHandler<1,1>::
-  compute_line_dof_identities (std::vector<unsigned int> &) const
+  compute_line_dof_identities (std::vector<types::global_dof_index> &) const
   {}
 
 
@@ -2131,20 +2131,20 @@ namespace hp
   template <>
   void
   DoFHandler<1,2>::
-  compute_line_dof_identities (std::vector<unsigned int> &) const
+  compute_line_dof_identities (std::vector<types::global_dof_index> &) const
   {}
 
   template <>
   void
   DoFHandler<1,3>::
-  compute_line_dof_identities (std::vector<unsigned int> &) const
+  compute_line_dof_identities (std::vector<types::global_dof_index> &) const
   {}
 
 
   template<int dim, int spacedim>
   void
   DoFHandler<dim,spacedim>::
-  compute_line_dof_identities (std::vector<unsigned int> &new_dof_indices) const
+  compute_line_dof_identities (std::vector<types::global_dof_index> &new_dof_indices) const
   {
     // we will mark lines that we
     // have already treated, so first
@@ -2262,9 +2262,9 @@ namespace hp
 
                               for (unsigned int j=0; j<(*finite_elements)[fe_index_1].dofs_per_line; ++j)
                                 {
-                                  const unsigned int master_dof_index
+                                  const types::global_dof_index master_dof_index
                                     = line->dof_index (j, fe_index_1);
-                                  const unsigned int slave_dof_index
+                                  const types::global_dof_index slave_dof_index
                                     = line->dof_index (j, fe_index_2);
 
                                   // if master dof
@@ -2349,9 +2349,9 @@ namespace hp
                         = *line_dof_identities[most_dominating_fe_index][other_fe_index];
                       for (unsigned int i=0; i<identities.size(); ++i)
                         {
-                          const unsigned int master_dof_index
+                          const types::global_dof_index master_dof_index
                             = line->dof_index (identities[i].first, most_dominating_fe_index);
-                          const unsigned int slave_dof_index
+                          const types::global_dof_index slave_dof_index
                             = line->dof_index (identities[i].second, other_fe_index);
 
                           Assert ((new_dof_indices[master_dof_index] ==
@@ -2377,25 +2377,25 @@ namespace hp
   template <>
   void
   DoFHandler<1>::
-  compute_quad_dof_identities (std::vector<unsigned int> &) const
+  compute_quad_dof_identities (std::vector<types::global_dof_index> &) const
   {}
 
   template <>
   void
   DoFHandler<1,2>::
-  compute_quad_dof_identities (std::vector<unsigned int> &) const
+  compute_quad_dof_identities (std::vector<types::global_dof_index> &) const
   {}
 
   template <>
   void
   DoFHandler<1,3>::
-  compute_quad_dof_identities (std::vector<unsigned int> &) const
+  compute_quad_dof_identities (std::vector<types::global_dof_index> &) const
   {}
 
   template <>
   void
   DoFHandler<2>::
-  compute_quad_dof_identities (std::vector<unsigned int> &) const
+  compute_quad_dof_identities (std::vector<types::global_dof_index> &) const
   {}
 
 
@@ -2403,7 +2403,7 @@ namespace hp
   template <>
   void
   DoFHandler<2,3>::
-  compute_quad_dof_identities (std::vector<unsigned int> &) const
+  compute_quad_dof_identities (std::vector<types::global_dof_index> &) const
   {}
 
 
@@ -2411,7 +2411,7 @@ namespace hp
   template<int dim, int spacedim>
   void
   DoFHandler<dim,spacedim>::
-  compute_quad_dof_identities (std::vector<unsigned int> &new_dof_indices) const
+  compute_quad_dof_identities (std::vector<types::global_dof_index> &new_dof_indices) const
   {
     // we will mark quads that we
     // have already treated, so first
@@ -2487,9 +2487,9 @@ namespace hp
                     = *quad_dof_identities[most_dominating_fe_index][other_fe_index];
                   for (unsigned int i=0; i<identities.size(); ++i)
                     {
-                      const unsigned int master_dof_index
+                      const types::global_dof_index master_dof_index
                         = quad->dof_index (identities[i].first, most_dominating_fe_index);
-                      const unsigned int slave_dof_index
+                      const types::global_dof_index slave_dof_index
                         = quad->dof_index (identities[i].second, other_fe_index);
 
                       Assert ((new_dof_indices[master_dof_index] ==
@@ -2594,7 +2594,7 @@ namespace hp
     // Step 1: distribute DoFs on all
     // active entities
     {
-      unsigned int next_free_dof = 0;
+      types::global_dof_index next_free_dof = 0;
       active_cell_iterator cell = begin_active(),
                            endc = end();
 
@@ -2616,7 +2616,7 @@ namespace hp
     // faces and other
     // lower-dimensional objects
     // where elements come together
-    std::vector<unsigned int>
+    std::vector<types::global_dof_index>
     constrained_indices (number_cache.n_global_dofs, numbers::invalid_unsigned_int);
     compute_vertex_dof_identities (constrained_indices);
     compute_line_dof_identities (constrained_indices);
@@ -2625,10 +2625,10 @@ namespace hp
     // loop over all dofs and assign
     // new numbers to those which are
     // not constrained
-    std::vector<unsigned int>
+    std::vector<types::global_dof_index>
     new_dof_indices (number_cache.n_global_dofs, numbers::invalid_unsigned_int);
-    unsigned int next_free_dof = 0;
-    for (unsigned int i=0; i<number_cache.n_global_dofs; ++i)
+    types::global_dof_index next_free_dof = 0;
+    for (types::global_dof_index i=0; i<number_cache.n_global_dofs; ++i)
       if (constrained_indices[i] == numbers::invalid_unsigned_int)
         {
           new_dof_indices[i] = next_free_dof;
@@ -2638,7 +2638,7 @@ namespace hp
     // then loop over all those that
     // are constrained and record the
     // new dof number for those:
-    for (unsigned int i=0; i<number_cache.n_global_dofs; ++i)
+    for (types::global_dof_index i=0; i<number_cache.n_global_dofs; ++i)
       if (constrained_indices[i] != numbers::invalid_unsigned_int)
         {
           Assert (new_dof_indices[constrained_indices[i]] !=
@@ -2648,7 +2648,7 @@ namespace hp
           new_dof_indices[i] = new_dof_indices[constrained_indices[i]];
         }
 
-    for (unsigned int i=0; i<number_cache.n_global_dofs; ++i)
+    for (types::global_dof_index i=0; i<number_cache.n_global_dofs; ++i)
       {
         Assert (new_dof_indices[i] != numbers::invalid_unsigned_int,
                 ExcInternalError());
@@ -2670,10 +2670,11 @@ namespace hp
       = IndexSet (number_cache.n_global_dofs);
     number_cache.locally_owned_dofs.add_range (0,
                                                number_cache.n_global_dofs);
-
+    Assert (number_cache.n_global_dofs < std::numeric_limits<unsigned int>::max (),
+            ExcMessage ("Global number of degrees of freedom is too large."));
     number_cache.n_locally_owned_dofs_per_processor
       = std::vector<unsigned int> (1,
-                                   number_cache.n_global_dofs);
+                                   (unsigned int) number_cache.n_global_dofs);
 
     number_cache.locally_owned_dofs_per_processor
       = std::vector<IndexSet> (1,
@@ -2698,7 +2699,7 @@ namespace hp
 
 
   template<int dim, int spacedim>
-  void DoFHandler<dim,spacedim>::renumber_dofs (const std::vector<unsigned int> &new_numbers)
+  void DoFHandler<dim,spacedim>::renumber_dofs (const std::vector<types::global_dof_index> &new_numbers)
   {
     Assert (new_numbers.size() == n_dofs(), ExcRenumberingIncomplete());
 #ifdef DEBUG
@@ -2706,10 +2707,10 @@ namespace hp
     // consecutively numbered
     if (true)
       {
-        std::vector<unsigned int> tmp(new_numbers);
+        std::vector<types::global_dof_index> tmp(new_numbers);
         std::sort (tmp.begin(), tmp.end());
-        std::vector<unsigned int>::const_iterator p = tmp.begin();
-        unsigned int                         i = 0;
+        std::vector<types::global_dof_index>::const_iterator p = tmp.begin();
+        types::global_dof_index                              i = 0;
         for (; p!=tmp.end(); ++p, ++i)
           Assert (*p == i, ExcNewNumbersNotConsecutive(i));
       }
@@ -2723,7 +2724,7 @@ namespace hp
   template<int dim, int spacedim>
   void
   DoFHandler<dim,spacedim>::
-  renumber_dofs_internal (const std::vector<unsigned int> &new_numbers,
+  renumber_dofs_internal (const std::vector<types::global_dof_index> &new_numbers,
                           dealii::internal::int2type<0>)
   {
     Assert (new_numbers.size() == n_dofs(), ExcRenumberingIncomplete());
@@ -2743,7 +2744,7 @@ namespace hp
 
             for (unsigned int d=0; d<(*finite_elements)[fe_index].dofs_per_vertex; ++d)
               {
-                const unsigned int vertex_dof_index
+                const types::global_dof_index vertex_dof_index
                   = dealii::internal::DoFAccessor::Implementation::
                     get_vertex_dof_index(*this,
                                          vertex_index,
@@ -2765,7 +2766,7 @@ namespace hp
   template<int dim, int spacedim>
   void
   DoFHandler<dim,spacedim>::
-  renumber_dofs_internal (const std::vector<unsigned int> &new_numbers,
+  renumber_dofs_internal (const std::vector<types::global_dof_index> &new_numbers,
                           dealii::internal::int2type<1>)
   {
     Assert (new_numbers.size() == n_dofs(), ExcRenumberingIncomplete());
@@ -2815,7 +2816,7 @@ namespace hp
   template<>
   void
   DoFHandler<2,2>::
-  renumber_dofs_internal (const std::vector<unsigned int> &new_numbers,
+  renumber_dofs_internal (const std::vector<types::global_dof_index> &new_numbers,
                           dealii::internal::int2type<2>)
   {
     const unsigned int dim = 2;
@@ -2867,7 +2868,7 @@ namespace hp
   template<>
   void
   DoFHandler<2,3>::
-  renumber_dofs_internal (const std::vector<unsigned int> &new_numbers,
+  renumber_dofs_internal (const std::vector<types::global_dof_index> &new_numbers,
                           dealii::internal::int2type<2>)
   {
     const unsigned int dim = 2;
@@ -2918,7 +2919,7 @@ namespace hp
   template<>
   void
   DoFHandler<3,3>::
-  renumber_dofs_internal (const std::vector<unsigned int> &new_numbers,
+  renumber_dofs_internal (const std::vector<types::global_dof_index> &new_numbers,
                           dealii::internal::int2type<2>)
   {
     const unsigned int dim = 3;
@@ -2969,7 +2970,7 @@ namespace hp
   template<>
   void
   DoFHandler<3,3>::
-  renumber_dofs_internal (const std::vector<unsigned int> &new_numbers,
+  renumber_dofs_internal (const std::vector<types::global_dof_index> &new_numbers,
                           dealii::internal::int2type<3>)
   {
     const unsigned int dim = 3;
@@ -3312,7 +3313,7 @@ namespace hp
 
   template <int dim, int spacedim>
   template <int structdim>
-  unsigned int
+  types::global_dof_index
   DoFHandler<dim,spacedim>::get_dof_index (const unsigned int,
                                            const unsigned int,
                                            const unsigned int,
@@ -3330,7 +3331,7 @@ namespace hp
                                            const unsigned int,
                                            const unsigned int,
                                            const unsigned int,
-                                           const unsigned int) const
+                                           const types::global_dof_index) const
   {
     Assert (false, ExcNotImplemented());
   }
@@ -3346,7 +3347,7 @@ namespace hp
     faces = NULL;
 
     {
-      std::vector<unsigned int> tmp;
+      std::vector<types::global_dof_index> tmp;
       std::swap (vertex_dofs, tmp);
     }
 
index f4fbb0d9e868c94d9a60b3581aa9422031721ec0..d7908543ab6d52f91e52c0119bc343c873459933 100644 (file)
@@ -199,12 +199,12 @@ BlockSparsityPatternBase<SparsityPatternBase>::max_entries_per_row () const
 
 
 template <class SparsityPatternBase>
-unsigned int
+types::global_dof_index
 BlockSparsityPatternBase<SparsityPatternBase>::n_rows () const
 {
   // only count in first column, since
   // all rows should be equivalent
-  unsigned int count = 0;
+  types::global_dof_index count = 0;
   for (unsigned int r=0; r<rows; ++r)
     count += sub_objects[r][0]->n_rows();
   return count;
@@ -213,12 +213,12 @@ BlockSparsityPatternBase<SparsityPatternBase>::n_rows () const
 
 
 template <class SparsityPatternBase>
-unsigned int
+types::global_dof_index
 BlockSparsityPatternBase<SparsityPatternBase>::n_cols () const
 {
   // only count in first row, since
   // all rows should be equivalent
-  unsigned int count = 0;
+  types::global_dof_index count = 0;
   for (unsigned int c=0; c<columns; ++c)
     count += sub_objects[0][c]->n_cols();
   return count;
@@ -359,7 +359,7 @@ void
 BlockSparsityPattern::reinit(
   const BlockIndices &rows,
   const BlockIndices &cols,
-  const std::vector<std::vector<unsigned int> > &row_lengths)
+  const std::vector<std::vector<types::global_dof_index> > &row_lengths)
 {
   AssertDimension (row_lengths.size(), cols.size());
 
@@ -487,8 +487,8 @@ BlockCompressedSparsityPattern (
 
 BlockCompressedSparsityPattern::
 BlockCompressedSparsityPattern (
-  const std::vector<unsigned int> &row_indices,
-  const std::vector<unsigned int> &col_indices)
+  const std::vector<types::global_dof_index> &row_indices,
+  const std::vector<types::global_dof_index> &col_indices)
 {
   reinit(row_indices, col_indices);
 }
@@ -505,8 +505,8 @@ BlockCompressedSparsityPattern (
 
 void
 BlockCompressedSparsityPattern::reinit (
-  const std::vector< unsigned int > &row_block_sizes,
-  const std::vector< unsigned int > &col_block_sizes)
+  const std::vector< types::global_dof_index > &row_block_sizes,
+  const std::vector< types::global_dof_index > &col_block_sizes)
 {
   BlockSparsityPatternBase<CompressedSparsityPattern>::reinit(row_block_sizes.size(), col_block_sizes.size());
   for (unsigned int i=0; i<row_block_sizes.size(); ++i)
@@ -550,8 +550,8 @@ BlockCompressedSetSparsityPattern (
 
 BlockCompressedSetSparsityPattern::
 BlockCompressedSetSparsityPattern (
-  const std::vector<unsigned int> &row_indices,
-  const std::vector<unsigned int> &col_indices)
+  const std::vector<types::global_dof_index> &row_indices,
+  const std::vector<types::global_dof_index> &col_indices)
 {
   reinit(row_indices, col_indices);
 }
@@ -568,8 +568,8 @@ BlockCompressedSetSparsityPattern (
 
 void
 BlockCompressedSetSparsityPattern::reinit (
-  const std::vector< unsigned int > &row_block_sizes,
-  const std::vector< unsigned int > &col_block_sizes)
+  const std::vector< types::global_dof_index > &row_block_sizes,
+  const std::vector< types::global_dof_index > &col_block_sizes)
 {
   BlockSparsityPatternBase<CompressedSetSparsityPattern>::reinit(row_block_sizes.size(), col_block_sizes.size());
   for (unsigned int i=0; i<row_block_sizes.size(); ++i)
@@ -612,8 +612,8 @@ BlockCompressedSimpleSparsityPattern (const unsigned int n_rows,
 
 
 BlockCompressedSimpleSparsityPattern::
-BlockCompressedSimpleSparsityPattern (const std::vector<unsigned int> &row_indices,
-                                      const std::vector<unsigned int> &col_indices)
+BlockCompressedSimpleSparsityPattern (const std::vector<types::global_dof_index> &row_indices,
+                                      const std::vector<types::global_dof_index> &col_indices)
   :
   BlockSparsityPatternBase<CompressedSimpleSparsityPattern>(row_indices.size(),
                                                             col_indices.size())
@@ -643,8 +643,8 @@ BlockCompressedSimpleSparsityPattern (const std::vector<IndexSet> &partitioning)
 
 void
 BlockCompressedSimpleSparsityPattern::reinit (
-  const std::vector< unsigned int > &row_block_sizes,
-  const std::vector< unsigned int > &col_block_sizes)
+  const std::vector< types::global_dof_index > &row_block_sizes,
+  const std::vector< types::global_dof_index > &col_block_sizes)
 {
   BlockSparsityPatternBase<CompressedSimpleSparsityPattern>::
   reinit(row_block_sizes.size(), col_block_sizes.size());
@@ -689,8 +689,8 @@ namespace TrilinosWrappers
 
 
   BlockSparsityPattern::
-  BlockSparsityPattern (const std::vector<unsigned int> &row_indices,
-                        const std::vector<unsigned int> &col_indices)
+  BlockSparsityPattern (const std::vector<types::global_dof_index> &row_indices,
+                        const std::vector<types::global_dof_index> &col_indices)
     :
     BlockSparsityPatternBase<SparsityPattern>(row_indices.size(),
                                               col_indices.size())
@@ -738,8 +738,8 @@ namespace TrilinosWrappers
 
 
   void
-  BlockSparsityPattern::reinit (const std::vector<unsigned int> &row_block_sizes,
-                                const std::vector<unsigned int> &col_block_sizes)
+  BlockSparsityPattern::reinit (const std::vector<types::global_dof_index> &row_block_sizes,
+                                const std::vector<types::global_dof_index> &col_block_sizes)
   {
     dealii::BlockSparsityPatternBase<SparsityPattern>::
     reinit(row_block_sizes.size(), col_block_sizes.size());
index 5c15733a95fc64043810ab405f5032435a561774..b7d1484d3e5c0f0bb391114c843a4fb20923db6e 100644 (file)
@@ -42,8 +42,8 @@ ChunkSparsityPattern::ChunkSparsityPattern (const ChunkSparsityPattern &s)
 
 
 
-ChunkSparsityPattern::ChunkSparsityPattern (const unsigned int m,
-                                            const unsigned int n,
+ChunkSparsityPattern::ChunkSparsityPattern (const types::global_dof_index m,
+                                            const types::global_dof_index n,
                                             const unsigned int max_per_row,
                                             const unsigned int chunk_size,
                                             const bool optimize_diag)
@@ -56,8 +56,8 @@ ChunkSparsityPattern::ChunkSparsityPattern (const unsigned int m,
 
 
 ChunkSparsityPattern::ChunkSparsityPattern (
-  const unsigned int m,
-  const unsigned int n,
+  const types::global_dof_index m,
+  const types::global_dof_index n,
   const std::vector<unsigned int> &row_lengths,
   const unsigned int chunk_size,
   const bool optimize_diag)
@@ -69,9 +69,9 @@ ChunkSparsityPattern::ChunkSparsityPattern (
 
 
 
-ChunkSparsityPattern::ChunkSparsityPattern (const unsigned int n,
-                                            const unsigned int max_per_row,
-                                            const unsigned int chunk_size)
+ChunkSparsityPattern::ChunkSparsityPattern (const types::global_dof_index n,
+                                            const unsigned int            max_per_row,
+                                            const unsigned int            chunk_size)
 {
   reinit (n, n, max_per_row, chunk_size, true);
 }
@@ -79,7 +79,7 @@ ChunkSparsityPattern::ChunkSparsityPattern (const unsigned int n,
 
 
 ChunkSparsityPattern::ChunkSparsityPattern (
-  const unsigned int               m,
+  const types::global_dof_index m,
   const std::vector<unsigned int> &row_lengths,
   const unsigned int chunk_size,
   const bool optimize_diag)
@@ -112,8 +112,8 @@ ChunkSparsityPattern::operator = (const ChunkSparsityPattern &s)
 
 
 void
-ChunkSparsityPattern::reinit (const unsigned int m,
-                              const unsigned int n,
+ChunkSparsityPattern::reinit (const types::global_dof_index m,
+                              const types::global_dof_index n,
                               const unsigned int max_per_row,
                               const unsigned int chunk_size,
                               const bool optimize_diag)
@@ -130,8 +130,8 @@ ChunkSparsityPattern::reinit (const unsigned int m,
 
 void
 ChunkSparsityPattern::reinit (
-  const unsigned int m,
-  const unsigned int n,
+  const types::global_dof_index m,
+  const types::global_dof_index n,
   const VectorSlice<const std::vector<unsigned int> > &row_lengths,
   const unsigned int chunk_size,
   const bool optimize_diag)
@@ -253,8 +253,8 @@ void ChunkSparsityPattern::copy_from (const FullMatrix<number> &matrix,
 
 void
 ChunkSparsityPattern::reinit (
-  const unsigned int m,
-  const unsigned int n,
+  const types::global_dof_index m,
+  const types::global_dof_index n,
   const std::vector<unsigned int> &row_lengths,
   const unsigned int chunk_size,
   const bool optimize_diag)
@@ -283,8 +283,8 @@ ChunkSparsityPattern::max_entries_per_row () const
 
 
 void
-ChunkSparsityPattern::add (const unsigned int i,
-                           const unsigned int j)
+ChunkSparsityPattern::add (const types::global_dof_index i,
+                           const types::global_dof_index j)
 {
   Assert (i<rows, ExcInvalidIndex(i,rows));
   Assert (j<cols, ExcInvalidIndex(j,cols));
@@ -294,8 +294,8 @@ ChunkSparsityPattern::add (const unsigned int i,
 
 
 bool
-ChunkSparsityPattern::exists (const unsigned int i,
-                              const unsigned int j) const
+ChunkSparsityPattern::exists (const types::global_dof_index i,
+                              const types::global_dof_index j) const
 {
   Assert (i<rows, ExcIndexRange(i,0,rows));
   Assert (j<cols, ExcIndexRange(j,0,cols));
@@ -307,7 +307,7 @@ ChunkSparsityPattern::exists (const unsigned int i,
 
 
 unsigned int
-ChunkSparsityPattern::row_length (const unsigned int i) const
+ChunkSparsityPattern::row_length (const types::global_dof_index i) const
 {
   Assert (i<rows, ExcIndexRange(i,0,rows));
 
index 6a99f09f16393336bc401b1887b27f7d4d999aef..e01be57acabace77455468100be783120d89e337 100644 (file)
@@ -46,8 +46,8 @@ CompressedSetSparsityPattern (const CompressedSetSparsityPattern &s)
 
 
 
-CompressedSetSparsityPattern::CompressedSetSparsityPattern (const unsigned int m,
-                                                            const unsigned int n)
+CompressedSetSparsityPattern::CompressedSetSparsityPattern (const types::global_dof_index m,
+                                                            const types::global_dof_index n)
   :
   rows(0),
   cols(0)
@@ -57,7 +57,7 @@ CompressedSetSparsityPattern::CompressedSetSparsityPattern (const unsigned int m
 
 
 
-CompressedSetSparsityPattern::CompressedSetSparsityPattern (const unsigned int n)
+CompressedSetSparsityPattern::CompressedSetSparsityPattern (const types::global_dof_index n)
   :
   rows(0),
   cols(0)
@@ -82,8 +82,8 @@ CompressedSetSparsityPattern::operator = (const CompressedSetSparsityPattern &s)
 
 
 void
-CompressedSetSparsityPattern::reinit (const unsigned int m,
-                                      const unsigned int n)
+CompressedSetSparsityPattern::reinit (const types::global_dof_index m,
+                                      const types::global_dof_index n)
 {
   rows = m;
   cols = n;
@@ -123,8 +123,8 @@ CompressedSetSparsityPattern::max_entries_per_row () const
 
 
 bool
-CompressedSetSparsityPattern::exists (const unsigned int i,
-                                      const unsigned int j) const
+CompressedSetSparsityPattern::exists (const types::global_dof_index i,
+                                      const types::global_dof_index j) const
 {
   Assert (i<rows, ExcIndexRange(i, 0, rows));
   Assert (j<cols, ExcIndexRange(j, 0, cols));
index 72e6164fa534058411879365c1c814258d36f27e..94595422349315575b37d21aaa5d157a5854e3b6 100644 (file)
@@ -236,8 +236,8 @@ CompressedSimpleSparsityPattern (const CompressedSimpleSparsityPattern &s)
 
 
 
-CompressedSimpleSparsityPattern::CompressedSimpleSparsityPattern (const unsigned int m,
-    const unsigned int n,
+CompressedSimpleSparsityPattern::CompressedSimpleSparsityPattern (const types::global_dof_index m,
+    const types::global_dof_index n,
     const IndexSet &rowset_
                                                                  )
   :
@@ -250,7 +250,7 @@ CompressedSimpleSparsityPattern::CompressedSimpleSparsityPattern (const unsigned
 
 
 
-CompressedSimpleSparsityPattern::CompressedSimpleSparsityPattern (const unsigned int n)
+CompressedSimpleSparsityPattern::CompressedSimpleSparsityPattern (const types::global_dof_index n)
   :
   rows(0),
   cols(0),
@@ -276,8 +276,8 @@ CompressedSimpleSparsityPattern::operator = (const CompressedSimpleSparsityPatte
 
 
 void
-CompressedSimpleSparsityPattern::reinit (const unsigned int m,
-                                         const unsigned int n,
+CompressedSimpleSparsityPattern::reinit (const types::global_dof_index m,
+                                         const types::global_dof_index n,
                                          const IndexSet &rowset_)
 {
   rows = m;
@@ -321,8 +321,8 @@ CompressedSimpleSparsityPattern::max_entries_per_row () const
 
 
 bool
-CompressedSimpleSparsityPattern::exists (const unsigned int i,
-                                         const unsigned int j) const
+CompressedSimpleSparsityPattern::exists (const types::global_dof_index i,
+                                         const types::global_dof_index j) const
 {
   Assert (i<rows, ExcIndexRange(i, 0, rows));
   Assert (j<cols, ExcIndexRange(j, 0, cols));
@@ -466,11 +466,11 @@ CompressedSimpleSparsityPattern::memory_consumption () const
 
 
 // explicit instantiations
-template void CompressedSimpleSparsityPattern::Line::add_entries(unsigned int *,
-    unsigned int *,
+template void CompressedSimpleSparsityPattern::Line::add_entries(types::global_dof_index *,
+    types::global_dof_index *,
     const bool);
-template void CompressedSimpleSparsityPattern::Line::add_entries(const unsigned int *,
-    const unsigned int *,
+template void CompressedSimpleSparsityPattern::Line::add_entries(const types::global_dof_index *,
+    const types::global_dof_index *,
     const bool);
 #ifndef DEAL_II_VECTOR_ITERATOR_IS_POINTER
 template void CompressedSimpleSparsityPattern::Line::
index 391824fe614580943614a3c528f11869c534ba19..ebc337ca8800afcf333e850f399c4764adb8c710 100644 (file)
@@ -338,8 +338,8 @@ CompressedSparsityPattern (const CompressedSparsityPattern &s)
 
 
 
-CompressedSparsityPattern::CompressedSparsityPattern (const unsigned int m,
-                                                      const unsigned int n)
+CompressedSparsityPattern::CompressedSparsityPattern (const types::global_dof_index m,
+                                                      const types::global_dof_index n)
   :
   rows(0),
   cols(0)
@@ -349,7 +349,7 @@ CompressedSparsityPattern::CompressedSparsityPattern (const unsigned int m,
 
 
 
-CompressedSparsityPattern::CompressedSparsityPattern (const unsigned int n)
+CompressedSparsityPattern::CompressedSparsityPattern (const types::global_dof_index n)
   :
   rows(0),
   cols(0)
@@ -374,8 +374,8 @@ CompressedSparsityPattern::operator = (const CompressedSparsityPattern &s)
 
 
 void
-CompressedSparsityPattern::reinit (const unsigned int m,
-                                   const unsigned int n)
+CompressedSparsityPattern::reinit (const types::global_dof_index m,
+                                   const types::global_dof_index n)
 {
   rows = m;
   cols = n;
@@ -417,8 +417,8 @@ CompressedSparsityPattern::max_entries_per_row () const
 
 
 bool
-CompressedSparsityPattern::exists (const unsigned int i,
-                                   const unsigned int j) const
+CompressedSparsityPattern::exists (const types::global_dof_index i,
+                                   const types::global_dof_index j) const
 {
   Assert (i<rows, ExcIndexRange(i, 0, rows));
   Assert (j<cols, ExcIndexRange(j, 0, cols));
@@ -548,11 +548,11 @@ CompressedSparsityPattern::n_nonzero_elements () const
 
 
 // explicit instantiations
-template void CompressedSparsityPattern::Line::add_entries(unsigned int *,
-                                                           unsigned int *,
+template void CompressedSparsityPattern::Line::add_entries(types::global_dof_index *,
+                                                           types::global_dof_index *,
                                                            const bool);
-template void CompressedSparsityPattern::Line::add_entries(const unsigned int *,
-                                                           const unsigned int *,
+template void CompressedSparsityPattern::Line::add_entries(const types::global_dof_index *,
+                                                           const types::global_dof_index *,
                                                            const bool);
 #ifndef DEAL_II_VECTOR_ITERATOR_IS_POINTER
 template void CompressedSparsityPattern::Line::
index 855306a649a0f64ebf886f54650cbe693ff67389..04fe330ba33233b4105b07242220be3186929333 100644 (file)
@@ -206,7 +206,7 @@ namespace MatrixCreator
 
       struct CopyData
       {
-        std::vector<unsigned int> dof_indices;
+        std::vector<types::global_dof_index> dof_indices;
         FullMatrix<double>        cell_matrix;
         dealii::Vector<double>    cell_rhs;
       };
@@ -820,7 +820,7 @@ namespace MatrixCreator
                                    SparseMatrix<double>      &matrix,
                                    const typename FunctionMap<spacedim>::type &boundary_functions,
                                    Vector<double>            &rhs_vector,
-                                   std::vector<unsigned int> &dof_to_boundary_mapping,
+                                   std::vector<types::global_dof_index> &dof_to_boundary_mapping,
                                    const Function<spacedim> *const coefficient,
                                    const std::vector<unsigned int> &component_mapping,
                                    const MatrixCreator::internal::IteratorRange<DoFHandler<dim,spacedim> >   range,
@@ -865,8 +865,8 @@ namespace MatrixCreator
       std::vector<Vector<double> > rhs_values_system (fe_values.n_quadrature_points,
                                                       Vector<double>(n_function_components));
 
-      std::vector<unsigned int> dofs (dofs_per_cell);
-      std::vector<unsigned int> dofs_on_face_vector (dofs_per_face);
+      std::vector<types::global_dof_index> dofs (dofs_per_cell);
+      std::vector<types::global_dof_index> dofs_on_face_vector (dofs_per_face);
 
       // for each dof on the cell, have a
       // flag whether it is on the face
@@ -1088,7 +1088,7 @@ namespace MatrixCreator
                                         SparseMatrix<double> &,
                                         const FunctionMap<3>::type &,
                                         Vector<double> &,
-                                        std::vector<unsigned int> &,
+                                        std::vector<types::global_dof_index> &,
                                         const Function<3> *const ,
                                         const std::vector<unsigned int> &,
                                         const MatrixCreator::internal::IteratorRange<DoFHandler<2,3> > ,
@@ -1107,7 +1107,7 @@ namespace MatrixCreator
                                         SparseMatrix<double> &,
                                         const FunctionMap<3>::type &,
                                         Vector<double> &,
-                                        std::vector<unsigned int> &,
+                                        std::vector<types::global_dof_index> &,
                                         const Function<3> *const ,
                                         const std::vector<unsigned int> &,
                                         const MatrixCreator::internal::IteratorRange<DoFHandler<1,3> > ,
@@ -1128,7 +1128,7 @@ namespace MatrixCreator
                                SparseMatrix<double> &matrix,
                                const typename FunctionMap<spacedim>::type &boundary_functions,
                                Vector<double>            &rhs_vector,
-                               std::vector<unsigned int> &dof_to_boundary_mapping,
+                               std::vector<types::global_dof_index> &dof_to_boundary_mapping,
                                const Function<spacedim> *const coefficient,
                                std::vector<unsigned int> component_mapping)
   {
@@ -1188,7 +1188,7 @@ namespace MatrixCreator
      SparseMatrix<double>      &matrix,
      const typename FunctionMap<spacedim>::type &boundary_functions,
      Vector<double>            &rhs_vector,
-     std::vector<unsigned int> &dof_to_boundary_mapping,
+     std::vector<types::global_dof_index> &dof_to_boundary_mapping,
      const Function<spacedim> *const coefficient,
      const std::vector<unsigned int> &component_mapping,
      const MatrixCreator::internal::IteratorRange<DoFHandler<dim,spacedim> >   range,
@@ -1220,7 +1220,7 @@ namespace MatrixCreator
                                    SparseMatrix<double>      &matrix,
                                    const typename FunctionMap<spacedim>::type &boundary_functions,
                                    Vector<double>            &rhs_vector,
-                                   std::vector<unsigned int> &dof_to_boundary_mapping,
+                                   std::vector<types::global_dof_index> &dof_to_boundary_mapping,
                                    const Function<spacedim> *const coefficient,
                                    const std::vector<unsigned int> &component_mapping,
                                    const MatrixCreator::internal::IteratorRange<hp::DoFHandler<dim,spacedim> >   range,
@@ -1237,7 +1237,7 @@ namespace MatrixCreator
       if (true)
         {
           unsigned int max_element = 0;
-          for (std::vector<unsigned int>::const_iterator i=dof_to_boundary_mapping.begin();
+          for (std::vector<types::global_dof_index>::const_iterator i=dof_to_boundary_mapping.begin();
                i!=dof_to_boundary_mapping.end(); ++i)
             if ((*i != hp::DoFHandler<dim,spacedim>::invalid_dof_index) &&
                 (*i > max_element))
@@ -1267,8 +1267,8 @@ namespace MatrixCreator
       std::vector<double>          rhs_values_scalar;
       std::vector<Vector<double> > rhs_values_system;
 
-      std::vector<unsigned int> dofs (max_dofs_per_cell);
-      std::vector<unsigned int> dofs_on_face_vector (max_dofs_per_face);
+      std::vector<types::global_dof_index> dofs (max_dofs_per_cell);
+      std::vector<types::global_dof_index> dofs_on_face_vector (max_dofs_per_face);
 
       // for each dof on the cell, have a
       // flag whether it is on the face
@@ -1586,7 +1586,7 @@ namespace MatrixCreator
                                     SparseMatrix<double>      &matrix,
                                     const typename FunctionMap<spacedim>::type &rhs,
                                     Vector<double>            &rhs_vector,
-                                    std::vector<unsigned int> &dof_to_boundary_mapping,
+                                    std::vector<types::global_dof_index> &dof_to_boundary_mapping,
                                     const Function<spacedim> *const a,
                                     std::vector<unsigned int> component_mapping)
   {
@@ -1604,7 +1604,7 @@ namespace MatrixCreator
                                SparseMatrix<double>      &matrix,
                                const typename FunctionMap<spacedim>::type         &boundary_functions,
                                Vector<double>            &rhs_vector,
-                               std::vector<unsigned int> &dof_to_boundary_mapping,
+                               std::vector<types::global_dof_index> &dof_to_boundary_mapping,
                                const Function<spacedim> *const coefficient,
                                std::vector<unsigned int> component_mapping)
   {
@@ -1664,7 +1664,7 @@ namespace MatrixCreator
      SparseMatrix<double>      &matrix,
      const typename FunctionMap<spacedim>::type &boundary_functions,
      Vector<double>            &rhs_vector,
-     std::vector<unsigned int> &dof_to_boundary_mapping,
+     std::vector<types::global_dof_index> &dof_to_boundary_mapping,
      const Function<spacedim> *const coefficient,
      const std::vector<unsigned int> &component_mapping,
      const MatrixCreator::internal::IteratorRange<hp::DoFHandler<dim,spacedim> >   range,
@@ -1691,7 +1691,7 @@ namespace MatrixCreator
                                     SparseMatrix<double>      &matrix,
                                     const typename FunctionMap<spacedim>::type &rhs,
                                     Vector<double>            &rhs_vector,
-                                    std::vector<unsigned int> &dof_to_boundary_mapping,
+                                    std::vector<types::global_dof_index> &dof_to_boundary_mapping,
                                     const Function<spacedim> *const a,
                                     std::vector<unsigned int> component_mapping)
   {
@@ -1941,7 +1941,7 @@ namespace MatrixTools
 //TODO:[WB] I don't think that the optimized storage of diagonals is needed (GK)
   template <typename number>
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          SparseMatrix<number> &matrix,
                          Vector<number>   &solution,
                          Vector<number>   &right_hand_side,
@@ -1977,13 +1977,13 @@ namespace MatrixTools
         }
 
 
-    std::map<unsigned int,double>::const_iterator dof  = boundary_values.begin(),
-                                                  endd = boundary_values.end();
+    std::map<types::global_dof_index,double>::const_iterator dof  = boundary_values.begin(),
+                                                            endd = boundary_values.end();
     for (; dof != endd; ++dof)
       {
         Assert (dof->first < n_dofs, ExcInternalError());
 
-        const unsigned int dof_number = dof->first;
+        const types::global_dof_index dof_number = dof->first;
         // for each boundary dof:
 
         // set entries of this line to zero except for the diagonal
@@ -2095,7 +2095,7 @@ namespace MatrixTools
 
   template <typename number>
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          BlockSparseMatrix<number> &matrix,
                          BlockVector<number>   &solution,
                          BlockVector<number>   &right_hand_side,
@@ -2155,8 +2155,8 @@ namespace MatrixTools
       first_nonzero_diagonal_entry = 1;
 
 
-    std::map<unsigned int,double>::const_iterator dof  = boundary_values.begin(),
-                                                  endd = boundary_values.end();
+    std::map<types::global_dof_index,double>::const_iterator dof  = boundary_values.begin(),
+                                                             endd = boundary_values.end();
     const BlockSparsityPattern &
     sparsity_pattern = matrix.get_sparsity_pattern();
 
@@ -2176,8 +2176,8 @@ namespace MatrixTools
         // get global index and index
         // in the block in which this
         // dof is located
-        const unsigned int dof_number = dof->first;
-        const std::pair<unsigned int,unsigned int>
+        const types::global_dof_index dof_number = dof->first;
+        const std::pair<types::global_dof_index,unsigned int>
         block_index = index_mapping.global_to_local (dof_number);
 
         // for each boundary dof:
@@ -2359,7 +2359,7 @@ namespace MatrixTools
     {
       template <typename PETScMatrix, typename PETScVector>
       void
-      apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+      apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                              PETScMatrix      &matrix,
                              PETScVector      &solution,
                              PETScVector      &right_hand_side,
@@ -2406,7 +2406,7 @@ namespace MatrixTools
         // figure out which rows of the matrix we
         // have to eliminate on this processor
         std::vector<unsigned int> constrained_rows;
-        for (std::map<unsigned int,double>::const_iterator
+        for (std::map<types::global_dof_index,double>::const_iterator
              dof  = boundary_values.begin();
              dof != boundary_values.end();
              ++dof)
@@ -2444,9 +2444,9 @@ namespace MatrixTools
         right_hand_side.compress ();
         solution.compress ();
 
-        std::vector<unsigned int> indices;
+        std::vector<types::global_dof_index> indices;
         std::vector<PetscScalar>  solution_values;
-        for (std::map<unsigned int,double>::const_iterator
+        for (std::map<types::global_dof_index,double>::const_iterator
              dof  = boundary_values.begin();
              dof != boundary_values.end();
              ++dof)
@@ -2476,7 +2476,7 @@ namespace MatrixTools
 
 
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          PETScWrappers::SparseMatrix   &matrix,
                          PETScWrappers::Vector   &solution,
                          PETScWrappers::Vector   &right_hand_side,
@@ -2491,7 +2491,7 @@ namespace MatrixTools
 
 
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          PETScWrappers::MPI::SparseMatrix   &matrix,
                          PETScWrappers::MPI::Vector   &solution,
                          PETScWrappers::MPI::Vector   &right_hand_side,
@@ -2508,7 +2508,7 @@ namespace MatrixTools
 
 
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double>  &boundary_values,
                          PETScWrappers::MPI::BlockSparseMatrix &matrix,
                          PETScWrappers::MPI::BlockVector        &solution,
                          PETScWrappers::MPI::BlockVector        &right_hand_side,
@@ -2532,7 +2532,7 @@ namespace MatrixTools
     std::vector<std::map<unsigned int,double> > block_boundary_values(n_blocks);
     {
       int offset = 0, block=0;
-      for (std::map<unsigned int,double>::const_iterator
+      for (std::map<types::global_dof_index,double>::const_iterator
            dof  = boundary_values.begin();
            dof != boundary_values.end();
            ++dof)
@@ -2542,8 +2542,8 @@ namespace MatrixTools
               offset += matrix.block(block,0).m();
               block++;
             }
-          const unsigned int index = dof->first - offset;
-          block_boundary_values[block].insert(std::pair<unsigned int, double> (index,dof->second));
+          const types::global_dof_index index = dof->first - offset;
+          block_boundary_values[block].insert(std::pair<types::global_dof_index, double> (index,dof->second));
         }
     }
 
@@ -2563,11 +2563,11 @@ namespace MatrixTools
     // the whole row.
     for (unsigned int block_m=0; block_m<n_blocks; ++block_m)
       {
-        const std::pair<unsigned int, unsigned int> local_range
+        const std::pair<types::global_dof_index, types::global_dof_index> local_range
           = matrix.block(block_m,0).local_range();
 
         std::vector<unsigned int> constrained_rows;
-        for (std::map<unsigned int,double>::const_iterator
+        for (std::map<types::global_dof_index,double>::const_iterator
              dof  = block_boundary_values[block_m].begin();
              dof != block_boundary_values[block_m].end();
              ++dof)
@@ -2593,7 +2593,7 @@ namespace MatrixTools
     {
       template <typename TrilinosMatrix, typename TrilinosVector>
       void
-      apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+      apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                              TrilinosMatrix      &matrix,
                              TrilinosVector      &solution,
                              TrilinosVector      &right_hand_side,
@@ -2611,7 +2611,7 @@ namespace MatrixTools
         if (boundary_values.size() == 0)
           return;
 
-        const std::pair<unsigned int, unsigned int> local_range
+        const std::pair<types::global_dof_index, types::global_dof_index> local_range
           = matrix.local_range();
         Assert (local_range == right_hand_side.local_range(),
                 ExcInternalError());
@@ -2629,7 +2629,7 @@ namespace MatrixTools
         // matrix that we can see. if we can't
         // find such an entry, take one
         TrilinosScalar average_nonzero_diagonal_entry = 1;
-        for (unsigned int i=local_range.first; i<local_range.second; ++i)
+        for (types::global_dof_index i=local_range.first; i<local_range.second; ++i)
           if (matrix.diag_element(i) != 0)
             {
               average_nonzero_diagonal_entry = std::fabs(matrix.diag_element(i));
@@ -2639,7 +2639,7 @@ namespace MatrixTools
         // figure out which rows of the matrix we
         // have to eliminate on this processor
         std::vector<unsigned int> constrained_rows;
-        for (std::map<unsigned int,double>::const_iterator
+        for (std::map<types::global_dof_index,double>::const_iterator
              dof  = boundary_values.begin();
              dof != boundary_values.end();
              ++dof)
@@ -2677,9 +2677,9 @@ namespace MatrixTools
         right_hand_side.compress ();
         solution.compress ();
 
-        std::vector<unsigned int> indices;
+        std::vector<types::global_dof_index> indices;
         std::vector<TrilinosScalar>  solution_values;
-        for (std::map<unsigned int,double>::const_iterator
+        for (std::map<types::global_dof_index,double>::const_iterator
              dof  = boundary_values.begin();
              dof != boundary_values.end();
              ++dof)
@@ -2708,7 +2708,7 @@ namespace MatrixTools
 
       template <typename TrilinosMatrix, typename TrilinosBlockVector>
       void
-      apply_block_boundary_values (const std::map<unsigned int,double> &boundary_values,
+      apply_block_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                                    TrilinosMatrix      &matrix,
                                    TrilinosBlockVector &solution,
                                    TrilinosBlockVector &right_hand_side,
@@ -2731,10 +2731,10 @@ namespace MatrixTools
         // into blocks for the boundary values.
         // To this end, generate a vector of
         // maps with the respective indices.
-        std::vector<std::map<unsigned int,double> > block_boundary_values(n_blocks);
+        std::vector<std::map<types::global_dof_index,double> > block_boundary_values(n_blocks);
         {
           int offset = 0, block=0;
-          for (std::map<unsigned int,double>::const_iterator
+          for (std::map<types::global_dof_index,double>::const_iterator
                dof  = boundary_values.begin();
                dof != boundary_values.end();
                ++dof)
@@ -2744,9 +2744,9 @@ namespace MatrixTools
                   offset += matrix.block(block,0).m();
                   block++;
                 }
-              const unsigned int index = dof->first - offset;
+              const types::global_dof_index index = dof->first - offset;
               block_boundary_values[block].insert(
-                std::pair<unsigned int, double> (index,dof->second));
+                std::pair<types::global_dof_index, double> (index,dof->second));
             }
         }
 
@@ -2766,11 +2766,11 @@ namespace MatrixTools
         // the whole row.
         for (unsigned int block_m=0; block_m<n_blocks; ++block_m)
           {
-            const std::pair<unsigned int, unsigned int> local_range
+            const std::pair<types::global_dof_index, types::global_dof_index> local_range
               = matrix.block(block_m,0).local_range();
 
             std::vector<unsigned int> constrained_rows;
-            for (std::map<unsigned int,double>::const_iterator
+            for (std::map<types::global_dof_index,double>::const_iterator
                  dof  = block_boundary_values[block_m].begin();
                  dof != block_boundary_values[block_m].end();
                  ++dof)
@@ -2790,7 +2790,7 @@ namespace MatrixTools
 
 
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          TrilinosWrappers::SparseMatrix   &matrix,
                          TrilinosWrappers::Vector         &solution,
                          TrilinosWrappers::Vector         &right_hand_side,
@@ -2805,7 +2805,7 @@ namespace MatrixTools
 
 
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
                          TrilinosWrappers::SparseMatrix   &matrix,
                          TrilinosWrappers::MPI::Vector    &solution,
                          TrilinosWrappers::MPI::Vector    &right_hand_side,
@@ -2820,7 +2820,7 @@ namespace MatrixTools
 
 
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double>  &boundary_values,
                          TrilinosWrappers::BlockSparseMatrix &matrix,
                          TrilinosWrappers::BlockVector        &solution,
                          TrilinosWrappers::BlockVector        &right_hand_side,
@@ -2834,7 +2834,7 @@ namespace MatrixTools
 
 
   void
-  apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values (const std::map<types::global_dof_index,double>  &boundary_values,
                          TrilinosWrappers::BlockSparseMatrix &matrix,
                          TrilinosWrappers::MPI::BlockVector   &solution,
                          TrilinosWrappers::MPI::BlockVector   &right_hand_side,
@@ -2850,8 +2850,8 @@ namespace MatrixTools
 
 
   void
-  local_apply_boundary_values (const std::map<unsigned int,double> &boundary_values,
-                               const std::vector<unsigned int> &local_dof_indices,
+  local_apply_boundary_values (const std::map<types::global_dof_index,double> &boundary_values,
+                               const std::vector<types::global_dof_index> &local_dof_indices,
                                FullMatrix<double> &local_matrix,
                                Vector<double>     &local_rhs,
                                const bool          eliminate_columns)
@@ -2898,7 +2898,7 @@ namespace MatrixTools
     const unsigned int n_local_dofs = local_dof_indices.size();
     for (unsigned int i=0; i<n_local_dofs; ++i)
       {
-        const std::map<unsigned int, double>::const_iterator
+        const std::map<types::global_dof_index, double>::const_iterator
         boundary_value = boundary_values.find (local_dof_indices[i]);
         if (boundary_value != boundary_values.end())
           {
@@ -2972,14 +2972,14 @@ namespace MatrixTools
 {
   template
   void
-  apply_boundary_values<double> (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values<double> (const std::map<types::global_dof_index,double> &boundary_values,
                                  SparseMatrix<double> &matrix,
                                  Vector<double>   &solution,
                                  Vector<double>   &right_hand_side,
                                  const bool        eliminate_columns);
   template
   void
-  apply_boundary_values<float> (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values<float> (const std::map<types::global_dof_index,double> &boundary_values,
                                 SparseMatrix<float> &matrix,
                                 Vector<float>   &solution,
                                 Vector<float>   &right_hand_side,
@@ -2987,14 +2987,14 @@ namespace MatrixTools
 
   template
   void
-  apply_boundary_values<double> (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values<double> (const std::map<types::global_dof_index,double> &boundary_values,
                                  BlockSparseMatrix<double> &matrix,
                                  BlockVector<double>   &solution,
                                  BlockVector<double>   &right_hand_side,
                                  const bool        eliminate_columns);
   template
   void
-  apply_boundary_values<float> (const std::map<unsigned int,double> &boundary_values,
+  apply_boundary_values<float> (const std::map<types::global_dof_index,double> &boundary_values,
                                 BlockSparseMatrix<float> &matrix,
                                 BlockVector<float>   &solution,
                                 BlockVector<float>   &right_hand_side,
index 57d6262b7dde5db4aa6752b9947d29e1798ae1a5..03859e48e1a03a266a2fa33b727cd218087e0d5c 100644 (file)
@@ -268,7 +268,7 @@ void PointValueHistory<dim>
     }
 
 
-  std::vector<unsigned int>
+  std::vector<types::global_dof_index>
   local_dof_indices (dof_handler->get_fe ().dofs_per_cell);
   std::vector <int> new_solution_indices;
   current_cell->get_dof_indices (local_dof_indices);
@@ -411,7 +411,7 @@ void PointValueHistory<dim>
         }
     }
 
-  std::vector<unsigned int> local_dof_indices (dof_handler->get_fe ().dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dof_handler->get_fe ().dofs_per_cell);
   for (unsigned int point = 0; point < locations.size (); point++)
     {
       current_cell[point]->get_dof_indices (local_dof_indices);
index a36bb8ab1a71f26dd39df9130b835c163c79f165..125fce1d7c32abde6f4bfba377137af724c359a2 100644 (file)
@@ -498,7 +498,7 @@ interpolate (const std::vector<VECTOR> &all_in,
                          " at the same time!"));
 
   Vector<typename VECTOR::value_type> local_values;
-  std::vector<unsigned int> dofs;
+  std::vector<types::global_dof_index> dofs;
 
   typename std::map<std::pair<unsigned int, unsigned int>, Pointerstruct>::const_iterator
   pointerstruct,
index 9fc45eac2ce92e9f327ef84b0a133cca447a9fc8..73ca71506a65abd1e1a647fdfeab650fe3a453d9 100644 (file)
@@ -107,7 +107,7 @@ class MassCoefficient : public Function<dim>
       }
 };
 
-    
+
 
                                 // @sect3{Evaluating the solution}
 
@@ -128,16 +128,16 @@ namespace Evaluation
 {
                                   // @sect4{The EvaluationBase class}
   template <int dim>
-  class EvaluationBase 
+  class EvaluationBase
   {
     public:
       virtual ~EvaluationBase ();
 
       void set_refinement_cycle (const unsigned int refinement_cycle);
-      
+
       virtual void operator () (const DoFHandler<dim> &dof_handler,
                                const Vector<double>  &solution) const = 0;
-    
+
       unsigned int refinement_cycle;
   };
 
@@ -145,9 +145,9 @@ namespace Evaluation
   template <int dim>
   EvaluationBase<dim>::~EvaluationBase ()
   {}
-  
 
-  
+
+
   template <int dim>
   void
   EvaluationBase<dim>::set_refinement_cycle (const unsigned int step)
@@ -162,15 +162,15 @@ namespace Evaluation
   {
     public:
       PointValueEvaluation (const Point<dim>   &evaluation_point);
-      
+
       virtual void operator () (const DoFHandler<dim> &dof_handler,
                                const Vector<double>  &solution) const;
-      
+
       DeclException1 (ExcEvaluationPointNotFound,
                      Point<dim>,
                      << "The evaluation point " << arg1
                      << " was not found among the vertices of the present grid.");
-    
+
       const Point<dim>  evaluation_point;
   };
 
@@ -181,14 +181,14 @@ namespace Evaluation
                  :
                  evaluation_point (evaluation_point)
   {}
-  
+
 
 
   template <int dim>
   void
   PointValueEvaluation<dim>::
   operator () (const DoFHandler<dim> &dof_handler,
-              const Vector<double>  &solution) const 
+              const Vector<double>  &solution) const
   {
     double point_value = 1e20;
 
@@ -246,15 +246,15 @@ namespace Evaluation
   {
     public:
       PointXDerivativeEvaluation (const Point<dim>   &evaluation_point);
-      
+
       virtual void operator () (const DoFHandler<dim> &dof_handler,
                                const Vector<double>  &solution) const;
-      
+
       DeclException1 (ExcEvaluationPointNotFound,
                      Point<dim>,
                      << "The evaluation point " << arg1
                      << " was not found among the vertices of the present grid.");
-    
+
       const Point<dim>  evaluation_point;
   };
 
@@ -265,7 +265,7 @@ namespace Evaluation
                  :
                  evaluation_point (evaluation_point)
   {}
-  
+
 
                                   // The more interesting things
                                   // happen inside the function doing
@@ -274,7 +274,7 @@ namespace Evaluation
   void
   PointXDerivativeEvaluation<dim>::
   operator () (const DoFHandler<dim> &dof_handler,
-              const Vector<double>  &solution) const 
+              const Vector<double>  &solution) const
   {
                                     // This time initialize the
                                     // return value with something
@@ -294,7 +294,7 @@ namespace Evaluation
                             update_gradients | update_q_points);
     std::vector<Tensor<1,dim> >
       solution_gradients (vertex_quadrature.n_quadrature_points);
-    
+
                                     // ...and next loop over all cells
                                     // and their vertices, and count
                                     // how often the vertex has been
@@ -429,7 +429,7 @@ namespace Evaluation
   }
 
 
-  
+
                                   // @sect4{The GridOutput class}
 
                                   // Since this program has a more
@@ -460,10 +460,10 @@ namespace Evaluation
   {
     public:
       GridOutput (const std::string &output_name_base);
-      
+
       virtual void operator () (const DoFHandler<dim> &dof_handler,
                                const Vector<double>  &solution) const;
-    
+
       const std::string output_name_base;
   };
 
@@ -474,7 +474,7 @@ namespace Evaluation
                  :
                  output_name_base (output_name_base)
   {}
-  
+
 
   template <int dim>
   void
@@ -496,12 +496,12 @@ namespace Evaluation
 #else
     std::ofstream out (filename.str());
 #endif
-    
+
     GridOut().write_eps (dof_handler.get_tria(), out);
   }
 }
 
-  
+
                                 // @sect3{The Laplace solver classes}
 
                                 // Next are the actual solver
@@ -518,8 +518,8 @@ namespace LaplaceSolver
                                   // which requires the class to be
                                   // known:
   template <int dim> class WeightedResidual;
-  
-  
+
+
                                   // @sect4{The Laplace solver base class}
 
                                   // This class is almost unchanged,
@@ -552,8 +552,8 @@ namespace LaplaceSolver
       virtual void set_refinement_cycle (const unsigned int cycle);
 
       virtual void output_solution () const = 0;
-      
-    
+
+
       const SmartPointer<Triangulation<dim> > triangulation;
 
       unsigned int refinement_cycle;
@@ -568,7 +568,7 @@ namespace LaplaceSolver
 
 
   template <int dim>
-  Base<dim>::~Base () 
+  Base<dim>::~Base ()
   {}
 
 
@@ -579,7 +579,7 @@ namespace LaplaceSolver
   {
     refinement_cycle = cycle;
   }
-  
+
 
                                   // @sect4{The Laplace Solver class}
 
@@ -593,7 +593,7 @@ namespace LaplaceSolver
       Solver (Triangulation<dim>       &triangulation,
              const FiniteElement<dim> &fe,
              const Quadrature<dim>    &quadrature,
-             const Quadrature<dim-1>  &face_quadrature,              
+             const Quadrature<dim-1>  &face_quadrature,
              const Function<dim>      &boundary_values);
       virtual
       ~Solver ();
@@ -609,24 +609,24 @@ namespace LaplaceSolver
       virtual
       unsigned int
       n_dofs () const;
-      
-    
+
+
       const SmartPointer<const FiniteElement<dim> >  fe;
       const SmartPointer<const Quadrature<dim> >     quadrature;
-      const SmartPointer<const Quadrature<dim-1> >   face_quadrature;      
+      const SmartPointer<const Quadrature<dim-1> >   face_quadrature;
       DoFHandler<dim>                                dof_handler;
       Vector<double>                                 solution;
       const SmartPointer<const Function<dim> >       boundary_values;
 
       virtual void assemble_rhs (Vector<double> &rhs) const = 0;
-    
-    
+
+
       struct LinearSystem
       {
          LinearSystem (const DoFHandler<dim> &dof_handler);
 
          void solve (Vector<double> &solution) const;
-       
+
          ConstraintMatrix     hanging_node_constraints;
          SparsityPattern      sparsity_pattern;
          SparseMatrix<double> matrix;
@@ -655,14 +655,14 @@ namespace LaplaceSolver
                  Base<dim> (triangulation),
                  fe (&fe),
                   quadrature (&quadrature),
-                  face_quadrature (&face_quadrature),    
+                  face_quadrature (&face_quadrature),
                  dof_handler (triangulation),
                  boundary_values (&boundary_values)
   {}
 
 
   template <int dim>
-  Solver<dim>::~Solver () 
+  Solver<dim>::~Solver ()
   {
     dof_handler.clear ();
   }
@@ -696,7 +696,7 @@ namespace LaplaceSolver
   {
     return dof_handler.n_dofs();
   }
-  
+
 
   template <int dim>
   void
@@ -708,7 +708,7 @@ namespace LaplaceSolver
 
     const unsigned int n_threads = multithread_info.n_default_threads;
     std::vector<std::pair<active_cell_iterator,active_cell_iterator> >
-      thread_ranges 
+      thread_ranges
       = Threads::split_range<active_cell_iterator> (dof_handler.begin_active (),
                                                    dof_handler.end (),
                                                    n_threads);
@@ -730,7 +730,7 @@ namespace LaplaceSolver
                                              0,
                                              *boundary_values,
                                              boundary_value_map);
-    
+
     threads.join_all ();
     linear_system.hanging_node_constraints.condense (linear_system.matrix);
 
@@ -749,7 +749,7 @@ namespace LaplaceSolver
                                Threads::ThreadMutex                                 &mutex) const
   {
     MappingQ<dim> mapping (4);
-    FEValues<dim> fe_values (mapping, *fe, *quadrature, 
+    FEValues<dim> fe_values (mapping, *fe, *quadrature,
                             UpdateFlags(update_gradients | update_values |
                                         update_q_points |
                                         update_JxW_values));
@@ -759,12 +759,12 @@ namespace LaplaceSolver
 
     FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     std::vector<double> laplace_coefficients (fe_values.n_quadrature_points);
     std::vector<double> mass_coefficients (fe_values.n_quadrature_points);
-    
-    
+
+
     for (typename DoFHandler<dim>::active_cell_iterator cell=begin_cell;
         cell!=end_cell; ++cell)
       {
@@ -776,8 +776,8 @@ namespace LaplaceSolver
                                              laplace_coefficients);
        MassCoefficient<dim>().value_list (fe_values.get_quadrature_points(),
                                           mass_coefficients);
-       
-       
+
+
        for (unsigned int q_point=0; q_point<n_q_points; ++q_point)
          for (unsigned int i=0; i<dofs_per_cell; ++i)
            for (unsigned int j=0; j<dofs_per_cell; ++j)
@@ -812,7 +812,7 @@ namespace LaplaceSolver
     void (*mhnc_p) (const DoFHandler<dim> &,
                    ConstraintMatrix      &)
       = &DoFTools::make_hanging_node_constraints;
-    
+
     Threads::Thread<>
       mhnc_thread = Threads::spawn (mhnc_p)(dof_handler, hanging_node_constraints);
 
@@ -928,17 +928,17 @@ namespace LaplaceSolver
 
       virtual
       void solve_problem ();
-      
+
       virtual
       unsigned int n_dofs () const;
-      
+
       virtual
       void postprocess (const Evaluation::EvaluationBase<dim> &postprocessor) const;
 
       virtual
       void output_solution () const;
-      
-    
+
+
       const SmartPointer<const Function<dim> > rhs_function;
       virtual void assemble_rhs (Vector<double> &rhs) const;
 
@@ -1008,16 +1008,16 @@ namespace LaplaceSolver
   {
     abort ();
   }
-  
+
 
 
   template <int dim>
   void
   PrimalSolver<dim>::
-  assemble_rhs (Vector<double> &rhs) const 
+  assemble_rhs (Vector<double> &rhs) const
   {
     MappingQ<dim> mapping (4);
-    FEValues<dim> fe_values (mapping, *this->fe, *this->quadrature, 
+    FEValues<dim> fe_values (mapping, *this->fe, *this->quadrature,
                             UpdateFlags(update_values    |
                                         update_q_points  |
                                         update_JxW_values));
@@ -1027,7 +1027,7 @@ namespace LaplaceSolver
 
     Vector<double>       cell_rhs (dofs_per_cell);
     std::vector<double>  rhs_values (n_q_points);
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     typename DoFHandler<dim>::active_cell_iterator
       cell = this->dof_handler.begin_active(),
@@ -1040,7 +1040,7 @@ namespace LaplaceSolver
 
        rhs_function->value_list (fe_values.get_quadrature_points(),
                                  rhs_values);
-      
+
        for (unsigned int q_point=0; q_point<n_q_points; ++q_point)
          for (unsigned int i=0; i<dofs_per_cell; ++i)
            cell_rhs(i) += (fe_values.shape_value(i,q_point) *
@@ -1191,7 +1191,7 @@ namespace LaplaceSolver
 
       virtual void refine_grid ();
 
-    
+
       const SmartPointer<const Function<dim> > weighting_function;
   };
 
@@ -1247,7 +1247,7 @@ namespace LaplaceSolver
     for (unsigned int cell_index=0; cell!=endc; ++cell, ++cell_index)
       estimated_error(cell_index)
        *= weighting_function->value (cell->center());
-    
+
     GridRefinement::refine_and_coarsen_fixed_number (*this->triangulation,
                                                     estimated_error,
                                                     0.2, 0.02);
@@ -1392,7 +1392,7 @@ namespace LaplaceSolver
 namespace Data
 {
                                   // @sect4{The SetUpBase and SetUp classes}
-  
+
                                   // Based on the above description,
                                   // the ``SetUpBase'' class then
                                   // looks as follows. To allow using
@@ -1436,12 +1436,12 @@ namespace Data
 
       virtual
       const Function<dim> &  get_right_hand_side () const;
-      
+
 
       virtual
       void create_coarse_grid (Triangulation<dim> &coarse_grid) const;
 
-    
+
       static const typename Traits::BoundaryValues boundary_values;
       static const typename Traits::RightHandSide  right_hand_side;
   };
@@ -1458,7 +1458,7 @@ namespace Data
                                   // functions:
   template <class Traits, int dim>
   const Function<dim> &
-  SetUp<Traits,dim>::get_boundary_values () const 
+  SetUp<Traits,dim>::get_boundary_values () const
   {
     return boundary_values;
   }
@@ -1466,7 +1466,7 @@ namespace Data
 
   template <class Traits, int dim>
   const Function<dim> &
-  SetUp<Traits,dim>::get_right_hand_side () const 
+  SetUp<Traits,dim>::get_right_hand_side () const
   {
     return right_hand_side;
   }
@@ -1475,11 +1475,11 @@ namespace Data
   template <class Traits, int dim>
   void
   SetUp<Traits,dim>::
-  create_coarse_grid (Triangulation<dim> &coarse_grid) const 
+  create_coarse_grid (Triangulation<dim> &coarse_grid) const
   {
     Traits::create_coarse_grid (coarse_grid);
   }
-  
+
 
                                   // @sect4{The CurvedRidges class}
 
@@ -1496,7 +1496,7 @@ namespace Data
       {
        public:
          BoundaryValues () : Function<dim> () {};
-         
+
          virtual double value (const Point<dim>   &p,
                                const unsigned int  component) const;
       };
@@ -1506,7 +1506,7 @@ namespace Data
       {
        public:
          RightHandSide () : Function<dim> () {};
-         
+
          virtual double value (const Point<dim>   &p,
                                const unsigned int  component) const;
       };
@@ -1515,8 +1515,8 @@ namespace Data
       void
       create_coarse_grid (Triangulation<dim> &coarse_grid);
   };
-  
-    
+
+
   template <int dim>
   double
   CurvedRidges<dim>::BoundaryValues::
@@ -1553,7 +1553,7 @@ namespace Data
              100*std::sin(10*p(i)+5*p(0)*p(0));
       };
     t1 = t1*t1;
-    
+
     return -u*(t1+t2+t3);
   }
 
@@ -1566,10 +1566,10 @@ namespace Data
     GridGenerator::hyper_cube (coarse_grid, -1, 1);
     coarse_grid.refine_global (2);
   }
-  
+
 
                                   // @sect4{The Exercise_2_3 class}
-  
+
                                   // This example program was written
                                   // while giving practical courses
                                   // for a lecture on adaptive finite
@@ -1611,7 +1611,7 @@ namespace Data
        public:
          RightHandSide () : ConstantFunction<dim> (1.) {};
       };
-      
+
                                       // Finally a function to
                                       // generate the coarse
                                       // grid. This is somewhat more
@@ -1651,7 +1651,7 @@ namespace Data
                                   // enough to do the creation by
                                   // hand, rather than using a mesh
                                   // generator.
-/*  
+/*
   template <>
   void
   Exercise_2_3<2>::
@@ -1686,27 +1686,27 @@ namespace Data
             Point<2> (0.,    -1.),
             Point<2> (+1./2, -1.),
             Point<2> (+1,    -1.),
-            
+
             Point<2> (-1.,   -1./2.),
             Point<2> (-1./2, -1./2.),
             Point<2> (0.,    -1./2.),
             Point<2> (+1./2, -1./2.),
             Point<2> (+1,    -1./2.),
-            
+
             Point<2> (-1.,   0.),
             Point<2> (-1./2, 0.),
             Point<2> (+1./2, 0.),
             Point<2> (+1,    0.),
-            
+
             Point<2> (-1.,   1./2.),
             Point<2> (-1./2, 1./2.),
             Point<2> (0.,    1./2.),
             Point<2> (+1./2, 1./2.),
             Point<2> (+1,    1./2.),
-            
+
             Point<2> (-1.,   1.),
             Point<2> (-1./2, 1.),
-            Point<2> (0.,    1.),                        
+            Point<2> (0.,    1.),
             Point<2> (+1./2, 1.),
             Point<2> (+1,    1.)    };
     const unsigned int
@@ -1750,7 +1750,7 @@ namespace Data
                                     // the material indicator to zero
                                     // for all the cells:
     std::vector<CellData<dim> > cells (n_cells, CellData<dim>());
-    for (unsigned int i=0; i<n_cells; ++i) 
+    for (unsigned int i=0; i<n_cells; ++i)
       {
        for (unsigned int j=0;
             j<GeometryInfo<dim>::vertices_per_cell;
@@ -1772,14 +1772,14 @@ namespace Data
     coarse_grid.create_triangulation (vertices,
                                      cells,
                                      SubCellData());
-    
+
                                     // And since we want that the
                                     // evaluation point (3/4,3/4) in
                                     // this example is a grid point,
                                     // we refine once globally:
     coarse_grid.refine_global (1);
   }
-*/  
+*/
 
 
   template <>
@@ -1792,7 +1792,7 @@ namespace Data
     coarse_grid.set_boundary (0, boundary);
     coarse_grid.refine_global (1);
   }
-  
+
 }
 
                                 // @sect4{Discussion}
@@ -1908,7 +1908,7 @@ namespace Data
 namespace DualFunctional
 {
                                   // @sect4{The DualFunctionalBase class}
-  
+
                                   // First start with the base class
                                   // for dual functionals. Since for
                                   // linear problems the
@@ -1930,7 +1930,7 @@ namespace DualFunctional
 
 
                                   // @sect4{The PointValueEvaluation class}
-  
+
                                   // As a first application, we
                                   // consider the functional
                                   // corresponding to the evaluation
@@ -1952,13 +1952,13 @@ namespace DualFunctional
       void
       assemble_rhs (const DoFHandler<dim> &dof_handler,
                    Vector<double>        &rhs) const;
-      
+
       DeclException1 (ExcEvaluationPointNotFound,
                      Point<dim>,
                      << "The evaluation point " << arg1
                      << " was not found among the vertices of the present grid.");
 
-    
+
       const Point<dim> evaluation_point;
   };
 
@@ -1969,7 +1969,7 @@ namespace DualFunctional
                  :
                  evaluation_point (evaluation_point)
   {}
-  
+
 
                                   // As for doing the main purpose of
                                   // the class, assembling the right
@@ -2042,7 +2042,7 @@ namespace DualFunctional
 
 
                                   // @sect4{The PointXDerivativeEvaluation class}
-  
+
                                   // As second application, we again
                                   // consider the evaluation of the
                                   // x-derivative of the solution at
@@ -2061,13 +2061,13 @@ namespace DualFunctional
       void
       assemble_rhs (const DoFHandler<dim> &dof_handler,
                    Vector<double>        &rhs) const;
-      
+
       DeclException1 (ExcEvaluationPointNotFound,
                      Point<dim>,
                      << "The evaluation point " << arg1
                      << " was not found among the vertices of the present grid.");
 
-    
+
       const Point<dim> evaluation_point;
   };
 
@@ -2078,7 +2078,7 @@ namespace DualFunctional
                  :
                  evaluation_point (evaluation_point)
   {}
-  
+
 
                                   // What is interesting is the
                                   // implementation of this
@@ -2130,7 +2130,7 @@ namespace DualFunctional
                                     // for the number of quadrature
                                     // points and shape functions...
     QGauss<dim> quadrature(4);
-    MappingQ<dim> mapping (4);    
+    MappingQ<dim> mapping (4);
     FEValues<dim>  fe_values (mapping, dof_handler.get_fe(), quadrature,
                              update_gradients |
                              update_q_points  |
@@ -2146,7 +2146,7 @@ namespace DualFunctional
                                     // shape functions at the
                                     // quadrature points:
     Vector<double> cell_rhs (dofs_per_cell);
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
                                     // Finally have a variable in
                                     // which we will sum up the
@@ -2155,7 +2155,7 @@ namespace DualFunctional
                                     // integrating the unit functions
                                     // on these cells:
     double total_volume = 0;
-    
+
                                     // Then start the loop over all
                                     // cells, and select those cells
                                     // which are close enough to the
@@ -2178,7 +2178,7 @@ namespace DualFunctional
                                           // total area/volume.
          fe_values.reinit (cell);
          cell_rhs = 0;
-         
+
          for (unsigned int q=0; q<n_q_points; ++q)
            {
              for (unsigned int i=0; i<dofs_per_cell; ++i)
@@ -2217,7 +2217,7 @@ namespace DualFunctional
                                     // which we have integrated:
     rhs.scale (1./total_volume);
   }
-  
+
 
 }
 
@@ -2276,7 +2276,7 @@ namespace LaplaceSolver
       virtual
       void
       solve_problem ();
-      
+
       virtual
       unsigned int
       n_dofs () const;
@@ -2285,7 +2285,7 @@ namespace LaplaceSolver
       void
       postprocess (const Evaluation::EvaluationBase<dim> &postprocessor) const;
 
-    
+
       const SmartPointer<const DualFunctional::DualFunctionalBase<dim> > dual_functional;
       virtual void assemble_rhs (Vector<double> &rhs) const;
 
@@ -2340,13 +2340,13 @@ namespace LaplaceSolver
   {
     Solver<dim>::postprocess(postprocessor);
   }
-  
+
 
 
   template <int dim>
   void
   DualSolver<dim>::
-  assemble_rhs (Vector<double> &rhs) const 
+  assemble_rhs (Vector<double> &rhs) const
   {
     dual_functional->assemble_rhs (this->dof_handler, rhs);
   }
@@ -2392,7 +2392,7 @@ namespace LaplaceSolver
       virtual
       void
       postprocess (const Evaluation::EvaluationBase<dim> &postprocessor) const;
-      
+
       virtual
       unsigned int
       n_dofs () const;
@@ -2403,7 +2403,7 @@ namespace LaplaceSolver
       void
       output_solution () const;
 
-    
+
                                       // In the private section, we
                                       // have two functions that are
                                       // used to call the
@@ -2420,7 +2420,7 @@ namespace LaplaceSolver
                                       // to avoid that we have to
                                       // write this lengthy name
                                       // over and over again:
-                                       
+
       typedef
       typename DoFHandler<dim>::active_cell_iterator
       active_cell_iterator;
@@ -2549,8 +2549,8 @@ namespace LaplaceSolver
          const SmartPointer<const Function<dim> > right_hand_side;
 
          std::vector<double> cell_residual;
-         std::vector<double> rhs_values;         
-         std::vector<double> dual_weights;       
+         std::vector<double> rhs_values;
+         std::vector<double> dual_weights;
          typename std::vector<Tensor<2,dim> > cell_grad_grads;
          CellData (const FiniteElement<dim> &fe,
                    const Quadrature<dim>    &quadrature,
@@ -2565,14 +2565,14 @@ namespace LaplaceSolver
          FESubfaceValues<dim> fe_subface_values_cell;
 
          std::vector<double> jump_residual;
-         std::vector<double> dual_weights;       
+         std::vector<double> dual_weights;
          typename std::vector<Tensor<1,dim> > cell_grads;
          typename std::vector<Tensor<1,dim> > neighbor_grads;
          FaceData (const FiniteElement<dim> &fe,
                    const Quadrature<dim-1>  &face_quadrature);
       };
 
-      
+
 
                                       // Regarding the evaluation of
                                       // the error estimator, we have
@@ -2652,17 +2652,17 @@ namespace LaplaceSolver
                             update_q_points           |
                             update_JxW_values),
                  right_hand_side (&right_hand_side)
-  {  
+  {
     const unsigned int n_q_points
       = quadrature.n_quadrature_points;
-  
+
     cell_residual.resize(n_q_points);
-    rhs_values.resize(n_q_points);    
-    dual_weights.resize(n_q_points);    
+    rhs_values.resize(n_q_points);
+    dual_weights.resize(n_q_points);
     cell_grad_grads.resize(n_q_points);
   }
-  
-  
+
+
 
   template <int dim>
   WeightedResidual<dim>::FaceData::
@@ -2682,16 +2682,16 @@ namespace LaplaceSolver
                                           update_normal_vectors),
                  fe_subface_values_cell (mapping, fe, face_quadrature,
                                          update_gradients)
-  {  
+  {
     const unsigned int n_face_q_points
       = face_quadrature.n_quadrature_points;
-  
+
     jump_residual.resize(n_face_q_points);
-    dual_weights.resize(n_face_q_points);    
+    dual_weights.resize(n_face_q_points);
     cell_grads.resize(n_face_q_points);
     neighbor_grads.resize(n_face_q_points);
   }
-  
+
 
 
 
@@ -2735,7 +2735,7 @@ namespace LaplaceSolver
     threads.join_all ();
   }
 
-  
+
   template <int dim>
   void
   WeightedResidual<dim>::solve_primal_problem ()
@@ -2749,7 +2749,7 @@ namespace LaplaceSolver
   {
     DualSolver<dim>::solve_problem ();
   }
-  
+
 
   template <int dim>
   void
@@ -2758,8 +2758,8 @@ namespace LaplaceSolver
   {
     PrimalSolver<dim>::postprocess (postprocessor);
   }
-  
-  
+
+
   template <int dim>
   unsigned int
   WeightedResidual<dim>::n_dofs () const
@@ -2809,11 +2809,11 @@ namespace LaplaceSolver
                                     // of the error.
     GridRefinement::refine_and_coarsen_fixed_fraction (*this->triangulation,
                                                       error_indicators,
-                                                      0.5/std::sqrt(1.+step), 
+                                                      0.5/std::sqrt(1.+step),
                                                       0.2/std::sqrt(1.+step));
     this->triangulation->execute_coarsening_and_refinement ();
   }
-  
+
 
                                   // Since we want to output both the
                                   // primal and the dual solution, we
@@ -2905,7 +2905,7 @@ namespace LaplaceSolver
   {
     const PrimalSolver<dim> &primal_solver = *this;
     const DualSolver<dim>   &dual_solver   = *this;
-    
+
     ConstraintMatrix primal_hanging_node_constraints;
     DoFTools::make_hanging_node_constraints (primal_solver.dof_handler,
                                             primal_hanging_node_constraints);
@@ -2915,7 +2915,7 @@ namespace LaplaceSolver
                          dual_solver.solution,
                          primal_solver.dof_handler,
                          primal_hanging_node_constraints,
-                         dual_solution);    
+                         dual_solution);
 
                                     // approximate error, gradient,
                                     // and second derivative
@@ -2936,13 +2936,13 @@ namespace LaplaceSolver
                              primal_solver.dof_handler,
                              primal_solver.solution,
                              gradient_indicators);
-      
+
       DerivativeApproximation::
        approximate_second_derivative (mapping,
                                       primal_solver.dof_handler,
                                       primal_solver.solution,
                                       second_indicators);
-      
+
     }
                                     // distribute cell to dof vectors
     Vector<double> x_error_indicators (primal_solver.dof_handler.n_dofs());
@@ -2957,8 +2957,8 @@ namespace LaplaceSolver
     DoFTools::distribute_cell_to_dof_vector (primal_solver.dof_handler,
                                             second_indicators,
                                             x_second_indicators);
-    
-    
+
+
 
                                     // we generate too much output in
                                     // 3d. instead of doing it that
@@ -2996,20 +2996,20 @@ namespace LaplaceSolver
       {
        coarse_to_fine_map[cell]->get_interpolated_dof_values (primal_solver.solution,tmp);
        cell->set_dof_values (tmp, coarse_primal_solution);
-       
+
        coarse_to_fine_map[cell]->get_interpolated_dof_values (dual_solution,tmp);
        cell->set_dof_values (tmp, coarse_dual_solution);
-       
+
        coarse_to_fine_map[cell]->get_interpolated_dof_values (x_error_indicators,tmp);
        cell->set_dof_values (tmp, coarse_error_indicators);
-       
+
        coarse_to_fine_map[cell]->get_interpolated_dof_values (x_gradient_indicators,tmp);
        cell->set_dof_values (tmp, coarse_gradient_indicators);
-       
+
        coarse_to_fine_map[cell]->get_interpolated_dof_values (x_second_indicators,tmp);
        cell->set_dof_values (tmp, coarse_second_indicators);
       }
-       
+
     {
       DataOut<dim> data_out;
       data_out.attach_dof_handler (coarser_dof_handler);
@@ -3019,7 +3019,7 @@ namespace LaplaceSolver
       data_out.add_data_vector (coarse_gradient_indicators, "gradient");
       data_out.add_data_vector (coarse_second_indicators, "second_derivatives");
       data_out.build_patches ();
-  
+
 #ifdef HAVE_STD_STRINGSTREAM
       std::ostringstream filename;
 #else
@@ -3035,10 +3035,10 @@ namespace LaplaceSolver
 #else
       std::ofstream out (filename.str());
 #endif
-    
+
       data_out.write_gmv (out);
     }
-    
+
   }
 
 
@@ -3053,7 +3053,7 @@ namespace LaplaceSolver
                                   // functions that actually do the
                                   // work, and finally collects the
                                   // results.
-  
+
   template <int dim>
   void
   WeightedResidual<dim>::
@@ -3105,7 +3105,7 @@ namespace LaplaceSolver
                          dual_solver.dof_handler,
                          dual_hanging_node_constraints,
                          primal_solution);
-    
+
                                     // Then for computing the
                                     // interpolation of the
                                     // numerically approximated dual
@@ -3128,7 +3128,7 @@ namespace LaplaceSolver
                                       primal_solver.dof_handler,
                                       primal_hanging_node_constraints,
                                       dual_weights);
-    
+
                                     // Note that this could probably
                                     // have been more efficient since
                                     // those constraints have been
@@ -3139,7 +3139,7 @@ namespace LaplaceSolver
                                     // dual solution. We leave the
                                     // optimization of the program in
                                     // this respect as an exercise.
-    
+
                                     // Having computed the dual
                                     // weights we now proceed with
                                     // computing the cell and face
@@ -3206,7 +3206,7 @@ namespace LaplaceSolver
                   n_threads, i,
                   error_indicators,
                   face_integrals);
-    threads.join_all();    
+    threads.join_all();
 
                                     // Once the error contributions
                                     // are computed, sum them up. For
@@ -3222,7 +3222,7 @@ namespace LaplaceSolver
                                     // term, since the other half
                                     // will be taken by the
                                     // neighboring cell.
-    unsigned int present_cell=0;  
+    unsigned int present_cell=0;
     for (active_cell_iterator cell=dual_solver.dof_handler.begin_active();
         cell!=dual_solver.dof_handler.end();
         ++cell, ++present_cell)
@@ -3284,7 +3284,7 @@ namespace LaplaceSolver
                        *dual_solver.quadrature,
                        *primal_solver.rhs_function);
     FaceData face_data (*dual_solver.fe,
-                       *dual_solver.face_quadrature);    
+                       *dual_solver.face_quadrature);
 
                                     // Then calculate the start cell
                                     // for this thread. We let the
@@ -3320,7 +3320,7 @@ namespace LaplaceSolver
                                     // back right now
     if (cell == dual_solver.dof_handler.end())
       return;
-    
+
                                     // Next loop over all cells. The
                                     // check for loop end is done at
                                     // the end of the loop, along
@@ -3340,7 +3340,7 @@ namespace LaplaceSolver
                             dual_weights,
                             cell_data,
                             error_indicators);
-       
+
                                         // After computing the cell
                                         // terms, turn to the face
                                         // terms. For this, loop over
@@ -3364,12 +3364,12 @@ namespace LaplaceSolver
                                             // the list of faces with
                                             // a zero contribution to
                                             // the error.
-           if (cell->face(face_no)->at_boundary()) 
+           if (cell->face(face_no)->at_boundary())
              {
                face_integrals[cell->face(face_no)] = 0;
                continue;
              };
-           
+
                                             // Next, note that since
                                             // we want to compute the
                                             // jump terms on each
@@ -3413,7 +3413,7 @@ namespace LaplaceSolver
                                             // the coarse cell.
            if (cell->at_boundary(face_no) == false)
              if (cell->neighbor(face_no)->level() < cell->level())
-               continue;         
+               continue;
 
 
                                             // Now we know that we
@@ -3443,7 +3443,7 @@ namespace LaplaceSolver
                                           primal_solution,
                                           dual_weights,
                                           face_data,
-                                          face_integrals);       
+                                          face_integrals);
            else
              integrate_over_irregular_face (cell, face_no,
                                             primal_solution,
@@ -3518,7 +3518,7 @@ namespace LaplaceSolver
 
 
                                   // @sect4{Computing edge term error contributions - 1}
-  
+
                                   // On the other hand, computation
                                   // of the edge terms for the error
                                   // estimate is not so
@@ -3595,7 +3595,7 @@ namespace LaplaceSolver
                                     // that cell, and extract the
                                     // gradients on that cell:
     const active_cell_iterator neighbor = cell->neighbor(face_no);
-    face_data.fe_face_values_neighbor.reinit (neighbor, neighbor_neighbor);      
+    face_data.fe_face_values_neighbor.reinit (neighbor, neighbor_neighbor);
     face_data.fe_face_values_neighbor.get_function_grads (primal_solution,
                                                          face_data.neighbor_grads);
 
@@ -3614,7 +3614,7 @@ namespace LaplaceSolver
                                     // this face:
     face_data.fe_face_values_cell.get_function_values (dual_weights,
                                                       face_data.dual_weights);
-    
+
                                     // Finally, we have to compute
                                     // the sum over jump residuals,
                                     // dual weights, and quadrature
@@ -3657,7 +3657,7 @@ namespace LaplaceSolver
 
 
                                   // @sect4{Computing edge term error contributions - 2}
-  
+
                                   // We are still missing the case of
                                   // faces with hanging nodes. This
                                   // is what is covered in this
@@ -3680,7 +3680,7 @@ namespace LaplaceSolver
       n_q_points = face_data.fe_face_values_cell.n_quadrature_points;
 
     const typename DoFHandler<dim>::cell_iterator
-      neighbor = cell->neighbor(face_no);    
+      neighbor = cell->neighbor(face_no);
     Assert (neighbor.state() == IteratorState::valid,
            ExcInternalError());
     Assert (neighbor->has_children(),
@@ -3697,7 +3697,7 @@ namespace LaplaceSolver
                                     // the same.
     const unsigned int
       neighbor_neighbor = cell->neighbor_of_neighbor (face_no);
-  
+
                                     // Then simply do everything we
                                     // did in the previous function
                                     // for one face for all the
@@ -3722,7 +3722,7 @@ namespace LaplaceSolver
                                             neighbor_neighbor);
        face_data.fe_face_values_neighbor.get_function_grads (primal_solution,
                                                              face_data.neighbor_grads);
-      
+
                                         // and finally building the
                                         // jump residuals. Since we
                                         // take the normal vector
@@ -3738,7 +3738,7 @@ namespace LaplaceSolver
                                         // Then get dual weights:
        face_data.fe_face_values_neighbor.get_function_values (dual_weights,
                                                               face_data.dual_weights);
-       
+
                                         // At last, sum up the
                                         // contribution of this
                                         // sub-face, and set it in
@@ -3767,21 +3767,21 @@ namespace LaplaceSolver
     typename DoFHandler<dim>::face_iterator face = cell->face(face_no);
     for (unsigned int subface_no=0;
         subface_no<GeometryInfo<dim>::subfaces_per_face;
-        ++subface_no) 
+        ++subface_no)
       {
        Assert (face_integrals.find(face->child(subface_no)) !=
                face_integrals.end(),
                ExcInternalError());
        Assert (face_integrals[face->child(subface_no)] != -1e20,
                ExcInternalError());
-      
+
        sum += face_integrals[face->child(subface_no)];
       };
                                     // Finally store the value with
                                     // the parent face.
     face_integrals[face] = sum;
   }
-  
+
 }
 
 
@@ -3837,7 +3837,7 @@ struct Framework
                                     // structure, these values are
                                     // all set to default values, for
                                     // simple use.
-    struct ProblemDescription 
+    struct ProblemDescription
     {
                                         // First allow for the
                                         // degrees of the piecewise
@@ -4006,7 +4006,7 @@ void Framework<dim>::run (const ProblemDescription &descriptor)
                                                      *descriptor.dual_functional);
        break;
       };
-       
+
       case ProblemDescription::global_refinement:
       {
        solver
@@ -4018,7 +4018,7 @@ void Framework<dim>::run (const ProblemDescription &descriptor)
                                                      descriptor.data->get_boundary_values());
        break;
       };
-       
+
       case ProblemDescription::kelly_indicator:
       {
        solver
@@ -4043,11 +4043,11 @@ void Framework<dim>::run (const ProblemDescription &descriptor)
                                                             *descriptor.kelly_weight);
        break;
       };
-           
+
       default:
            AssertThrow (false, ExcInternalError());
     };
-  
+
                                   // Now that all objects are in
                                   // place, run the main loop. The
                                   // stopping criterion is
@@ -4066,14 +4066,14 @@ void Framework<dim>::run (const ProblemDescription &descriptor)
     {
       std::cout << "Refinement cycle: "        << step
                << std::endl;
-           
+
       solver->set_refinement_cycle (step);
       solver->solve_problem ();
       solver->output_solution ();
 
       std::cout << "   Number of degrees of freedom="
                << solver->n_dofs() << std::endl;
-      
+
       for (typename EvaluatorList::const_iterator
             e = descriptor.evaluator_list.begin();
           e != descriptor.evaluator_list.end(); ++e)
@@ -4082,7 +4082,7 @@ void Framework<dim>::run (const ProblemDescription &descriptor)
          solver->postprocess (**e);
        };
 
-           
+
       if (solver->n_dofs() < descriptor.max_degrees_of_freedom)
        solver->refine_grid ();
       else
@@ -4111,7 +4111,7 @@ void Framework<dim>::run (const ProblemDescription &descriptor)
                                 // etc), and passes them packed into
                                 // a structure to the frame work
                                 // class above.
-int main (int argc, char **argv) 
+int main (int argc, char **argv)
 {
                                   // if no argument is given, then do 18
                                   // iterations
@@ -4134,10 +4134,10 @@ int main (int argc, char **argv)
                  << std::endl;
        exit (1);
       }
-  
-       
-  
-  
+
+
+
+
   deallog.depth_console (0);
   try
     {
@@ -4183,7 +4183,7 @@ int main (int argc, char **argv)
                                       // can also use
                                       // ``CurvedRidges<dim>'':
       descriptor.data = new Data::SetUp<Data::Exercise_2_3<dim>,dim> ();
-      
+
                                       // Next set first a dual
                                       // functional, then a list of
                                       // evaluation objects. We
@@ -4216,12 +4216,12 @@ int main (int argc, char **argv)
       const Point<dim> evaluation_point (0., 0., 0.);
       descriptor.dual_functional
        = new DualFunctional::PointValueEvaluation<dim> (evaluation_point);
-      
+
       Evaluation::PointValueEvaluation<dim>
        postprocessor1 (evaluation_point);
       Evaluation::GridOutput<dim>
        postprocessor2 ("grid");
-      
+
       descriptor.evaluator_list.push_back (&postprocessor1);
       descriptor.evaluator_list.push_back (&postprocessor2);
 
@@ -4236,7 +4236,7 @@ int main (int argc, char **argv)
 #else
       descriptor.max_degrees_of_freedom = 20000;
 #endif
-      
+
                                       // Finally pass the descriptor
                                       // object to a function that
                                       // runs the entire solution
@@ -4259,7 +4259,7 @@ int main (int argc, char **argv)
                << std::endl;
       return 1;
     }
-  catch (...) 
+  catch (...)
     {
       std::cerr << std::endl << std::endl
                << "----------------------------------------------------"
index 5a4143225427a9ca97efc83d3ed13bc7f5afcf41..ac095d56898571940bffceb673c0e189419be012 100644 (file)
@@ -105,7 +105,7 @@ void SystemTest<dim>::check_numbering ()
   typename DoFHandler<dim>::active_cell_iterator
     cell = dof_handler.begin_active(),
     endc = dof_handler.end();
-  std::vector<unsigned int>    local_dof_indices(fe.dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices(fe.dofs_per_cell);
        
   for (; cell!=endc; ++cell)
     {
index a8c1ab73824f4ca41faa13258e5f5f60dc1af281..7bc90e4d4b65d0cb57f1fbdd7d472a2bd2631fad 100644 (file)
@@ -106,7 +106,7 @@ void SystemTest<dim>::check_numbering ()
   typename DoFHandler<dim>::active_cell_iterator
     cell = dof_handler.begin_active(),
     endc = dof_handler.end();
-  std::vector<unsigned int>    local_dof_indices(fe.dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices(fe.dofs_per_cell);
        
   for (; cell!=endc; ++cell)
     {
index f97d6958d1feb8aeac9ffbedcdf98cd4358580f0..24ec5dbeed9fd8f5c712db87c7f2d263e15f6a64 100644 (file)
@@ -53,7 +53,7 @@ void test ()
 
                                   // loop over all cells, active or
                                   // not
-  std::vector<unsigned int> local_dof_indices (fe.dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (fe.dofs_per_cell);
   for (typename DoFHandler<dim>::cell_iterator cell=dof_handler.begin();
        cell != dof_handler.end(); ++cell)
     {
index f9b2f29c60f561158b8cc9b91a7d937f7d9d899f..651f330c024d9b9387fb061b945331804b38edd0 100644 (file)
@@ -560,7 +560,7 @@ void LaplaceProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   const Coefficient<dim> coefficient;
   std::vector<double>    coefficient_values (n_q_points);
index 8e4188b6bcbea7b65a5d7eda0c4fa322967a06bb..d4bc46f1495eb3b25405166123848cc995e3aba3 100644 (file)
@@ -406,7 +406,7 @@ namespace LaplaceSolver
 
     FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     for (typename DoFHandler<dim>::active_cell_iterator cell=begin_cell;
         cell!=end_cell; ++cell)
@@ -529,7 +529,7 @@ namespace LaplaceSolver
 
     Vector<double>       cell_rhs (dofs_per_cell);
     std::vector<double>  rhs_values (n_q_points);
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     typename DoFHandler<dim>::active_cell_iterator
       cell = this->dof_handler.begin_active(),
index 831e156ce02b020c0d9124340a23b2c98abb6052..81785870e346dcf2a3e9f66b5021e48cb0c51e3c 100644 (file)
@@ -492,7 +492,7 @@ namespace LaplaceSolver
 
     FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     for (typename DoFHandler<dim>::active_cell_iterator cell=begin_cell;
         cell!=end_cell; ++cell)
@@ -675,7 +675,7 @@ namespace LaplaceSolver
 
     Vector<double>       cell_rhs (dofs_per_cell);
     std::vector<double>  rhs_values (n_q_points);
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     typename DoFHandler<dim>::active_cell_iterator
       cell = this->dof_handler.begin_active(),
@@ -1224,7 +1224,7 @@ namespace DualFunctional
     const unsigned int dofs_per_cell = dof_handler.get_fe().dofs_per_cell;
 
     Vector<double> cell_rhs (dofs_per_cell);
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     double total_volume = 0;
 
index c6c9f35207ad2e3bcd2651204089be976dc798b3..17ff61c14071a698de296a1f62848ca32fbb3d4d 100644 (file)
@@ -196,7 +196,7 @@ void MinimizationProblem<dim>::assemble_step ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   std::vector<double>         local_solution_values (n_q_points);
   std::vector<Tensor<1,dim> > local_solution_grads (n_q_points);
index de9cf8e0585f6067fa02bcd22cf3a5afe1729011..89b844b3718a96a5ebc31417a16b5d6e8f49f7e7 100644 (file)
@@ -143,7 +143,7 @@ void LaplaceProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   typename DoFHandler<dim>::active_cell_iterator cell = mg_dof_handler.begin_active(),
                                                 endc = mg_dof_handler.end();
@@ -199,7 +199,7 @@ void LaplaceProblem<dim>::assemble_multigrid ()
 
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   typename MGDoFHandler<dim>::cell_iterator cell = mg_dof_handler.begin(),
                                            endc = mg_dof_handler.end();
index 490b94021fd59676f9124f4fb4790ecf672d5048..a3ec37eeef54778847ff566d51b61a6680894d9e 100644 (file)
@@ -125,7 +125,7 @@ void LaplaceProblem::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   DoFHandler<2>::active_cell_iterator
     cell = dof_handler.begin_active(),
index 8a10d3333abb94a7f6e49a6a47aff8c3d44aa75f..ce1a9a59c3bb46b451d0110f150ffbd13f4091db 100644 (file)
@@ -183,7 +183,7 @@ void LaplaceProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   typename DoFHandler<dim>::active_cell_iterator cell = dof_handler.begin_active(),
                                                 endc = dof_handler.end();
index cf7fc85b26b6e05888e1f0dfe87440bc44a95b2f..d5428c07b895da21dbf1bcc9ce34d2ee135d3e40 100644 (file)
@@ -179,7 +179,7 @@ void LaplaceProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   const Coefficient<dim> coefficient;
   std::vector<double>    coefficient_values (n_q_points);
index 5ce747bc720ce394ccfed83cc39855d4d993dd97..9a04d8e495fda60eee2764bc70ec8760f0b14a1c 100644 (file)
@@ -204,7 +204,7 @@ void LaplaceProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   const Coefficient<dim> coefficient;
   std::vector<double>    coefficient_values (n_q_points);
index d942acfb3c3c88a412e93673001f07952213e26a..862dda83e1c793971378835f9f34c1159a765b41 100644 (file)
@@ -274,7 +274,7 @@ void HelmholtzProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   
   FEValues<dim>  x_fe_values (*fe, quadrature_formula, 
                            update_values   | update_gradients |
index c31863f3f4684995eaa321946b1fe580f2797f61..c712be1e68e7272c10248c72e27b9c02c06212ec 100644 (file)
@@ -210,7 +210,7 @@ void ElasticProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   std::vector<double>     lambda_values (n_q_points);
   std::vector<double>     mu_values (n_q_points);
index 8ea9a7882cfd0520e403b311cfbf0a70c366f4f0..9ef85f2327d743b639a1357095de07af62009b47 100644 (file)
@@ -264,8 +264,8 @@ BEM<spacedim>::assemble_system()
 
     std::vector< Point<spacedim> > cell_normals_i, cell_normals_j;
 
-    std::vector<unsigned int> local_dof_indices_i (dofs_per_cell);
-    std::vector<unsigned int> local_dof_indices_j (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices_i (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices_j (dofs_per_cell);
  
 
 //     std::cout
@@ -568,7 +568,7 @@ BEM<spacedim>::solve()
    
     std::vector< Point<spacedim> > cell_normals(q_iterated.size());
     std::vector< Point<spacedim> > cell_tangentials(q_iterated.size());
-    std::vector<unsigned int> local_dof_indices (fe_q.dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (fe_q.dofs_per_cell);
 
     typename DoFHandler<spacedim-1, spacedim>::active_cell_iterator
        cell = dof_handler_q.begin_active(),
index 486f4b92ef74a3dc0b3dd015b2609b18c1016d80..7fadb82a7f433f38ad3170400ac092ed4da44231 100644 (file)
@@ -126,7 +126,7 @@ void test(std::string filename)
   std::vector<double> shape_directional_derivative(dofs_per_cell);
   Vector<double> projected_directional_derivative(triangulation.n_cells());
 
-  std::vector<unsigned int> local_dof_indices (fe.dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (fe.dofs_per_cell);
 
   typename DoFHandler<dim, spacedim>::active_cell_iterator
       cell = dof_handler.begin_active(),
index 61671114752c6b444c83da5a3bc46d58382ba37b..d36f894e16eab8afc1a8edaaa955b3c13b319218 100644 (file)
@@ -268,7 +268,7 @@ void LaplaceProblem<Vector,Matrix,Sparsity>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   ::Vector<double>     cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   DoFHandler<2>::active_cell_iterator cell = dof_handler.begin_active(),
                                      endc = dof_handler.end();
index aa8dd0d040cd7558ddca20139c449db5c4ff4ae1..bef9209bbe1c9cd689b61f60e948fc9a7b06720c 100644 (file)
@@ -169,7 +169,7 @@ void MixedElastoPlasticity<dim>::assemble_system()
   FullMatrix<double> local_matrix(dofs_per_cell, dofs_per_cell);
   Vector<double> local_rhs(dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices(dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices(dofs_per_cell);
 
 
   const FEValuesExtractors::SymmetricTensor<2> stress(0);
index 90e885cf084b36ccf3c9426d3c8661b638e13221..4aaea816adbe88588203a943df3ec459aee0dc36 100644 (file)
@@ -149,7 +149,7 @@ void MixedElastoPlasticity<dim>::assemble_system()
        const unsigned int dofs_per_cell = fe.dofs_per_cell;
        deallog << "dofs_per_cell: " << fe.dofs_per_cell << std::endl;
 
-       std::vector<unsigned int> local_dof_indices(dofs_per_cell);
+       std::vector<types::global_dof_index> local_dof_indices(dofs_per_cell);
 
        const FEValuesExtractors::SymmetricTensor<2> stress(0);
        const FEValuesExtractors::Scalar gamma(n_stress_components);
index 6a0c760c38354dd58779377277eb426795c81706..3aa08931f44bea801720322ba3500d4dd2c7d5d7 100644 (file)
@@ -290,7 +290,7 @@ void LaplaceProblem<dim>::assemble_reference ()
   FullMatrix<double>   cell_matrix;
   Vector<double>       cell_rhs;
 
-  std::vector<unsigned int> local_dof_indices;
+  std::vector<types::global_dof_index> local_dof_indices;
   
   typename hp::DoFHandler<dim>::active_cell_iterator
     cell = dof_handler.begin_active(),
@@ -370,7 +370,7 @@ void LaplaceProblem<dim>::assemble_test_1 ()
   FullMatrix<double>   cell_matrix;
   Vector<double>       cell_rhs;
 
-  std::vector<unsigned int> local_dof_indices;
+  std::vector<types::global_dof_index> local_dof_indices;
   
   typename hp::DoFHandler<dim>::active_cell_iterator
     cell = dof_handler.begin_active(),
@@ -443,7 +443,7 @@ void LaplaceProblem<dim>::assemble_test_2 ()
   FullMatrix<double>   cell_matrix;
   Vector<double>       cell_rhs;
 
-  std::vector<unsigned int> local_dof_indices;
+  std::vector<types::global_dof_index> local_dof_indices;
   
   typename hp::DoFHandler<dim>::active_cell_iterator
     cell = dof_handler.begin_active(),
index 62b32a6886f656445689ee0371815931c36378a2..76d6ceb00ef3cc97002550040712a4e66fc22365 100644 (file)
@@ -261,7 +261,7 @@ void AdvectionProblem<dim>::assemble_reference ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   std::vector<double>  rhs_values (n_q_points);
 
   typename DoFHandler<dim>::active_cell_iterator
@@ -348,7 +348,7 @@ void AdvectionProblem<dim>::assemble_test_1 ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   std::vector<double>  rhs_values (n_q_points);
 
   typename DoFHandler<dim>::active_cell_iterator
@@ -424,7 +424,7 @@ void AdvectionProblem<dim>::assemble_test_2 ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   std::vector<double>  rhs_values (n_q_points);
 
   typename DoFHandler<dim>::active_cell_iterator
index d0eb3bc08280da60700153797dd099f4e7a06bd4..87db51fd37bd3df195ed8fc258a3c3075a89c8d0 100644 (file)
@@ -230,7 +230,7 @@ void AdvectionProblem<dim>::assemble_reference ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   std::vector<double>  rhs_values (n_q_points);
 
   typename DoFHandler<dim>::active_cell_iterator
@@ -312,7 +312,7 @@ void AdvectionProblem<dim>::assemble_test_1 ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   std::vector<double>  rhs_values (n_q_points);
 
   typename DoFHandler<dim>::active_cell_iterator
@@ -383,7 +383,7 @@ void AdvectionProblem<dim>::assemble_test_2 ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   std::vector<double>  rhs_values (n_q_points);
 
   typename DoFHandler<dim>::active_cell_iterator
index 68cec5024a59556ab5fab74982767357b20bab92..360b748584eb350e7ad870af13b2ac05a1a5f9c3 100644 (file)
@@ -175,7 +175,7 @@ void LaplaceProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   const Coefficient<dim> coefficient;
   std::vector<double>    coefficient_values (n_q_points);
index c4c241819c95a11524f16033f10edfe8881d9564..b507cfbd1c9a60c8c11bf7ffbbf8a9d965e5deff 100644 (file)
@@ -109,7 +109,7 @@ void TestPointValueHistory<dim>::run()
         QGauss<dim> quadrature_formula(2);
         FEValues<dim> fe_values(finite_element, quadrature_formula, update_values | update_quadrature_points); // just need local_dof_indices and quadrature_points
 
-        std::vector<unsigned int> local_dof_indices(finite_element.dofs_per_cell);
+        std::vector<types::global_dof_index> local_dof_indices(finite_element.dofs_per_cell);
         std::vector<Point<dim> > dof_locations(finite_element.dofs_per_cell);
         Vector<double> cell_pole(finite_element.dofs_per_cell);
 
index 08dc27ea413e4328fa4d479fd82237b4a1c8a453..c2db6514f6b094b7eb0d52de3a2b1247e017c645 100644 (file)
@@ -53,7 +53,7 @@ void test(std::ostream& /*out*/)
      = dofh.begin_active();
 
    const unsigned int dofs_per_cell = dofh.get_fe().dofs_per_cell;
-   std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+   std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
 
       
index fcab834f696fc48e27b7621b8addb0f78f952862..2b555470c3b06d4145067b9e014a33fcd385b81a 100644 (file)
@@ -210,7 +210,7 @@ void LaplaceProblem<dim>::assemble_system ()
       FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
       Vector<double>       cell_rhs (dofs_per_cell);
 
-      std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+      std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
       cell_matrix = 0;
       cell_rhs = 0;
index a7e0b9bb6bb0db34d5ff174b0f7647f7179047bc..b14472954a24df2f202948b0a032a4cfe93df529 100644 (file)
@@ -490,7 +490,7 @@ namespace LaplaceSolver
 
     FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     for (typename hp::DoFHandler<dim>::active_cell_iterator cell=begin_cell;
         cell!=end_cell; ++cell)
@@ -673,7 +673,7 @@ namespace LaplaceSolver
 
     Vector<double>       cell_rhs (dofs_per_cell);
     std::vector<double>  rhs_values (n_q_points);
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     typename hp::DoFHandler<dim>::active_cell_iterator
       cell = this->dof_handler.begin_active(),
@@ -1222,7 +1222,7 @@ namespace DualFunctional
     const unsigned int dofs_per_cell = dof_handler.get_fe().dofs_per_cell;
 
     Vector<double> cell_rhs (dofs_per_cell);
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     double total_volume = 0;
     
index 7e8743e1ef763d6a0c27158d378fe9ca9bf974ad..d980e29acdf55ea7578cc38cf3c56a418aae8158 100644 (file)
@@ -197,7 +197,7 @@ void MinimizationProblem<dim>::assemble_step ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   std::vector<double>         local_solution_values (n_q_points);
   std::vector<Tensor<1,dim> > local_solution_grads (n_q_points);
index 6df7944767f01b939ad5d30900a53300cc6e097c..51ace17b4f43ac10af2bda911b9ee71c375c701e 100644 (file)
@@ -84,7 +84,7 @@ void EvaluateDerivative (DoFHandler<2> *dof_handler,
     double err_l2 = 0,
       err_hdiv = 0;
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     for (; cell!=endc; ++cell)
     {
index c01c49f5887f3dfc00e4b767440dbf91b4d1ae27..5259b26a732b06af6324d44a114299e60929917d 100644 (file)
@@ -129,7 +129,7 @@ void EvaluateDerivative (DoFHandler<2> *dof_handler,
   double err_l2 = 0,
        err_hdiv = 0;
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   for (; cell!=endc; ++cell)
     {
index 516a0c8e9ed2d35cd8221889477398e1d14f2a16..a69bbb763df66b6ba1d9c815b6213533219d8c4d 100644 (file)
@@ -54,7 +54,7 @@ create_stokes_matrix_1 (const DoFHandler<dim> &dof_handler,
     cell = dof_handler.begin_active(),
     endc = dof_handler.end();
   
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   FullMatrix<double> local_matrix (dofs_per_cell, dofs_per_cell);
 
   QGauss<dim> quadrature (3);
@@ -127,7 +127,7 @@ create_stokes_matrix_2 (const DoFHandler<dim> &dof_handler,
     cell = dof_handler.begin_active(),
     endc = dof_handler.end();
   
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   FullMatrix<double> local_matrix (dofs_per_cell, dofs_per_cell);
 
   QGauss<dim> quadrature (3);
@@ -203,7 +203,7 @@ create_stokes_matrix_3 (const DoFHandler<dim> &dof_handler,
     cell = dof_handler.begin_active(),
     endc = dof_handler.end();
   
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   FullMatrix<double> local_matrix (dofs_per_cell, dofs_per_cell);
 
   QGauss<dim> quadrature (3);
index fdc8ba3e59537be342982bc7596b270f2bf56bb4..53e4f38ca17e77d0baebdfd5abc9ed19f094fa11 100644 (file)
@@ -57,7 +57,7 @@ create_stokes_matrix_2 (const DoFHandler<dim> &dof_handler,
     cell = dof_handler.begin_active(),
     endc = dof_handler.end();
   
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   FullMatrix<double> local_matrix (dofs_per_cell, dofs_per_cell);
 
   QGauss<dim> quadrature (3);
@@ -133,7 +133,7 @@ create_stokes_matrix_3 (const DoFHandler<dim> &dof_handler,
     cell = dof_handler.begin_active(),
     endc = dof_handler.end();
   
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   FullMatrix<double> local_matrix (dofs_per_cell, dofs_per_cell);
 
   QGauss<dim> quadrature (3);
index a14df3eea9e3ed8dc524dee6800189bcfba88ea8..e13b4f3611563189afccf6753bba6a654a287fe7 100644 (file)
@@ -93,7 +93,7 @@ void EvaluateNormal2 (DoFHandler<2> *dof_handler,
     DoFHandler<2>::active_cell_iterator cell = dof_handler->begin_active(),
        endc = dof_handler->end();
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     for (; cell!=endc; ++cell)
     {
@@ -199,7 +199,7 @@ void EvaluateNormal (DoFHandler<2> *dof_handler,
     DoFHandler<2>::active_cell_iterator cell = dof_handler->begin_active(),
        endc = dof_handler->end();
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     for (; cell!=endc; ++cell)
     {
index 0dffdc32fa6eba6217128a1e5a6d8d4d6f098a3b..8cd46bc85d39aa0f9a19296caa4c76023aedcc65 100644 (file)
@@ -144,7 +144,7 @@ namespace with_hp
     FullMatrix<double>   cell_matrix;
     Vector<double>       cell_rhs;
 
-    std::vector<unsigned int> local_dof_indices;
+    std::vector<types::global_dof_index> local_dof_indices;
 
     typename hp::DoFHandler<dim>::active_cell_iterator
       cell = dof_handler.begin_active(),
@@ -297,7 +297,7 @@ namespace without_hp
     FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
     Vector<double>       cell_rhs (dofs_per_cell);
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     typename DoFHandler<dim>::active_cell_iterator
       cell = dof_handler.begin_active(),
index 5f0000a815ba86b482d97b71e7e2cef8fe53fb05..e2ee13085d2cdd54eb2e1ec7d0891c3195401327 100644 (file)
@@ -46,7 +46,7 @@ void test ()
   hp::DoFHandler<dim> dof_handler(tria);
   dof_handler.distribute_dofs(fe_collection);
 
-  std::vector<unsigned int> local_dof_indices (fe_collection[0].dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (fe_collection[0].dofs_per_cell);
   for (typename hp::DoFHandler<dim>::active_cell_iterator
          cell=dof_handler.begin_active();
        cell!=dof_handler.end(); ++cell)
index b9fc9701bde8cab007fd3e70c3fe9cf313c85b1a..d9bf4fd543553c24e0e07d387afecd3668a01eeb 100644 (file)
@@ -46,7 +46,7 @@ void test ()
   hp::DoFHandler<dim> dof_handler(tria);
   dof_handler.distribute_dofs(fe_collection);
 
-  std::vector<unsigned int> local_dof_indices (fe_collection[0].dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (fe_collection[0].dofs_per_cell);
   for (typename hp::DoFHandler<dim>::active_cell_iterator
          cell=dof_handler.begin_active();
        cell!=dof_handler.end(); ++cell)
index 7111b0fbf644fceda2ea9f76abea22f91c1bb4cc..98e4affb61ec559b94cee7758c0e8441a2016207 100644 (file)
@@ -46,7 +46,7 @@ void test ()
   hp::DoFHandler<dim> dof_handler(tria);
   dof_handler.distribute_dofs(fe_collection);
 
-  std::vector<unsigned int> local_dof_indices (fe_collection[0].dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (fe_collection[0].dofs_per_cell);
   for (typename hp::DoFHandler<dim>::active_cell_iterator
          cell=dof_handler.begin_active();
        cell!=dof_handler.end(); ++cell)
index 6a80fad6c30eedbc16722f5ebb3fc6dc31b2801b..605568932a8d2416a9d3b69b374958aeafcef2ea 100644 (file)
@@ -57,7 +57,7 @@ void test ()
   
   dof_handler.distribute_dofs(fe_collection);
 
-  std::vector<unsigned int> local_dof_indices;
+  std::vector<types::global_dof_index> local_dof_indices;
   for (typename hp::DoFHandler<dim>::active_cell_iterator
          cell=dof_handler.begin_active();
        cell!=dof_handler.end(); ++cell)
index 0ebfa639236513850b7e25a90c9efae92fe67f7e..faf3c521f43816945e3899b2ab6bcae6726aafe5 100644 (file)
@@ -210,7 +210,7 @@ void LaplaceProblem<dim>::assemble_system ()
       FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
       Vector<double>       cell_rhs (dofs_per_cell);
 
-      std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+      std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
       cell_matrix = 0;
       cell_rhs = 0;
index 659daea25a9d05e6241726c7ff652b8fc11204d1..8e67bcdf6ffc635d5e4ed952c7d014c041b5c5ce 100644 (file)
@@ -212,7 +212,7 @@ void LaplaceProblem<dim>::assemble_system ()
       FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
       Vector<double>       cell_rhs (dofs_per_cell);
 
-      std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+      std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
       cell_matrix = 0;
       cell_rhs = 0;
index cdfd0be4427a1b46c277d0f5f5b17f471186be6e..1cc41934ead72466f8c1109918f3872346cfa826 100644 (file)
@@ -215,7 +215,7 @@ void LaplaceProblem<dim>::assemble_system ()
       FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
       Vector<double>       cell_rhs (dofs_per_cell);
 
-      std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+      std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
       cell_matrix = 0;
       cell_rhs = 0;
index e0cbe9d828da022163bb611a5c71d813fb6d978e..34dd18c58f9ba6fa6c256291e17d9640f14c6cbe 100644 (file)
@@ -218,7 +218,7 @@ void LaplaceProblem<dim>::assemble_system ()
       FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
       Vector<double>       cell_rhs (dofs_per_cell);
 
-      std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+      std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
       cell_matrix = 0;
       cell_rhs = 0;
index 6fa4232dd00c6e24aa485cf766840748a2ae35e1..05694eb8e0a1757bef1958a18be46b8a30ad16d6 100644 (file)
@@ -56,7 +56,7 @@ void test ()
   
   dof_handler.distribute_dofs(fe_collection);
 
-  std::vector<unsigned int> local_dof_indices;
+  std::vector<types::global_dof_index> local_dof_indices;
   for (typename hp::DoFHandler<dim>::active_cell_iterator
          cell=dof_handler.begin_active();
        cell!=dof_handler.end(); ++cell)
index 54958e13cb5aba4f7082072a64cce33ccb551814..88a992d8d9d58ebd5894fb5def8cd2550bb9ac2c 100644 (file)
@@ -406,7 +406,7 @@ namespace LaplaceSolver
 
     FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
 
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     for (typename hp::DoFHandler<dim>::active_cell_iterator cell=begin_cell;
         cell!=end_cell; ++cell)
@@ -529,7 +529,7 @@ namespace LaplaceSolver
 
     Vector<double>       cell_rhs (dofs_per_cell);
     std::vector<double>  rhs_values (n_q_points);
-    std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+    std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
     typename hp::DoFHandler<dim>::active_cell_iterator
       cell = this->dof_handler.begin_active(),
index 0ea9336758e9441df1e47ea427ebbb2e4b2843b0..74ecfd0b558c12da308a503249f3b31ae9b8c060 100644 (file)
@@ -125,7 +125,7 @@ void LaplaceProblem::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   hp::DoFHandler<2>::active_cell_iterator
     cell = dof_handler.begin_active(),
index 2cc3fbe8b9f85b0d54784423bd4bff15dd853bdf..cf1f98bf4f97c2e0e7e934ca90fab0c81c331062 100644 (file)
@@ -159,7 +159,7 @@ void LaplaceProblem::assemble_system ()
   FullMatrix<double>   cell_matrix (max_dofs_per_cell, max_dofs_per_cell);
   Vector<double>       cell_rhs (max_dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (max_dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (max_dofs_per_cell);
 
   hp::DoFHandler<2>::active_cell_iterator
     cell = dof_handler.begin_active(),
index 6e429bcb7c56ed33b24cb6df8778b4fc985c8c47..45fcdf156e4a8b2833eb24b9c9c17b9421d7419e 100644 (file)
@@ -156,7 +156,7 @@ void LaplaceProblem::assemble_system ()
   FullMatrix<double>   cell_matrix (max_dofs_per_cell, max_dofs_per_cell);
   Vector<double>       cell_rhs (max_dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (max_dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (max_dofs_per_cell);
 
   hp::DoFHandler<2>::active_cell_iterator
     cell = dof_handler.begin_active(),
index 3f60d555bf3c9e16fa655c29e3ccedb1563299ad..ecb41f18ca5fb9a400e6a2f50bb2d6d82c214985 100644 (file)
@@ -158,7 +158,7 @@ void LaplaceProblem::assemble_system ()
   FullMatrix<double>   cell_matrix (max_dofs_per_cell, max_dofs_per_cell);
   Vector<double>       cell_rhs (max_dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (max_dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (max_dofs_per_cell);
 
   hp::DoFHandler<2>::active_cell_iterator
     cell = dof_handler.begin_active(),
index 8b1daf26712be0a73796a860e0f4c6efa064e193..05602407f4ad67a337f3a28d50535f35faff1705 100644 (file)
@@ -182,7 +182,7 @@ void LaplaceProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   typename hp::DoFHandler<dim>::active_cell_iterator cell = dof_handler.begin_active(),
                                                 endc = dof_handler.end();
index 8d9e9bca7a03a82f1a315b0953b4731781e5608b..0b5b5b2d9b15de3f677a8a796298b11e6ecf480f 100644 (file)
@@ -178,7 +178,7 @@ void LaplaceProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   const Coefficient<dim> coefficient;
   std::vector<double>    coefficient_values (n_q_points);
index 3b3da9e3cd7266817dc9b93377b87fff5c8b3a05..2d61cfb488c9ebbbb71ebf085710d64be5690b4f 100644 (file)
@@ -203,7 +203,7 @@ void LaplaceProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   const Coefficient<dim> coefficient;
   std::vector<double>    coefficient_values (n_q_points);
index fae4ed3f0945cbcb6e184a4b23636a9d54885ded..91c0575cce0b0183f600dd57c07bc365997f0ab4 100644 (file)
@@ -273,7 +273,7 @@ void HelmholtzProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   
   hp::FEValues<dim>  x_fe_values (*fe, quadrature_formula, 
                            update_values   | update_gradients |
index 5da1d959348f8d26f5f5adf39d94ebe02addbb3a..93e97abf343895ba6622c8f77bea0b54c95662d1 100644 (file)
@@ -209,7 +209,7 @@ void ElasticProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   std::vector<double>     lambda_values (n_q_points);
   std::vector<double>     mu_values (n_q_points);
index d7ba97de59e494da0910b9838a02def08745a3c0..77f0f87d65a2c5dc52f7c31a584955c88e25a488 100644 (file)
@@ -62,7 +62,7 @@ void test()
      = dofh.begin_active();
 
    const unsigned int dofs_per_cell = dofh.get_fe().dofs_per_cell;
-   std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+   std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
 
    if (myid==0)
index e0899ca4c1db183c60cbc4293ae469210fa173ac..59c5b11cfbf53387ed0990697782c76677e7aa07 100644 (file)
@@ -94,7 +94,7 @@ void test()
        = dofh.begin_active();
 
       const unsigned int dofs_per_cell = dofh.get_fe().dofs_per_cell;
-      std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+      std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
       for (; cell != dofh.end(); ++cell)
        if (cell->is_ghost())
index f83005e7d3dd04a995dc91e2b65b9f3b2c53d440..6c11b6add35a790500da650c2a07d6be261b5402 100644 (file)
@@ -98,7 +98,7 @@ void test()
        = dofh.begin_active();
 
        const unsigned int dofs_per_cell = dofh.get_fe().dofs_per_cell;
-       std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+       std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
        for (; cell != dofh.end(); ++cell)
         if (!cell->is_artificial())
index c106b4ccc7e377c26a653120652627b76be0b19c..bd22a8c933aa5b3ed7ca3aabda1d01629f8a136b 100644 (file)
@@ -81,7 +81,7 @@ void test()
       if (myid==0)
        {
 
-         std::vector<unsigned int> local_dof_indices;
+         std::vector<types::global_dof_index> local_dof_indices;
        typename DoFHandler<dim>::active_cell_iterator
          cell, endc = dofh.end();
 
index b6c07eae1bb144a6afc1bd0e6192550f0fd04834..fe3f576806ad4d5756eb808b93398d6730085780 100644 (file)
@@ -90,7 +90,7 @@ void test()
     if (myid==0)
       {
 
-       std::vector<unsigned int> local_dof_indices;
+       std::vector<types::global_dof_index> local_dof_indices;
        typename DoFHandler<dim>::active_cell_iterator
          cell, endc = dofh.end();
 
index dadb8a8bffeaa260bdfd97a8dddb7ce4eca90443..052f846f0fb512c423f8bf32643b5a346f341653 100644 (file)
@@ -53,7 +53,7 @@ void check()
   typename MGDoFHandler<dim>::cell_iterator
     cell = mgdof.begin(),
     endc = mgdof.end();
-  std::vector<unsigned int> local_dof_indices (fe.dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (fe.dofs_per_cell);
   std::vector<unsigned int> mg_dof_indices (fe.dofs_per_cell);
   for (; cell!=endc; ++cell)
     {
index 0742b2e6be30a5402e247523637452d3e57e1872..f4360e56e4965cee8f2f842977bcdeb76943e5f7 100644 (file)
@@ -427,7 +427,7 @@ void LaplaceProblem<dim>::assemble_system ()
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   const Coefficient<dim> coefficient;
   std::vector<double>    coefficient_values (n_q_points);
@@ -498,7 +498,7 @@ void LaplaceProblem<dim>::assemble_multigrid ()
 
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
 
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
 
   const Coefficient<dim> coefficient;
   std::vector<double>    coefficient_values (n_q_points);
index d0a8ba9b596c261d1bab45e3668aa9846967bf86..3e8b199682fe322c2127b856a81eeb70f7146c59 100644 (file)
@@ -54,7 +54,7 @@ void assemble_laplace (MATRIX &B, VECTOR &bb, DoFHandler<dim> &dof_handler, Fini
   FullMatrix<double>   cell_matrix (dofs_per_cell, dofs_per_cell);
   Vector<double>       cell_rhs (dofs_per_cell);
   
-  std::vector<unsigned int> local_dof_indices (dofs_per_cell);
+  std::vector<types::global_dof_index> local_dof_indices (dofs_per_cell);
   
   typename DoFHandler<dim>::active_cell_iterator
     cell = dof_handler.begin_active(),

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.