The code in tria_iterator.templates.h was commented out in 2010.
The code in block_sparse_matrix_ez.templates.h was commented out when it
appeared in 2002.
The code in full_matrix.templates.h was commented out in 2001.
The code in precondition_block.templates.h was commented out in 2011.
The code in sparse_matrix_ez.templates.h was commented out in 2003.
The code in mg_block_smoother.h was commented out in 2005.
The code in mg_smoother.h was commented out in 2010.
The code in mg_transfer_component.templates.h was commented out in 2010.
The code in integration_info.templates.h was commented out in 2011.
The code in matrix_tools.h was commented out at some point prior to 2012.
The code in vector_tools.templates.h was commented out at some point prior to 2012.
}
-// template <typename Accessor>
-// template <typename OtherAccessor>
-// inline
-// TriaRawIterator<Accessor> &
-// TriaRawIterator<Accessor>::operator = (const TriaRawIterator<OtherAccessor> &i)
-// {
-// accessor.copy_from (i.accessor);
-// return *this;
-// }
-
-
-// template <typename Accessor>
-// template <typename OtherAccessor>
-// inline
-// TriaRawIterator<Accessor> &
-// TriaRawIterator<Accessor>::operator = (const TriaIterator<OtherAccessor> &i)
-// {
-// accessor.copy_from (i.accessor);
-// return *this;
-// }
-
-
-// template <typename Accessor>
-// template <typename OtherAccessor>
-// inline
-// TriaRawIterator<Accessor> &
-// TriaRawIterator<Accessor>::operator = (const TriaActiveIterator<OtherAccessor> &i)
-// {
-// accessor.copy_from (i.accessor);
-// return *this;
-// }
-
template <typename Accessor>
inline
-// template <typename number>
-// unsigned int
-// BlockSparseMatrixEZ<number>::n_nonzero_elements () const
-// {
-// return sparsity_pattern->n_nonzero_elements ();
-// };
-
-
-
-// template <typename number>
-// unsigned int
-// BlockSparseMatrixEZ<number>::n_actually_nonzero_elements () const
-// {
-// unsigned int count = 0;
-// for (unsigned int i=0; i<rows; ++i)
-// for (unsigned int j=0; j<columns; ++j)
-// count += sub_objects[i][j]->n_actually_nonzero_elements ();
-// return count;
-// };
-
-
-
-// template <typename number>
-// std::size_t
-// BlockSparseMatrixEZ<number>::memory_consumption () const
-// {
-// std::size_t mem = sizeof(*this);
-// mem += MemoryConsumption::memory_consumption (sub_objects);
-// for (unsigned int r=0; r<rows; ++r)
-// for (unsigned int c=0; c<columns; ++c)
-// mem += MemoryConsumption::memory_consumption(*sub_objects[r][c]);
-// return mem;
-// };
-
-
-
DEAL_II_NAMESPACE_CLOSE
#endif // ifdef block_sparse_matrix_templates_h
-/* template <typename number> */
-/* template <typename number2> */
-/* void FullMatrix<number>::fill (const number2* entries) */
-/* { */
-/* if (n_cols()*n_rows() != 0) */
-/* std::copy (entries, entries+n_rows()*n_cols(), &this->values[0]); */
-/* } */
-
-
-
template <typename number>
void FullMatrix<number>::add_row (const size_type i,
const number s,
const bool permuted = (permutation.size() == M.m());
const bool cell_permuted = (permutation.size() == this->size());
-// deallog << "Permutation " << permutation.size();
-// if (permuted) deallog << " point";
-// if (cell_permuted) deallog << " block";
-// deallog << std::endl;
-
Vector<number2> b_cell(this->blocksize), x_cell(this->blocksize);
// cell_row, cell_column are the
out.write(reinterpret_cast<const char *>(&*r),
sizeof(RowInfo) * row_info.size());
-// Just in case that vector entries are not stored consecutively
-// const typename std::vector<RowInfo>::const_iterator re = row_info.end();
-
-// while (r != re)
-// {
-// out.write(reinterpret_cast<const char*>(&*r),
-// sizeof(RowInfo));
-// ++r;
-// }
-
out << "][";
typename std::vector<Entry>::const_iterator d = data.begin();
out.write(reinterpret_cast<const char *>(&*d),
sizeof(Entry) * data.size());
-// Just in case that vector entries are not stored consecutively
-// const typename std::vector<Entry>::const_iterator de = data.end();
-
-// while (d != de)
-// {
-// out.write(reinterpret_cast<const char*>(&*d),
-// sizeof(Entry));
-// ++d;
-// }
-
out << ']';
AssertThrow (out, ExcIO());
const unsigned int nqp = fevalv[0]->n_quadrature_points;
values.resize(global_data->n_values());
-// deallog << "values: " << values.size() << " [";
// For all selected finite
// element functions
for (unsigned int i=0; i<values.size(); ++i)
{
values[i].resize(n_components);
-// deallog << ' ' << values[i].size() << " {";
// For all components
for (unsigned int j=0; j<values[i].size(); ++j)
{
values[i][j].resize(nqp);
-// deallog << ' ' << values[i][j].size();
}
-// deallog << " }";
}
-// deallog << " ]" << std::endl;
gradients.resize(global_data->n_gradients());
// For all selected finite
DEAL_II_NAMESPACE_CLOSE
-
bool T = transpose;
if (symmetric && (steps2 % 2 == 0))
T = false;
-// cerr << 'S' << level;
-// cerr << '(' << matrices[level]->m() << ',' << matrices[level]->n() << ')';
for (unsigned int i=0; i<steps2; ++i)
{
if (T)
{
-// cerr << 'T';
matrices[level].vmult(*r,u);
r->sadd(-1.,1.,rhs);
smoothers[level].Tvmult(*d, *r);
}
else
{
-// cerr << 'N';
matrices[level].vmult(*r,u);
r->sadd(-1.,1.,rhs);
smoothers[level].vmult(*d, *r);
}
-// cerr << '{' << r->l2_norm() << '}';
u += *d;
if (symmetric)
T = !T;
template <class MATRIX2, class DATA>
void initialize (const MGLevelObject<MATRIX2> &matrices,
const MGLevelObject<DATA> &additional_data);
- /**
- * Initialize for matrix blocks. This function initializes the smoothing
- * operator with the same smoother for each level.
- *
- * @p additional_data is an object of type @p RELAX::AdditionalData and is
- * handed to the initialization function of the relaxation method.
- */
-// template <class MATRIX2>
-// void initialize (const MGLevelObject<MatrixBlock<MATRIX2> >& matrices,
-// const typename RELAX::AdditionalData & additional_data = typename RELAX::AdditionalData());
/**
* Empty all vectors.
OutVector &dst,
const MGLevelObject<Vector<number> > &src) const
{
-// const FiniteElement<dim>& fe = mg_dof_handler.get_fe();
-
-// const unsigned int dofs_per_cell = fe.dofs_per_cell;
-// std::vector<unsigned int> global_dof_indices (dofs_per_cell);
-// std::vector<unsigned int> level_dof_indices (dofs_per_cell);
-
typename DoFHandler<dim,spacedim>::active_cell_iterator
level_cell = mg_dof_handler.begin_active();
const typename DoFHandler<dim,spacedim>::active_cell_iterator
const Function<spacedim> *const weight = 0,
std::vector<unsigned int> component_mapping = std::vector<unsigned int>());
-// * Same function, but for 1d.
-// */
-//
-// void create_boundary_mass_matrix (const Mapping<1,1> &mapping,
-// const DoFHandler<1,1> &dof,
-// const Quadrature<0> &q,
-// SparseMatrix<double> &matrix,
-// const FunctionMap<1>::type &boundary_functions,
-// Vector<double> &rhs_vector,
-// std::vector<types::global_dof_index>&dof_to_boundary_mapping,
-// const Function<1> * const a = 0);
-// //codimension 1
-//
-// void create_boundary_mass_matrix (const Mapping<1,2> &mapping,
-// const DoFHandler<1,2> &dof,
-// const Quadrature<0> &q,
-// SparseMatrix<double> &matrix,
-// const FunctionMap<2>::type &boundary_functions,
-// Vector<double> &rhs_vector,
-// std::vector<types::global_dof_index>&dof_to_boundary_mapping,
-// const Function<2> * const a = 0);
-
-
/**
* Calls the create_boundary_mass_matrix() function, see above, with
const Function<spacedim> *const a = 0,
std::vector<unsigned int> component_mapping = std::vector<unsigned int>());
- /**
- * Same function as above, but for hp objects.
- */
-//
-// void create_boundary_mass_matrix (const hp::MappingCollection<1,1> &mapping,
-// const hp::DoFHandler<1,1> &dof,
-// const hp::QCollection<0> &q,
-// SparseMatrix<double> &matrix,
-// const FunctionMap<1>::type &boundary_functions,
-// Vector<double> &rhs_vector,
-// std::vector<types::global_dof_index>&dof_to_boundary_mapping,
-// const Function<1> * const a = 0);
-
/**
* Same function as above, but for hp objects.
*/
if (representative)
{
- // rep_index=dofs_of_rep_points.size()
dof_to_rep_index_table[fe_index].push_back(dofs_of_rep_points[fe_index].size());
- // dofs_of_rep_points[rep_index]=i
dofs_of_rep_points[fe_index].push_back(i);
++n_rep_points[fe_index];
}