Attention une mise à jour du service Gitlab va être effectuée le mardi 18 janvier (et non lundi 17 comme annoncé précédemment) entre 18h00 et 18h30. Cette mise à jour va générer une interruption du service dont nous ne maîtrisons pas complètement la durée mais qui ne devrait pas excéder quelques minutes.

Commit 78780d16 authored by GILLES Sebastien's avatar GILLES Sebastien
Browse files

#1484 Clean up Doxygen warnings for basic and advanced Doxyfiles.

parent 450551d3
......@@ -335,7 +335,7 @@ MARKDOWN_SUPPORT = YES
# Minimum value: 0, maximum value: 99, default value: 5.
# This tag requires that the tag MARKDOWN_SUPPORT is set to YES.
TOC_INCLUDE_HEADINGS = 5
TOC_INCLUDE_HEADINGS = 0
# When enabled doxygen tries to link words that correspond to documented
# classes, or namespaces to their corresponding documentation. Such a link can
......@@ -546,7 +546,7 @@ HIDE_IN_BODY_DOCS = NO
# will be excluded. Set it to YES to include the internal documentation.
# The default value is: NO.
INTERNAL_DOCS = NO
INTERNAL_DOCS = YES
# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
# names in lower-case letters. If set to YES, upper-case letters are also
......@@ -1546,7 +1546,7 @@ FORMULA_TRANSPARENT = YES
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
USE_MATHJAX = NO
USE_MATHJAX = YES
# When MathJax is enabled you can set the default output format to be used for
# the MathJax output. See the MathJax site (see:
......@@ -1569,7 +1569,7 @@ MATHJAX_FORMAT = HTML-CSS
# The default value is: https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/.
# This tag requires that the tag USE_MATHJAX is set to YES.
MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest
MATHJAX_RELPATH =
# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
# extension names that should be enabled during MathJax rendering. For example
......@@ -1679,7 +1679,7 @@ EXTRA_SEARCH_MAPPINGS =
# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
# The default value is: YES.
GENERATE_LATEX = YES
GENERATE_LATEX = NO
# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
......@@ -1719,7 +1719,7 @@ MAKEINDEX_CMD_NAME = makeindex
# The default value is: makeindex.
# This tag requires that the tag GENERATE_LATEX is set to YES.
LATEX_MAKEINDEX_CMD = makeindex
LATEX_MAKEINDEX_CMD = \makeindex
# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
# documents. This may be useful for small projects and may help to save some
......@@ -2468,7 +2468,7 @@ PLANTUML_INCLUDE_PATH =
# Minimum value: 0, maximum value: 10000, default value: 50.
# This tag requires that the tag HAVE_DOT is set to YES.
DOT_GRAPH_MAX_NODES = 50
DOT_GRAPH_MAX_NODES = 100
# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs
# generated by dot. A depth value of 3 means that only nodes reachable from the
......
......@@ -335,7 +335,7 @@ MARKDOWN_SUPPORT = YES
# Minimum value: 0, maximum value: 99, default value: 5.
# This tag requires that the tag MARKDOWN_SUPPORT is set to YES.
TOC_INCLUDE_HEADINGS = 5
TOC_INCLUDE_HEADINGS = 0
# When enabled doxygen tries to link words that correspond to documented
# classes, or namespaces to their corresponding documentation. Such a link can
......@@ -1547,7 +1547,7 @@ FORMULA_TRANSPARENT = YES
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.
USE_MATHJAX = NO
USE_MATHJAX = YES
# When MathJax is enabled you can set the default output format to be used for
# the MathJax output. See the MathJax site (see:
......@@ -1570,7 +1570,7 @@ MATHJAX_FORMAT = HTML-CSS
# The default value is: https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/.
# This tag requires that the tag USE_MATHJAX is set to YES.
MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest
MATHJAX_RELPATH =
# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
# extension names that should be enabled during MathJax rendering. For example
......@@ -1680,7 +1680,7 @@ EXTRA_SEARCH_MAPPINGS =
# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
# The default value is: YES.
GENERATE_LATEX = YES
GENERATE_LATEX = NO
# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
......@@ -1720,7 +1720,7 @@ MAKEINDEX_CMD_NAME = makeindex
# The default value is: makeindex.
# This tag requires that the tag GENERATE_LATEX is set to YES.
LATEX_MAKEINDEX_CMD = makeindex
LATEX_MAKEINDEX_CMD = \makeindex
# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
# documents. This may be useful for small projects and may help to save some
......@@ -2469,7 +2469,7 @@ PLANTUML_INCLUDE_PATH =
# Minimum value: 0, maximum value: 10000, default value: 50.
# This tag requires that the tag HAVE_DOT is set to YES.
DOT_GRAPH_MAX_NODES = 50
DOT_GRAPH_MAX_NODES = 100
# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs
# generated by dot. A depth value of 3 means that only nodes reachable from the
......
......@@ -18,19 +18,6 @@ namespace MoReFEM::Internal::InputDataNS::ParallelismNS
{
/*!
* \class doxygen_hide_parallelism_input_data_cases
*
* There are four cases:
* - "Precompute": Precompute the data for a later parallel run and stop once it's done.
* - "ParallelNoWrite", Run the code in parallel without using any pre-processed data and do not write down the processed data.
* - "Parallel", Run the code in parallel without using any pre-processed data and write down the processed data.
* - "RunFromPreprocessed": Run the code in parallel using pre-processed data.
*/
/*!
* \brief Choice of the parallel behaviour.
*
......
/*!
* \class doxygen_hide_parallelism_input_data_cases
*
* There are four cases:
* - "Precompute": Precompute the data for a later parallel run and stop once it's done.
* - "ParallelNoWrite", Run the code in parallel without using any pre-processed data and do not write down the processed data.
* - "Parallel", Run the code in parallel without using any pre-processed data and write down the processed data.
* - "RunFromPreprocessed": Run the code in parallel using pre-processed data.
*/
......@@ -29,9 +29,10 @@ namespace MoReFEM
/*!
* \brief Specific case of GlobalMatrix which is square and diagonal.
*
* \internal <b><tt>[internal]</tt></b> Actually there is not much here that signes the diagonal structure of the matrix, save the fact only one
* numbering subset is used for both rows and columns. However, AllocateGlobalMatrix() provides an overload for
* this type that allocates only values on the diagonal.
* \internal <b><tt>[internal]</tt></b> Actually there is not much here that signes the diagonal structure of the
* matrix, save the fact only one numbering subset is used for both rows and columns. However, AllocateGlobalMatrix()
* provides an overload for this type that allocates only values on the diagonal.
* \endinternal
*/
class GlobalDiagonalMatrix final : public GlobalMatrix
{
......
......@@ -39,6 +39,7 @@ namespace MoReFEM
*
* \internal <b><tt>[internal]</tt></b> Contrary to other managers, this one is really meant to be
* hidden to users and developers: NumberingSubset should be queried against \a GodOfDof objects.
* \endinternal
*/
class NumberingSubsetManager : public Utilities::Singleton<NumberingSubsetManager>
{
......@@ -112,6 +113,7 @@ namespace MoReFEM
*
* \internal This method is public solely because of its occasional usefulness in debug; you shouldn't
* have to use it while writing a \a Model.
* \endinternal
*
* \return List of pointers to the \a NumberingSubset avaliable throughout the program.
*/
......
......@@ -52,7 +52,9 @@ namespace MoReFEM
*
* \attention This is an abstract class; in your model you are probably seeking a TimeManagerInstance.
*
* \internal <b><tt>[internal]</tt></b> Must not be confused with TimeKeep() which is a chronometer to evaluate efficiency of the code.
* \internal <b><tt>[internal]</tt></b> Must not be confused with TimeKeep() which is a chronometer to evaluate
* efficiency of the code.
* \endinternal
*/
class TimeManager
{
......@@ -123,6 +125,7 @@ namespace MoReFEM
* \brief Set whether the system is static or dynamic.
*
* \internal <b><tt>[internal]</tt></b> Only a Model should be able to call this method.
* \endinternal
*
* \param[in] value Value to assign.
*/
......
......@@ -307,8 +307,9 @@ namespace MoReFEM
/*!
* \brief Initial values associated to each dof.
*
* \internal <b><tt>[internal]</tt></b> When this data is created, dofs aren't yet given their program-wise index, so both std::map and
* std::unordered_map would be very unreliable here.
* \internal <b><tt>[internal]</tt></b> When this data is created, dofs aren't yet given their program-wise
* index, so both std::map and std::unordered_map would be very unreliable here.
* \endinternal
*
* All dofs are considered here, regardless of their numbering subset.
* \todo #619 This container should disappear: if dofs are generated after the reduction to processor-wise
......
......@@ -56,8 +56,10 @@ namespace MoReFEM
/*!
* \brief Alias for call back.
*
* \internal <b><tt>[internal]</tt></b> As very few variables are expected, a std::map is used rather than a std::unordered_map.
* This choice might be questioned: I read once that for more than 3 keys the has map is alreadyy more efficient...
* \internal <b><tt>[internal]</tt></b> As very few variables are expected, a std::map is used rather
* than a std::unordered_map. This choice might be questioned: I read once that for more than 3 keys
* the has map is alreadyy more efficient...
* \endinternal
*/
using CallBack = std::map<std::string, FunctionPrototype>;
......
......@@ -43,6 +43,7 @@ namespace MoReFEM
* \internal <b><tt>[internal]</tt></b> Management of components should probably be overhauled completely
* at some point; current class is still heavily inspired by Felisce interface. However so far it worked
* for all the cases we considered and so it's quite low in our current todo list.
* \endinternal
*/
class ComponentManager
{
......
......@@ -174,6 +174,7 @@ namespace MoReFEM
* the reason for such a choice is that it would have require to remove constness to GodOfDof and FEltSpace
* within a Model or a VariationalFormulation solely for the purpose of populating the local2global during
* the initialisation of the program.
* \endinternal
*
*/
void ComputeLocal2Global(const ExtendedUnknown::vector_const_shared_ptr& unknown_list) const;
......@@ -220,7 +221,9 @@ namespace MoReFEM
*
* This list is given in the same order as the one used to build the \a local_2_global_.
*
* \internal <b><tt>[internal]</tt></b> As we are in a low-level class, indexes are used rather than shared_ptr.
* \internal <b><tt>[internal]</tt></b> As we are in a low-level class, indexes are used rather than
* shared_ptr.
* \endinternal
*/
std::vector<unsigned int> unknown_id_list_;
......@@ -234,6 +237,7 @@ namespace MoReFEM
* requires to modify the FEltSpace. So the lesser evil is to make a low level attribute mutable rather
* than removing at several places const that are actually relevant for all operations save the computation
* of local2global.
* \endinternal
*
*/
mutable std::vector<std::pair<std::vector<unsigned int>, std::vector<PetscInt>>> local_2global_per_unknown_id_list_;
......
......@@ -189,6 +189,7 @@ namespace MoReFEM
*
* \internal <b><tt>[internal]</tt></b> Processor- and program-wise local2global arrays are actually stored in
* two different containers.
* \endinternal
*/
void InitLocal2Global(const NumberingSubset::vector_const_shared_ptr& numbering_subset_list,
DoConsiderProcessorWiseLocal2Global do_consider_processor_wise_local_2_global);
......@@ -250,6 +251,7 @@ namespace MoReFEM
* \brief Add a new finite element and returns a non-constant reference to it.
*
* \internal <b><tt>[internal]</tt></b> This method should only be called within friend CreateNodeListHelper.
* \endinternal
*
* \param[in] ref_felt Description of a reference finite element associated to an \a Unknown, a \a NumberingSubset
* and a \a RefGeomElt.
......@@ -339,7 +341,8 @@ namespace MoReFEM
* \brief Returns whether the \a local_felt_space is in \a domain or not.
*
* \internal <b><tt>[internal]</tt></b> felt object here just returns its underlying geometric_element;
* it's upon this one the test is really performed (domain is a purely geometruc concept).
* it's upon this one the test is really performed (domain is a purely geometric concept).
* \endinternal
*
* \param[in] local_felt_space \a LocalFEltSpace being considered (here the only relevant information
* about it is the \a GeometricElement to which it is related).
......
......@@ -307,6 +307,7 @@ namespace MoReFEM
* mutable. The reason for this is that I would have to renounce to the constness of FEltSpace elsewhere
* otherwise only for an operation that happens in the very beginning of the program, in the initialization
* phase.
* \endinternal
*/
......@@ -352,6 +353,7 @@ namespace MoReFEM
* partitioning occurs. All those still present will be put into \a dof_list_ container.
*
* \internal <b><tt>[internal]</tt></b> Should only be called in GodOfDof::Init().
* \endinternal
*/
void ComputeDofList(const std::vector<unsigned int>& dof_unique_id_list);
......@@ -488,6 +490,7 @@ namespace MoReFEM
*
* \internal <b><tt>[internal]</tt></b> This method assumes there is one; it is checked by an assert in
* debug mode.
* \endinternal
*
* \param[in] ref_geom_elt Reference geometric element.
*
......@@ -500,7 +503,9 @@ namespace MoReFEM
/*!
* \brief Prepare the finite element list from the mesh and the domain.
*
* \internal <b><tt>[internal]</tt></b> This method is called in the constructor and should not be called again afterwards.
* \internal <b><tt>[internal]</tt></b> This method is called in the constructor and should not be called again
* afterwards.
* \endinternal
*
* \param[in] mesh Mesh upon which the GodOfDof in which the finite element space
* is defined is built.
......@@ -581,6 +586,7 @@ namespace MoReFEM
*
* \internal <b><tt>[internal]</tt></b> Could have been computed from \a unknown_storage_, but it is convenient
* to get it stored independently.
* \endinternal
*
*/
const NumberingSubset::vector_const_shared_ptr numbering_subset_list_;
......
......@@ -111,6 +111,7 @@ namespace MoReFEM
* \brief Constructor.
*
* \internal <b><tt>[internal]</tt></b> It is private as construction should be driven by friend GodOfDofManager.
* \endinternal
*
* \copydetails doxygen_hide_mpi_param
* \param[in] mesh Mesh upon which the GodOfDof is built.
......@@ -459,9 +460,10 @@ namespace MoReFEM
/*!
* \brief Set for each concerned dof the associated value from a Dirichlet boundary condition.
*
* \internal <b><tt>[internal]</tt></b> Boundary conditions have not been discussed deeply yet and so essential ones are still
* handled à la Felisce (which is not necessarily a bad thing here).
* \internal <b><tt>[internal]</tt></b> Boundary conditions have not been discussed deeply yet and so
* essential ones are still handled à la Felisce (which is not necessarily a bad thing here).
* However, we depart much for the handling of natural ones.
* \endinternal
*/
void SetBoundaryCondition();
......@@ -532,6 +534,7 @@ namespace MoReFEM
* \brief Third part of the Init() method, which mostly settles the data reduction to processor-size.
*
* \internal <b><tt>[internal]</tt></b> This part is compiled.
* \endinternal
*
* \copydetails doxygen_hide_do_consider_processor_wise_local_2_global
* \param[in] \copydetails doxygen_hide_dof_list_per_felt_space_arg
......@@ -586,6 +589,7 @@ namespace MoReFEM
*
* \internal <b><tt>[internal]</tt></b> This information is redundant with the one from node_per_felt_,
* but it allows to use a slicker interface (direct loop instead of three imbricated ones). // \todo #258
* \endinternal
*/
Dof::vector_shared_ptr processor_wise_dof_list_;
......@@ -594,6 +598,7 @@ namespace MoReFEM
*
* \internal <b><tt>[internal]</tt></b> This information is redundant with the one from node_per_felt_,
* but it allows to use a slicker interface (direct loop instead of three imbricated ones).
* \endinternal
*/
Dof::vector_shared_ptr ghosted_dof_list_;
......
......@@ -79,6 +79,7 @@ namespace MoReFEM
*
* \internal <b><tt>[internal]</tt></b> This is actually a struct to ease the syntax of
* friendship declaration in NodeBearer class.
* \endinternal
*
*/
struct ComputeMatrixPattern
......
......@@ -40,7 +40,9 @@ namespace MoReFEM
/*!
* \brief Convenient alias.
*
* \internal <b><tt>[internal]</tt></b> Unordered map use the address and not the NodeBearer object in its hash table.
* \internal <b><tt>[internal]</tt></b> Unordered map use the address and not the NodeBearer object in its
* hash table.
* \endinternal
*/
using connectivity_type = std::unordered_map<NodeBearer::shared_ptr, NodeBearer::vector_shared_ptr>;
......
......@@ -218,6 +218,7 @@ namespace MoReFEM
*
* \internal <b><tt>[internal]</tt></b> It should be noticed that when the object is created the number of processor-wise dofs
* is not known.
* \endinternal
*/
unsigned int Nprogram_wise_dof_ = 0u;
......
......@@ -42,8 +42,9 @@ namespace MoReFEM
/*!
* \brief Return the domain that is associated to a given finite element space.
*
* \internal <b><tt>[internal]</tt></b> A factory function is used here due to the \a UniqueIdT template parameter: C++ grammar doesn't
* allow an explicit template parameter in a non-template class constructor.
* \internal <b><tt>[internal]</tt></b> A factory function is used here due to the \a UniqueIdT template
* parameter: C++ grammar doesn't allow an explicit template parameter in a non-template class constructor.
* \endinternal
*
* \copydoc doxygen_hide_input_data_arg
*
......
......@@ -149,6 +149,7 @@ namespace MoReFEM
*
* \internal <b><tt>[internal]</tt></b> This method is nonetheless marked const as the quantity
* accessed is mutable.
* \endinternal
*
* \return Reference to the finite element storage per domain.
*/
......@@ -166,8 +167,10 @@ namespace MoReFEM
*
* The key is the UniqueId of a Domain, which is given by the method Domain::GetUniqueId().
*
* \internal <b><tt>[internal]</tt></b> The mutable keyword is there because GetLocalFEltSpacePerRefLocalFEltSpace(const Domain&) may have
* \internal <b><tt>[internal]</tt></b> The mutable keyword is there because
* GetLocalFEltSpacePerRefLocalFEltSpace(const Domain&) may have
* to compute its content on the fly. No other method should be allowed to modify it!
* \endinternal
*/
mutable std::unordered_map<unsigned int, Impl::InternalStorage> felt_storage_per_domain_;
};
......
......@@ -36,6 +36,7 @@ namespace MoReFEM
*
* \internal <b><tt>[internal]</tt></b> This container behaves almost like a map, except that there
* is no ordering relation on the keys (that's why a std::map was not used in the first place).
* \endinternal
*/
using LocalFEltSpacePerRefLocalFEltSpace =
std::vector<std::pair<Internal::RefFEltNS::RefLocalFEltSpace::const_unique_ptr, LocalFEltSpace::per_geom_elt_index>>;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment