};
/**
- * Evaluates the convergence rates of the data column
+ * Evaluate the convergence rates of the data column
* <tt>data_column_key</tt> due to the #RateMode in relation to the
* reference column <tt>reference_column_key</tt>. Be sure that the value
* types of the table entries of the data column and the reference data
/**
- * Evaluates the convergence rates of the data column
+ * Evaluate the convergence rates of the data column
* <tt>data_column_key</tt> due to the #RateMode. Be sure that the value
* types of the table entries of the data column is a number, i.e. double,
* float, (unsigned) int, and so on.
omit_column_from_convergence_rate_evaluation(const std::string &key);
/**
- * Evaluates convergence rates due to the <tt>rate_mode</tt> in relation to
+ * Evaluate convergence rates due to the <tt>rate_mode</tt> in relation to
* the reference column <tt>reference_column_key</tt>. This function
* evaluates the rates of ALL columns except of the columns that are to be
* omitted (see previous function) and except of the columns that are
const RateMode rate_mode);
/**
- * Evaluates convergence rates due to the <tt>rate_mode</tt>. This function
+ * Evaluate convergence rates due to the <tt>rate_mode</tt>. This function
* evaluates the rates of ALL columns except of the columns that are to be
* omitted (see previous function) and except of the columns that are
* previously evaluated rate columns. This function allows to evaluate the
const size_type end) const;
/**
- * Removes all elements contained in @p other from this set. In other words,
+ * Remove all elements contained in @p other from this set. In other words,
* if $x$ is the current object and $o$ the argument, then we compute $x
* \leftarrow x \backslash o$.
*/
void subtract_set (const IndexSet &other);
/**
- * Removes and returns the last element of the last range.
- * Throws an exception if the IndexSet is empty.
+ * Remove and return the last element of the last range.
+ * This function throws an exception if the IndexSet is empty.
*/
size_type pop_back ();
/**
- * Removes and returns the first element of the first range.
- * Throws an exception if the IndexSet is empty.
+ * Remove and return the first element of the first range.
+ * This function throws an exception if the IndexSet is empty.
*/
size_type pop_front ();
/**
- * Fills the given vector with all indices contained in this IndexSet.
+ * Fill the given vector with all indices contained in this IndexSet.
*/
void fill_index_vector(std::vector<size_type> &indices) const;
void fill_binary_vector (VectorType &vector) const;
/**
- * Outputs a text representation of this IndexSet to the given stream. Used
+ * Output a text representation of this IndexSet to the given stream. Used
* for testing.
*/
template <class StreamType>
void set_owned_indices (const IndexSet &locally_owned_indices);
/**
- * Allows to set the ghost indices after the constructor has been
+ * Set the ghost indices after the constructor has been
* called.
*
* The optional parameter @p larger_ghost_index_set allows defining an
#ifdef DEAL_II_WITH_MPI
/**
- * Starts the exports of the data in a locally owned array to the range
+ * Start the exports of the data in a locally owned array to the range
* described by the ghost indices of this class.
*
* @param communication_channel Sets an offset to the MPI_Isend and
std::vector<MPI_Request> &requests) const;
/**
- * Starts importing the data on an array indexed by the ghost indices of
+ * Start importing the data on an array indexed by the ghost indices of
* this class that is later accumulated into a locally owned array with
* import_from_ghosted_array_finish().
*
std::vector<MPI_Request> &requests) const;
/**
- * Finishes importing the data from an array indexed by the ghost
+ * Finish importing the data from an array indexed by the ghost
* indices of this class into a specified locally owned array, combining
* the results according to the given input @p vector_operation.
*
IndexSet ghost_indices_data;
/**
- * Caches the number of ghost indices. It would be expensive to use @p
+ * A variable caching the number of ghost indices. It would be expensive to use @p
* ghost_indices.n_elements() to compute this.
*/
unsigned int n_ghost_indices_data;
/**
- * Contains information which processors my ghost indices belong to and
+ * An array that contains information which processors my ghost indices belong to and
* how many those indices are
*/
std::vector<std::pair<unsigned int, unsigned int> > ghost_targets_data;
std::vector<std::pair<unsigned int, unsigned int> > import_indices_data;
/**
- * Caches the number of ghost indices. It would be expensive to compute
+ * A variable caching the number of ghost indices. It would be expensive to compute
* it by iterating over the import indices and accumulate them.
*/
unsigned int n_import_indices_data;
std::vector<std::pair<unsigned int, unsigned int> > import_targets_data;
/**
- * Caches the number of chunks in the import indices per MPI rank. The
+ * An array that caches the number of chunks in the import indices per MPI rank. The
* length is import_indices_data.size()+1.
*/
std::vector<unsigned int> import_indices_chunks_by_rank_data;
/**
- * Caches the number of ghost indices in a larger set of indices given by
+ * A variable caching the number of ghost indices in a larger set of indices given by
* the optional argument to set_ghost_indices().
*/
unsigned int n_ghost_indices_in_larger_set;
/**
- * Caches the number of chunks in the import indices per MPI rank. The
+ * An array that caches the number of chunks in the import indices per MPI rank. The
* length is ghost_indices_subset_data.size()+1.
*/
std::vector<unsigned int> ghost_indices_subset_chunks_by_rank_data;
MPI_Comm communicator;
/**
- * Stores whether the ghost indices have been explicitly set.
+ * A variable storing whether the ghost indices have been explicitly set.
*/
bool have_ghost_indices;
};
virtual std::unique_ptr<PatternBase> clone () const;
/**
- * Creates new object if the start of description matches
+ * Create a new object if the start of description matches
* description_init. Ownership of that object is transferred to the
* caller of this function.
*/
std::size_t memory_consumption () const;
/**
- * Creates new object if the start of description matches
+ * Create a new object if the start of description matches
* description_init. Ownership of that object is transferred to the
* caller of this function.
*/
virtual std::unique_ptr<PatternBase> clone () const;
/**
- * Creates new object if the start of description matches
+ * Create a new object if the start of description matches
* description_init. Ownership of that object is transferred to the
* caller of this function.
*/
virtual std::unique_ptr<PatternBase> clone () const;
/**
- * Creates new object if the start of description matches
+ * Create a new object if the start of description matches
* description_init. Ownership of that object is transferred to the
* caller of this function.
*/
virtual std::unique_ptr<PatternBase> clone () const;
/**
- * Creates new object if the start of description matches
+ * Create a new object if the start of description matches
* description_init. Ownership of that object is transferred to the
* caller of this function.
*/
virtual std::unique_ptr<PatternBase> clone () const;
/**
- * Creates new object if the start of description matches
+ * Create a new object if the start of description matches
* description_init. Ownership of that object is transferred to the
* caller of this function.
*/
virtual std::unique_ptr<PatternBase> clone () const;
/**
- * Creates new object if the start of description matches
+ * Create a new object if the start of description matches
* description_init. Ownership of that object is transferred to the
* caller of this function.
*/
virtual std::unique_ptr<PatternBase> clone () const;
/**
- * Creates new object if the start of description matches
+ * Create a new object if the start of description matches
* description_init. Ownership of that object is transferred to the
* caller of this function.
*/
FileType file_type;
/**
- * Creates new object if the start of description matches
+ * Create a new object if the start of description matches
* description_init. Ownership of that object is transferred to the
* caller of this function.
*/
virtual std::unique_ptr<PatternBase> clone () const;
/**
- * Creates new object if the start of description matches
+ * Create a new object if the start of description matches
* description_init. Ownership of that object is transferred to the
* caller of this function.
*/
Polynomial<number> polynomial;
/**
- * Stores the number of intervals that the unit interval is divided into.
+ * A variable storing the number of intervals that the unit interval is divided into.
*/
unsigned int n_intervals;
/**
- * Stores the index of the current polynomial in the range of intervals.
+ * A variable storing the index of the current polynomial in the range of intervals.
*/
unsigned int interval;
unsigned int n_rows() const;
/**
- * Stores the column and supercolumn keys in the order desired by the user.
+ * A variable storing the column and supercolumn keys in the order desired by the user.
* By default this is the order of adding the columns. This order may be
* changed by set_column_order().
*/
std::vector<std::string> column_order;
/**
- * Maps the column keys to the columns (not supercolumns).
+ * A map from the column keys to the columns (not supercolumns).
*
* The field is declared mutable so that the write_text() and write_tex()
* functions can be const, even though they may pad columns below if
mutable std::map<std::string,Column> columns;
/**
- * Maps each supercolumn key to the keys of its subcolumns in the right
+ * A map from each supercolumn key to the keys of its subcolumns in the right
* order. It is allowed that a supercolumn has got the same key as a
* column.
*
std::map<std::string, std::vector<std::string> > supercolumns;
/**
- * Maps the supercolumn keys to the captions of the supercolumns that are
+ * A map from the supercolumn keys to the captions of the supercolumns that are
* used in tex output.
*
* By default these are just the supercolumn keys but they may be changed by
TensorProductPolynomials (const std::vector<Pol> &pols);
/**
- * Prints the list of the indices to <tt>out</tt>.
+ * Print the list of the indices to <tt>out</tt>.
*/
void output_indices(std::ostream &out) const;
/**
- * Overloads of the non-const new_task function.
+ * Overload of the non-const new_task function.
*
* @ingroup threads
*/
#ifndef DEAL_II_CONST_MEMBER_DEDUCTION_BUG
/**
- * Overloads of the new_task function.
+ * Overload of the new_task function.
*
* @ingroup threads
*/
/**
- * Fills the @p stats structure with information about the memory
+ * Fill the @p stats structure with information about the memory
* consumption of this process. This is only implemented on Linux.
*/
void get_memory_stats (MemoryStats &stats);
* this element from defining an interpolation matrix. An exception will be
* thrown.
*
- * Overrides the implementation from FE_Q_Base.
+ * This function overrides the implementation from FE_Q_Base.
*/
virtual void
get_interpolation_matrix (const FiniteElement<dim,spacedim> &source,
* this element from defining a restriction matrix. An exception will be
* thrown.
*
- * Overrides the implementation from FE_Q_Base.
+ * This function overrides the implementation from FE_Q_Base.
*/
virtual const FullMatrix<double> &
get_restriction_matrix (const unsigned int child,
* this element from defining a prolongation matrix. An exception will be
* thrown.
*
- * Overrides the implementation from FE_Q_Base.
+ * This function overrides the implementation from FE_Q_Base.
*/
virtual const FullMatrix<double> &
get_prolongation_matrix (const unsigned int child,
/**
* Compute renumbering for rotation of degrees of freedom.
*
- * Rotates a tensor product numbering of degrees of freedom by 90 degrees.
- * It is used to compute the transfer matrices of the children by using only
- * the matrix for the first child.
+ * This function rotates a tensor product numbering of degrees of
+ * freedom by 90 degrees. It is used to compute the transfer
+ * matrices of the children by using only the matrix for the first
+ * child.
*
* The direction parameter determines the type of rotation. It is one
* character of @p xXyYzZ. The character determines the axis of rotation,
template <int dim1, int spacedim1> friend class FE_DGQ;
/**
- * Allows @p MappingQ class to access to build_renumbering function.
+ * Allow @p MappingQ class to access to build_renumbering function.
*/
template <int dim1, int spacedim1> friend class MappingQ;
};
static std::vector<unsigned int> get_dpo_vector(const unsigned int degree);
/**
- * Performs the initialization of the element based on 1D support points,
+ * Perform the initialization of the element based on 1D support points,
* i.e., sets renumbering, initializes unit support points, initializes
* constraints as well as restriction and prolongation matrices.
*/
const bool isotropic_only = false);
/**
- * Projects scalar data defined in quadrature points to a finite element
+ * Project scalar data defined in quadrature points to a finite element
* space on a single cell.
*
* What this function does is the following: assume that there is scalar
*/
/**
- * Maps the point @p p on the unit cell to the corresponding point on the
+ * Map the point @p p on the unit cell to the corresponding point on the
* real cell @p cell.
*
* @param cell Iterator to the cell that will be used to define the mapping.
const Point<dim> &p) const = 0;
/**
- * Maps the point @p p on the real @p cell to the corresponding point on the
+ * Map the point @p p on the real @p cell to the corresponding point on the
* unit cell, and return its coordinates. This function provides the inverse
* of the mapping provided by transform_unit_to_real_cell().
*
Mapping<dim, spacedim> *clone () const;
/**
- * Always returns @p true because MappingCartesian preserves vertex
+ * Return @p true because MappingCartesian preserves vertex
* locations.
*/
bool preserves_vertex_locations () const;
/**
- * Always returns @p false.
+ * See the documentation of Mapping::preserves_vertex_locations()
+ * for the purpose of this function. The implementation in this
+ * class always returns @p false.
*/
virtual
bool preserves_vertex_locations () const;
Mapping<dim,spacedim> *clone () const;
/**
- * Always returns @p false because MappingQEulerian does not in general
+ * Always return @p false because MappingQEulerian does not in general
* preserve vertex locations (unless the translation vector happens to
* provide zero displacements at vertex locations).
*/
compute_mapping_support_points(const typename Triangulation<dim,spacedim>::cell_iterator &cell) const;
/**
- * Always returns @p false because MappingQEulerianGeneric does not in general
+ * Always return @p false because MappingQEulerianGeneric does not in general
* preserve vertex locations (unless the translation vector happens to
* provide for zero displacements at vertex locations).
*/
const AdditionalData &additional_data = AdditionalData());
/**
- * Initializes the preconditioner object and calculate all data that is
+ * Initialize the preconditioner object and calculate all data that is
* necessary for applying it in a solver. This function is automatically
* called when calling the constructor with the same arguments and is only
* used if you create the preconditioner without arguments.
AdditionalData additional_data;
/**
- * Initializes the preconditioner object without knowing a particular
+ * Initialize the preconditioner object without knowing a particular
* matrix. This function sets up appropriate parameters to the underlying
* PETSc object after it has been created.
*/
/**
- * Initializes the preconditioner object and calculate all data that is
+ * Initialize the preconditioner object and calculate all data that is
* necessary for applying it in a solver. This function is automatically
* called when calling the constructor with the same arguments and is only
* used if you create the preconditioner without arguments.
AdditionalData additional_data;
/**
- * Initializes the preconditioner object without knowing a particular
+ * Initialize the preconditioner object without knowing a particular
* matrix. This function sets up appropriate parameters to the underlying
* PETSc object after it has been created.
*/
const AdditionalData &additional_data = AdditionalData());
/**
- * Initializes the preconditioner object and calculate all data that is
+ * Initialize the preconditioner object and calculate all data that is
* necessary for applying it in a solver. This function is automatically
* called when calling the constructor with the same arguments and is only
* used if you create the preconditioner without arguments.
const AdditionalData &additional_data = AdditionalData());
/**
- * Initializes the preconditioner object and calculate all data that is
+ * Initialize the preconditioner object and calculate all data that is
* necessary for applying it in a solver. This function is automatically
* called when calling the constructor with the same arguments and is only
* used if you create the preconditioner without arguments.
const AdditionalData &additional_data = AdditionalData());
/**
- * Initializes the preconditioner object and calculate all data that is
+ * Initialize the preconditioner object and calculate all data that is
* necessary for applying it in a solver. This function is automatically
* called when calling the constructor with the same arguments and is only
* used if you create the preconditioner without arguments.
const AdditionalData &additional_data = AdditionalData());
/**
- * Initializes the preconditioner object and calculate all data that is
+ * Initialize the preconditioner object and calculate all data that is
* necessary for applying it in a solver. This function is automatically
* called when calling the constructor with the same arguments and is only
* used if you create the preconditioner without arguments.
const AdditionalData &additional_data = AdditionalData());
/**
- * Initializes the preconditioner object and calculate all data that is
+ * Initialize the preconditioner object and calculate all data that is
* necessary for applying it in a solver. This function is automatically
* called when calling the constructor with the same arguments and is only
* used if you create the preconditioner without arguments.
const AdditionalData &additional_data = AdditionalData());
/**
- * Initializes the preconditioner object and calculate all data that is
+ * Initialize the preconditioner object and calculate all data that is
* necessary for applying it in a solver. This function is automatically
* called when calling the constructor with the same arguments and is only
* used if you create the preconditioner without arguments.
/**
- * Initializes the preconditioner object and calculate all data that is
+ * Initialize the preconditioner object and calculate all data that is
* necessary for applying it in a solver. This function is automatically
* called when calling the constructor with the same arguments and is only
* used if you create the preconditioner without arguments.
AdditionalData additional_data;
/**
- * Initializes the preconditioner object without knowing a particular
+ * Initialize the preconditioner object without knowing a particular
* matrix. This function sets up appropriate parameters to the underlying
* PETSc object after it has been created.
*/
const AdditionalData &additional_data = AdditionalData());
/**
- * Initializes the preconditioner object and calculate all data that is
+ * Initialize the preconditioner object and calculate all data that is
* necessary for applying it in a solver. This function is automatically
* called when calling the constructor with the same arguments and is only
* used if you create the preconditioner without arguments.
const AdditionalData &additional_data = AdditionalData());
/**
- * Initializes the preconditioner object and calculate all data that is
+ * Initialize the preconditioner object and calculate all data that is
* necessary for applying it in a solver. This function is automatically
* called when calling the constructor with the same arguments and is only
* used if you create the preconditioner without arguments. The matrix is
const unsigned int fe_degree);
/**
- * Stores data related to the finite element contained in the
+ * A structure that stores data related to the finite element contained in the
* DoFHandler. Used only for the initialization using
* <tt>setup_transfer</tt>.
*/
template <typename Number>
struct ElementInfo
{
-
/**
- * Stores the degree of the finite element. The selection of the
+ * A variable storing the degree of the finite element. The selection of the
* computational kernel is based on this number.
*/
unsigned int fe_degree;
/**
- * Stores whether the element is continuous and there is a joint degree of
+ * A variable storing whether the element is continuous and there is a joint degree of
* freedom in the center of the 1D line.
*/
bool element_is_continuous;
/**
- * Stores the number of components in the finite element.
+ * A variable storing the number of components in the finite element.
*/
unsigned int n_components;
/**
- * Stores the number of degrees of freedom on all child cells. It is
+ * A variable storing the number of degrees of freedom on all child cells. It is
* <tt>2<sup>dim</sup>*fe.dofs_per_cell</tt> for DG elements and somewhat
* less for continuous elements.
*/
unsigned int n_child_cell_dofs;
/**
- * Holds the numbering between the numbering of degrees of freedom in
+ * An array that holds the numbering between the numbering of degrees of freedom in
* the finite element and the lexicographic numbering needed for the
* tensor product application.
*/
};
/**
- * Sets up most of the internal data structures of MGTransferMatrixFree
+ * Set up most of the internal data structures of MGTransferMatrixFree
*/
template <int dim, typename Number>
void setup_transfer(const dealii::DoFHandler<dim> &mg_dof,
private:
/**
- * Stores the degree of the finite element contained in the DoFHandler
+ * A variable storing the degree of the finite element contained in the DoFHandler
* passed to build(). The selection of the computational kernel is based on
* this number.
*/
unsigned int fe_degree;
/**
- * Stores whether the element is continuous and there is a joint degree of
+ * A variable storing whether the element is continuous and there is a joint degree of
* freedom in the center of the 1D line.
*/
bool element_is_continuous;
/**
- * Stores the number of components in the finite element contained in the
+ * A variable storing the number of components in the finite element contained in the
* DoFHandler passed to build().
*/
unsigned int n_components;
/**
- * Stores the number of degrees of freedom on all child cells. It is
+ * A variable storing the number of degrees of freedom on all child cells. It is
* <tt>2<sup>dim</sup>*fe.dofs_per_cell</tt> for DG elements and somewhat
* less for continuous elements.
*/
std::vector<std::vector<unsigned int> > level_dof_indices;
/**
- * Stores the connectivity from parent to child cell numbers for each level.
+ * A variable storing the connectivity from parent to child cell numbers for each level.
*/
std::vector<std::vector<std::pair<unsigned int,unsigned int> > > parent_child_connect;
/**
- * Stores the number of cells owned on a given process (sets the bounds for
+ * A variable storing the number of cells owned on a given process (sets the bounds for
* the worker loops) for each level.
*/
std::vector<unsigned int> n_owned_level_cells;
std::vector<AlignedVector<VectorizedArray<Number> > > weights_on_refined;
/**
- * Stores the local indices of Dirichlet boundary conditions on cells for
+ * A variable storing the local indices of Dirichlet boundary conditions on cells for
* all levels (outer index), the cells within the levels (second index), and
* the indices on the cell (inner index).
*/
std::vector<std::vector<std::vector<unsigned short> > > dirichlet_indices;
/**
- * Performs templated prolongation operation
+ * Perform the prolongation operation.
*/
template <int degree>
void do_prolongate_add(const unsigned int to_level,
const LinearAlgebra::distributed::Vector<Number> &src) const;
/**
- * Performs templated restriction operation
+ * Performs the restriction operation.
*/
template <int degree>
void do_restrict_add(const unsigned int from_level,
unsigned int maximum_non_linear_iterations;
/**
- * Specifies the scalar used as a stopping tolerance on the scaled
+ * A scalar used as a stopping tolerance on the scaled
* maximum norm of the system function $F(u)$ or $G(u)$.
*
* If set to zero, default values provided by KINSOL will be used.
double function_tolerance;
/**
- * Specifies the scalar used as a stopping tolerance on the minimum
+ * A scalar used as a stopping tolerance on the minimum
* scaled step length.
*
* If set to zero, default values provided by KINSOL will be used.
double step_tolerance;
/**
- * Specifies whether an initial call to the preconditioner or Jacobian
+ * Whether an initial call to the preconditioner or Jacobian
* setup function should be made or not.
*
* A call to this function is useful when solving a sequence of problems,
bool no_init_setup;
/**
- * Specifies the maximum number of nonlinear iterations that can be
+ * The maximum number of nonlinear iterations that can be
* performed between calls to the setup_jacobian() function.
*
* If set to zero, default values provided by KINSOL will be used.
unsigned int maximum_setup_calls;
/**
- * Specifies the maximum allowable scaled length of the Newton step.
+ * The maximum allowable scaled length of the Newton step.
*
* If set to zero, default values provided by KINSOL will be used.
*/
double maximum_newton_step;
/**
- * Specifies the relative error in computing $F(u)$, which is used in the
+ * The relative error in computing $F(u)$, which is used in the
* difference quotient approximation to the Jacobian matrix when the user
* does not supply a solve_jacobian_system_matrix() function.
*
double dq_relative_error;
/**
- * Specifies the maximum number of beta-condition failures in the
+ * The maximum number of beta-condition failures in the
* linesearch algorithm. Only used if
* strategy==SolutionStrategy::linesearch.
*/
unsigned int maximum_beta_failures;
/**
- * Specifies the size of the subspace used with Anderson acceleration
+ * The size of the subspace used with Anderson acceleration
* in conjunction with Picard or fixed-point iteration.
*
* If you set this to 0, no acceleration is used.