Foam::relativeVelocityModel::relativeVelocityModel
(
    const dictionary& dict,
    const incompressibleTwoPhaseInteractingMixture& mixture
)
:
    mixture_(mixture),
    alphac_(mixture.alpha2()),
    alphad_(mixture.alpha1()),
    rhoc_(mixture.rhoc()),
    rhod_(mixture.rhod()),

    Udm_
    (
        IOobject
        (
            "Udm",
            alphac_.time().timeName(),
            alphac_.mesh()
        ),
        alphac_.mesh(),
        dimensionedVector("Udm", dimVelocity, vector::zero),
        mixture.U().boundaryField().types()
    )
{}
Foam::relativeVelocityModels::fromMesoscale::fromMesoscale
(
    const dictionary& dict,
    const incompressibleTwoPhaseInteractingMixture& mixture
)
:
  relativeVelocityModel(dict, mixture),
  Vr_(const_cast< GeometricField < vector, fvPatchField, volMesh > &>(mixture.U().mesh().lookupObject< GeometricField <vector, fvPatchField, volMesh> >(word("Vr"))))
{}
Foam::relativeVelocityModels::fromMesoscale::fromMesoscale
(
    const dictionary& dict,
    const incompressibleTwoPhaseInteractingMixture& mixture
)
:
  relativeVelocityModel(dict, mixture),
  Vr_(const_cast< GeometricField < vector, fvPatchField, volMesh > &>(mixture.U().mesh().lookupObject< GeometricField <vector, fvPatchField, volMesh> >(word("Vr"))))
  /*
	Vr_
	(
        IOobject
        (
            "Vr",
            mixture.U().time().timeName(),
            mixture.U().mesh(),
	    IOobject::MUST_READ,
            IOobject::AUTO_WRITE
        ),
        mixture.U().mesh()
	)*/
{}