www.mooseframework.org
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
RichardsSeffPrimeAux Class Reference

Calculates derivative of effective saturation wrt a specified porepressure. More...

#include <RichardsSeffPrimeAux.h>

Inheritance diagram for RichardsSeffPrimeAux:
[legend]

Public Member Functions

 RichardsSeffPrimeAux (const InputParameters &parameters)
 

Protected Member Functions

virtual Real computeValue ()
 

Protected Attributes

const RichardsSeff_seff_UO
 The user object that defines effective saturation as function of porepressure (or porepressures in the multiphase situation) More...
 
int _wrt1
 AuxKernel calculates d^2(Seff)/dP_wrt1 so wrt1 is the porepressure number to differentiate wrt to. More...
 
std::vector< const VariableValue * > _pressure_vals
 the porepressure values (this will be length N where N is the number of arguments that the _seff_UO requires) Eg, for twophase simulations N=2 More...
 
std::vector< Real > _mat
 array of derivtives: This auxkernel returns _mat[_wrt1] More...
 

Detailed Description

Calculates derivative of effective saturation wrt a specified porepressure.

Definition at line 24 of file RichardsSeffPrimeAux.h.

Constructor & Destructor Documentation

RichardsSeffPrimeAux::RichardsSeffPrimeAux ( const InputParameters &  parameters)

Definition at line 27 of file RichardsSeffPrimeAux.C.

28  : AuxKernel(parameters),
29  _seff_UO(getUserObject<RichardsSeff>("seff_UO")),
30  _wrt1(getParam<int>("wrtnum"))
31 {
32  int n = coupledComponents("pressure_vars");
33  if (_wrt1 < 0 || _wrt1 >= n)
34  mooseError("Your wrtnum is ", _wrt1, " but it must obey 0 <= wrtnum < ", n, ".");
35  _pressure_vals.resize(n);
36 
37  for (int i = 0; i < n; ++i)
38  _pressure_vals[i] = &coupledValue("pressure_vars", i);
39 
40  _mat.resize(n);
41 }
std::vector< const VariableValue * > _pressure_vals
the porepressure values (this will be length N where N is the number of arguments that the _seff_UO r...
int _wrt1
AuxKernel calculates d^2(Seff)/dP_wrt1 so wrt1 is the porepressure number to differentiate wrt to...
std::vector< Real > _mat
array of derivtives: This auxkernel returns _mat[_wrt1]
const RichardsSeff & _seff_UO
The user object that defines effective saturation as function of porepressure (or porepressures in th...

Member Function Documentation

Real RichardsSeffPrimeAux::computeValue ( )
protectedvirtual

Definition at line 44 of file RichardsSeffPrimeAux.C.

45 {
47  return _mat[_wrt1];
48 }
virtual void dseff(std::vector< const VariableValue * > p, unsigned int qp, std::vector< Real > &result) const =0
derivative(s) of effective saturation as a function of porepressure(s) at given quadpoint of the elem...
std::vector< const VariableValue * > _pressure_vals
the porepressure values (this will be length N where N is the number of arguments that the _seff_UO r...
int _wrt1
AuxKernel calculates d^2(Seff)/dP_wrt1 so wrt1 is the porepressure number to differentiate wrt to...
std::vector< Real > _mat
array of derivtives: This auxkernel returns _mat[_wrt1]
const RichardsSeff & _seff_UO
The user object that defines effective saturation as function of porepressure (or porepressures in th...

Member Data Documentation

std::vector<Real> RichardsSeffPrimeAux::_mat
protected

array of derivtives: This auxkernel returns _mat[_wrt1]

Definition at line 53 of file RichardsSeffPrimeAux.h.

Referenced by computeValue(), and RichardsSeffPrimeAux().

std::vector<const VariableValue *> RichardsSeffPrimeAux::_pressure_vals
protected

the porepressure values (this will be length N where N is the number of arguments that the _seff_UO requires) Eg, for twophase simulations N=2

Definition at line 50 of file RichardsSeffPrimeAux.h.

Referenced by computeValue(), and RichardsSeffPrimeAux().

const RichardsSeff& RichardsSeffPrimeAux::_seff_UO
protected

The user object that defines effective saturation as function of porepressure (or porepressures in the multiphase situation)

Definition at line 37 of file RichardsSeffPrimeAux.h.

Referenced by computeValue().

int RichardsSeffPrimeAux::_wrt1
protected

AuxKernel calculates d^2(Seff)/dP_wrt1 so wrt1 is the porepressure number to differentiate wrt to.

Definition at line 43 of file RichardsSeffPrimeAux.h.

Referenced by computeValue(), and RichardsSeffPrimeAux().


The documentation for this class was generated from the following files: