12#ifndef DUMUX_PNM_2P_NC_IO_FIELDS_HH
13#define DUMUX_PNM_2P_NC_IO_FIELDS_HH
27 template <
class OutputModule>
33 using VolumeVariables =
typename OutputModule::VolumeVariables;
34 using FS =
typename VolumeVariables::FluidSystem;
38 out.addFluxVariable([](
const auto& fluxVars,
const auto& fluxVarsCache)
39 {
return fluxVarsCache.pcEntry(); },
"pcEntry");
41 out.addFluxVariable([](
const auto& fluxVars,
const auto& fluxVarsCache)
42 {
return fluxVarsCache.transmissibility(FS::phase0Idx); },
"transmissibilityW");
44 out.addFluxVariable([](
const auto& fluxVars,
const auto& fluxVarsCache)
45 {
return fluxVarsCache.transmissibility(FS::phase1Idx); },
"transmissibilityN");
47 auto volumeFluxW = [](
const auto& fluxVars,
const auto& fluxVarsCache)
49 auto upwindTerm = [](
const auto& volVars) {
return volVars.mobility(FS::phase0Idx); };
51 return abs(fluxVars.advectiveFlux(FS::phase0Idx, upwindTerm));
53 out.addFluxVariable(volumeFluxW,
"volumeFluxW");
55 auto volumeFluxN = [](
const auto& fluxVars,
const auto& fluxVarsCache)
57 auto upwindTerm = [](
const auto& volVars) {
return volVars.mobility(FS::phase1Idx); };
59 return abs(fluxVars.advectiveFlux(FS::phase1Idx, upwindTerm));
61 out.addFluxVariable(volumeFluxN,
"volumeFluxN");
static void initOutputModule(OutputModule &out)
Definition: porenetwork/common/iofields.hh:28
Adds output fields specific to the PNM 2pnc model.
Definition: porenetwork/2pnc/iofields.hh:25
static void initOutputModule(OutputModule &out)
Definition: porenetwork/2pnc/iofields.hh:28
static void initOutputModule(OutputModule &out)
Definition: porousmediumflow/2pnc/iofields.hh:30
Definition: discretization/porenetwork/fvelementgeometry.hh:24
Adds I/O fields specific to the twop-nc model.