13#ifndef DUMUX_ONEPNC_IO_FIELDS_HH
14#define DUMUX_ONEPNC_IO_FIELDS_HH
28 template <
class OutputModule>
31 using VolumeVariables =
typename OutputModule::VolumeVariables;
32 using FluidSystem =
typename VolumeVariables::FluidSystem;
34 out.addVolumeVariable([](
const auto& volVars){
return volVars.pressure(0); },
36 out.addVolumeVariable([](
const auto& volVars){
return volVars.density(0); },
38 out.addVolumeVariable([](
const auto& volVars){
return volVars.viscosity(0); },
41 for (
int i = 0; i < VolumeVariables::numFluidComponents(); ++i)
42 out.addVolumeVariable([i](
const auto& volVars){
return volVars.moleFraction(0, i); },
43 IOName::moleFraction<FluidSystem>(0, i));
45 for (
int i = 0; i < VolumeVariables::numFluidComponents(); ++i)
46 out.addVolumeVariable([i](
const auto& volVars){
return volVars.massFraction(0, i); },
47 IOName::massFraction<FluidSystem>(0, i));
50 template <
class ModelTraits,
class Flu
idSystem,
class Sol
idSystem =
void>
55 else if (ModelTraits::useMoles())
56 return IOName::moleFraction<FluidSystem>(0, pvIdx);
58 return IOName::massFraction<FluidSystem>(0, pvIdx);
Adds I/O fields specific to the OnePNC model.
Definition: porousmediumflow/1pnc/iofields.hh:26
static std::string primaryVariableName(int pvIdx, int state=0)
Definition: porousmediumflow/1pnc/iofields.hh:51
static void initOutputModule(OutputModule &out)
Definition: porousmediumflow/1pnc/iofields.hh:29
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:62
std::string pressure(int phaseIdx) noexcept
I/O name of pressure for multiphase systems.
Definition: name.hh:22
std::string density(int phaseIdx) noexcept
I/O name of density for multiphase systems.
Definition: name.hh:53