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

Calculate heat or mass transfer from a coupled variable to u. More...

#include <PorousFlowHeatMassTransfer.h>

Inheritance diagram for PorousFlowHeatMassTransfer:
[legend]

Public Member Functions

 PorousFlowHeatMassTransfer (const InputParameters &parameters)
 

Protected Member Functions

virtual Real computeQpResidual () override
 
virtual Real computeQpJacobian () override
 
virtual Real computeQpOffDiagJacobian (unsigned int jvar) override
 
virtual Real jac (unsigned int jvar) const
 

Private Attributes

const unsigned int _v_var
 
const VariableValue & _v
 
const VariableValue & _coef_var
 

Detailed Description

Calculate heat or mass transfer from a coupled variable to u.

This can be used to transfer from a variable specified in a highly conductive domain to a low conductive domain. With this kernel the retardation effect described in the porous flow documentation can be overcome. Alternatively, this kernel can also be used to model simplified precipitation/dissolution, where the Variable is the concentration.

Definition at line 28 of file PorousFlowHeatMassTransfer.h.

Constructor & Destructor Documentation

◆ PorousFlowHeatMassTransfer()

PorousFlowHeatMassTransfer::PorousFlowHeatMassTransfer ( const InputParameters &  parameters)

Definition at line 34 of file PorousFlowHeatMassTransfer.C.

35  : Kernel(parameters),
36  _v_var(coupled("v")),
37  _v(coupledValue("v")),
38  _coef_var(coupledValue("transfer_coefficient"))
39 {
40 }

Member Function Documentation

◆ computeQpJacobian()

Real PorousFlowHeatMassTransfer::computeQpJacobian ( )
overrideprotectedvirtual

Definition at line 49 of file PorousFlowHeatMassTransfer.C.

50 {
51  return jac(_var.number());
52 }

◆ computeQpOffDiagJacobian()

Real PorousFlowHeatMassTransfer::computeQpOffDiagJacobian ( unsigned int  jvar)
overrideprotectedvirtual

Definition at line 55 of file PorousFlowHeatMassTransfer.C.

56 {
57  return jac(jvar);
58 }

◆ computeQpResidual()

Real PorousFlowHeatMassTransfer::computeQpResidual ( )
overrideprotectedvirtual

Definition at line 43 of file PorousFlowHeatMassTransfer.C.

44 {
45  return _coef_var[_qp] * (_u[_qp] - _v[_qp]) * _test[_i][_qp];
46 }

◆ jac()

Real PorousFlowHeatMassTransfer::jac ( unsigned int  jvar) const
protectedvirtual

Definition at line 61 of file PorousFlowHeatMassTransfer.C.

62 {
63  if (jvar == _var.number())
64  return _coef_var[_qp] * _phi[_j][_qp] * _test[_i][_qp];
65  else if (jvar == _v_var)
66  return -_coef_var[_qp] * _phi[_j][_qp] * _test[_i][_qp];
67  return 0.0;
68 }

Referenced by computeQpJacobian(), and computeQpOffDiagJacobian().

Member Data Documentation

◆ _coef_var

const VariableValue& PorousFlowHeatMassTransfer::_coef_var
private

Definition at line 42 of file PorousFlowHeatMassTransfer.h.

Referenced by computeQpResidual(), and jac().

◆ _v

const VariableValue& PorousFlowHeatMassTransfer::_v
private

Definition at line 41 of file PorousFlowHeatMassTransfer.h.

Referenced by computeQpResidual().

◆ _v_var

const unsigned int PorousFlowHeatMassTransfer::_v_var
private

Definition at line 40 of file PorousFlowHeatMassTransfer.h.

Referenced by jac().


The documentation for this class was generated from the following files:
PorousFlowHeatMassTransfer::_v
const VariableValue & _v
Definition: PorousFlowHeatMassTransfer.h:41
PorousFlowHeatMassTransfer::_coef_var
const VariableValue & _coef_var
Definition: PorousFlowHeatMassTransfer.h:42
PorousFlowHeatMassTransfer::jac
virtual Real jac(unsigned int jvar) const
Definition: PorousFlowHeatMassTransfer.C:61
PorousFlowHeatMassTransfer::_v_var
const unsigned int _v_var
Definition: PorousFlowHeatMassTransfer.h:40