* Year = {2018}}
* @endcode
*
- * @author Luca Heltai, Jean-Paul Pelteret, 2019
*/
class GeneralDataStorage : public Subscriptor
{
* Given a list of names to search for (provided by add()), objects of this
* class provide an index list of the selected data.
*
- * @author Guido Kanschat, 2009
*/
class NamedSelection
{
* For the call to (*#inverse_derivative), the vector <tt>"Newton
* residual"</tt> is inserted before <tt>"Newton iterate"</tt>.
*
- * @author Guido Kanschat, 2006, 2010
*/
template <typename VectorType>
class Newton : public OperatorBase
* documentation of those classes for more detailed information on how to use
* them.
*
- * @author Guido Kanschat
- * @date 2012, 2013
*/
namespace Algorithms
{
* providing additional information and forwarded to the inner Operator
* objects of the nested iteration.
*
- * @author Guido Kanschat
- * @date 2014
*/
class OperatorBase : public Subscriptor
{
* An unary operator base class, intended to output the vectors in AnyData
* in each step of an iteration.
*
- * @author Guido Kanschat, 2010
*/
template <typename VectorType>
class OutputOperator : public Subscriptor
* *in.read_ptr<Vector<double>>("Previous time"));
* }
* @endcode
- * @author Guido Kanschat
- * @date 2010
*/
template <typename VectorType>
class ThetaTimestepping : public OperatorBase
* available in C++20.
*
* @ingroup data
- * @author Wolfgang Bangerth, 2015, David Wells, 2017
*/
template <typename ElementType, typename MemorySpaceType = MemorySpace::Host>
class ArrayView
* defined function class.
*
* @ingroup functions
- * @author Ralf Hartmann, 2001
*/
template <int dim>
class AutoDerivativeFunction : public Function<dim>
* This is according to the convention set by the function
* <code>coordinate_to_one_dim_higher</code>.
*
- * @author Giovanni Alzetta, 2017, Simon Sticko 2020.
*/
template <int spacedim, typename Number = double>
class BoundingBox
* This class generates graphical output for BoundingBox objects, starting from
* any object that can be converted by boost to a BoundingBox.
*
- * @author Luca Heltai, 2020.
*/
template <int dim>
class BoundingBoxDataOut : public DataOutInterface<dim, dim>
* @endcode
*
* @ingroup textoutput
- * @author Ralf Hartmann, Wolfgang Bangerth, 2004
*/
class ConditionalOStream
{
* step-13 example programs.
*
* @ingroup textoutput
- * @author Ralf Hartmann, 1999
*/
class ConvergenceTable : public TableHandler
{
* </ul>
*
* @ingroup output
- * @author Wolfgang Bangerth, Guido Kanschat 1999, 2000, 2001, 2002, 2005,
- * 2006.
*/
namespace DataOutBase
{
*
* @ingroup output
*
- * @author Wolfgang Bangerth, Guido Kanschat
*/
template <int dim, int spacedim = dim>
struct Patch
* points have no natural neighbors across their non-existent faces, nor
* can they reasonably be subdivided.
*
- * @author Wolfgang Bangerth, 2017.
*/
template <int spacedim>
struct Patch<0, spacedim>
* <code>.pvtu</code> file that references multiple parts of a parallel
* computation.
*
- * @author Marco Engelhard, 2012
*/
void
write_pvd_record(
* name can be obtained by <tt>default_suffix</tt> without arguments.
*
* @ingroup output
- * @author Wolfgang Bangerth, 1999, Denis Davydov, 2018
*/
template <int dim, int spacedim = dim>
class DataOutInterface
* @note Use an empty string "" for the first argument if output is to be
* written in the current working directory.
*
- * @author Niklas Fehn, Martin Kronbichler, 2019
*/
std::string
write_vtu_with_pvtu_record(
* was used for writing.
*
* @ingroup input output
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, int spacedim = dim>
class DataOutReader : public DataOutInterface<dim, spacedim>
* data structure. It may later be converted into regular formats for a
* number of graphics programs.
*
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, int spacedim>
std::ostream &
* data structure, using the format in which it was written using the
* operator<<.
*
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, int spacedim>
std::istream &
* DerivativeForm@<1,dim,spacedim,Number@>,
* DerivativeForm@<2,dim,spacedim,Number@> and so on.
*
- * @author Sebastian Pauletti, 2011, Luca Heltai, 2015
*/
template <int order, int dim, int spacedim, typename Number = double>
class DerivativeForm
* $[\Delta \mathbf x] [\nabla \mathbf F(\mathbf x)]^T$ in matrix notation.
*
* @relatesalso DerivativeForm
- * @author Sebastian Pauletti, 2011, Reza Rastak, 2019
*/
template <int spacedim, int dim, typename Number>
inline Tensor<1, spacedim, Number>
* by @p grad_F, equivalent to $\text{D\_X} \, \text{grad\_F}^T$ in matrix notation.
*
* @relatesalso DerivativeForm
- * @author Sebastian Pauletti, 2011, Reza Rastak, 2019
*/
// rank=2
template <int spacedim, int dim, typename Number>
* @f]
*
* @relatesalso DerivativeForm
- * @author Sebastian Pauletti, 2011, Reza Rastak, 2019
*/
template <int spacedim, int dim, typename Number>
inline Tensor<2, spacedim, Number>
* reasons.
*
* @relatesalso DerivativeForm
- * @author Sebastian Pauletti, 2011
*/
template <int dim, int spacedim, typename Number>
inline DerivativeForm<1, spacedim, dim, Number>
* }
* @endcode
*
- * @author Reza Rastak, 2019
*/
class DiscreteTime
{
* derived from it.
*
* @ingroup Exceptions
- * @author Wolfgang Bangerth, 1997, 1998, Matthias Maier, 2013
*/
class ExceptionBase : public std::exception
{
* the header <code>deal.II/base/undefine_macros.h</code> after all other
* deal.II headers have been included.
*
- * @author Wolfgang Bangerth, November 1997
* @ingroup Exceptions
*/
# define DeclException0(Exception0) \
* the header <code>deal.II/base/undefine_macros.h</code> after all other
* deal.II headers have been included.
*
- * @author Wolfgang Bangerth, November 1997
* @ingroup Exceptions
*/
# define DeclException0(Exception0) \
* function.
*
* @ingroup Exceptions
- * @author David Wells, 2016
*/
class ExcMPI : public dealii::ExceptionBase
{
* deal.II headers have been included.
*
* @ingroup Exceptions
- * @author Wolfgang Bangerth, 1997, 1998, Matthias Maier, 2013
*/
#ifdef DEBUG
# ifdef DEAL_II_HAVE_BUILTIN_EXPECT
*
* @note Active in DEBUG mode only
* @ingroup Exceptions
- * @author Wolfgang Bangerth, 1997, 1998, Matthias Maier, 2013
*/
#ifdef DEBUG
# ifdef DEAL_II_HAVE_BUILTIN_EXPECT
*
* @note Active in both DEBUG and RELEASE modes
* @ingroup Exceptions
- * @author Wolfgang Bangerth, 1997, 1998, Matthias Maier, 2013
*/
#ifdef DEAL_II_HAVE_BUILTIN_EXPECT
# define AssertThrow(cond, exc) \
* deal.II headers have been included.
*
* @ingroup Exceptions
- * @author Guido Kanschat 2007
*/
#define AssertDimension(dim1, dim2) \
Assert(static_cast<typename ::dealii::internal::argument_type<void( \
* deal.II headers have been included.
*
* @ingroup Exceptions
- * @author Guido Kanschat 2010
*/
#define AssertVectorVectorDimension(VEC, DIM1, DIM2) \
AssertDimension(VEC.size(), DIM1); \
* deal.II headers have been included.
*
* @ingroup Exceptions
- * @author Guido Kanschat, Daniel Arndt, 2007, 2018
*/
#define AssertIndexRange(index, range) \
Assert( \
* deal.II headers have been included.
*
* @ingroup Exceptions
- * @author Wolfgang Bangerth, 2015
*/
#define AssertIsFinite(number) \
Assert(dealii::numbers::is_finite(number), \
*
* @note Active only if deal.II is compiled with MPI
* @ingroup Exceptions
- * @author David Wells, 2016
*/
# define AssertThrowMPI(error_code) \
AssertThrow(error_code == MPI_SUCCESS, dealii::ExcMPI(error_code))
* deal.II headers have been included.
*
* @ingroup Exceptions
- * @author Bruno Turcksin, 2016
*/
# ifdef DEBUG
# define AssertCuda(error_code) \
* deal.II headers have been included.
*
* @ingroup Exceptions
- * @author Daniel Arndt, 2018
*/
# ifdef DEBUG
# define AssertNothrowCuda(error_code) \
* deal.II headers have been included.
*
* @ingroup Exceptions
- * @author Bruno Turcksin, 2020
*/
# ifdef DEBUG
# define AssertCudaKernel() \
* deal.II headers have been included.
*
* @ingroup Exceptions
- * @author Bruno Turcksin, 2018
*/
# ifdef DEBUG
# define AssertCusparse(error_code) \
* deal.II headers have been included.
*
* @ingroup Exceptions
- * @author Daniel Arndt, 2018
*/
# ifdef DEBUG
# define AssertNothrowCusparse(error_code) \
* deal.II headers have been included.
*
* @ingroup Exceptions
- * @author Bruno Turcksin, 2018
*/
# ifdef DEBUG
# define AssertCusolver(error_code) \
* derived classes.
*
* @ingroup functions
- * @author Guido Kanschat, 2007
*/
template <int dim>
class FlowFunction : public Function<dim>
* is used to scale the pressure properly for a Navier-Stokes problem.
*
* @ingroup functions
- * @author Guido Kanschat, 2007
*/
template <int dim>
class PoisseuilleFlow : public FlowFunction<dim>
* \sin x\cos x\sin y\cos y\end{array}\right)
* @f]
* @ingroup functions
- * @author Guido Kanschat, 2007
*/
template <int dim>
class StokesCosine : public FlowFunction<dim>
* Taken from Houston, Schötzau, Wihler, proceeding ENUMATH 2003.
*
* @ingroup functions
- * @author Guido Kanschat, 2007
*/
class StokesLSingularity : public FlowFunction<2>
{
* This function is valid on the half plane right of the line <i>x=1/2</i>.
*
* @ingroup functions
- * @author Guido Kanschat, 2007
*/
class Kovasznay : public FlowFunction<2>
{
* argument.
*
* @ingroup functions
- * @author Wolfgang Bangerth, 1998, 1999, Luca Heltai 2014
*/
template <int dim, typename RangeNumberType = double>
class Function : public FunctionTime<
* constructor.
*
* @ingroup functions
- * @author Wolfgang Bangerth, 1998, 1999, Lei Qiao, 2015
*/
template <int dim, typename RangeNumberType = double>
class ConstantFunction : public Function<dim, RangeNumberType>
* conditions, or zero initial conditions.
*
* @ingroup functions
- * @author Wolfgang Bangerth, 1998, 1999
*/
template <int dim, typename RangeNumberType = double>
class ZeroFunction : public ConstantFunction<dim, RangeNumberType>
* See the step-20 tutorial program for a detailed explanation and a use case.
*
* @ingroup functions
- * @author Guido Kanschat, 2000, Wolfgang Bangerth 2006
*/
template <int dim, typename RangeNumberType = double>
class ComponentSelectFunction : public ConstantFunction<dim, RangeNumberType>
* The savings in work to write this are apparent.
*
* @ingroup functions
- * @author Wolfgang Bangerth, 2011
*/
template <int dim, typename RangeNumberType = double>
class ScalarFunctionFromFunctionObject : public Function<dim, RangeNumberType>
* component.
*
* @ingroup functions
- * @author Wolfgang Bangerth, 2011
*/
template <int dim, typename RangeNumberType = double>
class VectorFunctionFromScalarFunctionObject
* {&zero_gradient, &zero_gradient});
* @endcode
*
- * @author Luca Heltai, 2019
*/
template <int dim, typename RangeNumberType = double>
class FunctionFromFunctionObjects : public Function<dim, RangeNumberType>
* into the first <code>dim</code> components of the function object.
*
* @ingroup functions
- * @author Spencer Patty, 2013
*/
template <int dim, typename RangeNumberType = double>
class VectorFunctionFromTensorFunction : public Function<dim, RangeNumberType>
* The Bessel functions of first kind or positive integer order.
*
* @ingroup functions
- * @author Guido Kanschat
- * @date 2010
*/
template <int dim>
class Bessel1 : public Function<dim>
* @note This function is only implemented for dim==1 .
*
* @ingroup functions
- * @author Denis Davydov
- * @date 2016
*/
template <int dim>
class CSpline : public Function<dim>
* obtain sufficient results.
*
* @ingroup functions
- * @author Guido Kanschat, 2000
*/
template <int dim>
class FunctionDerivative : public AutoDerivativeFunction<dim>
* Together with the function, its derivatives and Laplacian are defined.
*
* @ingroup functions
- * @author: Guido Kanschat, 1999
*/
template <int dim>
class SquareFunction : public Function<dim>
* function serves as an example for a vanishing Laplacian.
*
* @ingroup functions
- * @author: Guido Kanschat, 2000
*/
template <int dim>
class Q1WedgeFunction : public Function<dim>
* Together with the function, its derivatives and Laplacian are defined.
*
* @ingroup functions
- * @author: Guido Kanschat, 1999
*/
template <int dim>
class PillowFunction : public Function<dim>
* $\cos(\pi/2 x_i)$.
*
* @ingroup functions
- * @author Guido Kanschat, 1999
*/
template <int dim>
class CosineFunction : public Function<dim>
* operators without bothering about boundary terms.
*
* @ingroup functions
- * @author Guido Kanschat, 2010
*/
template <int dim>
class CosineGradFunction : public Function<dim>
* Product of exponential functions in each coordinate direction.
*
* @ingroup functions
- * @author Guido Kanschat, 1999
*/
template <int dim>
class ExpFunction : public Function<dim>
* used with GridGenerator::hyper_L().
*
* @ingroup functions
- * @author Guido Kanschat
- * @date 1999
*/
class LSingularityFunction : public Function<2>
{
* with vanishing curl and divergence.
*
* @ingroup functions
- * @author Guido Kanschat, 2010
*/
class LSingularityGradFunction : public Function<2>
{
* Singularity on the slit domain in 2D and 3D.
*
* @ingroup functions
- * @author Guido Kanschat, 1999, 2006
*/
template <int dim>
class SlitSingularityFunction : public Function<dim>
* Singularity on the slit domain with one Neumann boundary in 2D.
*
* @ingroup functions
- * @author Guido Kanschat, 2002
*/
class SlitHyperSingularityFunction : public Function<2>
{
* Together with the function, its derivatives and Laplacian are defined.
*
* @ingroup functions
- * @author: Guido Kanschat, 2000
*/
template <int dim>
class JumpFunction : public Function<dim>
* Fourier cosine decomposition.
*
* @ingroup functions
- * @author Wolfgang Bangerth, 2001
*/
template <int dim>
class FourierCosineFunction : public Function<dim>
* Fourier sine decomposition.
*
* @ingroup functions
- * @author Wolfgang Bangerth, 2001
*/
template <int dim>
class FourierSineFunction : public Function<dim>
* $f(x) = \sum_j w_j sin(\sum_i k_i x_i) = Im(\sum_j w_j \exp(i k.x))$.
*
* @ingroup functions
- * @author Wolfgang Bangerth, 2001
*/
template <int dim>
class FourierSineSum : public Function<dim>
* \exp(i k.x))$.
*
* @ingroup functions
- * @author Wolfgang Bangerth, 2001
*/
template <int dim>
class FourierCosineSum : public Function<dim>
* independently of the radius of the supporting ball.
*
* @ingroup functions
- * @author Guido Kanschat, 2002, Luca Heltai, 2019.
*/
template <int dim>
class CutOffFunctionBase : public Function<dim>
* coordinate direction.
*
* @ingroup functions
- * @author Luca Heltai, 2019.
*/
template <int dim>
class CutOffFunctionTensorProduct : public CutOffFunctionBase<dim>
* valued, it can be restricted to a single component.
*
* @ingroup functions
- * @author Guido Kanschat, 2001, 2002
*/
template <int dim>
class CutOffFunctionLinfty : public CutOffFunctionBase<dim>
* component.
*
* @ingroup functions
- * @author Guido Kanschat, 2001, 2002
*/
template <int dim>
class CutOffFunctionW1 : public CutOffFunctionBase<dim>
* a single component.
*
* @ingroup functions
- * @author Luca Heltai, 2019
*/
template <int dim>
class CutOffFunctionC1 : public CutOffFunctionBase<dim>
* can be restricted to a single component.
*
* @ingroup functions
- * @author Guido Kanschat, 2001, 2002
*/
template <int dim>
class CutOffFunctionCinfty : public CutOffFunctionBase<dim>
* bases are negative numbers.
*
* @ingroup functions
- * @author Wolfgang Bangerth, 2006
*/
template <int dim>
class Monomial : public Function<dim>
* discussed in step-53.
*
* @ingroup functions
- * @author Wolfgang Bangerth, 2013
*/
template <int dim>
class InterpolatedTensorProductGridData : public Function<dim>
* @note The use of this class is discussed in step-53.
*
* @ingroup functions
- * @author Wolfgang Bangerth, 2013
*/
template <int dim>
class InterpolatedUniformGridData : public Function<dim>
* Vector<double> to describe the set of coefficients.
*
* @ingroup functions
- * @author Ángel Rodríguez, 2015
*/
template <int dim>
class Polynomial : public Function<dim>
* this class is generally faster than SymbolicFunction.
*
* @ingroup functions
- * @author Luca Heltai, Timo Heister 2005, 2014
*/
template <int dim>
class FunctionParser : public AutoDerivativeFunction<dim>
* @note This function is currently only implemented for dim==3 .
*
* @ingroup functions
- * @author Denis Davydov, 2017
*/
template <int dim>
class Spherical : public Function<dim>
*
*
* @ingroup functions
- * @author Wolfgang Bangerth, Guido Kanschat, 1998, 1999
*/
template <typename Number = double>
class FunctionTime
* are needed in various contexts when writing applications.
*
* @ingroup utilities
- * @author Denis Davydov, 2016
*/
namespace GeometricUtilities
{
* the object represented, this class provides conversion operators to and
* from unsigned integers.
*
- * @author Wolfgang Bangerth, 2014
*/
class GeometryPrimitive
{
* <code>RefinementPossibilities@<3@></code>.
*
* @ingroup aniso
- * @author Ralf Hartmann, 2005, Wolfgang Bangerth, 2007
*/
template <int dim>
struct RefinementPossibilities
* refinement in x-direction.
*
* @ingroup aniso
- * @author Ralf Hartmann, 2005, Wolfgang Bangerth, 2007
*/
template <>
struct RefinementPossibilities<1>
* refinement in both directions at the same time.
*
* @ingroup aniso
- * @author Ralf Hartmann, 2005, Wolfgang Bangerth, 2007
*/
template <>
struct RefinementPossibilities<2>
* these and isotropic refinement in all directions at the same time.
*
* @ingroup aniso
- * @author Ralf Hartmann, 2005, Wolfgang Bangerth, 2007
*/
template <>
struct RefinementPossibilities<3>
* more information.
*
* @ingroup aniso
- * @author Ralf Hartmann, 2005, Wolfgang Bangerth, 2007
*/
template <int dim>
class RefinementCase : public RefinementPossibilities<dim>
* <code>SubfacePossibilities@<3@></code>.
*
* @ingroup aniso
- * @author Tobias Leicht 2007, Ralf Hartmann, 2008
*/
template <int dim>
struct SubfacePossibilities
* For <code>dim=0</code> we provide a dummy implementation only.
*
* @ingroup aniso
- * @author Ralf Hartmann, 2008
*/
template <>
struct SubfacePossibilities<0>
* possibilities.
*
* @ingroup aniso
- * @author Ralf Hartmann, 2008
*/
template <>
struct SubfacePossibilities<1>
* (<code>case_x</code>) or not refined (<code>case_no</code>).
*
* @ingroup aniso
- * @author Ralf Hartmann, 2008
*/
template <>
struct SubfacePossibilities<2>
* @endcode
*
* @ingroup aniso
- * @author Tobias Leicht 2007, Ralf Hartmann, 2008
*/
template <>
struct SubfacePossibilities<3>
* dimension @p dim) might be subdivided into subfaces.
*
* @ingroup aniso
- * @author Ralf Hartmann, 2008
*/
template <int dim>
class SubfaceCase : public SubfacePossibilities<dim>
* neighbors and so on, since it can be used dimension independently.
*
* @ingroup grid geomprimitives aniso
- * @author Wolfgang Bangerth, 1998
*/
template <>
struct GeometryInfo<0>
* in the manual).
*
* @ingroup grid geomprimitives aniso
- * @author Wolfgang Bangerth, 1998, Ralf Hartmann, 2005, Tobias Leicht, 2007
*/
template <int dim>
struct GeometryInfo
* corresponds to the iterators pointing to objects that are in the same
* partition (i.e., the same zone).
*
- * @author Martin Kronbichler, Bruno Turcksin
*/
template <typename Iterator>
std::vector<std::vector<Iterator>>
* partition (have the same color) and consequently do not conflict. The
* elements of different sets may conflict.
*
- * @author Martin Kronbichler, Bruno Turcksin
*/
template <typename Iterator>
std::vector<std::vector<Iterator>>
* concurrency. To achieve high parallel performance with HDF5, we advice to use
* HDF5 with MPI.
*
- * @author Daniel Garcia-Sanchez, 2018, 2019.
*/
// clang-format on
namespace HDF5
/**
* Base class for the HDF5 objects.
*
- * @author Daniel Garcia-Sanchez, 2018, 2019.
*/
class HDF5Object
{
/**
* This class implements an HDF5 DataSet.
*
- * @author Daniel Garcia-Sanchez, 2018, 2019.
*/
class DataSet : public HDF5Object
{
/**
* This class implements an HDF5 Group
*
- * @author Daniel Garcia-Sanchez, 2018,2019.
*/
class Group : public HDF5Object
{
/**
* This class implements an HDF5 File
*
- * @author Daniel Garcia-Sanchez, 2018, 2019.
*/
class File : public Group
{
* required by some implementations of non-linear solution schemes.
*
* @ingroup functions
- * @author Denis Davydov, Jean-Paul Pelteret, 2018
*/
template <int dim, typename RangeNumberType = double>
class IncrementalFunction : public Function<dim, RangeNumberType>
* in the
* @ref distributed_paper "Distributed Computing paper".
*
- * @author Wolfgang Bangerth, 2009
*/
class IndexSet
{
* class.
*
* @ingroup CPP11
- * @author Wolfgang Bangerth, 2014
*/
template <typename Iterator>
class IteratorRange
* Create an object of type IteratorRange given the beginning and
* end iterator.
*
- * @author Jean-Paul Pelteret, 2019
*/
template <typename BaseIterator>
IteratorRange<BaseIterator>
*
* @note TransposeTable uses this template to implement its iterators.
*
- * @author David Wells, 2018
*/
template <class DerivedIterator, class AccessorType>
class LinearIndexIterator
* </ul>
*
* @ingroup textoutput
- * @author Guido Kanschat, Wolfgang Bangerth, 1999, 2003, 2011
*/
class LogStream : public Subscriptor
{
/**
* The standard log object of deal.II:
*
- * @author Guido Kanschat, 1999
*/
extern LogStream deallog;
* free to implement them and send them to us for inclusion.
*
* @ingroup memory
- * @author Wolfgang Bangerth, documentation updated by Guido Kanschat, David
* Wells
- * @date 2000, 2015
*/
namespace MemoryConsumption
{
*
* @ingroup mg
* @ingroup data
- * @author Wolfgang Bangerth, Guido Kanschat, 1999, 2005, 2010
*/
template <class Object>
class MGLevelObject : public Subscriptor
* @return A map from the rank (unsigned int) of the process
* which sent the data and object received.
*
- * @author Giovanni Alzetta, Luca Heltai, 2017
*/
template <typename T>
std::map<unsigned int, T>
* received from the processor with the corresponding rank within the
* communicator.
*
- * @author Giovanni Alzetta, Luca Heltai, 2017
*/
template <typename T>
std::vector<T>
* received from the processor with the corresponding rank within the
* communicator. All other processes receive an empty vector.
*
- * @author Benjamin Brands, 2017
*/
template <typename T>
std::vector<T>
* set @p indices_to_look_up. The order coincides with the order
* within the ElementIterator.
*
- * @author Peter Munch, 2019
*/
std::vector<unsigned int>
compute_index_owner(const IndexSet &owned_indices,
* sent can be inserted to or read from, and 2) communicate these vectors
* blindly.
*
- * @author Peter Munch, 2019
*/
template <typename T1, typename T2>
class Process
* @tparam T1 The type of the elements of the vector to be sent.
* @tparam T2 The type of the elements of the vector to be received.
*
- * @author Peter Munch, 2019
*/
template <typename T1, typename T2>
class Interface
* @tparam T1 The type of the elements of the vector to be sent.
* @tparam T2 The type of the elements of the vector to be received.
*
- * @author Peter Munch, 2019
*/
template <typename T1, typename T2>
class NBX : public Interface<T1, T2>
* @tparam T1 The type of the elements of the vector to be sent.
* @tparam T2 The type of the elements of the vector to be received.
*
- * @author Peter Munch, 2019
*/
template <typename T1, typename T2>
class PEX : public Interface<T1, T2>
* @tparam T1 The type of the elements of the vector to be sent.
* @tparam T2 The type of the elements of the vector to be received.
*
- * @author Peter Munch, 2019
*/
template <typename T1, typename T2>
class Selector : public Interface<T1, T2>
* A flexible Partitioner class, which does not impose restrictions
* regarding the order of the underlying index sets.
*
- * @author Peter Munch, 2020
*/
class NoncontiguousPartitioner
: public dealii::LinearAlgebra::CommunicationPatternBase
* of cores in the system is returned by MultithreadInfo::n_cores().
*
* @ingroup threads
- * @author Thomas Richter, Wolfgang Bangerth, 2000
*/
class MultithreadInfo
{
* exp(); // calls example_function(p, 3.0, 4);
* @endcode
*
- * @authors Luca Heltai, Matthias Maier, 2019.
*/
template <typename ReturnType, class... FunctionArgs>
class MutableBind
* bound(); // will execute my_function(3, 4.0);
* @endcode
*
- * @authors Luca Heltai, Matthias Maier, 2019.
*/
template <typename ReturnType, class... FunctionArgs>
MutableBind<ReturnType, FunctionArgs...>
* @tparam Number The underlying data type for which one wants to find out
* the maximal length of hardware supported vectors.
*
- * @author Peter Munch, 2019
*/
template <typename Number>
struct VectorizedArrayWidthSpecifier
* optimization level. For a detailed description of supported maximal vector
* lengths, see the documentation of VectorizedArray.
*
- * @author Peter Munch, 2019
*/
template <>
struct VectorizedArrayWidthSpecifier<double>
* optimization level. For a detailed description of supported maximal vector
* lengths, see the documentation of VectorizedArray.
*
- * @author Peter Munch, 2019
*/
template <>
struct VectorizedArrayWidthSpecifier<float>
* linear algebra classes such as vectors and matrices that work for both
* real and complex numbers.
*
- * @author Wolfgang Bangerth, 2007
*/
template <typename number>
struct NumberTraits
* Specialization of the general NumberTraits class that provides the
* relevant information if the underlying data type is std::complex<T>.
*
- * @author Wolfgang Bangerth, 2007
*/
template <typename number>
struct NumberTraits<std::complex<number>>
*
* See the tutorial program step-60 for an example on how to use this class.
*
- * @author Luca Heltai, 2017.
*/
class ParameterAcceptor : public Subscriptor
{
*
* See the tutorial program step-60 for an example on how to use this class.
*
- * @author Luca Heltai, 2018
*/
template <class SourceClass>
class ParameterAcceptorProxy : public SourceClass, public ParameterAcceptor
*
*
* @ingroup input
- * @author Wolfgang Bangerth, October 1997, revised February 1998, 2010, 2011, 2017
- * @author Alberto Sartori, 2015
- * @author David Wells, 2016
- * @author Denis Davydov, 2018
- * @author Pasquale Claudio Africa, 2020
*/
class ParameterHandler : public Subscriptor
{
*
*
* @ingroup input
- * @author Wolfgang Bangerth, October 1997, 2010
*/
class MultipleParameterLoop : public ParameterHandler
{
* Year = {2018}}
* @endcode
*
- * @author Luca Heltai, 2019.
*/
class ParsedConvergenceTable
{
* @endcode
*
* @ingroup functions
- * @author Luca Heltai, 2006
*/
template <int dim>
class ParsedFunction : public AutoDerivativeFunction<dim>
* detect this case and only send the selected indices, taken from the
* full array of ghost entries.
*
- * @author Katharina Kormann, Martin Kronbichler, 2010, 2011, 2017
*/
class Partitioner : public ::dealii::LinearAlgebra::CommunicationPatternBase
{
* @todo Add support for environment variables like in kpathsea.
*
* @ingroup input
- * @author Guido Kanschat, Luca Heltai 2005
*/
class PathSearch
{
* The default separator is a colon, owing to the fact that a pair is in fact
* a tuple with two elements.
*
- * @author Luca Heltai, 2017.
*/
class Tuple : public PatternBase
{
* specialize the Convert struct as well as the RankInfo struct.
*
* @ingroup input
- * @author Luca Heltai, 2017
*/
namespace Tools
{
* SFINAE (substitution failure is not an error) tricks used to specialise
* this class for arbitrary STL containers and maps.
*
- * @author Luca Heltai, 2017
*/
template <class T, class Enable = void>
struct Convert
* helper class Patterns::Tools::RankInfo for details on the way separators
* are selected when outputting STL container types.
*
- * @author Luca Heltai, 2018
*/
template <typename T>
std::string
* used to infer how to interpret the string. If the string is successfully
* parsed, then @p t will be set to the parsed content of @p s.
*
- * @author Luca Heltai, 2018
*/
template <typename T>
void
* with the List type. Adding more compatible types is a matter of adding
* a specialization of this struct for the given type.
*
- * @author Luca Heltai, 2017
*/
template <class T, class Enable = void>
struct RankInfo
*
*
* @ingroup geomprimitives
- * @author Wolfgang Bangerth, 1997
*/
template <int dim, typename Number = double>
class Point : public Tensor<1, dim, Number>
* must be used. In case a manipulation is done that changes the roots, the
* representation is switched to the coefficient form.
*
- * @author Ralf Hartmann, Guido Kanschat, 2000, 2006, Martin Kronbichler, 2011, 2017
*/
template <typename number>
class Polynomial : public Subscriptor
* Class generates Polynomial objects representing a monomial of degree n,
* that is, the function $x^n$.
*
- * @author Guido Kanschat, 2004
*/
template <typename number>
class Monomial : public Polynomial<number>
*
* The Lagrange polynomials are implemented up to degree 10.
*
- * @author Ralf Hartmann, 2000
*/
class LagrangeEquidistant : public Polynomial<double>
{
* that they are orthonormal, not just orthogonal; consequently, the
* polynomials do not necessarily have boundary values equal to one.
*
- * @author Guido Kanschat, 2000
*/
class Legendre : public Polynomial<double>
{
* These polynomials are used for the construction of the shape functions of
* Nédélec elements of arbitrary order.
*
- * @author Markus Bürg, 2009
*/
class Lobatto : public Polynomial<double>
{
* <b>not</b> return the linear polynomial described above, but rather a
* constant polynomial.
*
- * @author Brian Carnes, 2002
*/
class Hierarchical : public Polynomial<double>
{
* p_k(x) &= x^2(x-1)^2 L_{k-4}(x)
* @f}
*
- * @author Guido Kanschat
- * @date 2012
*/
class HermiteInterpolation : public Polynomial<double>
{
* performance of some iterative schemes like conjugate gradients with
* point-Jacobi. This polynomial is used in FE_DGQHermite.
*
- * @author Martin Kronbichler
- * @date 2018
*/
class HermiteLikeInterpolation : public Polynomial<double>
{
* x<sup>0</sup>y<sup>0</sup>z<sup>n</sup> </i> </dl>
*
* @ingroup Polynomials
- * @author Guido Kanschat, Wolfgang Bangerth, Ralf Hartmann 2002, 2003, 2004,
- * 2005
*/
template <int dim>
class PolynomialSpace : public ScalarPolynomialsBase<dim>
* Q<sub>k,k+2,k</sub>, Q<sub>k,k,k+2</sub>)</i> in 2D and 3D, resp.
*
* @ingroup Polynomials
- * @author Oliver Kayser-Herold, based on code from Guido Kanschat
- * @date 2006
*/
template <int dim>
class PolynomialsABF : public TensorPolynomialsBase<dim>
* derivatives of order 3 or higher.
*
* @ingroup Polynomials
- * @author Bärbel Janssen
- * @date 2007
*/
template <int dim>
class PolynomialsAdini : public ScalarPolynomialsBase<dim>
*
*
* @ingroup Polynomials
- * @author Guido Kanschat
- * @date 2003, 2005, 2009
*/
template <int dim>
class PolynomialsBDM : public TensorPolynomialsBase<dim>
*
*
* @ingroup Polynomials
- * @author Graham Harper
- * @date 2018
*/
template <int dim>
class PolynomialsBernardiRaugel : public TensorPolynomialsBase<dim>
* They are used to create the Bernstein finite element FE_Bernstein.
*
* @ingroup Polynomials
- * @author Luca Heltai, Marco Tezzele
- * @date 2013, 2015
*/
template <typename number>
class PolynomialsBernstein : public Polynomials::Polynomial<number>
* Q<sub>k+1,k+1,k</sub>)</i> in 2D and 3D, resp.
*
* @ingroup Polynomials
- * @author Markus Bürg
- * @date 2009, 2010
*/
template <int dim>
class PolynomialsNedelec : public TensorPolynomialsBase<dim>
* monomials in $P_k1$ matches the ordering of the monomials in $P_k2$ for
* $k2>k1$.
*
- * @author Ralf Hartmann, 2004
*/
template <int dim>
class PolynomialsP : public PolynomialSpace<dim>
* freedom into an equivalent of a refined mesh instead of higher order
* polynomials, which is useful when using mixed finite elements.
*
- * @author Martin Kronbichler, 2013
*/
template <typename number>
class PiecewisePolynomial : public Subscriptor
* numbering can be found in GeometryInfo.
*
* @ingroup Polynomials
- * @author Patrick Esser
- * @date 2015
*/
template <int dim>
class PolynomialsRannacherTurek : public ScalarPolynomialsBase<dim>
* Q<sub>k,k+1,k</sub>, Q<sub>k,k,k+1</sub>)</i> in 2D and 3D, resp.
*
* @ingroup Polynomials
- * @author Guido Kanschat
- * @date 2005
*/
template <int dim>
class PolynomialsRaviartThomas : public TensorPolynomialsBase<dim>
* right - $3D,\,k=2$.</td></tr> </table>
*
* @ingroup Polynomials
- * @author Eldar Khattatov
- * @date 2018
*/
template <int dim>
* Currently the only place where one would use a ProcessGrid object is
* in connection with a ScaLAPACKMatrix object.
*
- * @author Benjamin Brands, Denis Davydov, 2017
*/
class ProcessGrid
{
* for more information on this.) The DataSetDescriptor member class is used
* to identify where each dataset starts.
*
- * @author Wolfgang Bangerth, Guido Kanschat, 1998, 1999, 2003, 2005
*/
template <int dim>
class QProjector
* subface indices, and you can then use the generated object in place of an
* integer that denotes the offset of a given dataset.
*
- * @author Wolfgang Bangerth, 2003
*/
class DataSetDescriptor
{
* and 3 (see the section on
* @ref Instantiations).
*
- * @author Wolfgang Bangerth, Guido Kanschat, 1998, 1999, 2000, 2005, 2009
*/
template <int dim>
class Quadrature : public Subscriptor
* @note Each constructor can only be used in the dimension matching the
* number of arguments.
*
- * @author Guido Kanschat, 2005
*/
template <int dim>
class QAnisotropic : public Quadrature<dim>
* constant can be tuned by increasing the number of quadrature points. This
* is useful in integrating non-differentiable functions on cells.
*
- * @author Wolfgang Bangerth 1999
*/
template <int dim>
class QIterated : public Quadrature<dim>
* href="http://en.wikipedia.org/wiki/Numerical_Recipes">Numerical
* Recipes</a>.
*
- * @author Guido Kanschat, 2001
*/
template <int dim>
class QGauss : public Quadrature<dim>
* Karniadakis, G.E. and Sherwin, S.J.: Spectral/hp element methods for
* computational fluid dynamics. Oxford: Oxford University Press, 2005
*
- * @author Guido Kanschat, 2005, 2006; F. Prill, 2006
*/
template <int dim>
class QGaussLobatto : public Quadrature<dim>
* language skills led them to translate the name incorrectly from the German
* "Trapezregel".
*
- * @author Wolfgang Bangerth, 1998
*/
template <int dim>
class QTrapez : public Quadrature<dim>
* The weights and functions for Gauss Legendre formula have been tabulated up
* to order 12.
*
- * @author Nicola Giuliani, Luca Heltai 2015
*/
template <int dim>
class QTelles : public Quadrature<dim>
* 1/\sqrt{x(1-x)}$. For details see: M. Abramowitz & I.A. Stegun: Handbook of
* Mathematical Functions, par. 25.4.38
*
- * @author Giuseppe Pitton, Luca Heltai 2015
*/
template <int dim>
class QGaussChebyshev : public Quadrature<dim>
* imposed at the right endpoint through the variable ep that can assume the
* values left or right.
*
- * @author Giuseppe Pitton, Luca Heltai 2015
*/
template <int dim>
class QGaussRadauChebyshev : public Quadrature<dim>
* details see: M. Abramowitz & I.A. Stegun: Handbook of Mathematical
* Functions, par. 25.4.40
*
- * @author Giuseppe Pitton, Luca Heltai 2015
*/
template <int dim>
class QGaussLobattoChebyshev : public Quadrature<dim>
* co-dimension one surface inside the reference element, like in the extended
* finite element method (XFEM).
*
- * @author Luca Heltai, 2017.
*/
template <int dim>
class QSimplex : public Quadrature<dim>
* \qquad \theta \dealcoloneq \frac\pi 2 \hat y
* \f]
*
- * @author Luca Heltai, 2017
*/
class QTrianglePolar : public QSimplex<2>
{
* When $\beta = 1$, this transformation is also known as the Lachat-Watson
* transformation.
*
- * @author Luca Heltai, Nicola Giuliani, 2017.
*/
class QDuffy : public QSimplex<2>
{
* A quadrature to use when the cell should be split into subregions to
* integrate using one or more base quadratures.
*
- * @author Luca Heltai, 2017.
*/
template <int dim>
class QSplit : public Quadrature<dim>
* data type. For this reason, this class may not be sufficiently flexible when,
* for example, adopting a level-set approach to describe material behavior.
*
- * @author Denis Davydov, Jean-Paul Pelteret, 2016
*/
template <typename CellIteratorType, typename DataType>
class CellDataStorage : public Subscriptor
* To store and access instances of classes derived from this class, see the
* CellDataStorage class.
*
- * @author Denis Davydov, Jean-Paul Pelteret, 2016
*/
class TransferableQuadraturePointData
{
* quadrature points (on child or parent cells) results in values that will
* not make much sense.
*
- * @author Denis Davydov, Jean-Paul Pelteret, 2016
*/
template <int dim, typename DataType>
class ContinuousQuadratureDataTransfer
* read from a parameter file (see ParameterHandler for this).
*
* @ingroup Quadrature
- * @author Ralf Schulz, 2003
*/
template <int dim>
class QuadratureSelector : public Quadrature<dim>
* </ul>
*
* @ingroup Polynomials
- * @author Graham Harper
- * @date 2019
*/
template <int dim>
class ScalarPolynomialsBase
* <tt>SmartPointer<ABC></tt> is a mutable pointer.
*
* @ingroup memory
- * @author Guido Kanschat, Wolfgang Bangerth, 1998 - 2009
*/
template <typename T, typename P = void>
class SmartPointer
* list_subscribers().
*
* @ingroup memory
- * @author Guido Kanschat, Daniel Arndt, 1998 - 2005, 2018
*/
class Subscriptor
{
* this class may be slower than the FunctionParser class.
*
* @ingroup functions
- * @author Luca Heltai 2019
*/
template <int dim, typename RangeNumberType = double>
class SymbolicFunction : public Function<dim, RangeNumberType>
// compile the library with Apple Clang 8 and older. We should remove
// these overloads again when we bump the minimal required version to
// something later than clang-3.6 / Apple Clang 6.3.
- // - Jean-Paul Pelteret, Matthias Maier, Daniel Arndt 2020
template <int rank, int dim, typename T, typename U>
struct ProductTypeImpl<SymmetricTensor<rank, dim, T>, std::complex<U>>
{
* tensor of rank <tt>rank1+rank2-4</tt>, but if this is zero it is a
* single scalar Number. For this case, we have a specialization.
*
- * @author Wolfgang Bangerth, 2005, Jean-Paul Pelteret, 2017
*/
template <int rank1,
int rank2,
* tensor of rank <tt>rank1+rank2-4</tt>, but if this is zero it is a
* single scalar Number. For this case, we have a specialization.
*
- * @author Wolfgang Bangerth, 2005, Jean-Paul Pelteret, 2017
*/
template <int dim, typename Number, typename OtherNumber>
struct double_contraction_result<2, 2, dim, Number, OtherNumber>
* This class is an adaptation of a similar class used for the Table
* class.
*
- * @author Wolfgang Bangerth, 2002, 2005
*/
template <int rank, int dim, bool constness, int P, typename Number>
class Accessor
* for further subsets. The same holds for this specialization as for the
* general template; see there for more information.
*
- * @author Wolfgang Bangerth, 2002, 2005
*/
template <int rank, int dim, bool constness, typename Number>
class Accessor<rank, dim, constness, 1, Number>
* simple reads or writes.
*
* @ingroup geomprimitives
- * @author Wolfgang Bangerth, 2005
*/
template <int rank_, int dim, typename Number>
class SymmetricTensor
* function that returns the determinant of a tensor.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE Number
* \f]
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number>
constexpr DEAL_II_ALWAYS_INLINE Number
* \f]
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE Number
* \f]
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number>
constexpr Number
* size 1, the result is simply zero.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005, 2010
*/
template <typename Number>
constexpr DEAL_II_ALWAYS_INLINE Number
* invariant are the same; the determinant is the third invariant.)
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005, 2010
*/
template <typename Number>
constexpr DEAL_II_ALWAYS_INLINE Number
* \left[ (\text{tr} \mathbf A)^2 - \text{tr} (\mathbf{A}^2) \right]$.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005, 2010
*/
template <typename Number>
constexpr DEAL_II_ALWAYS_INLINE Number
* eigenvalue.
*
* @relatesalso SymmetricTensor
- * @author Jean-Paul Pelteret, 2017
*/
template <typename Number>
std::array<Number, 1>
* eigenvalues of a symmetric tensor.
*
* @relatesalso SymmetricTensor
- * @author Jean-Paul Pelteret, 2017
*/
template <typename Number>
std::array<Number, 2>
* eigenvalues of a symmetric tensor.
*
* @relatesalso SymmetricTensor
- * @author Jean-Paul Pelteret, 2017
*/
template <typename Number>
std::array<Number, 3>
* @param[out] d The diagonal elements of the tridiagonal matrix
* @param[out] e The off-diagonal elements of the tridiagonal matrix
*
- * @author Joachim Kopp, Jean-Paul Pelteret, 2017
*/
template <int dim, typename Number>
void
* @return An array containing the eigenvectors and the associated eigenvalues.
* The array is not sorted in any particular order.
*
- * @author Joachim Kopp, Jean-Paul Pelteret, 2017
*/
template <int dim, typename Number>
std::array<std::pair<Number, Tensor<1, dim, Number>>, dim>
* @return An array containing the eigenvectors and the associated eigenvalues.
* The array is not sorted in any particular order.
*
- * @author Joachim Kopp, Jean-Paul Pelteret, 2017
*/
template <int dim, typename Number>
std::array<std::pair<Number, Tensor<1, dim, Number>>, dim>
* @return An array containing the eigenvectors and the associated eigenvalues.
* The array is not sorted in any particular order.
*
- * @author Joachim Kopp, Jean-Paul Pelteret, 2017
*/
template <typename Number>
std::array<std::pair<Number, Tensor<1, 2, Number>>, 2>
* @return An array containing the eigenvectors and the associated eigenvalues.
* The array is not sorted in any particular order.
*
- * @author Joachim Kopp, Jean-Paul Pelteret, 2017
*/
template <typename Number>
std::array<std::pair<Number, Tensor<1, 3, Number>>, 3>
* @endcode
*
* @relatesalso SymmetricTensor
- * @author Joachim Kopp, Jean-Paul Pelteret, 2017
*/
template <int dim, typename Number>
std::array<std::pair<Number, Tensor<1, dim, Number>>,
* class.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int rank_, int dim, typename Number>
constexpr DEAL_II_ALWAYS_INLINE SymmetricTensor<rank_, dim, Number>
* component and refers to the shear in, for example, elasticity.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE SymmetricTensor<2, dim, Number>
* $\text{dim}\times\text{dim}$ identity matrix $\mathbf I$.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE SymmetricTensor<2, dim, Number>
* uses <code>double</code> as the data type for the elements.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE SymmetricTensor<2, dim>
* \f]
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline SymmetricTensor<4, dim, Number>
* data type for the elements of the tensor.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE SymmetricTensor<4, dim>
* This issue is also explained in the introduction to step-44.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE SymmetricTensor<4, dim, Number>
* data type for the elements of the tensor.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE SymmetricTensor<4, dim>
* the very least.
*
* @relatesalso SymmetricTensor
- * @author Jean-Paul Pelteret, 2016
*/
template <int dim, typename Number>
constexpr DEAL_II_ALWAYS_INLINE SymmetricTensor<2, dim, Number>
* the very least.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number>
constexpr SymmetricTensor<4, dim, Number>
* of a symmetric tensor ($\mathbf I : \mathbf B = \text{tr} \mathbf B$).
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline SymmetricTensor<4, dim, Number>
* as a symmetric rank-2 tensor. This is the version for general dimensions.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE SymmetricTensor<2, dim, Number>
* with the general Tensor class.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <typename Number, typename OtherNumber>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE void double_contract(
* with the general Tensor class.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <typename Number, typename OtherNumber>
DEAL_II_CONSTEXPR inline void double_contract(
* with the general Tensor class.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <typename Number, typename OtherNumber>
DEAL_II_CONSTEXPR inline void double_contract(
* with the general Tensor class.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <typename Number, typename OtherNumber>
DEAL_II_CONSTEXPR inline void double_contract(
* with the general Tensor class.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <typename Number, typename OtherNumber>
DEAL_II_CONSTEXPR inline void double_contract(
* with the general Tensor class.
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <typename Number, typename OtherNumber>
DEAL_II_CONSTEXPR inline void double_contract(
* (i.e., a vector). The result is a rank-1 tensor (i.e., a vector).
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number, typename OtherNumber>
DEAL_II_CONSTEXPR
* (i.e., a matrix). The result is a rank-1 tensor (i.e., a vector).
*
* @relatesalso SymmetricTensor
- * @author Wolfgang Bangerth, 2005
*/
template <int dim, typename Number, typename OtherNumber>
constexpr Tensor<1, dim, typename ProductType<Number, OtherNumber>::type>
* contraction.
*
* @relatesalso SymmetricTensor
- * @author Matthias Maier, Jean-Paul Pelteret, 2017
*/
template <int rank_1,
int rank_2,
* contraction.
*
* @relatesalso SymmetricTensor
- * @author Matthias Maier, Jean-Paul Pelteret, 2017
*/
template <int rank_1,
int rank_2,
* This type, and the helper functions associated with it, are used as the
* Value concept for the blocked_range type of the Threading Building Blocks.
*
- * @author Wolfgang Bangerth, 2008
*/
template <typename Iterators>
struct SynchronousIterators
* to the elements of tables with <tt>operator[]</tt>, which generates
* temporary objects of the types of this namespace).
*
- * @author Wolfgang Bangerth, 2002
*/
namespace TableBaseAccessors
{
* access to elements of the table class, not for passing them around as
* arguments of functions, etc.
*
- * @author Wolfgang Bangerth, 2002
*/
template <int N, typename T, bool C, unsigned int P>
class Accessor
* The same holds for this specialization as for the general template; see
* there for more information.
*
- * @author Wolfgang Bangerth, 2002
*/
template <int N, typename T, bool C>
class Accessor<N, T, C, 1>
* itself.
*
* @ingroup data
- * @author Wolfgang Bangerth, 2002.
*/
template <int N, typename T>
class TableBase : public Subscriptor
* See there, and in the documentation of the base class for more information.
*
* @ingroup data
- * @author Wolfgang Bangerth, 2002
*/
template <int N, typename T>
class Table : public TableBase<N, T>
* the base class.
*
* @ingroup data
- * @author Wolfgang Bangerth, 2002
*/
template <typename T>
class Table<1, T> : public TableBase<1, T>
* provided.
*
* @ingroup data
- * @author Wolfgang Bangerth, 2002
*/
template <typename T>
class Table<2, T> : public TableBase<2, T>
* the base class.
*
* @ingroup data
- * @author Wolfgang Bangerth, 2002
*/
template <typename T>
class Table<3, T> : public TableBase<3, T>
* the base class.
*
* @ingroup data
- * @author Wolfgang Bangerth, Ralf Hartmann 2002
*/
template <typename T>
class Table<4, T> : public TableBase<4, T>
* the base class.
*
* @ingroup data
- * @author Wolfgang Bangerth, Ralf Hartmann 2002
*/
template <typename T>
class Table<5, T> : public TableBase<5, T>
* the base class.
*
* @ingroup data
- * @author Wolfgang Bangerth, Ralf Hartmann 2002
*/
template <typename T>
class Table<6, T> : public TableBase<6, T>
* the base class.
*
* @ingroup data
- * @author Wolfgang Bangerth, 2002, Ralf Hartmann 2004
*/
template <typename T>
class Table<7, T> : public TableBase<7, T>
* TableBase.
*
* @ingroup data
- * @author Guido Kanschat, 2005
*/
template <typename T>
class TransposeTable : public TableBase<2, T>
* C++ standard library which uses a temporary object. The function simply
* exchanges the data of the two tables.
*
- * @author Martin Kronbichler, 2013
*/
template <int N, typename T>
inline void
* element of that column.
*
* @ingroup textoutput
- * @author Ralf Hartmann, 1999; Wolfgang Bangerth, 2011
*/
class TableHandler
{
* @tparam N The number of indices stored in each object.
*
* @ingroup data
- * @author Wolfgang Bangerth, Matthias Maier, 2002, 2015
*/
template <int N>
class TableIndices
*
* @deprecated Use std::enable_if instead.
*
- * @author Wolfgang Bangerth, 2003
*/
template <typename T>
struct DEAL_II_DEPRECATED constraint_and_return_value<true, T>
* }
* @endcode
*
- * @author Wolfgang Bangerth, 2008
*/
template <typename T>
struct identity
* the types of its two arguments are different, and returns <tt>p1 == p2</tt>
* otherwise.
*
- * @author Wolfgang Bangerth, 2004
*/
struct PointerComparison
{
* stripped) types and that the ProductType class be used to determine the
* result of operating with (potentially) qualified types.
*
- * @author Wolfgang Bangerth, Jean-Paul Pelteret, 2017
*/
template <typename T, typename U>
struct ProductTypeImpl
* used for the result of computing the product of unknowns and the values,
* gradients, or other properties of shape functions.
*
- * @author Wolfgang Bangerth, 2015, 2017
*/
template <typename T, typename U>
struct ProductType
* multiply for different types of arguments, without resulting in ambiguous
* call errors by the compiler.
*
- * @author Wolfgang Bangerth, Matthias Maier, 2015 - 2017
*/
template <typename T>
struct EnableIfScalar;
* as argument.
*
* @ingroup geomprimitives
- * @author Wolfgang Bangerth, 2009, Matthias Maier, 2015
*/
template <int dim, typename Number>
class Tensor<0, dim, Number>
* as argument.
*
* @ingroup geomprimitives
- * @author Wolfgang Bangerth, 1998-2005, Matthias Maier, 2015
*/
template <int rank_, int dim, typename Number>
class Tensor
// compile the library with Apple Clang 8 and older. We should remove
// these overloads again when we bump the minimal required version to
// something later than clang-3.6 / Apple Clang 6.3.
- // - Jean-Paul Pelteret, Matthias Maier, Daniel Arndt 2020
template <int rank, int dim, typename T, typename U>
struct ProductTypeImpl<Tensor<rank, dim, T>, std::complex<U>>
{
* is returned as an unwrapped number type.
*
* @relatesalso Tensor
- * @author Matthias Maier, 2015
*/
template <int rank_1,
int rank_2,
* is returned as an unwrapped number type.
*
* @relatesalso Tensor
- * @author Matthias Maier, 2015
*/
template <int index_1,
int index_2,
* is returned as an unwrapped number type.
*
* @relatesalso Tensor
- * @author Matthias Maier, 2015
*/
template <int index_1,
int index_2,
* @f]
*
* @relatesalso Tensor
- * @author Matthias Maier, 2015
*/
template <int rank, int dim, typename Number, typename OtherNumber>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE
* SymmetricTensor.
*
* @relatesalso Tensor
- * @author Matthias Maier, 2015, Jean-Paul Pelteret 2017
*/
template <template <int, int, typename> class TensorT1,
template <int, int, typename> class TensorT2,
* @f]
*
* @relatesalso Tensor
- * @author Matthias Maier, 2015
*/
template <int rank_1,
int rank_2,
* (e.g. from the <tt>dim==2</tt> case in the switch).
*
* @relatesalso Tensor
- * @author Guido Kanschat, 2001
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE Tensor<1, dim, Number>
* case in the switch).
*
* @relatesalso Tensor
- * @author Guido Kanschat, 2001
*/
template <int dim, typename Number1, typename Number2>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE
* Compute the determinant of a tensor or rank 2.
*
* @relatesalso Tensor
- * @author Wolfgang Bangerth, 2009
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE Number
* diagonal entries.
*
* @relatesalso Tensor
- * @author Wolfgang Bangerth, 2001
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE Number
* than by reference as a parameter.
*
* @relatesalso Tensor
- * @author Wolfgang Bangerth, 2000
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline Tensor<2, dim, Number>
* Return the transpose of the given tensor.
*
* @relatesalso Tensor
- * @author Wolfgang Bangerth, 2002
*/
template <int dim, typename Number>
DEAL_II_CONSTEXPR inline DEAL_II_ALWAYS_INLINE Tensor<2, dim, Number>
* @note This requires that the tensor is invertible.
*
* @relatesalso Tensor
- * @author Jean-Paul Pelteret, 2016
*/
template <int dim, typename Number>
constexpr Tensor<2, dim, Number>
* @note This requires that the tensor is invertible.
*
* @relatesalso Tensor
- * @author Jean-Paul Pelteret, 2016
*/
template <int dim, typename Number>
constexpr Tensor<2, dim, Number>
* (maximum of the sums over columns).
*
* @relatesalso Tensor
- * @author Wolfgang Bangerth, 2012
*/
template <int dim, typename Number>
inline Number
* (maximum of the sums over rows).
*
* @relatesalso Tensor
- * @author Wolfgang Bangerth, 2012
*/
template <int dim, typename Number>
inline Number
*
* @ingroup geomprimitives
*
- * @author Matthias Maier, 2015
*/
namespace TensorAccessors
{
* <code>operator[]()</code> that returns a (const or non-const) reference
* of <code>value_type</code>.
*
- * @author Matthias Maier, 2015
*/
template <int index, int rank, typename T>
constexpr DEAL_II_ALWAYS_INLINE internal::ReorderedIndexView<index, rank, T>
* dealii::TableIndices that stores at least @p rank indices that can be
* accessed via operator[]().
*
- * @author Matthias Maier, 2015
*/
template <int rank, typename T, typename ArrayType>
constexpr DEAL_II_ALWAYS_INLINE typename ReturnType<rank, T>::value_type &
* 2 * no_contr, rank_1, or rank_2, respectively. Obviously, no_contr must
* be less or equal than rank_1 and rank_2.
*
- * @author Matthias Maier, 2015
*/
template <int no_contr,
int rank_1,
* @note The Types @p T2, @p T3, and @p T4 must have rank rank_1, rank_1 +
* rank_2, and rank_3, respectively. @p T1 must be a scalar type.
*
- * @author Matthias Maier, 2015
*/
template <int rank_1,
int rank_2,
* them the size can be determined similarly simply.
*
* @ingroup functions
- * @author Guido Kanschat, 1999
*/
template <int rank, int dim, typename Number = double>
class TensorFunction
* value. Obviously, all derivates of this function are zero.
*
* @ingroup functions
- * @author Matthias Maier, 2013
*/
template <int rank, int dim, typename Number = double>
class ConstantTensorFunction : public TensorFunction<rank, dim, Number>
* derivates of this function are zero.
*
* @ingroup functions
- * @author Matthias Maier, 2013
*/
template <int rank, int dim, typename Number = double>
class ZeroTensorFunction : public ConstantTensorFunction<rank, dim, Number>
*
*
* @ingroup functions
- * @author Konrad Simon, 2019
*/
template <int rank, int dim, typename Number = double>
class TensorFunctionParser : public TensorFunction<rank, dim, Number>
* </ul>
*
* @ingroup Polynomials
- * @author Graham Harper
- * @date 2019
*/
template <int dim>
class TensorPolynomialsBase
* indices i,j,k of the one-dimensional polynomials in x,y and z direction.
* The ordering of the dim-dimensional polynomials can be changed by using the
* set_numbering() function.
- *
- * @author Ralf Hartmann, 2000, 2004, Guido Kanschat, 2000, Wolfgang Bangerth
- * 2003
*/
template <int dim, typename PolynomialType = Polynomials::Polynomial<double>>
class TensorProductPolynomials : public ScalarPolynomialsBase<dim>
* $P^x_1(x)P^y_2(y)$, $P^x_2(x)P^y_2(y)$,
* $P^x_3(x)P^y_2(y)$, etc.
*
- * @author Wolfgang Bangerth 2003
*/
template <int dim>
class AnisotropicPolynomials : public ScalarPolynomialsBase<dim>
* most of its functionality from TensorProductPolynomials. The bubble
* enrichments are added for the last indices. index.
*
- * @author Daniel Arndt, 2015
*/
template <int dim>
class TensorProductPolynomialsBubbles : public ScalarPolynomialsBase<dim>
* works similarly to that class but adds a constant function for the last
* index.
*
- * @author Timo Heister, 2012
*/
template <int dim>
class TensorProductPolynomialsConst : public ScalarPolynomialsBase<dim>
* subsystem are implemented. The members of this namespace are not meant
* for public use.
*
- * @author Wolfgang Bangerth, 2003
*/
namespace internal
{
* the function you are calling on a new thread has no return value, you can
* omit the template argument.
*
- * @author Wolfgang Bangerth, 2003, 2009
* @ingroup threads
* @ingroup threads
*/
* for them all together. The thread objects need to have the same return
* value for the called function.
*
- * @author Wolfgang Bangerth, 2003
* @ingroup threads
*/
template <typename RT = void>
* class. However, `std::shared_future` can not be used for types that can not
* be copied -- a particular restriction for `std::unique_ptr`, for example.
*
- * @author Wolfgang Bangerth, 2009, 2020
* @ingroup threads
*/
template <typename RT = void>
* other words, a Task object should never passed on to another task for
* calling the join() method.
*
- * @author Wolfgang Bangerth, 2003
* @ingroup tasks
*/
template <typename RT = void>
/**
* Namespace containing the time stepping methods.
*
- * @author Bruno Turcksin
- * @date 2014
*/
namespace TimeStepping
/**
* Base class for the Runge-Kutta method
*
- * @author Damien Lebrun-Grandie, Bruno Turcksin
- * @date 2014
*/
template <typename VectorType>
class RungeKutta : public TimeStepping<VectorType>
* exceed the wall times.
*
* @ingroup utilities
- * @author G. Kanschat, W. Bangerth, M. Kronbichler, D. Wells
*/
class Timer
{
* additional insight into the statistical distribution.
*
* @ingroup utilities
- * @author M. Kronbichler, 2009.
*/
class TimerOutput
{
* in various contexts when writing applications.
*
* @ingroup utilities
- * @author Wolfgang Bangerth, 2005
*/
namespace Utilities
{
*
* @return A compressed version of the input string
*
- * @authors Luca Heltai, Nicola Giuliani, 2020
*/
std::string
compress(const std::string &input);
*
* @return The original uncompressed string.
*
- * @authors Luca Heltai, Nicola Giuliani, 2020
*/
std::string
decompress(const std::string &compressed_input);
* binary data.
* @return A string containing the binary input as a base64 string.
*
- * @author Luca Heltai, 2020.
*/
std::string
encode_base64(const std::vector<unsigned char> &binary_input);
* @param base64_input A string that contains the input in base64 format.
* @return A vector of characters that represents your input as binary data.
*
- * @author Luca Heltai, 2020.
*/
std::vector<unsigned char>
decode_base64(const std::string &base64_input);
* Determine how many digits are needed to represent numbers at most as
* large as the given number.
*
- * @author Niklas Fehn, 2019
*/
unsigned int
needed_digits(const unsigned int max_number);
* number and always rounds towards zero, since decimal places are simply
* cut off.
*
- * @author Niklas Fehn, 2019
*/
template <typename Number>
Number
* uses boost::core::demangle to return a human readable string describing
* the type of the variable passed as argument.
*
- * @author Luca Heltai, 2019.
*/
template <class T>
std::string
* recommended for reasons of performance to ensure that its capacity is
* sufficient.
*
- * @author Timo Heister, Wolfgang Bangerth, 2017.
*/
template <typename T>
size_t
* can be compressed. This can be triggered with the parameter
* @p allow_compression, and is only of effect if ZLIB is enabled.
*
- * @author Timo Heister, Wolfgang Bangerth, 2017.
*/
template <typename T>
std::vector<char>
* Consequently, there is a separate unpack() function for arrays, see
* below.
*
- * @author Timo Heister, Wolfgang Bangerth, 2017.
*/
template <typename T>
T
* read from could have been previously compressed with ZLIB, and
* is only of effect if ZLIB is enabled.
*
- * @author Timo Heister, Wolfgang Bangerth, 2017.
*/
template <typename T>
T
* to explicitly specify the template arguments since they can be
* deduced from the second argument.
*
- * @author Timo Heister, Wolfgang Bangerth, 2017.
*/
template <typename T, int N>
void
* read from could have been previously compressed with ZLIB, and
* is only of effect if ZLIB is enabled.
*
- * @author Timo Heister, Wolfgang Bangerth, 2017.
*/
template <typename T, int N>
void
* @endcode
*
* @ingroup data
- * @author Guido Kanschat, 2004
*
* @deprecated Use the more general ArrayView class instead.
*/
* arguments.
*
* @relatesalso VectorSlice
- * @author Guido Kanschat, 2004
*/
template <typename VectorType>
inline const VectorSlice<const VectorType>
* arguments.
*
* @relatesalso VectorSlice
- * @author Guido Kanschat, 2004
*/
template <typename VectorType>
inline const VectorSlice<const VectorType>
/**
* An iterator for VectorizedArray.
*
- * @author Peter Munch, 2019
*/
template <typename T>
class VectorizedArrayIterator
* https://en.wikipedia.org/wiki/Curiously_recurring_template_pattern) in this
* class to avoid having to resort to `virtual` member functions.
*
- * @author Peter Munch, 2019
*/
template <typename T, std::size_t width>
class VectorizedArrayBase
* @tparam width vector length (optional; if not set, the maximal width of the
* architecture is used)
*
- * @author Katharina Kormann, Martin Kronbichler, Peter Munch, 2010, 2011, 2019
*/
template <typename Number, std::size_t width>
class VectorizedArray
* simply work on each item sequentially.
*
* @ingroup threads
- * @author Wolfgang Bangerth, 2007, 2008, 2009, 2013. Bruno Turcksin, 2013.
*/
namespace WorkStream
{
* An alias for boost::geometry::model::segment that uses the deal.II
* Point class.
*
- * @author Luca Heltai, 2018
*/
template <int dim>
using Segment = boost::geometry::model::segment<Point<dim>>;
* @tparam T An arbitrary type resulting from the application of
* the SFINAE idiom to selectively specialize this class.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename ADNumberType, typename ScalarType, typename T = void>
struct TapedDrivers
* @tparam T An arbitrary type resulting from the application of
* the SFINAE idiom to selectively specialize this class.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename ADNumberType, typename ScalarType, typename T = void>
struct TapelessDrivers
* @todo Make this class thread safe for Sacado number and ADOL-C tapeless
* numbers (if supported).
*
- * @author Jean-Paul Pelteret, 2016, 2017, 2018
*/
template <enum AD::NumberTypes ADNumberTypeCode,
typename ScalarType = double>
* function when using ADOL-C number types. It is, however, suitable for use
* in both serial and MPI routines.
*
- * @author Jean-Paul Pelteret, 2016, 2017, 2018
*/
template <enum AD::NumberTypes ADNumberTypeCode,
typename ScalarType = double>
* function when using ADOL-C number types. It is, however, suitable for use
* in both serial and MPI routines.
*
- * @author Jean-Paul Pelteret, 2016, 2017, 2018
*/
template <enum AD::NumberTypes ADNumberTypeCode,
typename ScalarType = double>
* function when using ADOL-C number types. It is, however, suitable for use
* in both serial and MPI routines.
*
- * @author Jean-Paul Pelteret, 2016, 2017, 2018
*/
template <enum AD::NumberTypes ADNumberTypeCode,
typename ScalarType = double>
* function when using ADOL-C number types. It is, however, suitable for use
* in both serial and MPI routines.
*
- * @author Jean-Paul Pelteret, 2016, 2017, 2018
*/
template <int dim,
enum AD::NumberTypes ADNumberTypeCode,
* function when using ADOL-C number types. It is, however, suitable for use
* in both serial and MPI routines.
*
- * @author Jean-Paul Pelteret, 2016, 2017, 2018
*/
template <int dim,
enum AD::NumberTypes ADNumberTypeCode,
* function when using ADOL-C number types. It is, however, suitable for use
* in both serial and MPI routines.
*
- * @author Jean-Paul Pelteret, 2016, 2017, 2018
*/
template <int dim,
enum AD::NumberTypes ADNumberTypeCode,
* @tparam T An arbitrary type resulting from the application of
* the SFINAE idiom to selectively specialize this class.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename ScalarType,
enum NumberTypes ADNumberTypeCode,
* @tparam T An arbitrary type resulting from the application of
* the SFINAE idiom to selectively specialize this class.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename ADNumberType, typename T = void>
struct ADNumberTraits;
*
* @endcode
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename ScalarType,
enum NumberTypes ADNumberTypeCode,
* @tparam T An arbitrary type resulting from the application of
* the SFINAE idiom to selectively specialize this class.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename ADNumberType, typename T = void>
struct Marking;
* @tparam T An arbitrary type resulting from the application of
* the SFINAE idiom to selectively specialize this class.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename ADNumberType, typename T = void>
struct ExtractData;
* @tparam T An arbitrary type resulting from the application of
* the SFINAE idiom to selectively specialize this class.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename ADNumberTrait, typename T = void>
struct HasRequiredADInfo;
* specific to each type of AD number. This requires some specialist
* intervention to get at this data.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename T>
struct NumberType;
* A small struct to remove the @p std::complex wrapper
* around a number.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename Number>
struct RemoveComplexWrapper;
* considered to have the necessary characteristics to fulfill this
* condition.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType>
struct is_ad_number;
* considered to have the necessary characteristics to fulfill this
* condition.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType, typename = void>
struct is_taped_ad_number;
* considered to have the necessary characteristics to fulfill this
* condition.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType, typename = void>
struct is_tapeless_ad_number;
* considered to have the necessary characteristics to fulfill this
* condition.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType, typename = void>
struct is_real_valued_ad_number;
* considered to have the necessary characteristics to fulfill this
* condition.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType, typename = void>
struct is_complex_valued_ad_number;
* is to be used for computations. If a type that is selected for use
* is not available in the library, a run-time error will be thrown.
*
- * @author Jean-Paul Pelteret, 2017, 2019
*/
enum class NumberTypes
{
* ADOL-C number or not. By default, numbers are not considered to
* have the necessary characteristics to fulfill this condition.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType, typename = void>
struct is_adolc_number : std::false_type
* ADOL-C number or not. By default, numbers are not considered to
* have the necessary characteristics to fulfill this condition.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType, typename = void>
struct is_adolc_taped_number : std::false_type
* ADOL-C number or not. By default, numbers are not considered to
* have the necessary characteristics to fulfill this condition.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType, typename = void>
struct is_adolc_tapeless_number : std::false_type
* A struct to help extract certain information associated with
* taped ADOL-C auto-differentiable numbers.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <>
struct ExtractData<adouble>
* A struct to help extract certain information associated with
* tapeless ADOL-C auto-differentiable numbers.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <>
struct ExtractData<adtl::adouble>
*
* @note In this case the number traits are the same as those for a taped double.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename ADNumberType>
struct ADNumberTraits<
* @note In this case the number traits are the same as those for a taped complex
* double.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename ADNumberType>
struct ADNumberTraits<
*
* @note In this case the number traits are the same as those for a tapeless double.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename ADNumberType>
struct ADNumberTraits<
* @note In this case the number traits are the same as those for a tapeless
* complex double.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename ADNumberType>
struct ADNumberTraits<
* Sacado number or not. By default, numbers are not considered to
* have the necessary characteristics to fulfill this condition.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType, typename = void>
struct is_sacado_number : std::false_type
* number or not. By default, numbers are not considered to have the
* necessary characteristics to fulfill this condition.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType, typename = void>
struct is_sacado_dfad_number : std::false_type
* number or not. By default, numbers are not considered to have the
* necessary characteristics to fulfill this condition.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType, typename = void>
struct is_sacado_rad_number : std::false_type
* various number types, and records how many levels of
* differentiation the number is able to support.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename SacadoNumber, typename = void>
struct SacadoNumberInfo;
* Sacado dynamic reverse auto-differentiable numbers. The @p NumberType
* can be either a floating point number or another Sacado type.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType>
struct ExtractData<Sacado::Fad::DFad<NumberType>>
* Sacado dynamic reverse auto-differentiable numbers. The @p NumberType
* can be either a floating point number or another Sacado type.
*
- * @author Jean-Paul Pelteret, 2017
*/
template <typename NumberType>
struct ExtractData<Sacado::Rad::ADvar<NumberType>>
* considered to have the necessary characteristics to fulfill this
* condition.
*
- * @author Jean-Paul Pelteret, 2019
*/
template <typename NumberType>
struct is_sd_number : std::false_type
* considered to have the necessary characteristics to fulfill this
* condition.
*
- * @author Jean-Paul Pelteret, 2019
*/
template <typename NumberType>
struct is_symengine_number : std::false_type
* symbolically differentiable number or not.
* This is a specialization for the SymEngine Expression class.
*
- * @author Jean-Paul Pelteret, 2019
*/
template <>
struct is_symengine_number<SymEngine::Expression> : std::true_type
* symbolically differentiable number or not.
* This is a specialization for the SymEngine Expression class.
*
- * @author Jean-Paul Pelteret, 2019
*/
template <>
struct is_sd_number<SymEngine::Expression> : std::true_type
* // of course, the numeric value 20.
* @endcode
*
- * @author Jean-Paul Pelteret, 2019
*/
class Expression
{
* symbolically differentiable number or not.
* This is a specialization for the deal.II Expression class.
*
- * @author Jean-Paul Pelteret, 2019
*/
template <>
struct is_symengine_number<Expression> : std::true_type
* SymEngine number or not.
* This is a specialization for the deal.II Expression class.
*
- * @author Jean-Paul Pelteret, 2019
*/
template <>
struct is_sd_number<Expression> : std::true_type
* It is intended that this class only be used in conjunction
* with the DictionarySubstitutionVisitor.
*
- * @author Jean-Paul Pelteret, Isuru Fernando, 2017, 2020
*/
template <typename ReturnType, typename ExpressionType>
class CSEDictionaryVisitor
* CSE into a dictionary substitution scheme. It is therefore only
* intended to be created and used by a BatchOptimizer.
*
- * @author Jean-Paul Pelteret, Isuru Fernando, 2017, 2020
*/
template <typename ReturnType, typename ExpressionType>
class DictionarySubstitutionVisitor
* incompatible combination of @p ReturnType and optimization method are
* selected, then an error will be thrown at run time.
*
- * @author Jean-Paul Pelteret, Isuru Fernando, 2017, 2020
*/
template <typename ReturnType>
class BatchOptimizer
* these as specializations of the ProductTypeImpl class
* itself.
*
- * @author Jean-Paul Pelteret, 2019
*/
template <typename T, typename U, typename V = void>
struct GeneralProductTypeImpl;
* matching code snippets for both transfer and serialization.
*
* @ingroup distributed
- * @author Marc Fehling, 2018 - 2020
*/
template <int dim, int spacedim = dim, typename VectorType = Vector<double>>
class CellDataTransfer
* weighting function on the old Triangulation and connect it to the new one.
*
* @ingroup distributed
- * @author Marc Fehling, 2018, 2019
*/
template <int dim, int spacedim = dim>
class CellWeights
* parallel::distributed::CellDataTransfer class.
*
* @ingroup distributed
- * @author Marc Fehling, 2019 - 2020
*/
template <int dim, int spacedim = dim>
class ErrorPredictor
* and rotation matrices - see also the documentation of
* GridTools::collect_periodic_faces()) are supported.
*
- * @author Peter Munch, 2019
*/
template <int dim, int spacedim = dim>
class Triangulation
* meshes, i.e., objects of type parallel::distributed::Triangulation.
*
* @ingroup grid
- * @author Wolfgang Bangerth, 2009
*/
namespace GridRefinement
{
* hp::DoFHandler classes know how to enumerate degrees of freedom in ways
* appropriate for the partitioned mesh.
*
- * @author Denis Davydov, 2015
* @ingroup distributed
*
*/
* dealii::SolutionTransfer. See there for an extended discussion.
*
* @ingroup distributed
- * @author Timo Heister, 2009-2011
*/
template <int dim,
typename VectorType,
* triangulation is actually refined.
*
*
- * @author Wolfgang Bangerth, Timo Heister 2008, 2009, 2010, 2011
* @ingroup distributed
*/
template <int dim, int spacedim = dim>
* hp::DoFHandler.
*
* @ingroup dofs
- * @author Guido Kanschat, 2009
*/
class BlockInfo : public Subscriptor
{
* standard in place when this programming pattern was conceived.)
*
* @ingroup functions
- * @author Wolfgang Bangerth, Ralf Hartmann, 2001
*/
template <int dim, typename Number = double>
struct DEAL_II_DEPRECATED FunctionMap
*
* @ingroup dofs
* @ingroup Accessors
- * @author Wolfgang Bangerth, 1999
*/
template <int structdim, int dim, int spacedim>
struct Inheritance
*
* @ingroup dofs
* @ingroup Accessors
- * @author Wolfgang Bangerth, 1998, 2006, 2008, Timo Heister, Guido Kanschat,
- * 2012, 2013
*/
template <int structdim, typename DoFHandlerType, bool level_dof_access>
class DoFAccessor
* general faces, this class does a few things differently than the general
* template, but the interface should look the same.
*
- * @author Wolfgang Bangerth, 2010
*/
template <template <int, int> class DoFHandlerType,
int spacedim,
* correctness, none of the functions do anything but generate errors.
*
* @ingroup Accessors
- * @author Wolfgang Bangerth, 2017
*/
template <int structdim, int dim, int spacedim = dim>
class DoFInvalidAccessor : public InvalidAccessor<structdim, dim, spacedim>
*
* @ingroup dofs
* @ingroup Accessors
- * @author Wolfgang Bangerth, 1998, Timo Heister, Guido Kanschat, 2012
*/
template <typename DoFHandlerType, bool level_dof_access>
class DoFCellAccessor : public DoFAccessor<DoFHandlerType::dimension,
* encapsulated to the present hierarchy of classes as well as the
* dealii::DoFHandler class.
*
- * @author Tobias Leicht, 2006
*/
template <int dim>
class DoFFaces
* Store the indices of degrees of freedom on faces in 1D. As these would
* be vertices, which are treated separately, don't do anything.
*
- * @author Tobias Leicht, 2006
*/
template <>
class DoFFaces<1>
* Store the indices of degrees of freedom on faces in 2D, which are
* lines.
*
- * @author Tobias Leicht, 2006
*/
template <>
class DoFFaces<2>
* Store the indices of degrees of freedom on faces in 3D, which are
* quads, additionally also on lines.
*
- * @author Tobias Leicht, 2006
*/
template <>
class DoFFaces<3>
* serialization archive.
*
* @ingroup dofs
- * @author Wolfgang Bangerth, Markus Buerg, Timo Heister, Guido Kanschat,
- * @date 1998, 1999, 2000, 2012
*/
template <int dim, int spacedim = dim>
class DoFHandler : public Subscriptor
* treatment of templates is a little more complicated. See the
* @ref Iterators
* module for more information.
- *
- * @author Wolfgang Bangerth, Oliver Kayser-Herold, Guido Kanschat, 1998,
- * 2003, 2008, 2010
*/
template <template <int, int> class DoFHandlerType, int spacedim, bool lda>
struct Iterators<DoFHandlerType<1, spacedim>, lda>
* treatment of templates is a little more complicated. See the
* @ref Iterators
* module for more information.
- *
- * @author Wolfgang Bangerth, Oliver Kayser-Herold, Guido Kanschat, 1998,
- * 2003, 2008, 2010
*/
template <template <int, int> class DoFHandlerType, int spacedim, bool lda>
struct Iterators<DoFHandlerType<2, spacedim>, lda>
* treatment of templates is a little more complicated. See the
* @ref Iterators
* module for more information.
- *
- * @author Wolfgang Bangerth, Oliver Kayser-Herold, Guido Kanschat, 1998,
- * 2003, 2008, 2010
*/
template <template <int, int> class DoFHandlerType, int spacedim, bool lda>
struct Iterators<DoFHandlerType<3, spacedim>, lda>
* encapsulated to the present hierarchy of classes as well as the
* dealii::DoFHandler class.
*
- * @author Wolfgang Bangerth, 1998, 2006, Guido Kanschat, 2012
*/
template <int dim>
class DoFLevel
* classes are included in the DoFLevel and DoFFaces classes.
*
* @ingroup dofs
- * @author Tobias Leicht, 2006
*/
template <int dim>
class DoFObjects
* information on this.
*
* @ingroup dofs
- * @author Wolfgang Bangerth, Guido Kanschat, 1998, 1999, 2000, 2004, 2007,
- * 2008
*/
namespace DoFRenumbering
{
*
*
* @ingroup dofs
- * @author Wolfgang Bangerth, Guido Kanschat and others
*/
namespace DoFTools
{
* Detailed information can be found in the see
* @ref GlossPeriodicConstraints "Glossary entry on periodic boundary conditions".
*
- * @author Matthias Maier, Daniel Garcia-Sanchez 2012 - 2019
*/
template <typename FaceIterator, typename number>
void
* @ref GlossPeriodicConstraints "Glossary entry on periodic boundary conditions"
* and step-45 for further information.
*
- * @author Daniel Arndt, Matthias Maier, 2013 - 2015
*/
template <typename DoFHandlerType, typename number>
void
* @ref GlossPeriodicConstraints "Glossary entry on periodic boundary conditions"
* for further information.
*
- * @author Matthias Maier, 2012
*/
template <typename DoFHandlerType, typename number>
void
* also corresponds to the default value), then the union of the returned
* index sets equlas what DoFHandler::locally_owned_dofs() returns.
*
- * @authors Bruno Blais, Luca Heltai, 2019
*/
template <typename DoFHandlerType>
std::vector<IndexSet>
* locally, and consequently can not say anything definitive about the
* degrees of freedom active on other processors' locally owned cells.
*
- * @author Denis Davydov, 2015
*/
template <typename DoFHandlerType>
std::vector<IndexSet>
* locally, and consequently can not say anything definitive about the
* degrees of freedom active on other processors' locally owned cells.
*
- * @author Jean-Paul Pelteret, 2015
*/
template <typename DoFHandlerType>
std::vector<IndexSet>
* degrees of freedom on these. In other words, this function can only work
* if all cells in the patch are either locally owned or ghost cells.
*
- * @author Arezou Ghesmati, Wolfgang Bangerth, 2014
*/
template <typename DoFHandlerType>
std::vector<types::global_dof_index>
* degrees of freedom on these. In other words, this function can only work
* if all cells in the patch are either locally owned or ghost cells.
*
- * @author Arezou Ghesmati, Wolfgang Bangerth, 2014
*/
template <typename DoFHandlerType>
unsigned int
* would result in a mask <code>[true, false]</code> in both 2d and 3d.
*
* @ingroup fe
- * @author Wolfgang Bangerth
- * @date 2012
* @ingroup vector_valued
*/
class BlockMask
* in 3d, the result would be <code>[true, true, true, false]</code>.
*
* @ingroup fe
- * @author Wolfgang Bangerth
- * @date 2012
* @ingroup vector_valued
*/
class ComponentMask
* discussion above for details of this numbering.
*
* @ingroup febase fe
- *
- * @author Wolfgang Bangerth, Guido Kanschat, Ralf Hartmann, 1998, 2000, 2001,
- * 2005, 2015
*/
template <int dim, int spacedim = dim>
class FiniteElement : public Subscriptor, public FiniteElementData<dim>
* beginning, needs to derive its own InternalData class from this class,
* and return an object of the derived type through its get_data() function.
*
- * @author Guido Kanschat, 2001; Wolfgang Bangerth, 2015.
*/
class InternalDataBase
{
* RT<sub>0</sub>). See the
* @ref GlossGeneralizedSupport "glossary entry on generalized support points"
* for more information.
- *
- *
- * @author Oliver Kayser-Herold, 2006, based on previous work by Guido
- * Kanschat and Wolfgang Bangerth
*/
template <int dim>
class FE_ABF : public FE_PolyTensor<dim>
* more information.
*
* @ingroup febase
- * @author Wolfgang Bangerth, Guido Kanschat, 1998, 1999, 2000, 2001, 2003,
- * 2005
*/
template <int dim>
class FiniteElementData
* details.
*
*
- * @author Marco Tezzele, Luca Heltai
- * @date 2013, 2015
*/
template <int dim, int spacedim = dim>
* must coincide.
*
* @ingroup febase
- * @author Guido Kanschat
- * @date 2010
*/
template <class PolynomialType, int dim, int spacedim = dim>
class FE_DGVector : public FE_PolyTensor<dim, spacedim>
*
* The related class FE_DGRT is used in step-61.
* @ingroup fe
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim, int spacedim = dim>
class FE_DGNedelec : public FE_DGVector<PolynomialsNedelec<dim>, dim, spacedim>
* The class is used in step-61.
*
* @ingroup fe
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim, int spacedim = dim>
class FE_DGRaviartThomas
* The related class FE_DGRT is used in step-61.
*
* @ingroup fe
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim, int spacedim = dim>
class FE_DGBDM : public FE_DGVector<PolynomialsBDM<dim>, dim, spacedim>
*
* <td align="center"></td> </tr> </table>
*
- * @author Guido Kanschat, 2001, 2002, Ralf Hartmann 2004
*/
template <int dim, int spacedim = dim>
class FE_DGP : public FE_Poly<dim, spacedim>
*
* <td align="center"></td> </tr> </table>
*
- * @author Ralf Hartmann, 2004
*/
template <int dim>
class FE_DGPMonomial : public FE_Poly<dim>
* FiniteElement::InternalDataBase without adding anything in a derived class
* in this class.
*
- * @author Guido Kanschat, 2002
*/
template <int dim, int spacedim = dim>
class FE_DGPNonparametric : public FiniteElement<dim, spacedim>
* interval. The interior points are shifted towards the end points, which
* gives a denser point distribution close to the element boundary.
*
- * @author Ralf Hartmann, Guido Kanschat 2001, 2004
*/
template <int dim, int spacedim = dim>
class FE_DGQ : public FE_Poly<dim, spacedim>
*
* See the base class documentation in FE_DGQ for details.
*
- * @author F. Prill 2006
*/
template <int dim, int spacedim = dim>
class FE_DGQArbitraryNodes : public FE_DGQ<dim, spacedim>
*
* See the base class documentation in FE_DGQ for details.
*
- * @author Martin Kronbichler, 2017
*/
template <int dim, int spacedim = dim>
class FE_DGQLegendre : public FE_DGQ<dim, spacedim>
*
* See the base class documentation in FE_DGQ for details.
*
- * @author Martin Kronbichler, 2017, 2018
*/
template <int dim, int spacedim = dim>
class FE_DGQHermite : public FE_DGQ<dim, spacedim>
*
* @ingroup fe
*
- * @author Denis Davydov, 2016.
*/
template <int dim, int spacedim = dim>
class FE_Enriched : public FiniteElement<dim, spacedim>
* fe_collection(FE_helper.build_fe_collection(dof_handler));
* @endcode
*
- * @authors Nivesh Dommaraju, Denis Davydov, 2018
*/
template <int dim, int spacedim = dim>
struct Helper
* that correspond to FE_FaceQ will have the invalid values mentioned above.
*
* @ingroup fe
- * @author Guido Kanschat, Martin Kronbichler
- * @date 2009, 2011, 2013
*/
template <int dim, int spacedim = dim>
class FE_FaceQ
* 1D (even though there is no computational benefit at all from it in 1D).
*
* @ingroup fe
- * @author Guido Kanschat, Martin Kronbichler
- * @date 2014
*/
template <int spacedim>
class FE_FaceQ<1, spacedim> : public FiniteElement<1, spacedim>
* that correspond to FE_FaceP will have the invalid values mentioned above.
*
* @ingroup fe
- * @author Martin Kronbichler
- * @date 2013
*/
template <int dim, int spacedim = dim>
class FE_FaceP : public FE_PolyFace<PolynomialSpace<dim - 1>, dim, spacedim>
* to be a low level replacement for MeshWorker and LocalIntegrators and a
* higher level abstraction compared to assembling face terms manually.
*
- * @author Timo Heister, 2019.
*/
template <int dim, int spacedim = dim>
class FEInterfaceValues
* QGauss<sub>k+2</sub> on each face and in the interior of the cell (or none
* for N<sub>1</sub>).
*
- * @author Markus Bürg
- * @date 2009, 2010, 2011
*/
template <int dim>
class FE_Nedelec : public FE_PolyTensor<dim>
* eddy current problems</b>, Computers & Structures 181, 41-54, 2017 (see
* https://doi.org/10.1016/j.compstruc.2016.05.021).
*
- * @author Ross Kynch
- * @date 2016, 2017, 2018
*/
template <int dim, int spacedim = dim>
class FE_NedelecSZ : public FiniteElement<dim, dim>
* The distinction lies in the mixed nature of the child faces, a case we have
* not implemented as of yet.
*
- * @author Joshua White, Wolfgang Bangerth
*/
template <int dim, int spacedim = dim>
class FE_Nothing : public FiniteElement<dim, spacedim>
* is accessible at https://doi.org/10.1137/S0036142902404923 ,
* see @cite park2003p .
*
- * @author Jaeryun Yim, 2015, 2016.
*/
class FE_P1NC : public FiniteElement<2, 2>
{
* @todo Since nearly all functions for spacedim != dim are specialized, this
* class needs cleaning up.
*
- * @author Ralf Hartmann 2004, Guido Kanschat, 2009
*/
template <int dim, int spacedim = dim>
* which cannot be implemented by this class but are left for implementation
* in derived classes.
*
- * @author Guido Kanschat, 2009
*/
template <class PolynomialType,
int dim = PolynomialType::dimension + 1,
*
* @see TensorPolynomialsBase
* @ingroup febase
- * @author Guido Kanschat
- * @date 2005
*/
template <int dim, int spacedim = dim>
class FE_PolyTensor : public FiniteElement<dim, spacedim>
* shape function 24 </td>
*
* <td align="center"> </td> </tr> </table>
- *
- *
- *
- * @author Wolfgang Bangerth, 1998, 2003; Guido Kanschat, 2001; Ralf Hartmann,
- * 2001, 2004, 2005; Oliver Kayser-Herold, 2004; Katharina Kormann, 2008;
- * Martin Kronbichler, 2008
*/
template <int dim, int spacedim = dim>
class FE_Q : public FE_Q_Base<TensorProductPolynomials<dim>, dim, spacedim>
* FE_Q_Bubbles. There is no public constructor for this class as it is not
* functional as a stand-alone. The completion of definitions is left to the
* derived classes.
- *
- * @author Wolfgang Bangerth, 1998, 2003; Guido Kanschat, 2001; Ralf Hartmann,
- * 2001, 2004, 2005; Oliver Kayser-Herold, 2004; Katharina Kormann, 2008;
- * Martin Kronbichler, 2008, 2013
*/
template <class PolynomialType,
int dim = PolynomialType::dimension,
*
*
*
- * @author Brian Carnes, 2002, Ralf Hartmann 2004, 2005, Denis Davydov, 2015
*/
template <int dim>
class FE_Q_Hierarchical : public FE_Poly<dim>
* assumes coupling between all degrees of freedom within the element, whereas
* FE_Q_iso_Q1 with more than one subdivision does have less coupling.
*
- * @author Martin Kronbichler, 2013
*/
template <int dim, int spacedim = dim>
class FE_Q_iso_Q1
* constructor.
*
* @ingroup fe
- * @author Patrick Esser
- * @date 2015
*/
template <int dim>
class FE_RannacherTurek : public FE_Poly<dim>
* RT<sub>0</sub>).
*
*
- * @author Guido Kanschat, 2005, based on previous work by Wolfgang Bangerth.
*/
template <int dim>
class FE_RaviartThomas : public FE_PolyTensor<dim>
* FiniteElementData<dim>::degree is higher by one than the constructor
* argument!
*
- * @author Guido Kanschat, 2005, Zhu Liang, 2008
*/
template <int dim>
class FE_RaviartThomasNodal : public FE_PolyTensor<dim>
*
* @todo Implement restriction matrices
*
- * @author Eldar Khattatov, 2018
*/
template <int dim>
class FE_RT_Bubbles : public FE_PolyTensor<dim>
* to estimate local smoothness of the underlying FiniteElement field to decide
* on h- or p-adaptive refinement strategy.
*
- * @author Denis Davydov, 2016;
*/
namespace FESeries
{
* we only need to compute $ c_{\bf k} $ for positive indices
* $ \bf k $ .
*
- * @author Denis Davydov, 2016.
*/
template <int dim, int spacedim = dim>
class Fourier : public Subscriptor
* $ dim $-dimensional Legendre polynomials constructed from
* $ \widetilde P_m(x) $ using tensor product rule.
*
- * @author Denis Davydov, 2016.
*/
template <int dim, int spacedim = dim>
class Legendre : public Subscriptor
*
* @ingroup febase fe vector_valued
*
- * @author Wolfgang Bangerth, Guido Kanschat, 1999, 2002, 2003, 2006, Ralf
* Hartmann 2001.
*/
template <int dim, int spacedim = dim>
*
* For more information about the <tt>spacedim</tt> template parameter check
* the documentation of FiniteElement or the one of Triangulation.
- *
- * @author Wolfgang Bangerth, Ralf Hartmann, Guido Kanschat; 2000, 2003, 2004,
- * 2005, 2006
*/
namespace FETools
{
* This class is used in the FETools::get_fe_by_name() and
* FETools::add_fe_name() functions.
*
- * @author Guido Kanschat, 2006
*/
template <int dim, int spacedim = dim>
class FEFactoryBase : public Subscriptor
* element class wishes to interpret this number) given as argument to
* get().
*
- * @author Guido Kanschat, 2006
*/
template <class FE>
class FEFactory : public FEFactoryBase<FE::dimension, FE::space_dimension>
*
* @ingroup feaccess vector_valued
*
- * @author Andrew McBride, 2009
*/
template <int dim, int spacedim>
class SymmetricTensor<2, dim, spacedim>
*
* @ingroup feaccess vector_valued
*
- * @author Denis Davydov, 2013, 2018
*/
template <int dim, int spacedim>
class Tensor<2, dim, spacedim>
* A class whose specialization is used to define what FEValuesViews
* object corresponds to the given FEValuesExtractors object.
*
- * @author Luca Heltai, 2019.
*/
template <int dim, int spacedim, typename Extractor>
struct ViewType
* A templated alias that associates to a given Extractor class
* the corresponding view in FEValuesViews.
*
- * @author Luca Heltai, 2019.
*/
template <int dim, int spacedim, typename Extractor>
using View = typename dealii::internal::FEValuesViews::
*
*
* @ingroup feaccess
- * @author Wolfgang Bangerth, 1998, 2003, Guido Kanschat, 2001
*/
template <int dim, int spacedim>
class FEValuesBase : public Subscriptor
* <a href="https://www.artima.com/cppsource/type_erasure.html">type
* erasure</a> design pattern.
*
- * @author Wolfgang Bangerth, 2003
*/
class CellIteratorBase;
* see this class.
*
* @ingroup feaccess
- * @author Wolfgang Bangerth, 1998, Guido Kanschat, 2001
*/
template <int dim, int spacedim = dim>
class FEValues : public FEValuesBase<dim, spacedim>
* See FEValuesBase
*
* @ingroup feaccess
- * @author Wolfgang Bangerth, 1998, Guido Kanschat, 2000, 2001
*/
template <int dim, int spacedim = dim>
class FEFaceValuesBase : public FEValuesBase<dim, spacedim>
* either of the neighboring cells.
*
* @ingroup feaccess
- * @author Wolfgang Bangerth, 1998, Guido Kanschat, 2000, 2001
*/
template <int dim, int spacedim = dim>
class FEFaceValues : public FEFaceValuesBase<dim, spacedim>
* number corresponds to the number of the child of the neighboring face.
*
* @ingroup feaccess
- * @author Wolfgang Bangerth, 1998, Guido Kanschat, 2000, 2001
*/
template <int dim, int spacedim = dim>
class FESubfaceValues : public FEFaceValuesBase<dim, spacedim>
*
* @ingroup feaccess vector_valued
*
- * @author Andrew McBride, 2009
*/
template <int rank>
struct SymmetricTensor
*
* @ingroup feaccess vector_valued
*
- * @author Denis Davydov, 2013
*/
template <int rank>
struct Tensor
* by Ronald H. W. Hoppe, University of Houston, Chapter 7.
*
* @ingroup mapping
- * @author Guido Kanschat, Ralf Hartmann 2000, 2001
*/
template <int dim, int spacedim = dim>
class Mapping : public Subscriptor
* transform_unit_to_real_cell() applied to the center of the reference cell
* to computing the vertex averages.
*
- * @author Luca Heltai, 2019.
*/
virtual Point<spacedim>
get_center(const typename Triangulation<dim, spacedim>::cell_iterator &cell,
*
* @param[in] cell The cell for which you want to compute the bounding box
*
- * @author Luca Heltai, 2019.
*/
virtual BoundingBox<spacedim>
get_bounding_box(
* class chooses them such that the discretized boundary is globally
* continuously differentiable.
*
- * @author Wolfgang Bangerth, 2001, 2015
*/
template <int dim, int spacedim = dim>
class MappingC1 : public MappingQ<dim, spacedim>
* error checking. If you apply this mapping to a cell that does not conform
* to the requirements above, you will get strange results.
*
- * @author Guido Kanschat, 2001; Ralf Hartmann, 2005
*/
template <int dim, int spacedim = dim>
class MappingCartesian : public Mapping<dim, spacedim>
* MappingFEField<dim,spacedim> map(dhq, eulerq, mask);
* @endcode
*
- * @author Luca Heltai, Marco Tezzele 2013, 2015
*/
template <int dim,
int spacedim = dim,
* class with a geometry described by a SphericalManifold: see the note in
* that class for more information.
*
- * @author Luca Heltai, Wolfgang Bangerth, Alberto Sartori 2016
*/
template <int dim, int spacedim = dim>
class MappingManifold : public Mapping<dim, spacedim>
* For the behavior of the mapping and convergence rates in case of mixing
* different manifolds, please consult the respective section of
* MappingQGeneric.
- *
- * @author Ralf Hartmann, 2000, 2001, 2005; Guido Kanschat 2000, 2001,
- * Wolfgang Bangerth, 2015
*/
template <int dim, int spacedim = dim>
class MappingQ : public Mapping<dim, spacedim>
*
* @note This class is, in all reality, nothing more than a different name for
* calling MappingQGeneric with a polynomial degree of one as argument.
- *
- * @author Guido Kanschat, 2000, 2001; Ralf Hartmann, 2000, 2001, 2005,
- * Wolfgang Bangerth, 2015
*/
template <int dim, int spacedim = dim>
class MappingQ1 : public MappingQGeneric<dim, spacedim>
* For more information about the <tt>spacedim</tt> template parameter check
* the documentation of FiniteElement or the one of Triangulation.
*
- * @author Michael Stadler, 2001
*/
template <int dim, typename VectorType = Vector<double>, int spacedim = dim>
class MappingQ1Eulerian : public MappingQGeneric<dim, spacedim>
*
* The use of this class is discussed extensively in step-65.
*
- * @author Martin Kronbichler, 2019
*/
template <int dim, int spacedim = dim>
class MappingQCache : public MappingQGeneric<dim, spacedim>
* parallel codes using the PETSc or Trilinos wrapper classes, the type
* of the vector can be specified as template parameter <tt>VectorType</tt>.
*
- * @author Joshua White, 2008
*/
template <int dim, typename VectorType = Vector<double>, int spacedim = dim>
class MappingQEulerian : public MappingQ<dim, spacedim>
* domains is spread over a larger range as the mesh is refined. This is
* provided by the special manifold TransfiniteInterpolationManifold.
*
- * @author Wolfgang Bangerth, 2015, Martin Kronbichler, 2017
*/
template <int dim, int spacedim = dim>
class MappingQGeneric : public Mapping<dim, spacedim>
/**
* A collection of %Gmsh related utilities and classes.
*
- * @author Luca Heltai, Dirk Peschka, 2018
*/
namespace Gmsh
{
/**
* A parameter class used to pass options to the %Gmsh executable.
*
- * @author Luca Heltai, 2018
*/
class AdditionalParameters
{
*
* The input curve @p boundary should be closed.
*
- * @authors Luca Heltai, Dirk Peschka, 2018
*/
template <int spacedim>
void
* @tparam dim2 The dimension of the second ChartManifold
*
* @ingroup manifold
- * @author Luca Heltai, Timo Heister, 2016
*/
template <int dim,
int spacedim = dim,
* the general description of the FilteredIterator class.
*
* @ingroup Iterators
- * @author Wolfgang Bangerth, 2002
*/
namespace IteratorFilters
{
* pointed to is equal to a value or set of values given to the constructor,
* assuming that the iterator allows querying for a material id.
*
- * @author Jean-Paul Pelteret, Denis Davydov, 2015
*
* @ingroup Iterators
*/
* pointed to is equal to a value or set of values given to the constructor,
* assuming that the iterator allows querying for an active FE index.
*
- * @author Jean-Paul Pelteret, Denis Davydov, 2015
*
* @ingroup Iterators
*/
* Filter for iterators that evaluates to true if the iterator of the object
* pointed to is on the boundary.
*
- * @author Bruno Turcksin, 2016
*
* @ingroup Iterators
*/
*
* @ingroup grid
* @ingroup Iterators
- * @author Wolfgang Bangerth, 2002
*/
template <typename BaseIterator>
class FilteredIterator : public BaseIterator
* explicitly specify the type of the base iterator by hand -- it is deduced
* automatically here.
*
- * @author Wolfgang Bangerth
* @relatesalso FilteredIterator
*/
template <typename BaseIterator, typename Predicate>
* }
* @endcode
*
- * @author Bruno Turcksin, 2016
* @relatesalso FilteredIterator
* @ingroup CPP11
*/
* }
* @endcode
*
- * @author Bruno Turcksin, 2016
* @relatesalso FilteredIterator
* @ingroup CPP11
*/
* @note Implemented for <tt>Triangulation@<2,2@></tt>,
* <tt>Triangulation@<3,3@></tt>.
*
- * @author Guido Kanschat
*/
template <int dim>
void
* calling this function.
*
* @param holes Positive number of holes in each of the dim directions.
- * @author Guido Kanschat
*/
template <int dim, int spacedim>
void
* @p tria is the triangulation to be created. It needs to be empty upon
* calling this function.
*
- * @author Denis Davydov, 2018
*/
template <int dim>
void
* @param vertices The 2^dim vertices of the cell
* @param colorize If true, set different boundary ids.
*
- * @author Bruno Turcksin
*/
template <int dim, int spacedim>
void
* @pre The triangulation passed as argument needs to be empty when calling
* this function.
*
- * @author Markus Bürg, 2009
*/
template <int dim>
void
* @image html hyper_cross_2d.png
* @image html hyper_cross_3d.png
*
- * @author Guido Kanschat
*/
template <int dim, int spacedim>
void
* @note This function is declared to exist for triangulations of all space
* dimensions, but throws an error if called in 1D.
*
- * @author Mae Markowski, 2019
*/
template <int dim, int spacedim>
void
* @param grid_generator_function_arguments The arguments of the function, in
* the format of a tuple-convertible string
*
- * @author Luca Heltai, 2019.
*/
template <int dim, int spacedim>
void
* manifold objects are copied (nor are any manifold ids set) by this
* function.
*
- * @author Weixiong Zheng, 2018
*/
void
extrude_triangulation(
* manifold objects are copied by this function: you must attach new
* manifold objects to @p out_tria.
*
- * @author Luca Heltai, 2014
*/
template <int dim, int spacedim1, int spacedim2>
void
*
* @ingroup grid
* @ingroup input
- * @author Wolfgang Bangerth, 1998, 2000, Luca Heltai, 2004, 2007, Jean-Paul
* Pelteret 2015, Timo Heister 2015, Krzysztof Bzowski, 2015
*/
* The companion GridOut::write_vtk function can be used to write VTK files
* compatible with this method.
*
- * @author Mayank Sabharwal, Andreas Putz, 2013
- * @author Luca Heltai, 2018
*/
void
read_vtk(std::istream &in);
* triangulation in a xml section which is ignored by vtu general vtu readers.
* If this section is absent, an exception is thrown.
*
- * @author Luca Heltai, Nicola Giuliani, 2020
*/
void
read_vtu(std::istream &in);
*
* @ingroup grid
* @ingroup output
- * @author Wolfgang Bangerth, Guido Kanschat, Luca Heltai, Stefan Nauber,
- * Christian Wülker
- * @date 1999 - 2013
*/
class GridOut
{
* The companion GridIn::read_vtk function can be used to read VTK files
* generated with this method.
*
- * @author Luca Heltai, 2018
*/
template <int dim, int spacedim>
void
* Nochetto, Rannacher, Stevenson, and others.
*
* @ingroup grid
- * @author Wolfgang Bangerth, Thomas Richter, Guido Kanschat 1998, 2000, 2009
*/
namespace GridRefinement
{
* Triangulation::create_triangulation() function.
*
* @ingroup grid
- * @author Wolfgang Bangerth, 2000, 2016, Michael Anderson 2003
*/
template <int dim, int spacedim = dim>
class GridReordering
* are locally owned and placed at index CellAccessor::active_cell_index(),
* respectively. All other values are set to 0.
*
- * @author Niklas Fehn, Martin Kronbichler, 2019
*/
template <int dim>
Vector<double>
* this is a collective call and the return value is the maximum over all
* processors.
*
- * @author Niklas Fehn, Martin Kronbichler, 2019
*/
template <int dim>
double
* object has high curvature. If your manifold supports it then the
* specialized function Manifold::project_to_manifold() may perform better.
*
- * @author Luca Heltai, David Wells, 2017.
*/
template <typename Iterator>
Point<Iterator::AccessorType::space_dimension>
* @note In the case of parallel codes, this function should be combined
* with GridGenerator::flatten_triangulation.
*
- * @author Mauro Bardelloni, Luca Heltai, Andrea Mola, 2016
*/
template <int dim, int spacedim>
void
* with GridGenerator::flatten_triangulation and
* GridTools::remove_hanging_nodes.
*
- * @author Mauro Bardelloni, Luca Heltai, Andrea Mola, 2016
*/
template <int dim, int spacedim>
void
* @param[in] limit_angle_fraction Maximum ratio of angle or solid
* angle that is allowed for a corner element in the mesh.
*
- * @author Luca Heltai, Martin Kronbichler, 2017
*/
template <int dim, int spacedim>
void
* a cached rtree or builds and stores one. Building an rtree might hinder
* the performance if the function is called only once on few points.
*
- * @author Giovanni Alzetta, 2017
*/
template <int dim, int spacedim>
# ifndef DOXYGEN
* The type is abbreviated in the online documentation to improve readability
* of this page.
*
- * @author Giovanni Alzetta, 2017-2018
*/
template <int dim, int spacedim>
# ifndef DOXYGEN
* @param container The container to extract vertices from.
* @param mapping The mapping to use to compute the points locations.
*
- * @author Luca Heltai, 2017.
*/
template <int dim, int spacedim>
std::map<unsigned int, Point<spacedim>>
* @param p The target point.
* @return The index of the vertex that is closest to the target point `p`.
*
- * @author Luca Heltai, 2017.
*/
template <int spacedim>
unsigned int
* @return The index of the closest vertex found.
*
*
- * @author Ralf B. Schulz, 2006
*/
template <int dim, template <int, int> class MeshType, int spacedim>
unsigned int
* (as opposed to the value returned by Triangulation::n_used_vertices()).
* @return The index of the closest vertex found.
*
- * @author Luca Heltai, 2017
*/
template <int dim, template <int, int> class MeshType, int spacedim>
unsigned int
* vertices of the Triangulation. All of these structures can be queried
* from a GridTools::Cache object.
*
- * @author Luca Heltai, Rene Gassmoeller, 2017
*/
template <int dim, template <int, int> class MeshType, int spacedim>
# ifndef _MSC_VER
* A version of the previous function that exploits an already existing
* GridTools::Cache<dim,spacedim> object.
*
- * @author Luca Heltai, 2017
*/
template <int dim, int spacedim>
std::pair<typename Triangulation<dim, spacedim>::active_cell_iterator,
* cells might hold independent values of the solution that get combined in
* some way in a user code.
*
- * @author Niklas Fehn, Martin Kronbichler, 2018
*/
template <int dim, template <int, int> class MeshType, int spacedim>
# ifndef _MSC_VER
* @return A list of active cells sharing at least one common vertex with
* the predicated subdomain.
*
- * @author Jean-Paul Pelteret, Denis Davydov, Wolfgang Bangerth, 2015
*/
template <class MeshType>
std::vector<typename MeshType::active_cell_iterator>
* or hp::DoFHandler).
* @return A list of ghost cells
*
- * @author Jean-Paul Pelteret, Denis Davydov, Wolfgang Bangerth, 2015
*/
template <class MeshType>
std::vector<typename MeshType::active_cell_iterator>
*
* See compute_active_cell_halo_layer().
*
- * @author Vishal Boddu, Denis Davydov, 2017
*/
template <class MeshType>
std::vector<typename MeshType::active_cell_iterator>
* Also see compute_ghost_cell_halo_layer() and
* compute_active_cell_layer_within_distance().
*
- * @author Vishal Boddu, Denis Davydov, 2017
*/
template <class MeshType>
std::vector<typename MeshType::active_cell_iterator>
* The type is abbreviated in the online documentation to improve readability
* of this page.
*
- * @author Giovanni Alzetta, 2017
*/
template <int spacedim>
# ifndef DOXYGEN
* result[v][c] is a unit Tensor for vertex index v, indicating the direction
* of the center of the c-th cell with respect to the vertex v.
*
- * @author Rene Gassmoeller, Luca Heltai, 2017.
*/
template <int dim, int spacedim>
std::vector<std::vector<Tensor<1, spacedim>>>
* answer is returned when the underlying mapping modifies the position of the
* vertices.
*
- * @author Rene Gassmoeller, Luca Heltai, 2017, 2020.
*/
template <int dim, int spacedim>
unsigned int
* is the dimension of the highest elongation and the @p second value is the
* ratio among the dimensions of the @p cell.
*
- * @author Mauro Bardelloni, Luca Heltai, Andrea Mola, 2016
*/
template <int dim, int spacedim>
std::pair<unsigned int, double>
* the complete, parallel triangulation. We can also query the degrees of
* freedom on these.
*
- * @author Arezou Ghesmati, Wolfgang Bangerth, 2014
*/
template <class MeshType>
std::vector<typename MeshType::active_cell_iterator>
* @return A list of cells with the coarsest common level of refinement of
* the input cells.
*
- * @author Arezou Ghesmati, Wolfgang Bangerth, 2015
*/
template <class Container>
std::vector<typename Container::cell_iterator>
* triangulation which is built as explained above, and the cell iterators
* in the input list.
*
- * @author Arezou Ghesmati, Wolfgang Bangerth, 2015
*/
template <class Container>
void
* DoFHandlerType::active_cell_iterators of cells in the support of the basis
* function at that degree of freedom.
*
- * @author Spencer Patty, 2016
*
*/
template <class DoFHandlerType>
* @ref GlossFaceOrientation "glossary"
* article.
*
- * @author Matthias Maier, 2012
*/
template <typename FaceIterator>
bool orthogonal_equality(
* all boundary indicators on the coarse grid before performing any global
* or local grid refinement.
*
- * @author Daniel Arndt, Matthias Maier, 2013 - 2015
*/
template <typename MeshType>
void
* meshes with cells not in
* @ref GlossFaceOrientation "standard orientation".
*
- * @author Daniel Arndt, Matthias Maier, 2013 - 2015
*/
template <typename MeshType>
void
* @ingroup manifold
* @relatesalso boundary
*
- * @author Luca Heltai, 2015
*/
template <int dim, int spacedim>
void
* @ingroup manifold
* @relatesalso boundary
*
- * @author Luca Heltai, 2018
*/
template <int dim, int spacedim>
void
*
* @ingroup manifold
*
- * @author Luca Heltai, 2015
*/
template <int dim, int spacedim>
void
* If it is @p false, then also the manifold indicator of these faces and edges
* is set according to the return value of the @p disambiguation_function.
*
- * @author Luca Heltai, 2019.
*/
template <int dim, int spacedim>
void
*
* @note This function is a collective operation.
*
- * @author Giovanni Alzetta, 2018.
*/
template <int spacedim>
RTree<std::pair<BoundingBox<spacedim>, unsigned int>>
* of a group of coinciding vertices. Vertices not contained in
* this vector are not coinciding with any other vertex.
*
- * @author Peter Munch, 2019.
*/
template <int dim, int spacedim>
void
* obsolete, and you will have to mark them as outdated, by calling the
* method mark_for_update() manually.
*
- * @author Luca Heltai, 2017.
*/
template <int dim, int spacedim = dim>
class Cache : public Subscriptor
* You can select more than one flag by concatenation using the bitwise or
* <code>operator|(CacheUpdateFlags,CacheUpdateFlags)</code>.
*
- * @author Luca Heltai, 2017.
*/
enum CacheUpdateFlags
{
* equally well be Triangulation, PersistentTriangulation, or hp::DoFHandler).
*
* @ingroup grid
- * @author Wolfgang Bangerth, 1999
*/
template <class MeshType>
class InterGridMap : public Subscriptor
*
*
* @ingroup manifold
- * @author Luca Heltai, Wolfgang Bangerth, 2014, 2016
*/
template <int dim, int spacedim = dim>
class Manifold : public Subscriptor
*
* @ingroup manifold
*
- * @author Luca Heltai, 2014
*/
template <int dim, int spacedim = dim>
class FlatManifold : public Manifold<dim, spacedim>
*
* @ingroup manifold
*
- * @author Luca Heltai, 2013, 2014
*/
template <int dim, int spacedim = dim, int chartdim = dim>
class ChartManifold : public Manifold<dim, spacedim>
*
* @ingroup manifold
*
- * @author Luca Heltai, Mauro Bardelloni, 2014-2016
*/
template <int dim, int spacedim = dim>
class PolarManifold : public ChartManifold<dim, spacedim, spacedim>
*
* @ingroup manifold
*
- * @author Mauro Bardelloni, Luca Heltai, Daniel Arndt, 2016, 2017
*/
template <int dim, int spacedim = dim>
class SphericalManifold : public Manifold<dim, spacedim>
*
* @ingroup manifold
*
- * @author Luca Heltai, Daniel Arndt, 2014, 2017
*/
template <int dim, int spacedim = dim>
class CylindricalManifold : public ChartManifold<dim, spacedim, 3>
*
* @ingroup manifold
*
- * @author Stefano Dominici, 2018
*/
template <int dim, int spacedim = dim>
class EllipticalManifold : public ChartManifold<dim, spacedim, spacedim>
*
* @ingroup manifold
*
- * @author Luca Heltai, 2014
*/
template <int dim, int spacedim = dim, int chartdim = dim>
class FunctionManifold : public ChartManifold<dim, spacedim, chartdim>
*
* @ingroup manifold
*
- * @author Timo Heister, 2016
*/
template <int dim>
class TorusManifold : public ChartManifold<dim, 3, 3>
*
* @ingroup manifold
*
- * @author Martin Kronbichler, Luca Heltai, 2017
*/
template <int dim, int spacedim = dim>
class TransfiniteInterpolationManifold : public Manifold<dim, spacedim>
* restore().
*
* @ingroup grid
- * @author Wolfgang Bangerth, 1999
*/
template <int dim, int spacedim = dim>
class PersistentTriangulation : public Triangulation<dim, spacedim>
* @tparam spacedim_B Spacial dimension of ChartManifold B.
* @tparam chartdim_B Chart dimension of ChartManifold B.
*
- * @author Luca Heltai, Timo Heister, 2016
*/
template <int dim,
int dim_A,
* to the number of lines etc is a rather frequent operation, this was not
* an optimal solution.
*
- * @author Wolfgang Bangerth, 1999
*/
template <int dim>
struct NumberCache
* to the number of lines etc is a rather frequent operation, this was not
* an optimal solution.
*
- * @author Wolfgang Bangerth, 1999
*/
template <>
struct NumberCache<1>
* to the number of lines etc is a rather frequent operation, this was not
* an optimal solution.
*
- * @author Wolfgang Bangerth, 1999
*/
template <>
struct NumberCache<2> : public NumberCache<1>
* number of lines etc is a rather frequent operation, this was not an
* optimal solution.
*
- * @author Wolfgang Bangerth, 1999
*/
template <>
struct NumberCache<3> : public NumberCache<2>
* data stored in the triangulation.
*
* @ingroup grid aniso
- * @author Wolfgang Bangerth, 1998; Ralf Hartmann, 2005
*/
template <int dim, int spacedim = dim>
class Triangulation : public Subscriptor
*
* @ingroup grid
* @ingroup Accessors
- * @author Wolfgang Bangerth, Guido Kanschat, 1998, 2010
*/
template <int structdim, int dim, int spacedim = dim>
class TriaAccessorBase
* correctness, none of the functions do anything but generate errors.
*
* @ingroup Accessors
- * @author Wolfgang Bangerth, 2008
*/
template <int structdim, int dim, int spacedim = dim>
class InvalidAccessor : public TriaAccessorBase<structdim, dim, spacedim>
* @p structdim equals zero, i.e., for vertices of a triangulation.
*
* @ingroup Accessors
- * @author Wolfgang Bangerth and others, 1998, 2000, 2008
*/
template <int structdim, int dim, int spacedim>
class TriaAccessor : public TriaAccessorBase<structdim, dim, spacedim>
* since in that case vertices are also faces.
*
* @ingroup Accessors
- * @author Bruno Turcksin, 2015
*/
template <int dim, int spacedim>
class TriaAccessor<0, dim, spacedim>
* since in the @p dim == 1 case vertices are also faces.
*
* @ingroup Accessors
- * @author Wolfgang Bangerth, 2010
*/
template <int spacedim>
class TriaAccessor<0, 1, spacedim>
*
* @ingroup grid
* @ingroup Accessors
- * @author Wolfgang Bangerth, 1998, 1999, 2000
*/
template <int dim, int spacedim = dim>
class CellAccessor : public TriaAccessor<dim, dim, spacedim>
* Configuration flags for Triangulations.
* Settings can be combined using bitwise OR.
*
- * @author Peter Munch, 2019
*/
enum Settings
{
* a unique id, partitioning information, and information related to cell
* faces and edges.
*
- * @author Peter Munch, 2019
*/
template <int dim>
struct CellData
/**
* Data used in Triangulation::create_triangulation().
*
- * @author Peter Munch, 2019
*/
template <int dim, int spacedim>
struct Description
* @note If construct_multigrid_hierarchy is set in the settings, the source
* triangulation has to be setup with limit_level_difference_at_vertices.
*
- * @author Peter Munch, 2019
*/
template <int dim, int spacedim = dim>
Description<dim, spacedim>
* @p smoothing parameter is extended with the
* limit_level_difference_at_vertices flag.
*
- * @author Peter Munch, 2019
*/
template <int dim, int spacedim = dim>
Description<dim, spacedim>
* store the information belonging to the faces of a triangulation
* separately from the TriaLevel classes.
*
- * @author Tobias Leicht, 2006
- * @author Peter Munch, 2020
*/
class TriaFaces
{
* @ref Triangulation
* @ingroup grid
* @ingroup Iterators
- * @author Wolfgang Bangerth, 1998
- * @author documentation update Guido Kanschat, 2004
*/
template <typename Accessor>
class TriaRawIterator
* given by the pair <tt>(level,index)</tt>, where @p index is an index
* relative to the level in which the object is that is pointed to.
*
- * @author Wolfgang Bangerth, 1998
*/
template <typename Accessor>
inline std::ostream &
* given by the pair <tt>(level,index)</tt>, where @p index is an index
* relative to the level in which the object is that is pointed to.
*
- * @author Wolfgang Bangerth, 1998
*/
template <typename Accessor>
inline std::ostream &
* given by the pair <tt>(level,index)</tt>, where @p index is an index
* relative to the level in which the object is that is pointed to.
*
- * @author Wolfgang Bangerth, 1998
*/
template <typename Accessor>
inline std::ostream &
* substructures apart from vertices, which are handled in a different
* way, however.
*
- * @author Wolfgang Bangerth, 1998
*/
template <int spacedim>
struct Iterators<1, spacedim>
* using active_face_iterator = active_line_iterator;
* @endcode
*
- * @author Wolfgang Bangerth, 1998
*/
template <int spacedim>
struct Iterators<2, spacedim>
* using active_face_iterator = active_quad_iterator;
* @endcode
*
- * @author Wolfgang Bangerth, 1998
*/
template <int spacedim>
struct Iterators<3, spacedim>
* need to know how to refine a line if the two adjacent faces have
* different boundary indicators), and material data for cells.
*
- * @author Wolfgang Bangerth, Guido Kanschat, 1998, 2007
*/
class TriaLevel
{
* Objects of these classes are included in the TriaLevel and TriaFaces
* classes.
*
- * @author Tobias Leicht, Guido Kanschat, 2006, 2007, 2012
- * @author Peter Munch, 2020
*/
class TriaObjects
{
*
*
* @ingroup hp
- * @author Tobias Leicht, 2006
*/
template <int structdim>
class DoFIndicesOnFacesOrEdges
* ::DoFHandler class.
*
* @ingroup dofs
- * @author Tobias Leicht, 2006
*/
template <int dim>
class DoFIndicesOnFaces;
* be vertices, which are treated separately, don't do anything.
*
* @ingroup hp
- * @author Tobias Leicht, 2006
*/
template <>
class DoFIndicesOnFaces<1>
* lines.
*
* @ingroup hp
- * @author Tobias Leicht, 2006
*/
template <>
class DoFIndicesOnFaces<2>
* quads, additionally also on lines.
*
* @ingroup hp
- * @author Tobias Leicht, 2006
*/
template <>
class DoFIndicesOnFaces<3>
* @ingroup dofs
* @ingroup hp
*
- * @author Wolfgang Bangerth, 2003, 2004, 2017, 2018
- * @author Oliver Kayser-Herold, 2003, 2004
- * @author Marc Fehling, 2018
*/
template <int dim, int spacedim = dim>
class DoFHandler : public Subscriptor
*
* @ingroup hp hpcollection
*
- * @author Wolfgang Bangerth, 2003
*/
template <int dim, int spacedim = dim>
class FECollection : public Subscriptor
*
* @ingroup hp
*
- * @author Wolfgang Bangerth, 2003
*/
template <int dim, int q_dim, class FEValuesType>
class FEValuesBase
* one case (<tt>spacedim != dim </tt>).
*
* @ingroup hp hpcollection
- * @author Wolfgang Bangerth, 2003
*/
template <int dim, int spacedim = dim>
class FEValues
* <em>both</em> finite elements.
*
* @ingroup hp hpcollection
- * @author Wolfgang Bangerth, 2003
*/
template <int dim, int spacedim = dim>
class FEFaceValues
* See there for further documentation.
*
* @ingroup hp hpcollection
- * @author Wolfgang Bangerth, 2003
*/
template <int dim, int spacedim = dim>
class FESubfaceValues
*
* @ingroup hp hpcollection
*
- * @author Oliver Kayser-Herold, 2005
*/
template <int dim, int spacedim = dim>
class MappingCollection : public Subscriptor
*
* @ingroup hp hpcollection
*
- * @author Oliver Kayser-Herold, 2005
*/
template <int dim>
class QCollection : public Subscriptor
* @endcode
*
* @ingroup hp
- * @author Marc Fehling 2019
*/
namespace Refinement
{
* function.
*
* @ingroup Integrators
- * @author Guido Kanschat
- * @date 2012
*/
namespace Advection
{
* entries as quadrature points if the velocity is not constant.
* @param factor is an optional multiplication factor for the result.
*
- * @author Guido Kanschat
- * @date 2012
*/
template <int dim>
void
* trace.
*
* @ingroup Integrators
- * @author Guido Kanschat
- * @date 2010
*/
namespace Divergence
{
* divergence operator and the trial space should be at least
* <b>H</b><sup>div</sup>. The test functions may be discontinuous.
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
void
* The function cell_matrix() is the Frechet derivative of this function
* with respect to the test functions.
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim, typename number>
void
* @todo Verify: The function cell_matrix() is the Frechet derivative of
* this function with respect to the test functions.
*
- * @author Guido Kanschat
- * @date 2013
*/
template <int dim, typename number>
void
* This is the strong gradient and the trial space should be at least in
* <i>H</i><sup>1</sup>. The test functions can be discontinuous.
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
void
* The function gradient_matrix() is the Frechet derivative of this
* function with respect to the test functions.
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim, typename number>
void
* @todo Verify: The function gradient_matrix() is the Frechet derivative
* of this function with respect to the test functions.
*
- * @author Guido Kanschat
- * @date 2013
*/
template <int dim, typename number>
void
* component of the vector valued trial space and the test space.
* @f[ \int_F (\mathbf u\cdot \mathbf n) v \,ds @f]
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
void
* \int_F (\mathbf u\cdot \mathbf n) v \,ds
* @f]
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim, typename number>
void
* \int_F u (\mathbf v\cdot \mathbf n) \,ds
* @f]
*
- * @author Guido Kanschat
- * @date 2013
*/
template <int dim, typename number>
void
* \frac{v_1+v_2}{2} \,ds
* @f]
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
void
* \,ds
* @f]
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
void
* number of quadrature points. The number of components of the finite
* element has to be equal to the space dimension.
*
- * @author Guido Kanschat
- * @date 2013
*/
template <int dim>
double
* @brief Local integrators related to elasticity problems.
*
* @ingroup Integrators
- * @author Guido Kanschat
- * @date 2010
*/
namespace Elasticity
{
* argument <tt>data</tt>. $n$ is the outer normal vector and $\gamma$ is
* the usual penalty parameter.
*
- * @author Guido Kanschat
- * @date 2013
*/
template <int dim, typename number>
void
* respectively. $n$ is the outer normal vector and $\gamma$ is the usual
* penalty parameter.
*
- * @author Guido Kanschat
- * @date 2013
*/
template <int dim, typename number>
void
/**
* Elasticity residual term for the symmetric interior penalty method.
*
- * @author Guido Kanschat
- * @date 2013
*/
template <int dim, typename number>
void
* traces
*
* @ingroup Integrators
- * @author Guido Kanschat, Timo Heister
- * @date 2016
*/
namespace GradDiv
{
* \int_Z \nabla\cdot u \nabla \cdot v \,dx
* @f]
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
void
* \int_Z \nabla\cdot u \nabla \cdot v \,dx
* @f]
*
- * @author Guido Kanschat
- * @date 2014
*/
template <int dim, typename number>
void
* respectively. <i>g</i> is the inhomogeneous boundary value in the
* argument <tt>data</tt>. $\gamma$ is the usual penalty parameter.
*
- * @author Guido Kanschat
- * @date 2008, 2009, 2010
*/
template <int dim>
void
* The interior penalty flux for the grad-div operator. See
* ip_residual() for details.
*
- * @author Guido Kanschat
- * @date 2016
*/
template <int dim>
*
* See for instance Hansbo and Larson, 2002
*
- * @author Guido Kanschat
- * @date 2016
*/
template <int dim>
void
* @brief Local integrators related to <i>L<sup>2</sup></i>-inner products.
*
* @ingroup Integrators
- * @author Guido Kanschat
- * @date 2010
*/
namespace L2
{
* space. #update_values and #update_JxW_values must be set.
* @param factor A constant that multiplies the mass matrix.
*
- * @author Guido Kanschat
- * @date 2008, 2009, 2010
*/
template <int dim>
void
* points in the finite element (size must be equal to the number of
* quadrature points in the element).
*
- * @author Guido Kanschat
- * @date 2014
*/
template <int dim>
void
* quadrature points in the element).
* @param factor A constant that multiplies the result.
*
- * @author Guido Kanschat
- * @date 2008, 2009, 2010
*/
template <int dim, typename number>
void
* must be equal to the number of quadrature points in the element).
* @param factor A constant that multiplies the result.
*
- * @author Guido Kanschat
- * @date 2008, 2009, 2010
*/
template <int dim, typename number>
void
* @param factor2 A constant that multiplies the shape functions for the
* second cell.
*
- * @author Guido Kanschat
- * @date 2008, 2009, 2010
*/
template <int dim>
void
* @brief Local integrators related to the Laplacian and its DG formulations
*
* @ingroup Integrators
- * @author Guido Kanschat
- * @date 2010
*/
namespace Laplace
{
* The FiniteElement in <tt>fe</tt> may be scalar or vector valued. In the
* latter case, the Laplacian is applied to each component separately.
*
- * @author Guido Kanschat
- * @date 2008, 2009, 2010
*/
template <int dim>
void
* Here, $\gamma$ is the <tt>penalty</tt> parameter suitably computed with
* compute_penalty().
*
- * @author Guido Kanschat
- * @date 2008, 2009, 2010
*/
template <int dim>
void
* Here, $\gamma$ is the <tt>penalty</tt> parameter suitably computed with
* compute_penalty().
*
- * @author Guido Kanschat
- * @date 2017
*/
template <int dim>
void
* respectively. <i>g</i> is the inhomogeneous boundary value in the
* argument <tt>data</tt>. $\gamma$ is the usual penalty parameter.
*
- * @author Guido Kanschat
- * @date 2008, 2009, 2010
*/
template <int dim>
void
* respectively. <i>g</i> is the inhomogeneous boundary value in the
* argument <tt>data</tt>. $\gamma$ is the usual penalty parameter.
*
- * @author Guido Kanschat
- * @date 2008, 2009, 2010
*/
template <int dim>
void
* same on both sides. If factors differ, note that the penalty parameter
* has to be computed accordingly.
*
- * @author Guido Kanschat
- * @date 2008, 2009, 2010
*/
template <int dim>
void
*
* @warning This function is still under development!
*
- * @author Bärbel Janssen, Guido Kanschat
- * @date 2013, 2017
*/
template <int dim>
void
* n]\{\nabla v\} \Bigr) \; ds.
* @f]
*
- * @author Guido Kanschat
- * @date 2012
*/
template <int dim>
void
* - [\mathbf u\otimes \mathbf n]\{\nabla \mathbf v\} \Bigr) \; ds.
* @f]
*
- * @author Guido Kanschat
- * @date 2012
*/
template <int dim>
void
* <i>Z<sub>i</sub></i> and <i>h<sub>i</sub></i> is the length of
* <i>Z<sub>i</sub></i> orthogonal to the current face.
*
- * @author Guido Kanschat
- * @date 2010
*/
template <int dim, int spacedim, typename number>
double
* @f]
*
* @ingroup Integrators
- * @author Guido Kanschat
- * @date 2010
*/
namespace Maxwell
{
* @note The third tensor argument is not used in two dimensions and can
* for instance duplicate one of the previous.
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
Tensor<1, dim>
* @note The third tensor argument is not used in two dimensions and can
* for instance duplicate one of the previous.
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
Tensor<1, dim>
* @f]
* in weak form.
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
void
* vector curl operator can be obtained by exchanging test and trial
* functions.
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
void
* \biggr)
* @f]
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
void
* \, ds.
* @f]
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
void
* \biggr)\;dx
* @f]
*
- * @author Guido Kanschat
- * @date 2011
*/
template <int dim>
inline void
/**
* @brief Integrators writing patches with values in quadrature points
*
- * @author Guido Kanschat
- * @date 2011
*/
namespace Patches
{
*
* @ingroup dofs
* @ingroup constraints
- * @author Wolfgang Bangerth, Martin Kronbichler, 1998, 2004, 2008, 2009
*/
template <typename number = double>
class AffineConstraints : public Subscriptor
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Wolfgang Bangerth, 2009
*/
template <typename MatrixType>
struct IsBlockMatrix
* @ref step_36 "step-36"
* for an example.
*
- * @author Baerbel Janssen, Agnieszka Miedlar, 2010, Guido Kanschat 2015, Joscha Gedicke 2016
*/
class ArpackSolver : public Subscriptor
{
* @ingroup data
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Wolfgang Bangerth, Guido Kanschat, 2000, 2007, 2011
*/
class BlockIndices : public Subscriptor
{
* each block and the total size of the index field.
*
* @ref BlockIndices
- * @author Guido Kanschat
- * @date 2011
*/
inline LogStream &
operator<<(LogStream &s, const BlockIndices &bi)
* exchanges the data of the two objects.
*
* @relatesalso BlockIndices
- * @author Wolfgang Bangerth, 2000
*/
inline void
swap(BlockIndices &u, BlockIndices &v)
* sizes, and small block structure (as a rule of thumb, matrix blocks greater
* than $1000\times1000$).
*
- * @author Matthias Maier, 2015
*
* @ingroup LAOperators
*/
* PETScWrappers::BlockSparseMatrix one must initialize a
* BlockLinearOperator with their associated BlockPayload.
*
- * @author Jean-Paul Pelteret, Matthias Maier, 2016
*
* @ingroup LAOperators
*/
/**
* Namespace in which iterators in block matrices are implemented.
*
- * @author Wolfgang Bangerth, 2004
*/
namespace BlockMatrixIterators
{
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Wolfgang Bangerth, 2000, 2004
*/
template <typename MatrixType>
class BlockMatrixBase : public Subscriptor
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Wolfgang Bangerth, 2000, 2004
*/
template <typename number>
class BlockSparseMatrix : public BlockMatrixBase<SparseMatrix<number>>
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Guido Kanschat, 2002, 2003
*/
template <typename Number>
class BlockSparseMatrixEZ : public Subscriptor
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Wolfgang Bangerth, 2000, 2001
*/
template <typename SparsityPatternType>
class BlockSparsityPatternBase : public Subscriptor
* This class is an example of the "static" type of
* @ref Sparsity.
*
- * @author Wolfgang Bangerth, 2000, 2001
*/
class BlockSparsityPattern : public BlockSparsityPatternBase<SparsityPattern>
{
* sparsity.copy_from(dsp);
* @endcode
*
- * @author Wolfgang Bangerth, 2000, 2001, Guido Kanschat, 2006, 2007
*/
class BlockDynamicSparsityPattern
*
* This class is used in step-32.
*
- * @author Martin Kronbichler, 2008, 2009
*/
class BlockSparsityPattern
: public dealii::BlockSparsityPatternBase<SparsityPattern>
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Wolfgang Bangerth, Guido Kanschat, 1999, 2000, 2001, 2002, 2004
*/
template <typename Number>
class BlockVector : public BlockVectorBase<Vector<Number>>
* exchanges the data of the two vectors.
*
* @relatesalso BlockVector
- * @author Wolfgang Bangerth, 2000
*/
template <typename Number>
inline void
/**
* Declare dealii::BlockVector as serial vector.
*
- * @author Uwe Koecher, 2017
*/
template <typename Number>
struct is_serial_vector<BlockVector<Number>> : std::true_type
* do things differently depending on whether a template type denotes a
* regular or a block vector type.
*
- * @author Wolfgang Bangerth, 2010
*/
template <typename VectorType>
struct IsBlockVector
/**
* Namespace in which iterators in block vectors are implemented.
*
- * @author Wolfgang Bangerth, 2001
*/
namespace BlockVectorIterators
{
* constant and we again have that the iterator satisfies the requirements
* of a random access iterator.
*
- * @author Wolfgang Bangerth, 2001
*/
template <class BlockVectorType, bool Constness>
class Iterator
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Wolfgang Bangerth, Guido Kanschat, 1999, 2000, 2001, 2002, 2004
*/
template <class VectorType>
class BlockVectorBase : public Subscriptor
* @ref Instantiations
* in the manual).
*
- * @author Wolfgang Bangerth, 2008
*/
template <typename number>
class ChunkSparseMatrix : public virtual Subscriptor
* row and column number. It does not allow modifying the sparsity pattern
* itself.
*
- * @author Martin Kronbichler
- * @date 2013
*/
class Accessor
{
*
* The use of this class is demonstrated in step-51.
*
- * @author Wolfgang Bangerth, 2008
*/
class ChunkSparsityPattern : public Subscriptor
{
* communication pattern for different containers.
* This is similar to the way SparseMatrix and SparsityPattern works.
*
- * @author Bruno Turcksin, 2015.
*/
class CommunicationPatternBase
{
* @ref constraints
* module.
*
- * @author Mauro Bardelloni, Matthias Maier, 2015
*
* @note Currently, this function may not work correctly for distributed data
* structures.
* constrained degrees of freedom, i.e. all entries of the result vector that
* correspond to unconstrained degrees of freedom are set to zero.
*
- * @author Mauro Bardelloni, Matthias Maier, 2015
*
* @relatesalso LinearOperator
* @ingroup constraints
* @ref constraints
* module.
*
- * @author Mauro Bardelloni, Matthias Maier, 2015
*
* @note Currently, this function may not work correctly for distributed data
* structures.
* @ref constraints
* module.
*
- * @author Mauro Bardelloni, Matthias Maier, 2015
*
* @note Currently, this function may not work correctly for distributed data
* structures.
* @<double@></tt>.
*
* @ingroup Preconditioners CUDAWrappers
- * @author Daniel Arndt
- * @date 2018
*/
template <typename Number>
class PreconditionIC
* @<double@></tt>.
*
* @ingroup Preconditioners CUDAWrappers
- * @author Daniel Arndt
- * @date 2018
*/
template <typename Number>
class PreconditionILU
* and <tt>@<double@></tt>.
*
* @ingroup CUDAWrappers
- * @author Bruno Turcksin
- * @date 2018
*/
template <typename Number>
class SolverDirect
* @<double@></tt>.
*
* @ingroup Matrix1
- * @author Bruno Turcksin
- * @date 2018
*/
template <typename Number>
class SparseMatrix : public virtual Subscriptor
*
* @see CUDAWrappers
* @ingroup Vectors
- * @author Karl Ljungkvist, Bruno Turcksin, Daniel Arndt, 2016, 2018
*/
template <typename Number>
class Vector : public VectorSpaceVector<Number>
* exchanges the data of the two vectors.
*
* @relatesalso Vector
- * @author Daniel Arndt, 2018
*/
template <typename Number>
inline void
* mpi_communicator);
* @endcode
*
- * @author Martin Kronbichler, 2016
*/
template <typename VectorType = Vector<double>>
class DiagonalMatrix : public Subscriptor
* sparsity pattern). It does not allow modifying the sparsity pattern
* itself.
*
- * @author Wolfgang Bangerth
- * @date 2015
*/
class Accessor
{
* sp.copy_from (dynamic_pattern);
* @endcode
*
- * @author Timo Heister, 2008
*/
class DynamicSparsityPattern : public Subscriptor
{
*
* Convergence of this method is known to be slow.
*
- * @author Guido Kanschat, 2000
*/
template <typename VectorType = Vector<double>>
class EigenPower : private SolverBase<VectorType>
* by the parameter AdditionalData::start_adaption, which indicates the first
* iteration step in which the shift value should be adapted.
*
- * @author Guido Kanschat, 2000, 2003
*/
template <typename VectorType = Vector<double>>
class EigenInverse : private SolverBase<VectorType>
* @ref Instantiations
* for details.
*
- * @author Guido Kanschat, Franz-Theo Suttmeier, Wolfgang Bangerth, 1993-2004
*/
template <typename number>
class FullMatrix : public Table<2, number>
* @ref Instantiations
* in the manual).
*
- * @author Guido Kanschat, 2005
*/
template <typename number>
class Householder
* @endcode
*
*
- * @author Wolfgang Bangerth, 2006
*/
class IdentityMatrix
{
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Katharina Kormann, Martin Kronbichler, 2011
*/
template <typename Number>
class BlockVector : public BlockVectorBase<Vector<Number>>,
* exchanges the data of the two vectors.
*
* @relatesalso BlockVector
- * @author Katharina Kormann, Martin Kronbichler, 2011
*/
template <typename Number>
inline void
* Declare dealii::LinearAlgebra::distributed::BlockVector as distributed
* vector.
*
- * @author Uwe Koecher, 2017
*/
template <typename Number>
struct is_serial_vector<LinearAlgebra::distributed::BlockVector<Number>>
* cudaSetDevice(device_id);
* </code>
* @see CUDAWrappers
- *
- * @author Katharina Kormann, Martin Kronbichler, Bruno Turcksin 2010, 2011,
- * 2016, 2018
*/
template <typename Number, typename MemorySpace = MemorySpace::Host>
class Vector : public ::dealii::LinearAlgebra::VectorSpaceVector<Number>,
* exchanges the data of the two vectors.
*
* @relatesalso Vector
- * @author Katharina Kormann, Martin Kronbichler, 2011
*/
template <typename Number, typename MemorySpace>
inline void
/**
* Declare dealii::LinearAlgebra::Vector as distributed vector.
*
- * @author Uwe Koecher, 2017
*/
template <typename Number, typename MemorySpace>
struct is_serial_vector<LinearAlgebra::distributed::Vector<Number, MemorySpace>>
* the C++ standard library, this class implements an element of a vector
* space suitable for numerical computations.
*
- * @author Bruno Turcksin, 2015.
*/
template <typename Number>
class Vector : public ReadWriteVector<Number>,
/**
* Declare dealii::LinearAlgebra::Vector as serial vector.
*
- * @author Uwe Koecher, 2017
*/
template <typename Number>
struct is_serial_vector<LinearAlgebra::Vector<Number>> : std::true_type
* usually the names chosen for the arguments in the LAPACK documentation.
*
* @ingroup Matrix1
- * @author Guido Kanschat, 2005, Denis Davydov, 2017, 2018
*/
template <typename number>
class LAPACKFullMatrix : public TransposeTable<number>
* A preconditioner based on the LU-factorization of LAPACKFullMatrix.
*
* @ingroup Preconditioners
- * @author Guido Kanschat, 2006
*/
template <typename number>
class PreconditionLU : public Subscriptor
* The elements of this enumeration are therefore used to track what is
* currently being stored by this object.
*
- * @author Guido Kanschat, 2005
*/
enum State
{
* @note The step-20 tutorial program has a detailed usage example of the
* LinearOperator class.
*
- * @author Luca Heltai, Matthias Maier, 2015; Jean-Paul Pelteret, 2016
*
* @ingroup LAOperators
*/
*
* Return the transpose linear operations of @p op.
*
- * @author Matthias Maier, 2015
*
* @ingroup LAOperators
*/
* of the @p solver object will be modified upon invocation of
* <code>vmult</code> or <code>Tvmult</code>.
*
- * @author Luca Heltai, Matthias Maier, Jean-Paul Pelteret, 2015
*
* @ingroup LAOperators
*/
* SparseMatrix. To use Trilinos and PETSc sparse matrix classes it is
* necessary to initialize a LinearOperator with their associated Payload.
*
- * @author Jean-Paul Pelteret, Matthias Maier, 2016
*
* @ingroup LAOperators
*/
* <code>vmult</code> and <code>Tvmult</code> (requiring intermediate
* storage).
*
- * @author Matthias Maier, 2015
*
* @ingroup LAOperators
*/
* This variant can, for example, be used to encapsulate preconditioners (that
* typically do not expose any information about the underlying matrix).
*
- * @author Matthias Maier, 2015
*
* @ingroup LAOperators
*/
* This variant can, for example, be used to encapsulate preconditioners (that
* typically do not expose any information about the underlying matrix).
*
- * @author Matthias Maier, 2017
*
* @ingroup LAOperators
*/
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Guido Kanschat, 2006
*/
template <typename MatrixType>
class MatrixBlock : public Subscriptor
*
* @relatesalso MatrixBlock
* @ingroup vector_valued
- * @author Baerbel Janssen, Guido Kanschat, 2010
*/
template <typename MatrixType>
class MatrixBlockVector : private AnyData
*
* @relatesalso MatrixBlock
* @ingroup vector_valued
- * @author Baerbel Janssen, Guido Kanschat, 2010
*/
template <typename MatrixType>
class MGMatrixBlockVector : public Subscriptor
* This iterator is abstracted from the actual matrix type and can be used for
* any matrix having the required ACCESSOR type.
*
- * @author Guido Kanschat, 2006, based on previous a implementation
*/
template <class ACCESSOR>
class MatrixIterator
*
*
* @ingroup output
- * @author Wolfgang Bangerth, 2001
*/
class MatrixOut : public DataOutInterface<2, 2>
{
* @note The step-20 tutorial program has a detailed usage example of the
* LinearOperator class.
*
- * @author Matthias Maier, 2015
*
* @ingroup LAOperators
*/
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Katharina Kormann, Martin Kronbichler, 2011
*
* @deprecated Use LinearAlgebra::distributed::BlockVector instead.
*/
* fail in some circumstances. Therefore, it is strongly recommended to
* not rely on this class to automatically detect the unsupported case.
*
- * @author Katharina Kormann, Martin Kronbichler, 2010, 2011
*
* @deprecated Use LinearAlgebra::distributed::Vector instead.
*/
* also how to set the parameters appropriately please take a look into the
* PARPACK manual.
*
- * @author Denis Davydov, 2015, 2017
*/
template <typename VectorType>
class PArpackSolver : public Subscriptor
*
* @ingroup Matrix1 @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Wolfgang Bangerth, 2004
*/
class BlockSparseMatrix : public BlockMatrixBase<SparseMatrix>
{
*
* @ingroup Vectors @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Wolfgang Bangerth, 2004
*/
class BlockVector : public BlockVectorBase<Vector>
{
* exchanges the data of the two vectors.
*
* @relatesalso PETScWrappers::MPI::BlockVector
- * @author Wolfgang Bangerth, 2000
*/
inline void
swap(BlockVector &u, BlockVector &v)
/**
* Declare dealii::PETScWrappers::MPI::BlockVector as distributed vector.
*
- * @author Uwe Koecher, 2017
*/
template <>
struct is_serial_vector<PETScWrappers::MPI::BlockVector> : std::false_type
* specific type differ, and are implemented in this particular class.
*
* @ingroup Matrix1
- * @author Wolfgang Bangerth, 2004
*/
class FullMatrix : public MatrixBase
{
* not all elements.
*
* @ingroup PETScWrappers
- * @author Guido Kanschat, Roy Stogner, Wolfgang Bangerth, 2004
*/
class const_iterator
{
*
* @ingroup PETScWrappers
* @ingroup Matrix1
- * @author Wolfgang Bangerth, 2004
*/
class MatrixBase : public Subscriptor
{
*
* @ingroup PETScWrappers
* @ingroup Matrix1
- * @author Wolfgang Bangerth, Martin Steigemann, 2012
*/
class MatrixFree : public MatrixBase
{
* work for parallel jobs, such as for example the ILU preconditioner.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, Timo Heister, 2004, 2011
*/
class PreconditionerBase
{
* for when this preconditioner may or may not work.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, Timo Heister, 2004, 2011
*/
class PreconditionJacobi : public PreconditionerBase
{
* for when this preconditioner may or may not work.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, Timo Heister, 2004, 2011
*/
class PreconditionBlockJacobi : public PreconditionerBase
{
* @note Only works in serial with a PETScWrappers::SparseMatrix.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, Timo Heister, 2004, 2011
*/
class PreconditionSOR : public PreconditionerBase
{
* @note Only works in serial with a PETScWrappers::SparseMatrix.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, Timo Heister, 2004, 2011
*/
class PreconditionSSOR : public PreconditionerBase
{
* for when this preconditioner may or may not work.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, Timo Heister, 2004, 2011
*/
class PreconditionEisenstat : public PreconditionerBase
{
* @note Only works in serial with a PETScWrappers::SparseMatrix.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, Timo Heister, 2004, 2011
*/
class PreconditionICC : public PreconditionerBase
{
* @note Only works in serial with a PETScWrappers::SparseMatrix.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, Timo Heister, 2004, 2011
*/
class PreconditionILU : public PreconditionerBase
{
* computations with a single processor.
*
* @ingroup PETScWrappers
- * @author Oliver Kayser-Herold, 2004
*/
class PreconditionLU : public PreconditionerBase
{
* step-40 for an example.
*
* @ingroup PETScWrappers
- * @author Timo Heister, 2010
*/
class PreconditionBoomerAMG : public PreconditionerBase
{
* The preconditioner does support parallel distributed computations.
*
* @ingroup PETScWrappers
- * @author Martin Steigemann, 2012
*/
class PreconditionParaSails : public PreconditionerBase
{
* A class that implements a non-preconditioned method.
*
* @ingroup PETScWrappers
- * @author Martin Steigemann, 2012
*/
class PreconditionNone : public PreconditionerBase
{
* parallel mode.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class SolverBase
{
* solver.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class SolverRichardson : public SolverBase
{
* prior version 3.3, Chebychev) solver.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class SolverChebychev : public SolverBase
{
* An implementation of the solver interface using the PETSc CG solver.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class SolverCG : public SolverBase
{
* An implementation of the solver interface using the PETSc BiCG solver.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class SolverBiCG : public SolverBase
{
* An implementation of the solver interface using the PETSc GMRES solver.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class SolverGMRES : public SolverBase
{
* solver.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class SolverBicgstab : public SolverBase
{
* solver.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class SolverCGS : public SolverBase
{
* An implementation of the solver interface using the PETSc TFQMR solver.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class SolverTFQMR : public SolverBase
{
* prior. This should be fixed in later versions of PETSc, though.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class SolverTCQMR : public SolverBase
{
* An implementation of the solver interface using the PETSc CR solver.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class SolverCR : public SolverBase
{
* solver.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class SolverLSQR : public SolverBase
{
* conjunction with this solver class becomes a direct solver.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004, Oliver Kayser-Herold, 2004
*/
class SolverPreOnly : public SolverBase
{
* http://www.mcs.anl.gov/petsc/petsc-current/docs/manualpages/Mat/MATSOLVERMUMPS.html
*
* @ingroup PETScWrappers
- * @author Daniel Brauss, Alexander Grayver, 2012
*/
class SparseDirectMUMPS : public SolverBase
{
*
* @ingroup PETScWrappers
* @ingroup Matrix1
- * @author Wolfgang Bangerth, 2004
*/
class SparseMatrix : public MatrixBase
{
*
* @ingroup PETScWrappers
* @ingroup Matrix1
- * @author Wolfgang Bangerth, 2004
*/
class SparseMatrix : public MatrixBase
{
* distributed vectors and matrices.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
namespace MPI
{
*
* @ingroup PETScWrappers
* @ingroup Vectors
- * @author Wolfgang Bangerth, 2004
*/
class Vector : public VectorBase
{
* simply exchanges the data of the two vectors.
*
* @relatesalso PETScWrappers::MPI::Vector
- * @author Wolfgang Bangerth, 2004
*/
inline void
swap(Vector &u, Vector &v)
/**
* Declare dealii::PETScWrappers::MPI::Vector as distributed vector.
*
- * @author Uwe Koecher, 2017
*/
template <>
struct is_serial_vector<PETScWrappers::MPI::Vector> : std::false_type
*
* @ingroup PETScWrappers
* @ingroup Vectors
- * @author Wolfgang Bangerth, 2004
*/
namespace PETScWrappers
{
* before you actually use the vector.
*
* @ingroup PETScWrappers
- * @author Wolfgang Bangerth, 2004
*/
class VectorBase : public Subscriptor
{
* exchanges the data of the two vectors.
*
* @relatesalso PETScWrappers::VectorBase
- * @author Wolfgang Bangerth, 2004
*/
inline void
swap(VectorBase &u, VectorBase &v)
*
* Alternatively, the IdentityMatrix class can be used to precondition in this
* way.
- *
- * @author Guido Kanschat, 1999; extension for full compatibility with
- * LinearOperator class: Jean-Paul Pelteret, 2015
*/
class PreconditionIdentity : public Subscriptor
{
* Using SolverRichardson, the two relaxation parameters will be just
* multiplied. Still, this class is useful in multigrid smoother objects
* (MGSmootherRelaxation).
- *
- * @author Guido Kanschat, 2005; extension for full compatibility with
- * LinearOperator class: Jean-Paul Pelteret, 2015
*/
class PreconditionRichardson : public Subscriptor
{
* matrix,&SparseMatrix<double>::template precondition_Jacobi<double>));
* @endcode
*
- * @author Guido Kanschat, Wolfgang Bangerth, 1999
*/
template <typename MatrixType = SparseMatrix<double>,
class VectorType = Vector<double>>
* Base class for other preconditioners. Here, only some common features
* Jacobi, SOR and SSOR preconditioners are implemented. For preconditioning,
* refer to derived classes.
- *
- * @author Guido Kanschat, 2000; extension for full compatibility with
- * LinearOperator class: Jean-Paul Pelteret, 2015
*/
template <typename MatrixType = SparseMatrix<double>>
class PreconditionRelaxation : public Subscriptor
* solver.solve (A, x, b, precondition);
* @endcode
*
- * @author Guido Kanschat, 2000
*/
template <typename MatrixType = SparseMatrix<double>>
class PreconditionJacobi : public PreconditionRelaxation<MatrixType>
* solver.solve (A, x, b, precondition);
* @endcode
*
- * @author Guido Kanschat, 2000
*/
template <typename MatrixType = SparseMatrix<double>>
class PreconditionSOR : public PreconditionRelaxation<MatrixType>
* solver.solve (A, x, b, precondition);
* @endcode
*
- * @author Guido Kanschat, 2000
*/
template <typename MatrixType = SparseMatrix<double>>
class PreconditionSSOR : public PreconditionRelaxation<MatrixType>
*
* solver.solve (A, x, b, precondition);
* @endcode
- *
- * @author Guido Kanschat, 2003; extension for full compatibility with
- * LinearOperator class: Jean-Paul Pelteret, 2015
*/
template <typename MatrixType = SparseMatrix<double>>
class PreconditionPSOR : public PreconditionRelaxation<MatrixType>
* entries that would be needed from the matrix alone), there is a backward
* compatibility function that can extract the diagonal in case of a serial
* computation.
- *
- * @author Martin Kronbichler, 2009, 2016; extension for full compatibility with
- * LinearOperator class: Jean-Paul Pelteret, 2015
*/
template <typename MatrixType = SparseMatrix<double>,
typename VectorType = Vector<double>,
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Ralf Hartmann, Guido Kanschat
- * @date 1999, 2000, 2010
*/
template <typename MatrixType,
typename inverse_type = typename MatrixType::value_type>
* @ref Instantiations
* in the manual).
*
- * @author Ralf Hartmann, Guido Kanschat, 1999, 2000, 2003
*/
template <typename MatrixType,
typename inverse_type = typename MatrixType::value_type>
* @ref Instantiations
* in the manual).
*
- * @author Ralf Hartmann, Guido Kanschat, 1999, 2000, 2001, 2002, 2003
*/
template <typename MatrixType,
typename inverse_type = typename MatrixType::value_type>
* @ref Instantiations
* in the manual).
*
- * @author Ralf Hartmann, Guido Kanschat, 1999, 2000
*/
template <typename MatrixType,
typename inverse_type = typename MatrixType::value_type>
* only the inverses. These are for instance used in the intermediate step of
* the SSOR preconditioner.
*
- * @author Guido Kanschat
- * @date 2010
*/
template <typename number>
class PreconditionBlockBase
* preconditioner, at the beginning of their program and each time the solver is
* started (that is several times e.g. in a nonlinear iteration) this
* preselected solver and preconditioner is called.
- *
- * @author Ralf Hartmann, 1999; extension for full compatibility with
- * LinearOperator class: Jean-Paul Pelteret, 2015
*/
template <typename MatrixType = SparseMatrix<double>,
typename VectorType = dealii::Vector<double>>
* The function IndexSet::largest_range_starting_index() can be used to
* get the first index of the largest range.
*
- * @author Bruno Turcksin, 2015.
*/
template <typename Number>
class ReadWriteVector : public Subscriptor
* ghost vector in AdditionalData::temp_ghost_vector.
*
* @ingroup Preconditioners
- * @author Guido Kanschat
- * @date 2010
*/
template <typename MatrixType,
typename InverseNumberType = typename MatrixType::value_type,
* expected by Solver objects.
*
* @ingroup Preconditioners
- * @author Guido Kanschat
- * @date 2010
*/
template <typename MatrixType,
typename InverseNumberType = typename MatrixType::value_type,
* expected by Solver objects.
*
* @ingroup Preconditioners
- * @author Guido Kanschat
- * @date 2010
*/
template <typename MatrixType,
typename InverseNumberType = typename MatrixType::value_type,
* preconditioner interface expected by Solver objects.
*
* @ingroup Preconditioners
- * @author Guido Kanschat
- * @date 2010
*/
template <typename MatrixType,
typename InverseNumberType = typename MatrixType::value_type,
* @image html scalapack_invert.png
*
* @ingroup Matrix1
- * @author Denis Davydov, Benjamin Brands, 2017
*/
template <typename NumberType>
class ScaLAPACKMatrix : protected TransposeTable<NumberType>
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Jean-Paul Pelteret, Matthias Maier, Martin Kronbichler, 2015, 2017
*
* @ingroup LAOperators
*/
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Jean-Paul Pelteret, Matthias Maier, 2015, 2017
*
* @ingroup LAOperators
*/
*
* @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Jean-Paul Pelteret, Matthias Maier, 2015, 2017
*
* @ingroup LAOperators
*/
* on which they depend.
*
* @ingroup SLEPcWrappers
- *
- * @author Toby D. Young 2008, 2009, 2010, 2011, 2013; and Rickard Armiento
- * 2008; and Denis Davydov 2015.
- *
- * @note Various tweaks and enhancements contributed by Eloy Romero and Jose
- * E. Roman 2009, 2010.
*/
namespace SLEPcWrappers
{
*
* @ingroup SLEPcWrappers
*
- * @author Toby D. Young 2008
*/
class SolverKrylovSchur : public SolverBase
{
*
* @ingroup SLEPcWrappers
*
- * @author Toby D. Young 2008, 2011
*/
class SolverArnoldi : public SolverBase
{
*
* @ingroup SLEPcWrappers
*
- * @author Toby D. Young 2009; and Denis Davydov 2015;
*/
class SolverLanczos : public SolverBase
{
*
* @ingroup SLEPcWrappers
*
- * @author Toby D. Young 2010
*/
class SolverPower : public SolverBase
{
*
* @ingroup SLEPcWrappers
*
- * @author Toby D. Young 2010; Denis Davydov 2015
*/
class SolverGeneralizedDavidson : public SolverBase
{
*
* @ingroup SLEPcWrappers
*
- * @author Toby D. Young 2013
*/
class SolverJacobiDavidson : public SolverBase
{
*
* @ingroup SLEPcWrappers
*
- * @author Toby D. Young 2013
*/
class SolverLAPACK : public SolverBase
{
* @note These options can also be set at the command line.
*
* @ingroup SLEPcWrappers
- * @author Toby D. Young 2009, 2013; and Denis Davydov 2015.
*/
class TransformationBase
{
* An implementation of the transformation interface using the SLEPc Shift.
*
* @ingroup SLEPcWrappers
- * @author Toby D. Young 2009
*/
class TransformationShift : public TransformationBase
{
* and Invert.
*
* @ingroup SLEPcWrappers
- * @author Toby D. Young 2009
*/
class TransformationShiftInvert : public TransformationBase
{
* 3.5.0 and thus cannot be used in the newer versions.
*
* @ingroup SLEPcWrappers
- * @author Toby D. Young 2009
*/
class TransformationSpectrumFolding : public TransformationBase
{
* An implementation of the transformation interface using the SLEPc Cayley.
*
* @ingroup SLEPcWrappers
- * @author Toby D. Young 2009
*/
class TransformationCayley : public TransformationBase
{
* </td> </tr> </table>
*
* @ingroup Solvers
- * @author Wolfgang Bangerth, Guido Kanschat, Ralf Hartmann, 1997-2001, 2005,
- * 2014
*/
template <class VectorType = Vector<double>>
class SolverBase : public Subscriptor
* to observe the progress of the iteration.
*
*
- * @author W. Bangerth, G. Kanschat, R. Becker and F.-T. Suttmeier
*/
template <typename VectorType = Vector<double>>
class SolverCG : public SolverBase<VectorType>
* number of iterations.
* </ul>
*
- * @author Guido Kanschat
*/
class SolverControl : public Subscriptor
{
* will break if 20 iteration are completed or the new residual is less then
* 2.5*1% or if it is less then 0.1%.
*
- * @author Guido Kanschat
*/
class ReductionControl : public SolverControl
{
* or the maximum iteration count were reached. The only difference to
* SolverControl is that the solver returns success in the latter case.
*
- * @author Martin Kronbichler
*/
class IterationNumberControl : public SolverControl
{
* SolverControl::State::success only at the last step in the sequence 0.5,
* 0.0005, 1.0, 0.05, 0.01.
*
- * @author Denis Davydov, 2017
*/
class ConsecutiveControl : public SolverControl
{
* Energy-Minimization in Atomic-to-Continuum Scale-Bridging Methods </a> by
* Eidel et al. 2011.
*
- * @author Vishal Boddu, Denis Davydov, 2017
*/
template <typename VectorType = Vector<double>>
class SolverFIRE : public SolverBase<VectorType>
* will then be called from the solver with the estimates as argument.
*
*
- * @author Wolfgang Bangerth, Guido Kanschat, Ralf Hartmann.
*/
template <class VectorType = Vector<double>>
class SolverGMRES : public SolverBase<VectorType>
*
* For more details see @cite Saad1991.
*
- * @author Guido Kanschat, 2003
*/
template <class VectorType = Vector<double>>
class SolverFGMRES : public SolverBase<VectorType>
* these steps is stored and therefore there will be multiple values per
* iteration.
*
- * @author Conrad Clevenger, 2019
*/
template <class VectorType = Vector<double>>
class SolverIDR : public SolverBase<VectorType>
* to observe the progress of the iteration.
*
*
- * @author Thomas Richter, 2000, Luca Heltai, 2006
*/
template <class VectorType = Vector<double>>
class SolverMinRes : public SolverBase<VectorType>
* to observe the progress of the iteration.
*
*
- * @author Guido Kanschat, 1999; Ingo Kligge 2017
*/
template <typename VectorType = Vector<double>>
class SolverQMRS : public SolverBase<VectorType>
*
*
* @ingroup Solvers
- * @author Guido Kanschat
- * @date 2010
*/
template <typename VectorType = Vector<double>>
class SolverRelaxation : public SolverBase<VectorType>
* to observe the progress of the iteration.
*
*
- * @author Ralf Hartmann
*/
template <class VectorType = Vector<double>>
class SolverRichardson : public SolverBase<VectorType>
* quoted above only needs to 'set solver = xyz' in their parameter file to get
* access to that new solver.
*
- * @author Ralf Hartmann, 1999
*/
template <typename VectorType = Vector<double>>
class SolverSelector : public Subscriptor
* decomposition. Additionally, if that decomposition needs fine tuned
* diagonal strengthening on a per row basis, it may override the
* get_strengthen_diagonal() method.
- *
- * @author Stephen "Cheffo" Kolaroff, 2002, based on SparseILU implementation
- * by Wolfgang Bangerth; unified interface: Ralf Hartmann, 2003; extension for
- * full compatibility with LinearOperator class: Jean-Paul Pelteret, 2015
*/
template <typename number>
class SparseLUDecomposition : protected SparseMatrix<number>,
* BlockSparseMatrix<double>, and BlockSparseMatrix<float>.
*
* @ingroup Solvers Preconditioners
- *
- * @author Wolfgang Bangerth, 2004; extension for full compatibility with
- * LinearOperator class: Jean-Paul Pelteret, 2015
*/
class SparseDirectUMFPACK : public Subscriptor
{
* @ref Instantiations
* in the manual).
*
- * @author Wolfgang Bangerth, 2008, 2009; unified interface: Ralf Hartmann
*/
template <typename number>
class SparseILU : public SparseLUDecomposition<number>
* in the manual).
*
* @ingroup Matrix1
- * @author Essentially everyone who has ever worked on deal.II
- * @date 1994-2013
*/
template <typename number>
class SparseMatrix : public virtual Subscriptor
* @note The name of the class makes sense by pronouncing it the American way,
* where "EZ" is pronounced the same way as the word "easy".
*
- * @author Guido Kanschat
- * @date 2002, 2010
*/
template <typename number>
class SparseMatrixEZ : public Subscriptor
* lower triangular matrix. The MIC(0) decomposition of the matrix $A$ is
* defined by $B = (X-L)X^{-1}(X-L^T)$, where $X$ is a diagonal matrix defined
* by the condition $\text{rowsum}(A) = \text{rowsum}(B)$.
- *
- * @author Stephen "Cheffo" Kolaroff, 2002, unified interface: Ralf Hartmann
- * 2003; extension for full compatibility with LinearOperator class: Jean-Paul
- * Pelteret, 2015.
*/
template <typename number>
class SparseMIC : public SparseLUDecomposition<number>
* section on
* @ref Instantiations
* in the manual).
- *
- * @author Guido Kanschat, Wolfgang Bangerth; 1999, 2000; extension for full
- * compatibility with LinearOperator class: Jean-Paul Pelteret, 2015
*/
template <typename number>
class SparseVanka
* the degrees of freedom are sorted by component, while the first strategy
* significantly deteriorated.
*
- * @author Wolfgang Bangerth, 2000
*/
template <typename number>
class SparseBlockVanka : public SparseVanka<number>
* sparsity pattern). It does not allow modifying the sparsity pattern
* itself.
*
- * @author Wolfgang Bangerth
- * @date 2004
*/
class Accessor
{
* The ordering of non-zero elements within each row (i.e. increasing
* column index order) depends on the derived classes.
*
- * @author Wolfgang Bangerth, Guido Kanschat and others
*/
class SparsityPatternBase : public Subscriptor
{
* documentation module
* @ref Sparsity.
*
- * @author Wolfgang Bangerth, Guido Kanschat and others
*/
class SparsityPattern : public SparsityPatternBase
{
* is determined at run-time by means of the matrices passed to the
* reinit() function.
*
- * @author Martin Kronbichler and Julius Witte, 2017
*/
template <int dim, typename Number, int n_rows_1d = -1>
class TensorProductMatrixSymmetricSumBase
* is determined at run-time by means of the matrices passed to the
* reinit() function.
*
- * @author Martin Kronbichler and Julius Witte, 2017
*/
template <int dim, typename Number, int n_rows_1d = -1>
class TensorProductMatrixSymmetricSum
* the main documentation of the generic
* TensorProductMatrixSymmetricSum class.
*
- * @author Martin Kronbichler and Julius Witte, 2017
*/
template <int dim, typename Number, int n_rows_1d>
class TensorProductMatrixSymmetricSum<dim, VectorizedArray<Number>, n_rows_1d>
* vector operations.
*
* @ingroup Matrix1
- * @author Guido Kanschat, 2005, 2006
*/
template <typename number>
class TridiagonalMatrix
*
* @ingroup Matrix1 @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Martin Kronbichler, Wolfgang Bangerth, 2008
*/
class BlockSparseMatrix : public BlockMatrixBase<SparseMatrix>
{
* while retaining compatibility with the Trilinos sparse matrix and
* preconditioner classes.
*
- * @author Jean-Paul Pelteret, 2016
*
* @ingroup TrilinosWrappers
*/
*
* @ingroup TrilinosWrappers
* @ingroup Vectors
- * @author Bruno Turcksin, 2015
*/
class Vector : public VectorSpaceVector<double>, public Subscriptor
{
* ensures full compatibility with Trilinos operations by preselecting the
* appropriate template parameters.
*
- * @author Jean-Paul Pelteret, 2016
*
* @ingroup TrilinosWrappers
*/
* ensures full compatibility with Trilinos operations by preselecting the
* appropriate template parameters.
*
- * @author Jean-Paul Pelteret, 2016
*
* @ingroup TrilinosWrappers
*/
* ensures full compatibility with Trilinos operations by preselecting the
* appropriate template parameters.
*
- * @author Jean-Paul Pelteret, 2016
*
* @ingroup TrilinosWrappers
*/
* ensures full compatibility with Trilinos operations by preselecting the
* appropriate template parameters.
*
- * @author Jean-Paul Pelteret, 2016
*
* @ingroup TrilinosWrappers
*/
* ensures full compatibility with Trilinos operations by preselecting the
* appropriate template parameters.
*
- * @author Jean-Paul Pelteret, 2016
*
* @ingroup TrilinosWrappers
*/
* ensures full compatibility with Trilinos operations by preselecting the
* appropriate template parameters.
*
- * @author Jean-Paul Pelteret, 2016
*
* @ingroup TrilinosWrappers
*/
* @ingroup Vectors
* @ingroup TrilinosWrappers @see
* @ref GlossBlockLA "Block (linear algebra)"
- * @author Martin Kronbichler, Wolfgang Bangerth, 2008, 2009
*/
class BlockVector : public dealii::BlockVectorBase<MPI::Vector>
{
* exchanges the data of the two vectors.
*
* @relatesalso TrilinosWrappers::MPI::BlockVector
- * @author Martin Kronbichler, Wolfgang Bangerth, 2008
*/
inline void
swap(BlockVector &u, BlockVector &v)
/**
* Declare dealii::TrilinosWrappers::MPI::BlockVector as distributed vector.
*
- * @author Uwe Koecher, 2017
*/
template <>
struct is_serial_vector<TrilinosWrappers::MPI::BlockVector> : std::false_type
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Martin Kronbichler, 2008; extension for full compatibility with
- * LinearOperator class: Jean-Paul Pelteret, 2015
*/
class PreconditionBase : public Subscriptor
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Martin Kronbichler, 2008
*/
class PreconditionJacobi : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Wolfgang Bangerth, 2008
*/
class PreconditionSSOR : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Martin Kronbichler, 2008
*/
class PreconditionSOR : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Martin Kronbichler, 2014
*/
class PreconditionBlockJacobi : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Martin Kronbichler, 2014
*/
class PreconditionBlockSSOR : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Martin Kronbichler, 2014
*/
class PreconditionBlockSOR : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Martin Kronbichler, 2008
*/
class PreconditionIC : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Martin Kronbichler, 2008
*/
class PreconditionILU : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Martin Kronbichler, 2009
*/
class PreconditionILUT : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Martin Kronbichler, 2008
*/
class PreconditionBlockwiseDirect : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Martin Kronbichler, 2008
*/
class PreconditionChebyshev : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Martin Kronbichler, 2008
*/
class PreconditionAMG : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Bruno Turcksin, 2014
*/
class PreconditionAMGMueLu : public PreconditionBase
{
*
* @ingroup TrilinosWrappers
* @ingroup Preconditioners
- * @author Bruno Turcksin, 2013; extension for full compatibility with
- * LinearOperator class: Jean-Paul Pelteret, 2016
*/
class PreconditionIdentity : public PreconditionBase
{
* ParameterList) and is similar to the deal.II class SolverSelector.
*
* @ingroup TrilinosWrappers
- * @author Martin Kronbichler, 2008, 2009; extension for full compatibility
- * with LinearOperator class: Jean-Paul Pelteret, 2015
*/
class SolverBase
{
* An implementation of the solver interface using the Trilinos CG solver.
*
* @ingroup TrilinosWrappers
- * @author Martin Kronbichler, 2008
*/
class SolverCG : public SolverBase
{
* An implementation of the solver interface using the Trilinos CGS solver.
*
* @ingroup TrilinosWrappers
- * @author Martin Kronbichler, 2008
*/
class SolverCGS : public SolverBase
{
* An implementation of the solver interface using the Trilinos GMRES
* solver.
*
- * @author Martin Kronbichler, 2008
*/
class SolverGMRES : public SolverBase
{
* solver.
*
* @ingroup TrilinosWrappers
- * @author Martin Kronbichler, 2008
*/
class SolverBicgstab : public SolverBase
{
* solver.
*
* @ingroup TrilinosWrappers
- * @author Martin Kronbichler, 2008
*/
class SolverTFQMR : public SolverBase
{
* linked to from the deal.II ReadMe file.
*
* @ingroup TrilinosWrappers
- * @author Martin Kronbichler, 2009, Uwe Köcher, 2014
*/
class SolverDirect
{
* sparsity pattern. For Trilinos matrices, this does not seem so simple,
* therefore, we write a little base class here.
*
- * @author Guido Kanschat
- * @date 2012
*/
class AccessorBase
{
* the elements.
*
* @ingroup TrilinosWrappers
- * @author Martin Kronbichler, Wolfgang Bangerth, 2008
*/
template <bool Constness>
class Iterator
*
* @ingroup TrilinosWrappers
* @ingroup Matrix1
- * @author Martin Kronbichler, Wolfgang Bangerth, 2008, 2009
*/
class SparseMatrix : public Subscriptor
{
* TrilinosWrappers::internal::LinearOperatorImplementation::TrilinosPayload::SetUseTranspose()
* function for further details.
*
- * @author Jean-Paul Pelteret, 2016
*
* @ingroup TrilinosWrappers
*/
* pattern itself.
*
* @ingroup TrilinosWrappers
- * @author Wolfgang Bangerth, Martin Kronbichler, Guido Kanschat
- * @date 2004, 2008, 2012
*/
class Accessor
{
*
* @ingroup TrilinosWrappers
* @ingroup Sparsity
- * @author Martin Kronbichler, 2008
*/
class SparsityPattern : public Subscriptor
{
*
* @ingroup TrilinosWrappers
* @ingroup Vectors
- * @author Daniel Arndt, 2019
*/
template <typename Number>
class Vector : public VectorSpaceVector<Number>, public Subscriptor
* Namespace for Trilinos vector classes that work in parallel over MPI.
*
* @ingroup TrilinosWrappers
- * @author Martin Kronbichler, Wolfgang Bangerth, Daniel Arndt, 2008, 2017
*/
namespace MPI
{
*
* @ingroup TrilinosWrappers
* @ingroup Vectors
- * @author Martin Kronbichler, Wolfgang Bangerth, Daniel Arndt,
* 2008, 2009, 2017
*/
class Vector : public Subscriptor
* simply exchanges the data of the two vectors.
*
* @relatesalso TrilinosWrappers::MPI::Vector
- * @author Martin Kronbichler, Wolfgang Bangerth, 2008
*/
inline void
swap(Vector &u, Vector &v)
/**
* Declare dealii::TrilinosWrappers::MPI::Vector as distributed vector.
*
- * @author Uwe Koecher, 2017
*/
template <>
struct is_serial_vector<TrilinosWrappers::MPI::Vector> : std::false_type
*
* @note The function is implemented for real valued numbers only.
*
- * @author Denis Davydov, 2017
*/
template <typename NumberType>
std::array<NumberType, 3>
*
* @note The function is implemented for real valued numbers only.
*
- * @author Denis Davydov, 2017
*/
template <typename NumberType>
std::array<NumberType, 3>
* several steps of SolverCG with
* SolverCG<VectorType>::connect_eigenvalues_slot().
*
- * @author Denis Davydov, 2017
*/
template <typename OperatorType, typename VectorType>
double
* <code>std::numeric_limits<double>::infinity()</code>, no normalization
* will be performed.
*
- * @author Denis Davydov, 2017
*/
template <typename OperatorType, typename VectorType>
void
* @ref Instantiations
* in the manual).
*
- * @author Guido Kanschat, Franz-Theo Suttmeier, Wolfgang Bangerth
*/
template <typename Number>
class Vector : public Subscriptor
* exchanges the data of the two vectors.
*
* @relatesalso Vector
- * @author Wolfgang Bangerth, 2000
*/
template <typename Number>
inline void
* Declare dealii::Vector< Number > as serial vector.
*
* @relatesalso Vector
- * @author Uwe Koecher, 2017
*/
template <typename Number>
struct is_serial_vector<Vector<Number>> : std::true_type
* <i>always</i> returned.
*
*
- * @author Guido Kanschat, 1998-2003; Wolfgang Bangerth, 2017.
*/
template <typename VectorType = dealii::Vector<double>>
class VectorMemory : public Subscriptor
* memory is not destroyed using `operator delete` but returned to the
* VectorMemory pool.
*
- * @author Guido Kanschat, 2009; Wolfgang Bangerth, 2017.
*/
class Pointer
: public std::unique_ptr<VectorType, std::function<void(VectorType *)>>
* of creating a new memory pool every time. A drawback of this policy is that
* vectors once allocated are only released at the end of the program run.
*
- * @author Guido Kanschat, 1999, 2007; Wolfgang Bangerth, 2017.
*/
template <typename VectorType = dealii::Vector<double>>
class GrowingVectorMemory : public VectorMemory<VectorType>
* Only one of these pools is used for each vector type, thus allocating all
* vectors from the same storage.
*
- * @author Guido Kanschat, 2007, Wolfgang Bangerth 2017.
*/
struct Pool
{
* ReadWriteVector which allows the access of individual elements but does
* not allow global operations.
*
- * @author Bruno Turcksin, 2015.
*/
template <typename Number>
class VectorSpaceVector
* for a vector type with support of distributed storage,
* must be done in a header file of a vector declaration.
*
- * @author Uwe Koecher, 2017
*/
template <typename T>
struct is_serial_vector;
*
* @ingroup CUDAWrappers
*
- * @author Karl Ljungkvist, Bruno Turcksin, 2016
*/
template <int dim,
int fe_degree,
*
* @ingroup matrixfree
*
- * @author Katharina Kormann and Martin Kronbichler, 2010, 2011, 2018
*/
struct DoFInfo
{
* transformed to a collocation space and can then use the identity in these
* spaces), which both allow for shorter code.
*
- * @author Katharina Kormann, Martin Kronbichler, 2012, 2014, 2017
*/
template <MatrixFreeFunctions::ElementType type,
int dim,
* This class allows for dimension-independent application of the operation,
* implemented by template recursion. It has been tested up to 6D.
*
- * @author Katharina Kormann, Martin Kronbichler, 2017
*/
template <EvaluatorVariant variant,
int dim,
* evaluation, spectral collocation or simply collocation, meaning the same
* location for shape functions and evaluation space (quadrature points).
*
- * @author Katharina Kormann, 2012
*/
template <int dim, int fe_degree, int n_components, typename Number>
struct FEEvaluationImplCollocation
* the evaluation of the first and second derivatives in this transformed
* space, using the identity operation for the shape values.
*
- * @author Katharina Kormann, Martin Kronbichler, 2017
*/
template <int dim,
int fe_degree,
* four 'char' variables are put next to each other which occupies the
* same size as the unsigned integers on most architectures.
*
- * @author Katharina Kormann, Martin Kronbichler, 2018
*/
template <int vectorization_width>
struct FaceToCellTopology
* A struct that is used to represent a collection of faces of a process
* with one of its neighbor within the setup done in struct FaceInfo.
*
- * @author Katharina Kormann, Martin Kronbichler, 2018
*/
struct FaceIdentifier
{
* between faces and cells and for identification of the dof indices to be
* used for face integrals.
*
- * @author Katharina Kormann, Martin Kronbichler, 2018
*/
template <int dim>
struct FaceSetup
*
* @ingroup matrixfree
*
- * @author Katharina Kormann and Martin Kronbichler, 2010-2018
*/
template <int dim,
int n_components_,
*
* @ingroup matrixfree
*
- * @author Katharina Kormann and Martin Kronbichler, 2010, 2011
*/
template <int dim,
int n_components_,
*
* @ingroup matrixfree
*
- * @author Katharina Kormann and Martin Kronbichler, 2010, 2011
*/
template <int dim, typename Number, bool is_face, typename VectorizedArrayType>
class FEEvaluationAccess<dim, 1, Number, is_face, VectorizedArrayType>
*
* @ingroup matrixfree
*
- * @author Katharina Kormann and Martin Kronbichler, 2010, 2011
*/
template <int dim, typename Number, bool is_face, typename VectorizedArrayType>
class FEEvaluationAccess<dim, dim, Number, is_face, VectorizedArrayType>
*
* @ingroup matrixfree
*
- * @author Katharina Kormann and Martin Kronbichler, 2010, 2011, Shiva
* Rudraraju, 2014
*/
template <typename Number, bool is_face, typename VectorizedArrayType>
*
* @ingroup matrixfree
*
- * @author Katharina Kormann and Martin Kronbichler, 2010, 2011
*/
template <int dim,
int fe_degree,
* @note Currently only VectorizedArray<Number, width> is supported as
* VectorizedArrayType.
*
- * @author Katharina Kormann and Martin Kronbichler, 2018
*/
template <int dim,
int fe_degree,
* given deal.II mapping (as passed to the constructor of this class) in a
* form accessible to FEEvaluation.
*
- * @author Martin Kronbichler, 2014
*/
template <int dim, typename Number, typename VectorizedArrayType>
class MappingDataOnTheFly
*
* @ingroup matrixfree
*
- * @author Katharina Kormann, Martin Kronbichler, 2018
*/
template <int structdim,
int spacedim,
*
* @ingroup matrixfree
*
- * @author Katharina Kormann and Martin Kronbichler, 2010, 2011, 2017
*/
template <int dim, typename Number, typename VectorizedArrayType>
struct MappingInfo
* A helper class to extract either cell or face data from mapping info
* for use in FEEvaluationBase.
*
- * @author Katharina Kormann, Martin Kronbichler, 2018
*/
template <int, typename, bool, typename>
struct MappingInfoCellsOrFaces;
*
* @ingroup matrixfree
*
- * @author Katharina Kormann, Martin Kronbichler, 2010, 2011
*/
template <int dim,
* // proceed with other terms from right hand side...
* @endcode
*
- * @author Denis Davydov, Daniel Arndt, Martin Kronbichler, 2016, 2017
*/
template <int dim,
typename VectorType = LinearAlgebra::distributed::Vector<double>,
* the multigrid V-cycle, whereas vmult_interface_up is used during the
* prolongation phase.
*
- * @author Martin Kronbichler, 2016
*/
template <typename OperatorType>
class MGInterfaceOperator : public Subscriptor
* provide a helper method 'fill_inverse_JxW_values' to get the inverse of a
* constant-coefficient operator).
*
- * @author Martin Kronbichler, 2014
*/
template <int dim,
int fe_degree,
* Base operator because only a single FEEvaluation object is used in the
* apply function.
*
- * @author Daniel Arndt, 2016
*/
template <int dim,
int fe_degree,
* Base operator because only a single FEEvaluation object is used in the
* apply function.
*
- * @author Denis Davydov, 2016
*/
template <int dim,
int fe_degree,
* quantities at the cell boundary and on the sub-interval $(0, 0.5)$ and
* $(0.5, 1)$ for face integrals.
*
- * @author Katharina Kormann, Martin Kronbichler, Julius Witte, 2010-2020
*/
template <typename Number>
struct UnivariateShapeData
*
* @ingroup matrixfree
*
- * @author Katharina Kormann, Martin Kronbichler, Julius Witte, 2010-2020
*/
template <typename Number>
struct ShapeInfo
* An interface for the worker object that runs the various operations we
* want to perform during the matrix-free loop.
*
- * @author Katharina Kormann, Martin Kronbichler, 2018
*/
struct MFWorkerInterface
{
* threads: The work is subdivided into tasks that can be done
* independently.
*
- * @author Katharina Kormann, Martin Kronbichler, 2011, 2018
*/
struct TaskInfo
{
* You can select more than one flag by concatenation using the bitwise or
* <code>operator|(AssembleFlags,AssembleFlags)</code>.
*
- * @author Luca Heltai, 2017.
*/
enum AssembleFlags
{
* efficient.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
namespace Assembler
{
* @todo Comprehensive model currently not implemented.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <typename VectorType>
class ResidualLocalBlocksToGlobalBlocks
* correct matrix block by this object.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <typename MatrixType, typename number = double>
class MatrixLocalBlocksToGlobalBlocks
* matrices automatically.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <typename MatrixType, typename number = double>
class MGMatrixLocalBlocksToGlobalBlocks
* - @tparam n_vectors: size of the array of vectors
* - @tparam n_dof_indices: size of the array of local dof indices
*
- * @author Luca Heltai, 2019.
*/
template <int n_matrices = 1,
int n_vectors = n_matrices,
* class will automatically use the new structures.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <int dim, int spacedim = dim, typename number = double>
class DoFInfo : public LocalResults<number>
* cleanliness.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2010
*/
template <int dim, class DOFINFO>
class DoFInfoBox
*
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <typename number = double>
class Functional
* appropriately before using this class.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <typename number = double>
class CellsAndFaces
* initialize() in this class.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <int dim, int spacedim = dim>
class IntegrationInfo
* correctly, typically in an IntegrationInfoBox.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <int dim, int spacedim = dim>
class IntegrationInfoBox
* true, the function will cause an exception ExcPureFunction.
*
* @ingroup MeshWorker
- * @author Guido Kanschat
- * @date 2012
*/
template <int dim, int spacedim = dim, typename number = double>
class LocalIntegrator : public Subscriptor
*
* @ingroup MeshWorker
* @ingroup Integrators
- * @author Guido Kanschat
- * @date 2009
*/
namespace MeshWorker
{
* assembled into the global system by Assembler classes.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <typename number>
class LocalResults
* performed.
*
* @ingroup MeshWorker
- * @author Guido Kanschat
- * @date 2010
*/
template <class INFOBOX, class DOFINFO, int dim, int spacedim, class ITERATOR>
void
* arguments.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <int dim,
int spacedim,
* virtual functions in LocalIntegrator.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <int dim, int spacedim, class ITERATOR, class ASSEMBLER>
void
* WorkStream namespace and its members.
*
* @ingroup MeshWorker
- * @author Luca Heltai and Timo Heister, 2017
*/
template <class CellIteratorType,
class ScratchData,
* @endcode
*
* @ingroup MeshWorker
- * @author Luca Heltai, 2019
*/
template <class CellIteratorType,
class ScratchData,
*
* @note In the current implementation, only cell data can be written.
*
- * @author Guido Kanschat
- * @date 2011, 2012
*/
class GnuplotPatch
{
* Year = {2018}}
* @endcode
*
- * @author Luca Heltai, 2019.
*/
template <int dim, int spacedim = dim>
class ScratchData
* (unsigned int)</tt>
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <typename VectorType>
class ResidualSimple
* and so on.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <typename MatrixType>
class MatrixSimple
* local refinement and continuous elements are missing.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <typename MatrixType>
class MGMatrixSimple
* objects.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <typename MatrixType, typename VectorType>
class SystemSimple : private MatrixSimple<MatrixType>,
* derivatives or second derivatives are actually computed.
*
* @ingroup MeshWorker
- * @author Guido Kanschat 2009
*/
class VectorSelector : public Subscriptor
{
* compute values of source vectors in quadrature points.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <int dim, int spacedim = dim, typename Number = double>
class VectorDataBase : public VectorSelector
* identify vectors by name.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2009
*/
template <typename VectorType, int dim, int spacedim = dim>
class VectorData
* AnyData to identify vectors by name.
*
* @ingroup MeshWorker
- * @author Guido Kanschat, 2010
*/
template <typename VectorType, int dim, int spacedim = dim>
class MGVectorData : public VectorData<VectorType, dim, spacedim>
* Usually, the derived class mg::Matrix, which operates on an MGLevelObject
* of matrices, will be sufficient for applications.
*
- * @author Guido Kanschat, 2002
*/
template <typename VectorType>
class MGMatrixBase : public Subscriptor
* operator, being the interface used by multigrid methods. Any implementation
* will be done by derived classes.
*
- * @author Guido Kanschat, 2002
*/
template <typename VectorType>
class MGCoarseGridBase : public Subscriptor
* Therefore, a tested implementation of this case will be supplied when
* needed.
*
- * @author Wolfgang Bangerth, Guido Kanschat, 1999, 2002, 2007
*/
template <typename VectorType>
class MGTransferBase : public Subscriptor
* hand, all subsequent operations need to smooth the content already present
* in the vector @p u given the right hand side, which is done by smooth().
*
- * @author Guido Kanschat, 2002
*/
template <typename VectorType>
class MGSmootherBase : public Subscriptor
* smoother object. Therefore, the smoother object for each level must be
* constructed by hand.
*
- * @author Guido Kanschat, 2005
*/
template <typename MatrixType, class RelaxationType, typename number>
class MGSmootherBlock : public MGSmoother<BlockVector<number>>
* Coarse grid solver using smoother only. This is a little wrapper,
* transforming a smoother into a coarse grid solver.
*
- * @author Denis Davydov, 2016.
*/
template <class VectorType = Vector<double>>
class MGCoarseGridApplySmoother : public MGCoarseGridBase<VectorType>
*
* @deprecated Use MGCoarseGridIterativeSolver instead.
*
- * @author Guido Kanschat, 1999, Ralf Hartmann, 2002.
*/
template <typename SolverType, class VectorType = Vector<double>>
class DEAL_II_DEPRECATED MGCoarseGridLACIteration
* the operator() uses Householder::least_squares() to compute the action of
* the inverse.
*
- * @author Guido Kanschat, 2003, 2012
*/
template <typename number = double, class VectorType = Vector<number>>
class MGCoarseGridHouseholder : public MGCoarseGridBase<VectorType>
* Upon initialization, the singular value decomposition of the matrix is
* computed. then, the operator() uses
*
- * @author Guido Kanschat, 2003, 2012
*/
template <typename number = double, class VectorType = Vector<number>>
class MGCoarseGridSVD : public MGCoarseGridBase<VectorType>
* LinearOperator objects. It implements the interface defined in
* MGMatrixBase, so that it can be used as a matrix in Multigrid.
*
- * @author Guido Kanschat
- * @date 2002, 2010
*/
template <typename VectorType = Vector<double>>
class Matrix : public MGMatrixBase<VectorType>
* of this matrix class. In each @p vmult, the block selected on
* initialization will be multiplied with the vector provided.
*
- * @author Guido Kanschat, 2002
*/
template <typename MatrixType, typename number>
class MGMatrixSelect : public MGMatrixBase<Vector<number>>
* information on the number and type of smoothing steps, which in turn can be
* used by a derived class.
*
- * @author Guido Kanschat 2009
*/
template <typename VectorType>
class MGSmoother : public MGSmootherBase<VectorType>
* might get convergence without smoothing and then this class brings you the
* cheapest possible multigrid.
*
- * @author Guido Kanschat, 1999, 2002
*/
template <typename VectorType>
class MGSmootherIdentity : public MGSmootherBase<VectorType>
* the multigrid method must be used only with the vector associated to that
* single block.
*
- * @author Guido Kanschat,
- * @date 2003, 2009, 2010
*/
template <class RelaxationType, typename VectorType>
class SmootherRelaxation : public MGLevelObject<RelaxationType>,
* float and @p double. Additional instantiations may be created by including
* the file mg_smoother.templates.h.
*
- * @author Guido Kanschat, 2003
*/
template <typename MatrixType, class RelaxationType, typename VectorType>
class MGSmootherRelaxation : public MGSmoother<VectorType>
* float and @p double. Additional instantiations may be created by including
* the file mg_smoother.templates.h.
*
- * @author Guido Kanschat, 2009
*/
template <typename MatrixType, typename PreconditionerType, typename VectorType>
class MGSmootherPrecondition : public MGSmoother<VectorType>
* levels of DoFHandler objects. See there and the documentation of the member
* functions for more information.
*
- * @author Wolfgang Bangerth, Guido Kanschat, 1999 - 2005, 2012
*/
namespace MGTools
{
* Implementation of transfer between the global vectors and the multigrid
* levels for use in the derived class MGTransferPrebuilt and other classes.
*
- * @author Wolfgang Bangerth, Guido Kanschat, Timo Heister, Martin Kronbichler
- * @date 1999, 2000, 2001, 2002, 2003, 2004, 2012, 2015
*/
template <typename VectorType>
class MGLevelGlobalTransfer : public MGTransferBase<VectorType>
* routines as compared to the %parallel vectors in the PETScWrappers and
* TrilinosWrappers namespaces.
*
- * @author Martin Kronbichler
- * @date 2016
*/
template <typename Number>
class MGLevelGlobalTransfer<LinearAlgebra::distributed::Vector<Number>>
* See MGTransferBase to find out which of the transfer classes is best for
* your needs.
*
- * @author Wolfgang Bangerth, Guido Kanschat, Timo Heister, Martin Kronbichler
- * @date 1999, 2000, 2001, 2002, 2003, 2004, 2012, 2015
*/
template <typename VectorType>
class MGTransferPrebuilt : public MGLevelGlobalTransfer<VectorType>
* @ref GlossBlock
* comprises all degrees of freedom generated by one base element.
*
- * @author Guido Kanschat, 2001-2003
*/
class MGTransferBlockBase
{
* See MGTransferBase to find out which of the transfer classes is best for
* your needs.
*
- * @author Guido Kanschat, 2001, 2002
*/
template <typename number>
class MGTransferBlock : public MGTransferBase<BlockVector<number>>,
* See MGTransferBase to find out which of the transfer classes is best for
* your needs.
*
- * @author Guido Kanschat, 2001, 2002, 2003
*/
template <typename number>
class MGTransferBlockSelect : public MGTransferBase<Vector<number>>,
* eventually, a class should be developed allowing to select multiple
* components.
*
- * @author Guido Kanschat, 2001-2003
*/
class MGTransferComponentBase
{
* See MGTransferBase to find out which of the transfer classes is best for
* your needs.
*
- * @author Guido Kanschat, 2001, 2002, 2003
*/
template <typename number>
class MGTransferSelect : public MGTransferBase<Vector<number>>,
* of one of these elements. Systems with different elements or other elements
* are currently not implemented.
*
- * @author Martin Kronbichler
- * @date 2016
*/
template <int dim, typename Number>
class MGTransferMatrixFree
* Both the cases that the same DoFHandler is used for all the blocks
* and that each block uses its own DoFHandler are supported.
*
- * @author Denis Davydov, Daniel Arndt
- * @date 2017
*/
template <int dim, typename Number>
class MGTransferBlockMatrixFree
* Unfortunately, it seems that this can be avoided only be restricting the
* flexibility of this class in an unacceptable way.
*
- * @author Guido Kanschat, 1999 - 2005
*/
template <typename VectorType>
class Multigrid : public Subscriptor
* use of a separate DoFHandler for each block, this class also allows
* to be initialized with a separate DoFHandler for each block.
*
- * @author Guido Kanschat, Daniel Arndt, 1999, 2000, 2001, 2002, 2017
*/
template <int dim, typename VectorType, class TRANSFER>
class PreconditionMG : public Subscriptor
* Handler and storage for all five SparseMatrix object involved in using
* multigrid with local refinement.
*
- * @author Baerbel Janssen, Guido Kanschat
- * @date 2013
*/
template <typename number>
class SparseMatrixCollection : public Subscriptor
* See the tutorial program step-60 for an example on how to use this
* function.
*
- * @author Luca Heltai, 2018
*/
template <int dim0,
int dim1,
* space_mapping cannot be specified, since it is taken from the @p cache
* parameter.
*
- * @author Luca Heltai, 2018
*/
template <int dim0,
int dim1,
* See the tutorial program step-60 for an example on how to use this
* function.
*
- * @author Luca Heltai, 2018
*/
template <int dim0, int dim1, int spacedim, typename Matrix>
void
* space_mapping cannot specified, since it is taken from the @p cache
* parameter.
*
- * @author Luca Heltai, 2018
*/
template <int dim0, int dim1, int spacedim, typename Matrix>
void
* restrictive conditions are required on the two spaces. See the
* documentation of the other create_coupling_sparsity_pattern() function.
*
- * @author Luca Heltai, 2019.
*/
template <int dim0,
int dim1,
* to the method in this namespace with the same name, that does not take an
* epsilon as input.
*
- * @author Luca Heltai, 2019.
*/
template <int dim0, int dim1, int spacedim, typename Matrix>
void
*
* @image html immersed_surface_quadrature.svg
*
- * @author Simon Sticko, 2017
*/
template <int dim>
class ImmersedSurfaceQuadrature : public Quadrature<dim>
* problem. Such strategies can be passed to the CellDataTransfer and
* parallel::distributed::CellDataTransfer constructors.
*
- * @author Marc Fehling, 2019 - 2020
*/
namespace AdaptationStrategies
{
* for transfer.
*
* @ingroup numerics
- * @author Marc Fehling, 2019 - 2020
*/
template <int dim, int spacedim = dim, typename VectorType = Vector<double>>
class CellDataTransfer
* See the step-22 tutorial program for an example on how this information
* can be used in practice.
*
- * @author Wolfgang Bangerth, 2007
*/
enum DataComponentInterpretation
{
* values on these cells children for output).
*
* @ingroup output
- * @author Wolfgang Bangerth, 1999
*/
template <int dim, typename DoFHandlerType = DoFHandler<dim>>
class DataOut : public DataOut_DoFData<DoFHandlerType,
* <a href="https://www.artima.com/cppsource/type_erasure.html">type
* erasure</a> design pattern.
*
- * @author Wolfgang Bangerth, 2004
*/
template <typename DoFHandlerType>
class DataEntryBase
* value as the second one.
*
* @ingroup output
- * @author Wolfgang Bangerth, 1999
*/
template <typename DoFHandlerType,
int patch_dim,
* Class that stores a pointer to a vector of type equal to the template
* argument, and provides the functions to extract data from it.
*
- * @author Wolfgang Bangerth, 2004
*/
template <typename DoFHandlerType, typename VectorType>
class DataEntry : public DataEntryBase<DoFHandlerType>
* MeshWorker.
*
* @ingroup output
- * @author Wolfgang Bangerth, Guido Kanschat, 2000, 2011
*/
template <int dim, typename DoFHandlerType = DoFHandler<dim>>
class DataOutFaces : public DataOut_DoFData<DoFHandlerType,
* class consequently only a single template argument.
*
* @ingroup output
- * @author Wolfgang Bangerth, 2000
*/
template <int dim, typename DoFHandlerType = DoFHandler<dim>>
class DataOutRotation
* @endcode
*
* @ingroup output
- * @author Wolfgang Bangerth, 1999
*/
template <int dim,
int spacedim = dim,
* };
* @endcode
*
- * @author Wolfgang Bangerth, 2016
*/
template <int spacedim>
struct CommonInputs
* normal vectors (if appropriate), and which cell data is currently
* being evaluated on (also if appropriate).
*
- * @author Wolfgang Bangerth, 2016
*/
template <int spacedim>
struct Scalar : public CommonInputs<spacedim>
* normal vectors (if appropriate), and which cell data is currently
* being evaluated on (also if appropriate).
*
- * @author Wolfgang Bangerth, 2016
*/
template <int spacedim>
struct Vector : public CommonInputs<spacedim>
* DataPostprocessorScalar class) is used in a complex-valued situation.
*
* @ingroup output
- * @author Tobias Leicht, 2007; Wolfgang Bangerth, 2016, 2019
*/
template <int dim>
class DataPostprocessor : public Subscriptor
* The same is true for the DataPostprocessorTensor class.
*
* @ingroup output
- * @author Wolfgang Bangerth, 2011
*/
template <int dim>
class DataPostprocessorScalar : public DataPostprocessor<dim>
*
*
* @ingroup output
- * @author Wolfgang Bangerth, 2011, 2017
*/
template <int dim>
class DataPostprocessorVector : public DataPostprocessor<dim>
* in simple cases, the Lamé constants.
*
* @ingroup output
- * @author Wolfgang Bangerth, 2017
*/
template <int dim>
class DataPostprocessorTensor : public DataPostprocessor<dim>
* derivative that is to be approximated.
*
* @ingroup numerics
- * @author Wolfgang Bangerth, 2000
*/
namespace DerivativeApproximation
{
* data!
*
* @ingroup output
- * @author Guido Kanschat, 2000
*/
template <int dim, typename SolverType, class VectorType = Vector<double>>
class DoFPrintSolverStep : public SolverType
* that accepts several in- and output vectors at the same time.
*
* @ingroup numerics
- * @author Wolfgang Bangerth, 1998, 1999, 2000, 2004, 2006, Denis Davydov,
- * 2015; parallelization by Thomas Richter, 2000
*/
template <int dim, int spacedim = dim>
class KellyErrorEstimator
* the same public functions as the general template, so that a user will not
* see any difference.
*
- * @author Wolfgang Bangerth, 1998, 2004.
*/
template <int spacedim>
class KellyErrorEstimator<1, spacedim>
* @endcode
*
* @ingroup functions
- * @author Luca Heltai, 2006, Markus Buerg, 2012, Wolfgang Bangerth, 2013
*/
template <int dim,
typename DoFHandlerType = DoFHandler<dim>,
*
*
* @ingroup textoutput
- * @author Wolfgang Bangerth, 1999
*/
class Histogram
{
* $\{k-1,k-2,...,k-m\}$, then addition of the new element will make
* the object contain elements from iterations $\{k,k-1,k-2,...,k-m+1\}$.
*
- * @author Denis Davydov, 2018
*/
template <typename T>
class FiniteSizeHistory
* latter may be useful if you want to create many right hand side vectors.
*
* @ingroup numerics
- * @author Wolfgang Bangerth, 1998, Ralf Hartmann, 2001
*/
namespace MatrixCreator
{
* no hanging nodes and even then doesn't always work fully satisfactorily.
*
* @ingroup numerics
- * @author Wolfgang Bangerth, 1998, 2000, 2004, 2005
*/
namespace MatrixTools
{
* IndexableGetterFromIndices class defined below, and the function
* pack_rtree_of_indices().
*
- * @author Luca Heltai, 2018, 2020.
*/
template <typename LeafType,
typename IndexType = boost::geometry::index::linear<16>,
* RTree class, since we can automatically infer the @p LeafType from the
* arguments.
*
- * @author Luca Heltai, 2018.
*/
template <typename IndexType = boost::geometry::index::linear<16>,
typename LeafTypeIterator,
* arguments, and we only need to specify the @p IndexType if the default is not
* adequate.
*
- * @author Luca Heltai, 2018.
*/
template <typename IndexType = boost::geometry::index::linear<16>,
typename ContainerType,
* RTree where the leaves are indices pointing to the entries of the container
* passed to this class.
*
- * @author Luca Heltai, 2020.
*/
template <typename Container>
class IndexableGetterFromIndices
* but keep in mind that if you change the container, you should rebuild the
* tree.
*
- * @author Luca Heltai, 2020.
*/
template <typename IndexType = boost::geometry::index::linear<16>,
typename ContainerType>
* suggested usage of this class is through the helper function
* extract_rtree_level().
*
- * @author Luca Heltai, 2020.
*/
template <typename Value,
typename Options,
* @image html rtree-process-1.png
* @image html rtree-process-2.png
*
- * @author Luca Heltai, 2020.
*/
template <typename Rtree>
inline std::vector<BoundingBox<
* example, one strategy to implement hp-refinement criteria is to perform
* p-refinement if $\sigma>1$ (see @cite mavriplis1994hp).
*
- * @author Denis Davydov, 2018, Marc Fehling, 2018 - 2020
*/
namespace Legendre
{
*
* @note An extensive demonstration of the use of these functions is
* provided in step-27.
- *
- * @author Wolfgang Bangerth 2006 - 2007, Denis Davydov, 2016,
- * Marc Fehling, 2018 - 2020
*/
namespace Fourier
{
* transferring the solution.
*
* @ingroup numerics
- * @author Ralf Hartmann, 1999, Oliver Kayser-Herold and Wolfgang Bangerth,
- * 2006, Wolfgang Bangerth 2014
*/
template <int dim,
typename VectorType = Vector<double>,
* @endcode
*
*
- * @author Wolfgang Bangerth, 1999
*/
class TimeDependent
{
* following grids, and some functions to be called before a new loop over all
* time steps is started.
*
- * @author Wolfgang Bangerth, 1999
*/
class TimeStepBase : public Subscriptor
{
* but some compilers choked on some aspects, so we put them into a namespace
* of their own.
*
- * @author Wolfgang Bangerth, 2001
*/
namespace TimeStepBase_Tria_Flags
{
* flags and numbers controlling this function, which might drastically change
* the behaviour of the function -- see the description of the flags for
* further information.
- *
- * @author Wolfgang Bangerth, 1999; large parts taken from the wave program,
- * by Wolfgang Bangerth 1998
*/
template <int dim>
class TimeStepBase_Tria : public TimeStepBase
* in the manual).
*
* @ingroup numerics
- * @author Wolfgang Bangerth, Ralf Hartmann, Guido Kanschat, 1998, 1999, 2000,
- * 2001
*/
namespace VectorTools
{}
* between cells), then each subsequent call will rewrite the intercell @p
* dofs of the previous one.
*
- * @author Valentin Zingan, 2013
*/
template <int dim,
int spacedim,
* This function is only implemented for FiniteElements where the specified
* components are primitive.
*
- * @author Luca Heltai, 2015
*/
template <int dim,
int spacedim,
* face would be collapsed to the edge, and your surrounding points would
* not be lying on the given shape, raising an exception.
*
- * @author Luca Heltai, Andrea Mola, 2011--2014.
*
* @deprecated Use NormalProjectionManifold instead, which is identical to
* this class but satisfies the modern Manifold-based naming convention.
* TopoDS_Shape, or when the direction you use at construction time does not
* intersect the shape. An exception is thrown when this happens.
*
- * @author Luca Heltai, Andrea Mola, 2011--2014.
*
* @deprecated Use DirectionalProjectionManifold instead, which is identical to
* this class but satisfies the modern Manifold-based naming convention.
* points does not intersect the shape. An exception is thrown when this
* happens.
*
- * @author Luca Heltai, Andrea Mola, 2011--2014.
*
* @deprecated Use NormalToMeshProjectionManifold instead, which is identical to
* this class but satisfies the modern Manifold-based naming convention.
* face would be collapsed to the edge, and your surrounding points would
* not be lying on the given shape, raising an exception.
*
- * @author Luca Heltai, Andrea Mola, 2011--2014.
*/
template <int dim, int spacedim>
class NormalProjectionManifold : public FlatManifold<dim, spacedim>
* TopoDS_Shape, or when the direction you use at construction time does not
* intersect the shape. An exception is thrown when this happens.
*
- * @author Luca Heltai, Andrea Mola, 2011--2014.
*/
template <int dim, int spacedim>
class DirectionalProjectionManifold : public FlatManifold<dim, spacedim>
* points does not intersect the shape. An exception is thrown when this
* happens.
*
- * @author Luca Heltai, Andrea Mola, 2011--2014.
*/
template <int dim, int spacedim>
class NormalToMeshProjectionManifold : public FlatManifold<dim, spacedim>
* OpenCASCADE::closest_point() on those points leaves them untouched. If
* this is not the case, an ExcPointNotOnManifold is thrown.
*
- * @author Luca Heltai, Andrea Mola, 2011--2014.
*/
template <int dim, int spacedim>
class ArclengthProjectionLineManifold : public ChartManifold<dim, spacedim, 1>
*
* @ingroup manifold
*
- * @author Andrea Mola, Mauro Bardelloni, 2016
*/
template <int dim, int spacedim>
class NURBSPatchManifold : public ChartManifold<dim, spacedim, 2>
* make sure your CAD files are actually flat and that all z coordinates are
* equal to zero, as otherwise you will get many exceptions.
*
- * @author Luca Heltai, Andrea Mola, 2011--2017.
*/
namespace OpenCASCADE
{
* @return An std::vector of TopoDS_Edge objects representing the smooth
* interpolation of the boundary of the `triangulation`
*
- * @author Dirk Peschka, Luca Heltai, 2017.
*/
template <int spacedim>
std::vector<TopoDS_Edge>
* @ref Vector)
* may not satisfy the above requirements.
*
- * @author Vishal Boddu, 2017
*/
template <typename VectorType>
class VectorAdaptor : public ROL::Vector<typename VectorType::value_type>
* for a symmetric positive definite $H$. Limited memory variant is
* implemented via the two-loop recursion.
*
- * @author Denis Davydov, 2018
*/
template <typename VectorType>
class SolverBFGS : public SolverBase<VectorType>
*
* @ingroup Particle
*
- * @author Bruno Blais, Luca Heltai 2019
*/
template <int dim, int spacedim = dim>
class DataOut : public dealii::DataOutInterface<0, spacedim>
* controls if the particle properties are interpreted as scalars, vectors,
* or tensors. Has to be of the same length as @p data_component_names.
*
- * @author Bruno Blais, Luca Heltai 2019
*/
void
build_patches(const Particles::ParticleHandler<dim, spacedim> &particles,
*
* @param[in] properties An optional vector of vector of properties
* for each particle to be inserted.
- *
- * @author Bruno Blais, Luca Heltai, 2019
*/
template <int dim, int spacedim = dim>
void
*
* @param[in] properties An optional vector of vector of properties
* for each particle to be inserted.
- *
- * @author Bruno Blais, Luca Heltai, 2019
*/
template <int dim, int spacedim = dim>
void
* difficult to write either.
*
* @ingroup Particle
- * @author Rene Gassmoeller, 2017
*
*/
template <int dim, int spacedim = dim>
* process, and that falls within the part of triangulation owned by this
* mpi process.
*
- * @author Bruno Blais, Luca Heltai 2019
*/
std::map<unsigned int, IndexSet>
insert_global_particles(
* be interpreted as a displacement vector, or a vector of absolute
* positions.
*
- * @authors Luca Heltai, Bruno Blais, 2019.
*/
template <class VectorType>
typename std::enable_if<
* amount given by the function. When false, the position of the
* particle is replaced by the value in the vector.
*
- * @authors Bruno Blais, Luca Heltai (2019)
*/
void
set_particle_positions(const std::vector<Point<spacedim>> &new_positions,
* them by the amount given by the function. When false, the position of the
* particle is replaced by the value of the function.
*
- * @authors Bruno Blais, Luca Heltai (2019)
*/
void
set_particle_positions(const Function<spacedim> &function,
* @param[in] add_to_output_vector Control if the function should set the
* entries of the @p output_vector or if should add to them.
*
- * @author Luca Heltai, Bruno Blais, 2019.
*/
template <class VectorType>
void
* the value of the points in the positions vector are replaced by the
* position of the particles.
*
- * @authors Bruno Blais, Luca Heltai (2019)
*
*/
void
* @return An IndexSet of size get_next_free_particle_index(), containing
* n_locally_owned_particle() indices.
*
- * @author Luca Heltai, Bruno Blais, 2019.
*/
IndexSet
locally_relevant_ids() const;
* AffineConstraints::add_entries_local_to_global() is used to fill the
* final sparsity pattern.
*
- * @author Bruno Blais, Luca Heltai, 2019
*/
template <int dim,
int spacedim,
* AffineConstraints::distribute_local_to_global() is used to distribute
* the entries of the matrix to respect the given constraints.
*
- * @author Bruno Blais, Luca Heltai, 2019
*/
template <int dim, int spacedim, typename MatrixType>
void
* @param[in] field_comps An optional component mask that decides which
* subset of the vector fields are interpolated
*
- * @author Bruno Blais, Luca Heltai, 2019
*/
template <int dim,
int spacedim,
* @note These hold specifically for the codimension
* 0 case, where the metric tensor is the identity tensor.
*
- * @author Jean-Paul Pelteret, Andrew McBride, 2016
*/
namespace Kinematics
{
*
* @relatesalso Tensor
* @relatesalso SymmetricTensor
- * @author Jean-Paul Pelteret, Andrew McBride, 2016
*/
template <int dim>
class StandardTensors
* href="https://github.com/dealii/dealii/tree/master/tests/physics/notation-kelvin_02.cc">the
* unit tests</a>.
*
- * @author Jean-Paul Pelteret, 2017
*/
namespace Kelvin
{
* Transformation functions and tensors that are defined in terms of
* rotation angles and axes of rotation.
*
- * @author Jean-Paul Pelteret, 2017
*/
namespace Rotations
{
* V_{0}$ and $\partial V_{t}$ have the outwards facing normals
* $\mathbf{N}$ and $\mathbf{n}$.
*
- * @author Jean-Paul Pelteret, Andrew McBride, 2016
*/
namespace Contravariant
{
* respectively, associated with the line directors $\mathbf{L}$ and
* $\mathbf{l}$.
*
- * @author Jean-Paul Pelteret, Andrew McBride, 2016
*/
namespace Covariant
{
* contravariant basis vectors and scale with the inverse of the volume
* change associated with the mapping.
*
- * @author Jean-Paul Pelteret, Andrew McBride, 2016
*/
namespace Piola
{
* ode.solve_ode(y);
* @endcode
*
- * @author Luca Heltai, 2017.
*/
template <typename VectorType = Vector<double>>
class ARKode
* time_stepper.solve_dae(y,y_dot);
* @endcode
*
- * @author Luca Heltai, Alberto Sartori, 2017.
*/
template <typename VectorType = Vector<double>>
class IDA
* - get_solution_scaling;
* - get_function_scaling;
*
- * @author Luca Heltai, 2017.
*/
template <typename VectorType = Vector<double>>
class KINSOL
* Implementation of derived classes of the CellIteratorBase
* interface. See there for a description of the use of these classes.
*
- * @author Wolfgang Bangerth, 2003
*/
template <int dim, int spacedim>
template <typename CI>
* object has to be reinitialized with a cell iterator that allows to extract
* degree of freedom information.
*
- * @author Wolfgang Bangerth, 2003
*/
template <int dim, int spacedim>
class FEValuesBase<dim, spacedim>::TriaCellIterator
* general documentation of this class for more information on
* implementation details.
*
- * @author Wolfgang Bangerth, 2000
*/
template <int dim>
class Gradient
* the general documentation of this class for more information on
* implementational details.
*
- * @author Wolfgang Bangerth, 2000
*/
template <int dim>
class SecondDerivative
* level</td></tr>
* </table>
*
- * @author Guido Kanschat
- * @date 2006, 2010
*/
namespace TestGrids
{