25#ifndef DUMUX_ONEPNC_IO_FIELDS_HH
26#define DUMUX_ONEPNC_IO_FIELDS_HH
40 template <
class OutputModule>
43 using VolumeVariables =
typename OutputModule::VolumeVariables;
44 using FluidSystem =
typename VolumeVariables::FluidSystem;
46 out.addVolumeVariable([](
const auto& volVars){
return volVars.pressure(0); },
48 out.addVolumeVariable([](
const auto& volVars){
return volVars.density(0); },
50 out.addVolumeVariable([](
const auto& volVars){
return volVars.viscosity(0); },
52 out.addVolumeVariable([](
const auto& volVars){
return volVars.pressure(0) - 1e5; },
55 for (
int i = 0; i < VolumeVariables::numFluidComponents(); ++i)
56 out.addVolumeVariable([i](
const auto& volVars){
return volVars.moleFraction(0, i); },
57 IOName::moleFraction<FluidSystem>(0, i));
59 for (
int i = 0; i < VolumeVariables::numFluidComponents(); ++i)
60 out.addVolumeVariable([i](
const auto& volVars){
return volVars.massFraction(0, i); },
61 IOName::massFraction<FluidSystem>(0, i));
64 template <
class ModelTraits,
class Flu
idSystem,
class Sol
idSystem =
void>
69 else if (ModelTraits::useMoles())
70 return IOName::moleFraction<FluidSystem>(0, pvIdx);
72 return IOName::massFraction<FluidSystem>(0, pvIdx);
A collection of input/output field names for common physical quantities.
std::string viscosity(int phaseIdx) noexcept
I/O name of viscosity for multiphase systems.
Definition: name.hh:74
std::string pressure(int phaseIdx) noexcept
I/O name of pressure for multiphase systems.
Definition: name.hh:34
std::string density(int phaseIdx) noexcept
I/O name of density for multiphase systems.
Definition: name.hh:65
Adds I/O fields specific to the OnePNC model.
Definition: porousmediumflow/1pnc/iofields.hh:38
static std::string primaryVariableName(int pvIdx, int state=0)
Definition: porousmediumflow/1pnc/iofields.hh:65
static void initOutputModule(OutputModule &out)
Definition: porousmediumflow/1pnc/iofields.hh:41