modules.txt 16.6 KB
Newer Older
Benjamin Faigle's avatar
 
Benjamin Faigle committed
1
/*!
2
3
4
 * \file
 *
 * \brief This file contains all module definitions for the doxygen documentation.
5
 *
Benjamin Faigle's avatar
 
Benjamin Faigle committed
6
 */
7

8
/* ***************** Porousmediaflow ******************/
9
/*!
10
 * \defgroup Porousmediaflow Porous-Medium Flow (fully implicit if not denoted otherwise)
11
 */
12
    /*!
13
14
     * \ingroup Porousmediaflow
     * \defgroup OnePModels 1p (one-phase Darcy flow)
15
     */
16
17
18
19
20
21
22
23
24
        /*!
         * \ingroup OnePModels
         * \defgroup OnePModel Implicit
         *
         * \copydetails Dumux::OnePModel
         */
        /*!
         * \ingroup OnePModels
         * \defgroup OnePhase Sequential
25
26
         *
         * \copydetails Dumux::FVPressure1P
27
         */
28
    /*!
29
30
31
32
     * \ingroup Porousmediaflow
     * \defgroup OnePTwoCModel 1p2c (one-phase, two-component Darcy flow)
     *
     * \copydetails Dumux::OnePTwoCModel
33
     */
34
    /*!
35
36
     * \ingroup Porousmediaflow
     * \defgroup TwoPModels 2p (two-phase Darcy flow)
37
     */
38
39
40
41
42
43
        /*!
         * \ingroup TwoPModels
         * \defgroup TwoPModel Implicit
         *
         * \copydetails Dumux::TwoPModel
         */
44
    /*!
45
46
         * \ingroup TwoPModels
         * \defgroup IMPES Sequential
47
     *
48
     * # Pressure
49
     * \copydetails Dumux::FVPressure2P
50
51
     * <br>
     * # Velocity
52
53
     * \copydetails Dumux::FVVelocity2P
     * <br>
54
     * # Saturation
55
     * \copydetails Dumux::FVSaturation2P
56
         */
57
    /*!
58
59
     * \ingroup Porousmediaflow
     * \defgroup TwoPTwoCModels 2p2c (two-phase, two-component Darcy flow)
60
     */
61
62
63
64
65
66
        /*!
         * \ingroup TwoPTwoCModels
         * \defgroup TwoPTwoCModel Implicit
         *
         * \copydetails Dumux::TwoPTwoCModel
         */
67
    /*!
68
69
         * \ingroup TwoPTwoCModels
         * \defgroup IMPEC Sequential
70
     *
71
     * # Pressure
72
     * \copydetails Dumux::FVPressure2P2C
73
74
75
     * <br>
     * # Transport
     * \copydetails Dumux::FVTransport2P2C
76
77
78
79
80
81
         */
    /*!
     * \ingroup Porousmediaflow
     * \defgroup TwoPDFMModel 2pdfm (two-phase Darcy flow in discrete fracture-matrix)
     *
     * \copydetails Dumux::TwoPDFMModel
82
     */
83
    /*!
84
85
86
87
     * \ingroup Porousmediaflow
     * \defgroup TwoPMincModel 2pminc (two-phase Darcy flow dual continuum)
     *
     * \copydetails Dumux::TwoPMincModel
88
89
     */
    /*!
90
91
92
93
     * \ingroup Porousmediaflow
     * \defgroup TwoPNCModel 2pnc (two-phase, n-component Darcy flow)
     *
     * \copydetails Dumux::TwoPNCModel
94
95
     */
    /*!
96
97
98
99
     * \ingroup Porousmediaflow
     * \defgroup TwoPNCMinModel 2pncmin (two-phase, n-component Darcy flow with mineralization)
     *
     * \copydetails Dumux::TwoPNCMinModel
100
     */
101
    /*!
102
103
104
105
     * \ingroup Porousmediaflow
     * \defgroup ThreePModel 3p (three-phase Darcy flow)
     *
     * \copydetails Dumux::ThreePModel
106
107
     */
    /*!
108
109
110
111
     * \ingroup Porousmediaflow
     * \defgroup ThreePThreeCModel 3p3c (three-phase, three-component Darcy flow)
     *
     * \copydetails Dumux::ThreePThreeCModel
112
     */
113
    /*!
114
     * \ingroup Porousmediaflow
115
     * \defgroup CO2Model CO2 (two-phase, two-component Darcy flow)
116
117
     *
     * \copydetails Dumux::CO2Model
118
     */
119
    /*!
120
     * \ingroup Porousmediaflow
121
     * \defgroup MPNCModel MpNc (m-phase, n-component Darcy flow)
122
123
     *
     * \copydetails Dumux::MPNCModel
124
     */
125
126
    /*!
     * \ingroup Porousmediaflow
127
     * \defgroup NIModel Non-isothermal (energy equation, to be added to an isothermal model)
128
129
130
131
132
133
134
135
136
     *
     * \copydetails Dumux::NIModel
     */
    /*!
     * \ingroup Porousmediaflow
     * \defgroup RichardsModel Richards (Richards flow)
     *
     * \copydetails Dumux::RichardsModel
     */
137

138
/* ***************** Geomechanics ******************/
Benjamin Faigle's avatar
 
Benjamin Faigle committed
139
/*!
140
 * \defgroup Geomechanics Geomechanics (fully implicit)
Benjamin Faigle's avatar
 
Benjamin Faigle committed
141
 */
142
    /*!
143
144
145
146
     * \ingroup Geomechanics
     * \defgroup ElOnePTwoCBoxModel El1p2c (one-phase, two-component Darcy flow, linear elastic deformation model)
     *
     * \copydetails Dumux::ElOnePTwoCModel
147
148
     */
    /*!
149
150
151
152
     * \ingroup Geomechanics
     * \defgroup ElTwoPBoxModel El2p (two-phase Darcy flow, linear elastic deformation model)
     *
     * \copydetails Dumux::ElTwoPModel
153
154
     */
    /*!
155
156
157
158
     * \ingroup Geomechanics
     * \defgroup ElasticBoxModel Elastic (linear elastic deformation model)
     *
     * \copydetails Dumux::ElasticModel
159
     */
160

161
162
/* ***************** Freeflow ******************/
/*!
163
 * \defgroup Freeflow Free Flow (fully implicit)
164
 */
Thomas Fetzer's avatar
Thomas Fetzer committed
165
    /*!
166
     * \ingroup Freeflow
167
     * \defgroup BoxStokesModel Stokes (one-phase Stokes flow)
168
169
     *
     * \copydetails Dumux::StokesModel
Thomas Fetzer's avatar
Thomas Fetzer committed
170
     */
171
    /*!
172
173
174
175
     * \ingroup Freeflow
     * \defgroup BoxStokesncModel Stokesnc (one-phase, n-component Stokes flow)
     *
     * \copydetails Dumux::StokesncModel
176
177
     */
    /*!
178
179
180
181
     * \ingroup Freeflow
     * \defgroup BoxStokesncniModel Stokesncni (one-phase, n-component, non-isothermal Stokes flow)
     *
     * \copydetails Dumux::StokesncniModel
182
     */
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
    /*!
     * \ingroup Freeflow
     * \defgroup BoxZeroEqModel Zeroeq (one-phase Stokes flow with zero-eq turbulence model)
     *
     * \copydetails Dumux::ZeroEqModel
     */
    /*!
     * \ingroup Freeflow
     * \defgroup BoxZeroEqncModel Zeroeqnc (one-phase, n-component Stokes flow with zero-eq turbulence model)
     *
     * \copydetails Dumux::ZeroEqncModel
     */
    /*!
     * \ingroup Freeflow
     * \defgroup BoxZeroEqncniModel Zeroeqncni (one-phase, n-component, non-isothermal Stokes flow with zero-eq turbulence model)
     *
     * \copydetails Dumux::ZeroEqncniModel
     */
201

202
203
204
205
206
207
208
209
210
211
/* ***************** Multidomain ******************/
/*!
 * \defgroup Multidomain Multidomain (fully implicit)
 */
    /*!
     * \ingroup Multidomain
     * \defgroup MultidomainModel Multidomain
     */
    /*!
     * \ingroup Multidomain
212
     * \defgroup TwoPTwoCStokesTwoCModel 2cstokes2p2c (1p2c Stokes flow coupled to 2p2c Darcy flow)
213
     *
214
     * # Coupling Conditions
215
     * \copydetails Dumux::TwoCStokesTwoPTwoCLocalOperator
216
217
     * <br>
     * # Darcy 2p2c
218
219
     * \copydetails Dumux::TwoPTwoCModel
     * <br>
220
     * # Stokes nc
221
222
223
224
     * \copydetails Dumux::StokesncModel
     */
    /*!
     * \ingroup Multidomain
225
     * \defgroup TwoPTwoCNIStokesTwoCNIModel 2cnistokes2p2cni (1p2cni Stokes flow coupled to 2p2cni Darcy flow)
226
     *
227
     * # Coupling Conditions
228
229
     * \copydetails Dumux::TwoCNIStokesTwoPTwoCNILocalOperator
     * <br>
230
231
232
233
234
235
236
     * # Darcy 2p2c
     * \copydetails Dumux::TwoPTwoCModel
     * <br>
     * # Darcy non-isothermal extension
     * \copydetails Dumux::NIModel
     * <br>
     * # Stokes nc
237
238
239
240
     * \copydetails Dumux::StokesncniModel
     */
    /*!
     * \ingroup Multidomain
241
     * \defgroup TwoPTwoCZeroEqTwoCModel 2czeroeq2p2c (1p2c Stokes flow with zero-eq turbulence model coupled to 2p2c Darcy flow)
242
     *
243
     * # Coupling Conditions
244
     * \copydetails Dumux::TwoCStokesTwoPTwoCLocalOperator
245
246
     * <br>
     * # Darcy 2p2c
247
248
     * \copydetails Dumux::TwoPTwoCModel
     * <br>
249
     * # Stokes nc
250
251
252
253
     * \copydetails Dumux::ZeroEqncModel
     */
    /*!
     * \ingroup Multidomain
254
     * \defgroup TwoPTwoCNIZeroEqTwoCNIModel 2cnizeroeq2p2cni (1p2cni Stokes flow with zero-eq turbulence model coupled to 2p2cni Darcy flow)
255
     *
256
     * # Coupling Conditions
257
258
     * \copydetails Dumux::TwoCNIStokesTwoPTwoCNILocalOperator
     * <br>
259
260
261
262
263
264
265
     * # Darcy 2p2c
     * \copydetails Dumux::TwoPTwoCModel
     * <br>
     * # Darcy non-isothermal extension
     * \copydetails Dumux::NIModel
     * <br>
     * # Stokes nc
266
267
     * \copydetails Dumux::ZeroEqncniModel
     */
268

269
/* ***************** Fully Implicit ******************/
270
/*!
271
 * \defgroup ImplicitModel Fully-Coupled Fully-Implicit Scheme
272
 */
273
274
275
276
277
278
279
280
281
282
    /*!
     * \ingroup ImplicitModel
     * \defgroup ImplicitBaseProblems Base Problems
     */
    /*!
     * \ingroup ImplicitModel
     * \defgroup Discretizations Discretizations
     */
         /*!
         * \ingroup Discretizations
283
         * \defgroup CCModel Fully-implicit cell-centered discretization
284
285
286
         */
         /*!
         * \ingroup Discretizations
287
         * \defgroup BoxModel Fully-implicit box discretization
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
         */
    /*!
     * \ingroup ImplicitModel
     * \defgroup ImplicitBoundaryTypes Boundary Types
     */
    /*!
     * \ingroup ImplicitModel
     * \defgroup ImplicitFluxVariables Flux Variables
     */
    /*!
     * \ingroup ImplicitModel
     * \defgroup ImplicitIndices Indices
     */
    /*!
     * \ingroup ImplicitModel
     * \defgroup ImplicitLocalJacobian Local Jacobian
     */
    /*!
     * \ingroup ImplicitModel
     * \defgroup ImplicitLocalResidual Local Residual
     */
    /*!
     * \ingroup ImplicitModel
     * \defgroup ImplicitProperties Properties
     */
    /*!
     * \ingroup ImplicitModel
     * \defgroup ImplicitVolumeVariables Volume Variables
     */
317

318
/* ***************** Sequential ******************/
Benjamin Faigle's avatar
 
Benjamin Faigle committed
319
/*!
320
 * \defgroup Sequential Sequential Scheme (Implicit Pressure, Explicit Transport)
321
 */
322
323
    /*!
     * \ingroup Sequential
324
325
326
327
328
     * \defgroup IMPETproblems Base Problems
     */
    /*!
     * \ingroup Sequential
     * \defgroup IMPETProperties Properties
329
330
     */

331
/* ***************** Material ******************/
332
/*!
333
334
335
 * \defgroup Material Material and Fluid Framework
 * Short description of the most important concepts of the material and fluid framework:
 *
336
 *  - __Binary coefficient:__  @copydoc Binarycoefficients
337
338
 *
 *
339
 *  - __Component:__ @copydoc Components
340
341
 *
 *
342
 *  - __Constraint solver:__ @copydoc ConstraintSolver
343
344
 *
 *
345
 *  - __Equation of state:__ @copydoc EOS
346
347
 *
 *
348
 *  - __Fluid state:__ @copydoc FluidStates
349
350
 *
 *
351
 *  - __Fluid system:__ @copydoc Fluidsystems
352
353
 *
 *
354
 *  - __Fluid-Matrix Interactions:__ @copydoc fluidmatrixinteractions
355
356
 *
 *
357
 *  - __Parameter cache:__ @copydoc ParameterCache
358
359
 *
 *
360
 *  - __Spatial Parameters:__ @copydoc SpatialParameters
Benjamin Faigle's avatar
 
Benjamin Faigle committed
361
 */
362
363
364
    /*!
     * \ingroup Material
     * \defgroup Binarycoefficients Binary Coefficients
365
366
367
368
369
     *  Binary coefficients describe the relations
     *  of a mixture of two components. Typical binary coefficients are
     *  Henry coefficients or binary molecular diffusion
     *  coefficients. So far, the programming interface for accessing binary
     *  coefficients has not been standardized in Dumux.
370
371
372
373
     */
    /*!
     * \ingroup Material
     * \defgroup Components Components
374
375
376
377
378
379
     * Components are fluid systems which provide the
     *  thermodynamic relations for the liquid and gas phase of a single
     *  chemical species or a fixed mixture of species. Their main purpose
     *  is to provide a convenient way to access these quantities from
     *  full-fledged fluid systems. Components are not supposed to be used
     *  by models directly.
380
     */
381
         /*!
382
383
384
         * \ingroup Components
         * \defgroup IAPWS IAPWS
         */
385
     /*!
386
     * \ingroup Material
387
     * \defgroup ConstraintSolver Constraint Solver
388
389
390
391
392
     * Constraint solvers are auxiliary tools to
     * make sure that a fluid state is consistent with some thermodynamic
     * constraints. All constraint solvers specify a well defined set of
     * input variables and make sure that the resulting fluid state is
     * consistent with a given set of thermodynamic equations.
393
394
395
396
397
     * Constraint solvers connect the thermodynamic relations expressed by
     * fluid systems with the thermodynamic quantities stored by fluid
     * states. Using them is not mandatory for models, but given the fact
     * that some thermodynamic constraints can be quite complex to solve,
     * sharing this code between models makes sense.
398
     */
399
400
401
    /*!
     * \ingroup Material
     * \defgroup EOS Equation of State
402
     *
403
404
405
406
407
     * Equations of state (EOS) are auxiliary
     * classes which provide relations between a fluid phase's temperature,
     * pressure, composition and density. Since these classes are only used
     * internally in fluid systems, their programming interface is
     * currently ad-hoc.
408
409
     */
    /*!
Thomas Fetzer's avatar
Thomas Fetzer committed
410
411
     * \ingroup Material
     * \defgroup FluidStates Fluid States
412
413
414
415
416
417
418
419
     * Fluid states are responsible for representing the
     * complete thermodynamic configuration of a system at a given spatial
     * and temporal position. A fluid state always provides access methods
     * to __all__ thermodynamic quantities, but the concept of a fluid state does not
     * mandate what assumptions are made to store these thermodynamic
     * quantities. What fluid states also do __not__ do is to make sure
     * that the thermodynamic state which they represent is physically
     * possible.
420
421
422
423
     */
    /*!
     * \ingroup Material
     * \defgroup Fluidsystems Fluid Systems
424
425
426
427
428
429
430
     * Fluid systems express the thermodynamic relations 
    *  Strictly speaking, these relations are
    *  functions, mathematically.} between quantities. Since functions do
    *  not exhibit any internal state, fluid systems are stateless classes,
    *  i.e. all member functions are static. This is a conscious
    *  decision since the thermodynamic state of the system is expressed by
    *  a fluid state!
Thomas Fetzer's avatar
Thomas Fetzer committed
431
     */
432
433
434
    /*!
     * \ingroup Material
     *  \defgroup fluidmatrixinteractions Fluid-Matrix Interactions
435
436
437
438
     * Some parameters are functions of the fluid state as well as parameters of
     * the matrix. For example the capillary pressure is a function of the phase saturation
     * and the shape parameter \f$\lambda\f$ which is dependent on the material. All such relations
     * are gathered in this module.
439
440
441
442
443
444
445
     */
        /*!
         * \ingroup fluidmatrixinteractions
         *  \defgroup fluidmatrixinteractionslaws Laws for Fluid-Matrix Interactions
         */
         /*!
         * \ingroup fluidmatrixinteractions
446
         *  \defgroup fluidmatrixinteractionsparams Parameters for Fluid-Matrix Interactions
447
         */
448
449
450
    /*!
     * \ingroup Material
     * \defgroup ParameterCache Parameter Cache
451
452
453
454
455
456
457
     * Fluid systems sometimes require
     * computationally expensive parameters for multiple relations. Such
     * parameters can be cached using a so-called parameter
     * cache. Parameter cache objects are specific for each fluid system
     * but they must provide a common interface to update the internal
     * parameters depending on the quantities which changed since the last
     * update.
458
459
460
461
462
463
464
465
466
     * All fluid systems must export a type for their __ParameterCache__
     * objects. Parameter caches can be used to cache parameter that are
     * expensive to compute and are required in multiple thermodynamic
     * relations. For fluid systems which do need to cache parameters,
     * Dumux provides a __NullParameterCache__ class.
     * The actual quantities stored by parameter cache objects are specific
     * to the fluid system and no assumptions on what they provide should be
     * made outside of their fluid system. Parameter cache objects provide a
     * well-defined set of methods to make them coherent with a given fluid
467
     * state, though.
468
469
470
471
472
473
474
475
476
477
478
     * Note, that the parameter cache interface only guarantees that if a
     * more specialized <tt>update()</tt> method is called, it is not slower
     * than the next more-general method (e.g. calling <tt>updateSingleMoleFraction()</tt>
     * may be as expensive as <tt>updateAll()}</tt>. It is thus advisable to
     * rather use a more general <tt>update()</tt> method once than multiple
     * calls to specialized <tt>update()</tt> methods.
     * To make usage of parameter caches easier for the case where all cached
     * quantities ought to be re-calculated if a quantity of a phase was changed,
     * it is possible to only define the <tt>updatePhase()</tt> method and
     * derive the parameter cache from <tt>Dumux::ParameterCacheBase</tt>.
     */
479
480
481
    /*!
     * \ingroup Material
     * \defgroup SpatialParameters Spatial Parameters
482
483
484
     * All parameters which depend on the matrix and
     * therefore on the position within the model domain are defined as spatial
     * parameters. For example permeability, porosity etc.
485
     *
486
     */
487

488
/* ***************** Common ******************/
489
/*!
490
 * \defgroup Common Common Infrastucture
491
 */
492
    /*!
493
494
     * \ingroup Common
     * \defgroup BC Boundary Conditions
495
496
     */
    /*!
497
498
     * \ingroup Common
     * \defgroup Math Elementary Math Functions
499
500
     */
    /*!
501
502
     * \ingroup Common
     * \defgroup Exception Exceptions
503
504
     */
    /*!
505
506
     * \ingroup Common
     * \defgroup Linear Linear Solver Backends
507
508
     */
    /*!
509
510
     * \ingroup Common
     * \defgroup Newton Newton Solver
511
512
     */
    /*!
513
514
515
     * \ingroup Common
     * \defgroup Parameter Parameters
     * See the file parameterlist for available parameters.
516
517
     */
    /*!
518
519
     * \ingroup Common
     * \defgroup Properties Property System
520
521
     */
    /*!
522
523
     * \ingroup Common
     * \defgroup Spline Splines
524
     */
525
    /*!
526
527
     * \ingroup Common
     * \defgroup Start Starting the Simulation
528
529
     */
    /*!
530
531
     * \ingroup Common
     * \defgroup SimControl Time Manager
532
533
     */
    /*!
534
535
     * \ingroup Common
     * \defgroup Valgrind Valgrind
536
     */