From: Wolfgang Bangerth Date: Sat, 9 Feb 2013 04:16:09 +0000 (+0000) Subject: Merge the branches from the branch_bigger_dof_indices_3 branch. X-Git-Tag: v8.0.0~316^2~165 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dbdf3b121f3c88c7231dbce5459f694720d94a9c;p=dealii.git Merge the branches from the branch_bigger_dof_indices_3 branch. git-svn-id: https://svn.dealii.org/branches/branch_bigger_global_dof_indices_4@28289 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/examples/step-18/step-18.cc b/deal.II/examples/step-18/step-18.cc index 8f5940cb2a..048fcbc23f 100644 --- a/deal.II/examples/step-18/step-18.cc +++ b/deal.II/examples/step-18/step-18.cc @@ -1050,7 +1050,7 @@ namespace Step18 FullMatrix cell_matrix (dofs_per_cell, dofs_per_cell); Vector cell_rhs (dofs_per_cell); - std::vector local_dof_indices (dofs_per_cell); + std::vector local_dof_indices (dofs_per_cell); BodyForce body_force; std::vector > body_force_values (n_q_points, diff --git a/deal.II/examples/step-4/step-4.cc b/deal.II/examples/step-4/step-4.cc index 7aa256fa80..a39f1010f9 100644 --- a/deal.II/examples/step-4/step-4.cc +++ b/deal.II/examples/step-4/step-4.cc @@ -320,7 +320,7 @@ void Step4::assemble_system () FullMatrix cell_matrix (dofs_per_cell, dofs_per_cell); Vector cell_rhs (dofs_per_cell); - std::vector local_dof_indices (dofs_per_cell); + std::vector 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 diff --git a/deal.II/examples/step-42/step-42.cc b/deal.II/examples/step-42/step-42.cc index 8750d9a4b0..64ac6f52c4 100644 --- a/deal.II/examples/step-42/step-42.cc +++ b/deal.II/examples/step-42/step-42.cc @@ -662,7 +662,7 @@ namespace Step42 FullMatrix cell_matrix (dofs_per_cell, dofs_per_cell); Vector cell_rhs (dofs_per_cell); - std::vector local_dof_indices (dofs_per_cell); + std::vector local_dof_indices (dofs_per_cell); typename DoFHandler::active_cell_iterator cell = dof_handler.begin_active(), endc = dof_handler.end(); diff --git a/deal.II/examples/step-5/step-5.cc b/deal.II/examples/step-5/step-5.cc index 0430781c5c..7b36606830 100644 --- a/deal.II/examples/step-5/step-5.cc +++ b/deal.II/examples/step-5/step-5.cc @@ -304,7 +304,7 @@ void Step5::assemble_system () FullMatrix cell_matrix (dofs_per_cell, dofs_per_cell); Vector cell_rhs (dofs_per_cell); - std::vector local_dof_indices (dofs_per_cell); + std::vector 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 diff --git a/deal.II/examples/step-6/step-6.cc b/deal.II/examples/step-6/step-6.cc index 7a5ab14778..75b32ce2e1 100644 --- a/deal.II/examples/step-6/step-6.cc +++ b/deal.II/examples/step-6/step-6.cc @@ -397,7 +397,7 @@ void Step6::assemble_system () FullMatrix cell_matrix (dofs_per_cell, dofs_per_cell); Vector cell_rhs (dofs_per_cell); - std::vector local_dof_indices (dofs_per_cell); + std::vector local_dof_indices (dofs_per_cell); const Coefficient coefficient; std::vector coefficient_values (n_q_points); diff --git a/deal.II/files b/deal.II/files new file mode 100644 index 0000000000..e3600a10a8 --- /dev/null +++ b/deal.II/files @@ -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 diff --git a/deal.II/include/deal.II/base/index_set.h b/deal.II/include/deal.II/base/index_set.h index f8666206b6..3731e02d56 100644 --- a/deal.II/include/deal.II/base/index_set.h +++ b/deal.II/include/deal.II/base/index_set.h @@ -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 [0, * end-begin). */ - 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 &indices) const; + void fill_index_vector(std::vector &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() diff --git a/deal.II/include/deal.II/base/polynomial_space.h b/deal.II/include/deal.II/base/polynomial_space.h index 7fa0ca79dc..999040040b 100644 --- a/deal.II/include/deal.II/base/polynomial_space.h +++ b/deal.II/include/deal.II/base/polynomial_space.h @@ -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 x0, x1, x2,..., * xn, we get diff --git a/deal.II/include/deal.II/base/table_indices.h b/deal.II/include/deal.II/base/table_indices.h index 6e4f5414fe..7ae2fb7814 100644 --- a/deal.II/include/deal.II/base/table_indices.h +++ b/deal.II/include/deal.II/base/table_indices.h @@ -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 diff --git a/deal.II/include/deal.II/base/types.h b/deal.II/include/deal.II/base/types.h index 2a37e62c29..3e762a1276 100644 --- a/deal.II/include/deal.II/base/types.h +++ b/deal.II/include/deal.II/base/types.h @@ -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_NAMESPACE_OPEN /** @@ -52,14 +51,56 @@ namespace types */ const unsigned int artificial_subdomain_id DEAL_II_DEPRECATED = static_cast(-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(-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(-2); - } diff --git a/deal.II/include/deal.II/base/utilities.h b/deal.II/include/deal.II/base/utilities.h index cf321eff61..2abc60e50f 100644 --- a/deal.II/include/deal.II/base/utilities.h +++ b/deal.II/include/deal.II/base/utilities.h @@ -666,6 +666,7 @@ namespace Utilities #endif + } diff --git a/deal.II/include/deal.II/base/work_stream.h b/deal.II/include/deal.II/base/work_stream.h index c177fa92f6..5057b6a101 100644 --- a/deal.II/include/deal.II/base/work_stream.h +++ b/deal.II/include/deal.II/base/work_stream.h @@ -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 diff --git a/deal.II/include/deal.II/dofs/dof_accessor.h b/deal.II/include/deal.II/dofs/dof_accessor.h index beebb35966..27a731ddd2 100644 --- a/deal.II/include/deal.II/dofs/dof_accessor.h +++ b/deal.II/include/deal.II/dofs/dof_accessor.h @@ -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: * cell-@>active_fe_index * as last argument. */ - void get_dof_indices (std::vector &dof_indices, + void get_dof_indices (std::vector &dof_indices, const unsigned int fe_index = DH::default_fe_index) const; - void get_mg_dof_indices (const int level, std::vector &dof_indices, const unsigned int fe_index = DH::default_fe_index) const; - void set_mg_dof_indices (const int level, const std::vector &dof_indices, const unsigned int fe_index = DH::default_fe_index); + void get_mg_dof_indices (const int level, std::vector &dof_indices, const unsigned int fe_index = DH::default_fe_index) const; + void set_mg_dof_indices (const int level, const std::vector &dof_indices, const unsigned int fe_index = DH::default_fe_index); /** * Global DoF index of the 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 ith 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 @@ -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: * cell-@>active_fe_index * as last argument. */ - void get_dof_indices (std::vector &dof_indices, + void get_dof_indices (std::vector &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 ith 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 &dof_indices) const; + void dof_indices (std::vector &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 &dof_indices) const; + void get_dof_indices (std::vector &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 &dof_indices) const; + void get_mg_dof_indices (std::vector &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 &dof_indices); - void set_mg_dof_indices (const std::vector &dof_indices); + void set_dof_indices (const std::vector &dof_indices); + void set_mg_dof_indices (const std::vector &dof_indices); /** * Update the cache in which we diff --git a/deal.II/include/deal.II/dofs/dof_accessor.templates.h b/deal.II/include/deal.II/dofs/dof_accessor.templates.h index 10aef3789f..6bf22668e1 100644 --- a/deal.II/include/deal.II/dofs/dof_accessor.templates.h +++ b/deal.II/include/deal.II/dofs/dof_accessor.templates.h @@ -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 +#include #include #include #include @@ -24,6 +25,7 @@ #include #include +#include DEAL_II_NAMESPACE_OPEN @@ -219,7 +221,7 @@ namespace internal */ template 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 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 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 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 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 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 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 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 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 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 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 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::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::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)::max(), ExcInternalError()); + const unsigned int this_fe_index = static_cast(*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)::max(), ExcInternalError()); + const unsigned int this_fe_index = static_cast(*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)::max(), ExcInternalError()); + const unsigned int this_fe_index = static_cast(*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)::max(), ExcInternalError()); + const unsigned int this_fe_index = static_cast(*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)::max(), ExcInternalError()); + const unsigned int this_fe_index = static_cast(*pointer); Assert (this_fe_index < dof_handler.finite_elements->size(), ExcInternalError()); @@ -1478,7 +1486,7 @@ namespace internal template inline -unsigned int +types::global_dof_index DoFAccessor::dof_index (const unsigned int i, const unsigned int fe_index) const { @@ -1494,7 +1502,9 @@ DoFAccessor::dof_index (const unsigned int i, template inline -unsigned int DoFAccessor::mg_dof_index (const int level, const unsigned int i) const +types::global_dof_index +DoFAccessor::mg_dof_index (const int level, + const unsigned int i) const { return this->dof_handler->template get_dof_index (level, this->present_index, 0, i); } @@ -1504,7 +1514,7 @@ template inline void DoFAccessor::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::fe_index_is_active (const unsigned int fe_index) const template inline -unsigned int +types::global_dof_index DoFAccessor::vertex_dof_index (const unsigned int vertex, const unsigned int i, const unsigned int fe_index) const @@ -1587,8 +1597,11 @@ DoFAccessor::vertex_dof_index (const unsigned int vertex, template inline -unsigned -DoFAccessor::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::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::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::set_vertex_dof_index (const unsigned int vertex, template inline void -DoFAccessor::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::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::set_mg_vertex_dof_index (const int level, const template inline void -DoFAccessor::set_mg_dof_index (const int level, const unsigned int i, const unsigned int index) const +DoFAccessor::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 (level, this->present_index, 0, i, index); } @@ -1683,12 +1702,12 @@ namespace internal { template void get_dof_indices (const dealii::DoFAccessor<1,DH,lda> &accessor, - std::vector &dof_indices, + std::vector &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::iterator next = dof_indices.begin(); + std::vector::iterator next = dof_indices.begin(); for (unsigned int vertex=0; vertex<2; ++vertex) for (unsigned int d=0; d void get_dof_indices (const dealii::DoFAccessor<2,DH,lda> &accessor, - std::vector &dof_indices, + std::vector &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::iterator next = dof_indices.begin(); + std::vector::iterator next = dof_indices.begin(); for (unsigned int vertex=0; vertex<4; ++vertex) for (unsigned int d=0; d void get_dof_indices (const dealii::DoFAccessor<3,DH,lda> &accessor, - std::vector &dof_indices, + std::vector &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::iterator next = dof_indices.begin(); + std::vector::iterator next = dof_indices.begin(); for (unsigned int vertex=0; vertex<8; ++vertex) for (unsigned int d=0; d void get_mg_dof_indices (const dealii::DoFAccessor<1, DH,lda> &accessor, const int level, - std::vector &dof_indices, + std::vector &dof_indices, const unsigned int fe_index) { const DH &handler = accessor.get_dof_handler(); @@ -1801,7 +1820,7 @@ namespace internal const FiniteElement &fe = handler.get_fe ()[fe_index]; - std::vector::iterator next = dof_indices.begin (); + std::vector::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 void get_mg_dof_indices (const dealii::DoFAccessor<2, DH,lda> &accessor, const int level, - std::vector &dof_indices, + std::vector &dof_indices, const unsigned int fe_index) { const DH &handler = accessor.get_dof_handler(); @@ -1826,7 +1845,7 @@ namespace internal ExcNotInitialized()); const FiniteElement &fe = handler.get_fe ()[fe_index]; - std::vector::iterator next = dof_indices.begin (); + std::vector::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 void get_mg_dof_indices (const dealii::DoFAccessor<3, DH,lda> &accessor, const int level, - std::vector &dof_indices, + std::vector &dof_indices, const unsigned int fe_index) { const DH &handler = accessor.get_dof_handler(); @@ -1855,7 +1874,7 @@ namespace internal ExcNotInitialized()); const FiniteElement &fe = handler.get_fe ()[fe_index]; - std::vector::iterator next = dof_indices.begin (); + std::vector::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 inline void -DoFAccessor::get_dof_indices (std::vector &dof_indices, +DoFAccessor::get_dof_indices (std::vector &dof_indices, const unsigned int fe_index) const { Assert (this->dof_handler != 0, ExcNotInitialized()); @@ -1946,7 +1965,7 @@ DoFAccessor::get_dof_indices (std::vector &dof_i template inline void DoFAccessor::get_mg_dof_indices (const int level, - std::vector &dof_indices, + std::vector &dof_indices, const unsigned int fe_index) const { Assert (this->dof_handler != 0, ExcInvalidObject ()); @@ -1998,7 +2017,7 @@ void DoFAccessor::get_mg_dof_indices (const int level, template inline void DoFAccessor::set_mg_dof_indices (const int level, - const std::vector &dof_indices, + const std::vector &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::line_iterator get_line(const dealii::Triangulation *tria, - unsigned int index, + const unsigned int index, DH *dof_handler) { return typename dealii::internal::DoFHandler::Iterators::line_iterator @@ -2344,7 +2363,7 @@ template