From: guido Date: Thu, 30 May 2002 15:55:46 +0000 (+0000) Subject: removing direct access in FEValues X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=be54197927682792e886e57c639fdf9954716b5e;p=dealii-svn.git removing direct access in FEValues git-svn-id: https://svn.dealii.org/trunk@5945 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/deal.II/source/numerics/matrices.cc b/deal.II/deal.II/source/numerics/matrices.cc index aef9a7cd0c..3301ada851 100644 --- a/deal.II/deal.II/source/numerics/matrices.cc +++ b/deal.II/deal.II/source/numerics/matrices.cc @@ -340,8 +340,6 @@ MatrixCreator::create_mass_matrix_2 (const Mapping &mapping, local_rhs.clear (); cell->get_dof_indices (dof_indices); - const FullMatrix &values = fe_values.get_shape_values (); - const std::vector &weights = fe_values.get_JxW_values (); rhs.value_list (fe_values.get_quadrature_points(), rhs_values); if (coefficient != 0) @@ -351,58 +349,68 @@ MatrixCreator::create_mass_matrix_2 (const Mapping &mapping, coefficient->value_list (fe_values.get_quadrature_points(), coefficient_values); for (unsigned int point=0; pointvector_value_list (fe_values.get_quadrature_points(), coefficient_vector_values); for (unsigned int point=0; point &mapping, cell_vector.clear (); fe_values.reinit (cell, face); - - const FullMatrix &values = fe_values.get_shape_values (); - const std::vector &weights = fe_values.get_JxW_values (); - + if (fe_is_system) // FE has several components { boundary_functions.find(cell->face(face)->boundary_indicator()) ->second->vector_value_list (fe_values.get_quadrature_points(), rhs_values_system); - + if (coefficient != 0) { if (coefficient->n_components==1) @@ -610,107 +615,121 @@ create_boundary_mass_matrix_1 (const Mapping &mapping, coefficient->value_list (fe_values.get_quadrature_points(), coefficient_values); for (unsigned int point=0; pointvector_value_list (fe_values.get_quadrature_points(), coefficient_vector_values); for (unsigned int point=0; pointface(face)->boundary_indicator()) ->second->value_list (fe_values.get_quadrature_points(), rhs_values_scalar); - + if (coefficient != 0) { coefficient->value_list (fe_values.get_quadrature_points(), coefficient_values); for (unsigned int point=0; point &mapping, }; -template + template void MatrixCreator::create_boundary_mass_matrix (const DoFHandler &dof, const Quadrature &q, SparseMatrix &matrix, @@ -963,7 +982,6 @@ void MatrixCreator::create_laplace_matrix_1 (const Mapping &mapping, const std::vector > > &grads = fe_values.get_shape_grads (); - const std::vector &weights = fe_values.get_JxW_values (); if (coefficient != 0) { @@ -972,47 +990,66 @@ void MatrixCreator::create_laplace_matrix_1 (const Mapping &mapping, coefficient->value_list (fe_values.get_quadrature_points(), coefficient_values); for (unsigned int point=0; pointvector_value_list (fe_values.get_quadrature_points(), coefficient_vector_values); for (unsigned int point=0; point &mapping, matrix.add (dof_indices[i], dof_indices[j], cell_matrix(i,j)); mutex.release (); - }; -}; + } +} @@ -1140,10 +1177,8 @@ MatrixCreator::create_laplace_matrix_2 (const Mapping &mapping, local_rhs.clear (); cell->get_dof_indices (dof_indices); - const FullMatrix &values = fe_values.get_shape_values (); const std::vector > > &grads = fe_values.get_shape_grads (); - const std::vector &weights = fe_values.get_JxW_values (); rhs.value_list (fe_values.get_quadrature_points(), rhs_values); if (coefficient != 0) @@ -1153,19 +1188,23 @@ MatrixCreator::create_laplace_matrix_2 (const Mapping &mapping, coefficient->value_list (fe_values.get_quadrature_points(), coefficient_values); for (unsigned int point=0; point &mapping, coefficient->vector_value_list (fe_values.get_quadrature_points(), coefficient_vector_values); for (unsigned int point=0; point