LCOV - code coverage report
Current view: top level - include/userobjects - PorousFlowCapillaryPressureVG.h (source / functions) Hit Total Coverage
Test: porous_flow Test Coverage Lines: 1 1 100.0 %
Date: 2017-11-21 14:47:27 Functions: 1 2 50.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /****************************************************************/
       2             : /* MOOSE - Multiphysics Object Oriented Simulation Environment  */
       3             : /*                                                              */
       4             : /*          All contents are licensed under LGPL V2.1           */
       5             : /*             See LICENSE for full restrictions                */
       6             : /****************************************************************/
       7             : 
       8             : #ifndef POROUSFLOWCAPILLARYPRESSUREVG_H
       9             : #define POROUSFLOWCAPILLARYPRESSUREVG_H
      10             : 
      11             : #include "PorousFlowCapillaryPressure.h"
      12             : 
      13             : class PorousFlowCapillaryPressureVG;
      14             : 
      15             : template <>
      16             : InputParameters validParams<PorousFlowCapillaryPressureVG>();
      17             : 
      18             : /**
      19             :  * van Genuchten form of capillary pressure.
      20             :  *
      21             :  * From van Genuchten, M. Th., A closed for equation for predicting the
      22             :  * hydraulic conductivity of unsaturated soils, Soil Sci. Soc., 44, 892-898 (1980)
      23             :  */
      24         176 : class PorousFlowCapillaryPressureVG : public PorousFlowCapillaryPressure
      25             : {
      26             : public:
      27             :   PorousFlowCapillaryPressureVG(const InputParameters & parameters);
      28             : 
      29             :   virtual Real capillaryPressureCurve(Real saturation) const override;
      30             :   virtual Real dCapillaryPressureCurve(Real saturation) const override;
      31             :   virtual Real d2CapillaryPressureCurve(Real saturation) const override;
      32             : 
      33             :   virtual Real effectiveSaturation(Real pc) const override;
      34             :   virtual Real dEffectiveSaturation(Real pc) const override;
      35             :   virtual Real d2EffectiveSaturation(Real pc) const override;
      36             : 
      37             : protected:
      38             :   /// van Genuchten exponent m
      39             :   const Real _m;
      40             :   /// van Genuchten capillary coefficient alpha
      41             :   const Real _alpha;
      42             :   /// capillary pressure = f(Seff * s_scale) - pc_sscale, where f is the van Genuchten function.  For almost all simulations s_scale=1 will be appropriate
      43             :   const Real _s_scale;
      44             :   /// pc_sscale = f(s_scale), where f is the van Genuchten function
      45             :   const Real _pc_sscale;
      46             : };
      47             : 
      48             : #endif // POROUSFLOWCAPILLARYPRESSUREVG_H

Generated by: LCOV version 1.11