fix doxy issues

This commit is contained in:
Arne Morten Kvarving
2025-09-16 12:25:44 +02:00
parent 1934607c9e
commit 326dca48cc
21 changed files with 89 additions and 69 deletions
+5 -3
View File
@@ -13,6 +13,8 @@
#ifndef APPLIER_H_
#define APPLIER_H_
#include <dune/istl/solver.hh>
#include <opm/elasticity/matrixops.hpp>
namespace Opm {
@@ -34,12 +36,12 @@ struct OperatorApplier
void apply(Vector& v, Vector& d);
//! \brief Preprocess a preconditioner, noop for an inverse operator
//! \param[in/out] b The load vector
//! \param[in/out] x The initial (guessed) solution
//! \param[in,out] x The initial (guessed) solution
//! \param[in,out] b The load vector
void pre(Vector& x, Vector& b);
//! \brief Postprocess a preconditioner, noop for an inverse operator
//! \param[in/out] x The final solution
//! \param[in,out] x The final solution
void post(Vector& x);
T& A;
+7 -4
View File
@@ -31,14 +31,17 @@ class Elasticity {
//! \param[in] gv_ The grid we are doing the calculations on
explicit Elasticity(const GridType& gv_) : gv(gv_) {}
//! \brief Returns the B matrix in a quadrature point
//! \param[in] point (Reference) coordinates of quadrature point
//! \param[in] Jinv Jacobian matrix in quadrature point
//! \param[out] B The B matrix
//! \brief Returns the vector of basis function values in a quadrature point
//! \param[out] BVector The vector of basis function values
//! \param[in] point (Reference) coordinates of quadrature point
template<int funcdim>
void getBVector(Dune::FieldVector<ctype,funcdim>& BVector,
const Dune::FieldVector<ctype,dim>& point);
//! \brief Returns the B matrix in a quadrature point
//! \param[out] B The B matrix
//! \param[in] point (Reference) coordinates of quadrature point
//! \param[in] Jinv Jacobian matrix in quadrature point
template<int components, int funcdim>
void getBmatrix(Dune::FieldMatrix<ctype,components,funcdim>& B,
const Dune::FieldVector<ctype,dim>& point,
@@ -73,7 +73,8 @@ struct Schwarz {
//! \param[in] zcells The wanted number of cells to collapse in z per level
//! \param[in] op The linear operator
//! \param[in] gv The cornerpoint grid
//! \param[out] thread Whether or not to clone for threads
//! \param A The ASMHandler for the elasticity operator(s)
//! \param[out] copy Whether or not to clone for threads
static std::shared_ptr<type>
setup(int /* pre */, int /* post */, int /* target */, int /* zcells */,
std::shared_ptr<Operator>& op, const Dune::CpGrid& gv,
@@ -112,7 +113,7 @@ struct AMG1 {
//! \param[in] zcells The wanted number of cells to collapse in z per level
//! \param[in] op The linear operator
//! \param[in] gv The cornerpoint grid
//! \param[out] thread Whether or not to clone for threads
//! \param[out] copy Whether or not to clone for threads
static std::shared_ptr<type>
setup(int pre, int post, int target, int zcells,
std::shared_ptr<Operator>& op, const Dune::CpGrid& /* gv */,
@@ -144,7 +145,8 @@ struct FastAMG {
//! \param[in] zcells The wanted number of cells to collapse in z per level
//! \param[in] op The linear operator
//! \param[in] gv The cornerpoint grid
//! \param[out] thread Whether or not to clone for threads
//! \param A Assembly handler
//! \param[out] copy Whether or not to clone for threads
static std::shared_ptr<type>
setup(int pre, int post, int target, int zcells,
std::shared_ptr<Operator>& op, const Dune::CpGrid& gv,
@@ -175,7 +177,8 @@ struct AMG2Level {
//! \param[in] zcells The wanted number of cells to collapse in z per level
//! \param[in] op The linear operator
//! \param[in] gv The cornerpoint grid
//! \param[out] thread Whether or not to clone for threads
//! \param A The assembly handler
//! \param[out] copy Whether or not to clone for threads
static std::shared_ptr<type>
setup(int pre, int post, int target, int zcells,
std::shared_ptr<Operator>& op, const Dune::CpGrid& gv,
+2 -2
View File
@@ -236,7 +236,7 @@ class ElasticityUpscale
//! \param[in] Escale_ A scale value for E-moduluses to avoid numerical issues
//! \param[in] file The eclipse grid file
//! \param[in] rocklist If not blank, file is a rocklist
//! \param[in] verbose If true, give verbose output
//! \param[in] verbose_ If true, give verbose output
ElasticityUpscale(const GridType& gv_, ctype tol_, ctype Escale_,
const std::string& file, const std::string& rocklist,
bool verbose_)
@@ -256,7 +256,7 @@ class ElasticityUpscale
//! \brief Add a MPC equation
//! \param[in] dir The direction of the MPC
//! \param[in] slave The slave node index
//! \param[in] slavenode The slave node index
//! \param[in] m The vertices on the master grid
void addMPC(Direction dir, int slavenode,
const BoundaryGrid::Vertex& m);
+6 -2
View File
@@ -69,7 +69,7 @@ class MatrixOps {
size_t r0, size_t c0, bool symmetric);
//! \brief Extract the diagonal of a matrix into a new matrix
//! \param[in] The matrix to extract the diagonal from
//! \param[in] A The matrix to extract the diagonal from
//! \returns M = diag(A)
static Matrix extractDiagonal(const Matrix& A);
@@ -78,7 +78,11 @@ class MatrixOps {
static Matrix diagonal(size_t N);
//! \brief Extract a subblock of a matrix into a new matrix
//! \param[in] The matrix to extract from
//! \param[in] A The matrix to extract from
//! \param[in] r0 First row index for block
//! \param[in] N Number of rows in block
//! \param[in] c0 First column index for block
//! \param[in] M Number of colums in block
//! \returns The subblock
static Matrix extractBlock(const Matrix& A,
size_t r0, size_t N, size_t c0, size_t M);
+2 -2
View File
@@ -27,8 +27,8 @@ namespace Elasticity {
class MortarEvaluator : public Dune::LinearOperator<Vector, Vector> {
public:
//! \brief Constructor
//! \param[in] Ai Evaluator for A^-1
//! \param[in] B The mortar coupling matrix
//! \param[in] A_ Evaluator for A^-1
//! \param[in] B_ The mortar coupling matrix
MortarEvaluator(const Matrix& A_,
const Matrix& B_) :
A(A_), B(B_)
+2 -2
View File
@@ -28,8 +28,8 @@ class MortarBlockEvaluator : public Dune::LinearOperator<Vector, Vector> {
public:
//! \brief Constructor
//! \param[in] Ai Solver or preconditioner for A^-1
//! \param[in] B The mortar coupling matrix
//! \param[in] Ai_ Solver or preconditioner for A^-1
//! \param[in] B_ The mortar coupling matrix
MortarBlockEvaluator(T& Ai_,
const Matrix& B_) :
Ai(Ai_), B(B_), op(Ai)
+4 -4
View File
@@ -37,12 +37,12 @@ namespace Elasticity {
class MortarSchurPre : public Dune::Preconditioner<Vector,Vector> {
public:
//! \brief Constructor
//! \param[in] P The multiplier block with diagonal A approximation
//! \param[in] B The mortar coupling matrix
//! \param[in] P_ The multiplier block with diagonal A approximation
//! \param[in] B_ The mortar coupling matrix
//! \param[in] Apre_ A preconfigured preconditioner for A
//! \param[in] symmetric If true, use symmetric preconditioning
//! \param[in] symmetric_ If true, use symmetric preconditioning
MortarSchurPre(const Matrix& P_, const Matrix& B_,
PrecondElasticityBlock& Apre_, bool symmetric_=false) :
PrecondElasticityBlock& Apre_, bool symmetric_ = false) :
Apre(Apre_), B(B_), N(B.N()), M(B.M()),
Lpre(P_, false, false), symmetric(symmetric_)
{
+7 -5
View File
@@ -12,6 +12,8 @@
#ifndef MORTAR_UTILS_HPP_
#define MORTAR_UTILS_HPP_
#include <opm/elasticity/matrixops.hpp>
namespace Opm {
namespace Elasticity {
@@ -22,20 +24,20 @@ class MortarUtils {
//! \param[in] y The vector
//! \param[in] len The number of indices to extract
//! \param[in] start The first index in the range
static void extractBlock(Vector& x, const Vector& y, int len, int start=0)
static void extractBlock(Vector& x, const Vector& y, int len, int start = 0)
{
x.resize(len);
std::copy(y.begin()+start,y.begin()+len+start,x.begin());
std::copy(y.begin() + start, y.begin() + len + start, x.begin());
}
//! \brief Inject a range of indices into a vector
//! \param[in/out] x The vector to inject into
//! \param[in,out] x The vector to inject into
//! \param[in] y The vector with the data to inject
//! \param[in] len The number of indices to inject
//! \param[in] start The first index in the range
static void injectBlock(Vector& x, const Vector& y, int len, int start=0)
static void injectBlock(Vector& x, const Vector& y, int len, int start = 0)
{
std::copy(y.begin(),y.begin()+len,x.begin()+start);
std::copy(y.begin(), y.begin() + len, x.begin() + start);
}
};
+5 -2
View File
@@ -14,6 +14,9 @@
#include <dune/istl/solvers.hh>
#include <opm/elasticity/matrixops.hpp>
#include <opm/elasticity/mortar_utils.hpp>
namespace Opm {
namespace Elasticity {
@@ -27,8 +30,8 @@ class UzawaSolver : public Dune::InverseOperator<X,Y>
typedef std::shared_ptr<Dune::InverseOperator<X,Y> > OperatorPtr;
//! \brief Default constructor
//! \param[in] innersolver_ The inner solver
//! \param[in] outersolve_ The outer solver
//! \param[in] B Coupling matrix
//! \param[in] outersolver_ The outer solver
//! \param[in] B_ Coupling matrix
UzawaSolver(OperatorPtr& innersolver_,
OperatorPtr& outersolver_,
const Matrix& B_) :
@@ -184,18 +184,18 @@ namespace Opm
/// @return capillary pressure at the given cell and saturation.
double capillaryPressure(int cell_index, double saturation) const;
/// @brief Derivative of Capillary pressure.
/// @param cell_index index of a grid cell.
/// @param saturation a saturation value.
/// @param c index of a grid cell.
/// @param s saturation value.
/// @return capillary pressure at the given cell and saturation.
double capillaryPressureDeriv(int c, double s) const;
// @brief Minimum of saturation in rock table.
/// @param cell_index index of a grid cell.
/// @param c index of a grid cell.
/// @return minimum saturation in given cell.
double s_min(int c) const;
// @brief Maximum of saturation in rock table.
/// @param cell_index index of a grid cell.
/// @param c index of a grid cell.
/// @return maximum saturation in given cell.
double s_max(int c) const;
+1 -8
View File
@@ -47,17 +47,10 @@ namespace Opm
Rock();
/// @brief Initialize from a grdecl file.
/// @param parser the parser holding the grdecl data.
/// @param parser the parser holding the grdecl data.
/// @param deck Deck to initialize from
/// @param global_cell the mapping from cell indices to the logical
/// cartesian indices of the grdecl file.
/// @param perm_threshold lower threshold for permeability.
/// @param rock_list_filename if non-null, the referred string gives
/// the filename for the rock list.
/// @param use_jfunction_scaling if true, use j-function scaling of capillary
/// pressure, if applicable.
/// @param sigma interface tension for j-scaling, if applicable.
/// @param theta angle for j-scaling, if applicable.
void init(const Opm::Deck& deck,
const std::vector<int>& global_cell,
const double perm_threshold = 0.0);
+2 -4
View File
@@ -86,11 +86,9 @@ namespace Opm
}
/// @brief Estimates a scalar cell velocity from face fluxes.
/// @tparam GridInterface a grid interface.
/// @tparam FlowSol a flow solution type.
/// @param[out] cell_velocity the estimated velocities.
/// @param[in] ginterf an interface to the grid.
/// @param[in] flow_solution the object containing the fluxes.
/// @param[in] grid an interface to the grid.
/// @param[in] face_flux the object containing the fluxes.
template <class GridInterface>
void estimateCellVelocitySimpleInterface(std::vector<typename GridInterface::Vector>& cell_velocity,
const GridInterface& grid,
+8 -6
View File
@@ -86,12 +86,14 @@ namespace Opm {
/// For this explicit method it should be < 1.
void setCourantNumber(double cn);
/// \brief Solve transport equation, evolving \param saturation
/// for \param time seconds.
/// Cfl type conditions may force many explicit timesteps to
/// be taken, before the function returns.
/// @tparam
/// @param
/// @brief Solve transport equation.
/// @param saturation the evolving saturation
/// @param time Time in seconds.
/// @param gravity Gravity
/// @param pressure_sol Pressure solution
/// @param injection_rates Injection ratees
/// @details Cfl type conditions may force many explicit timesteps to
/// be taken, before the function returns.
template <class PressureSolution>
void transportSolve(std::vector<double>& saturation,
const double time,
+6 -4
View File
@@ -89,10 +89,12 @@ namespace Opm {
/// @param
void display();
/// \brief Solve transport equation, evolving \param saturation
/// for \param time seconds.
/// @tparam
/// @param
/// @brief Solve transport equation.
/// @param saturation the evolving saturation
/// @param time Time in seconds.
/// @param gravity Gravity
/// @param pressure_sol Pressure solution
/// @param injection_rates Injection ratees
template <class PressureSolution>
bool transportSolve(std::vector<double>& saturation,
const double time,
+9 -7
View File
@@ -85,13 +85,15 @@ namespace Opm {
const BoundaryConditions& boundary);
/// \brief Solve transport equation, evolving \param saturation
/// for \param time seconds.
/// Cfl type conditions may force many explicit timesteps to
/// be taken, before the function returns.
/// @tparam
/// @param
template <class PressureSolution>
/// @brief Solve transport equation.
/// @param saturation the evolving saturation
/// @param time Time in seconds.
/// @param gravity Gravity
/// @param pressure_sol Pressure solution
/// @param injection_rates Injection ratees
/// @details Cfl type conditions may force many explicit timesteps to
/// be taken, before the function returns.
template <class PressureSolution>
void transportSolve(std::vector<double>& saturation,
const double time,
const typename GridInterface::Vector& gravity,
@@ -560,6 +560,7 @@ namespace Opm {
/// The reservoir properties of each grid cell. In method
/// @code computeInnerProducts() @endcode, we only inspect
/// the permeability field of @code r @endcode.
/// @param[in] grav Gravity
template<class Point>
void computeInnerProducts(const RockInterface& r,
const Point& grav)
@@ -597,7 +598,7 @@ namespace Opm {
/// @code solve() @endcode we query this object for the
/// phase mobilities (i.e., @code r.phaseMobilities()
/// @endcode) and the phase densities (i.e., @code
/// phaseDensities() @encode) of each phase.
/// phaseDensities() @endcode) of each phase.
///
/// @param [in] sat
/// Saturation of primary phase. One scalar value for each
@@ -645,7 +646,7 @@ namespace Opm {
///
/// @param [in] linsolver_maxit maximum iterations allowed
///
/// @param [in] prolongate_factor Factor to scale the prolongated coarse
/// @param [in] prolongate_factor Factor to scale the prolongated coarse
/// coarse grid correction
///
/// @param [in] smooth_steps Number of smoothing steps to be
@@ -200,6 +200,8 @@ namespace Opm {
/// Specific reservoir properties. Only the permeability
/// is used in method @code buildMatrix() @endcode.
///
/// @param [in] grav Gravity
///
/// @param [in] nf
/// Number of faces (i.e., number of neighbours) of cell
/// @code *c @endcode.
+5 -3
View File
@@ -186,15 +186,17 @@ namespace Opm {
/// @endcode retrieves the @f$ij@f$'th component of the
/// cell permeability @f$K@f$.
///
/// @param [in] c
/// @param[in] c
/// Cell for which to evaluate the inverse of the mimetic
/// inner product.
///
/// @param [in] r
/// @param[in] r
/// Specific rock properties. Only the permeability
/// is used in method @code buildStaticContrib() @endcode.
///
/// @param [in] nf
/// @param[in] grav Gravity
///
/// @param[in] nf
/// Number of faces (i.e., number of neighbours) of cell
/// @code *c @endcode.
void buildStaticContrib(const CellIter& c,
+1 -1
View File
@@ -88,7 +88,7 @@ namespace Opm {
//! \brief Default constructor.
//! \param[in] mpi_rank Rank of this process (for parallel simulations).
//! \param[in] options Options structure.
//! \param[in] options_ Options structure.
//! \details Uses the following options: fluids
RelPermUpscaleHelper(int mpi_rank, std::map<std::string,std::string>& options_);
@@ -72,6 +72,7 @@ namespace Opm
/// only needed for nonperiodic upscaling.
/// @param pressure_drop the pressure drop in Pascal over the domain.
/// @param upscaled_perm typically the output of upscaleSinglePhase().
/// @param[out] success True if upscaling was successful
/// @return the upscaled relative permeability matrices of both phases.
/// The relative permeability matrix, call it k, is such that if K_w is the phase
/// permeability and K the absolute permeability, K_w = k*K.