diff --git a/src/finiteVolume/fields/fvPatchFields/derived/interstitialInletVelocity/interstitialInletVelocityFvPatchVectorField.C b/src/finiteVolume/fields/fvPatchFields/derived/interstitialInletVelocity/interstitialInletVelocityFvPatchVectorField.C
new file mode 100644
index 0000000000..745918403b
--- /dev/null
+++ b/src/finiteVolume/fields/fvPatchFields/derived/interstitialInletVelocity/interstitialInletVelocityFvPatchVectorField.C
@@ -0,0 +1,139 @@
+/*---------------------------------------------------------------------------*\
+ ========= |
+ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
+ \\ / O peration |
+ \\ / A nd | Copyright (C) 2013 OpenFOAM Foundation
+ \\/ M anipulation |
+-------------------------------------------------------------------------------
+License
+ This file is part of OpenFOAM.
+
+ OpenFOAM is free software: you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with OpenFOAM. If not, see .
+
+\*---------------------------------------------------------------------------*/
+
+#include "interstitialInletVelocityFvPatchVectorField.H"
+#include "volFields.H"
+#include "addToRunTimeSelectionTable.H"
+#include "fvPatchFieldMapper.H"
+#include "surfaceFields.H"
+
+// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
+
+Foam::interstitialInletVelocityFvPatchVectorField::
+interstitialInletVelocityFvPatchVectorField
+(
+ const fvPatch& p,
+ const DimensionedField& iF
+)
+:
+ fixedValueFvPatchField(p, iF),
+ inletVelocity_(p.size(), vector::zero),
+ alphaName_("alpha")
+{}
+
+
+Foam::interstitialInletVelocityFvPatchVectorField::
+interstitialInletVelocityFvPatchVectorField
+(
+ const interstitialInletVelocityFvPatchVectorField& ptf,
+ const fvPatch& p,
+ const DimensionedField& iF,
+ const fvPatchFieldMapper& mapper
+)
+:
+ fixedValueFvPatchField(ptf, p, iF, mapper),
+ inletVelocity_(ptf.inletVelocity_),
+ alphaName_(ptf.alphaName_)
+{}
+
+
+Foam::interstitialInletVelocityFvPatchVectorField::
+interstitialInletVelocityFvPatchVectorField
+(
+ const fvPatch& p,
+ const DimensionedField& iF,
+ const dictionary& dict
+)
+:
+ fixedValueFvPatchField(p, iF, dict),
+ inletVelocity_("inletVelocity", dict, p.size()),
+ alphaName_(dict.lookupOrDefault("alpha", "alpha"))
+{}
+
+
+Foam::interstitialInletVelocityFvPatchVectorField::
+interstitialInletVelocityFvPatchVectorField
+(
+ const interstitialInletVelocityFvPatchVectorField& ptf
+)
+:
+ fixedValueFvPatchField(ptf),
+ inletVelocity_(ptf.inletVelocity_),
+ alphaName_(ptf.alphaName_)
+{}
+
+
+Foam::interstitialInletVelocityFvPatchVectorField::
+interstitialInletVelocityFvPatchVectorField
+(
+ const interstitialInletVelocityFvPatchVectorField& ptf,
+ const DimensionedField& iF
+)
+:
+ fixedValueFvPatchField(ptf, iF),
+ inletVelocity_(ptf.inletVelocity_),
+ alphaName_(ptf.alphaName_)
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
+
+void Foam::interstitialInletVelocityFvPatchVectorField::updateCoeffs()
+{
+ if (updated())
+ {
+ return;
+ }
+
+ const fvPatchField& alphap =
+ patch().lookupPatchField(alphaName_);
+
+ operator==(inletVelocity_/alphap);
+ fixedValueFvPatchField::updateCoeffs();
+}
+
+
+void Foam::interstitialInletVelocityFvPatchVectorField::write(Ostream& os) const
+{
+ fvPatchField::write(os);
+ writeEntryIfDifferent(os, "alpha", "alpha", alphaName_);
+ inletVelocity_.writeEntry("inletVelocity", os);
+ writeEntry("value", os);
+}
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+ makePatchTypeField
+ (
+ fvPatchVectorField,
+ interstitialInletVelocityFvPatchVectorField
+ );
+}
+
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/interstitialInletVelocity/interstitialInletVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/interstitialInletVelocity/interstitialInletVelocityFvPatchVectorField.H
new file mode 100644
index 0000000000..1952b82633
--- /dev/null
+++ b/src/finiteVolume/fields/fvPatchFields/derived/interstitialInletVelocity/interstitialInletVelocityFvPatchVectorField.H
@@ -0,0 +1,161 @@
+/*---------------------------------------------------------------------------*\
+ ========= |
+ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
+ \\ / O peration |
+ \\ / A nd | Copyright (C) 2013 OpenFOAM Foundation
+ \\/ M anipulation |
+-------------------------------------------------------------------------------
+License
+ This file is part of OpenFOAM.
+
+ OpenFOAM is free software: you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
+ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with OpenFOAM. If not, see .
+
+Class
+ Foam::interstitialInletVelocityFvPatchVectorField
+
+Description
+ Inlet velocity in which the actual interstitial velocity is calculated
+ by dividing the specified inletVelocity field with the local phase-fraction.
+
+ Example of the boundary condition specification:
+ \verbatim
+ inlet
+ {
+ type interstitialInletVelocity;
+ inletVelocity uniform (0 0.2 0; // Non-interstitial inlet velocity
+ alpha alpha.particles; // Name of the phase-fraction field
+ value uniform (0 0 0);
+ }
+ \endverbatim
+
+SourceFiles
+ interstitialInletVelocityFvPatchVectorField.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef interstitialInletVelocityFvPatchVectorField_H
+#define interstitialInletVelocityFvPatchVectorField_H
+
+#include "fixedValueFvPatchFields.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+/*---------------------------------------------------------------------------*\
+ Class interstitialInletVelocityFvPatch Declaration
+\*---------------------------------------------------------------------------*/
+
+class interstitialInletVelocityFvPatchVectorField
+:
+ public fixedValueFvPatchVectorField
+{
+ // Private data
+
+ //- Inlet velocity
+ vectorField inletVelocity_;
+
+ //- Name of the flux transporting the field
+ word alphaName_;
+
+
+public:
+
+ //- Runtime type information
+ TypeName("interstitialInletVelocity");
+
+
+ // Constructors
+
+ //- Construct from patch and internal field
+ interstitialInletVelocityFvPatchVectorField
+ (
+ const fvPatch&,
+ const DimensionedField&
+ );
+
+ //- Construct from patch, internal field and dictionary
+ interstitialInletVelocityFvPatchVectorField
+ (
+ const fvPatch&,
+ const DimensionedField&,
+ const dictionary&
+ );
+
+ //- Construct by mapping given
+ // interstitialInletVelocityFvPatchVectorField
+ // onto a new patch
+ interstitialInletVelocityFvPatchVectorField
+ (
+ const interstitialInletVelocityFvPatchVectorField&,
+ const fvPatch&,
+ const DimensionedField&,
+ const fvPatchFieldMapper&
+ );
+
+ //- Construct as copy
+ interstitialInletVelocityFvPatchVectorField
+ (
+ const interstitialInletVelocityFvPatchVectorField&
+ );
+
+ //- Construct and return a clone
+ virtual tmp clone() const
+ {
+ return tmp
+ (
+ new interstitialInletVelocityFvPatchVectorField(*this)
+ );
+ }
+
+ //- Construct as copy setting internal field reference
+ interstitialInletVelocityFvPatchVectorField
+ (
+ const interstitialInletVelocityFvPatchVectorField&,
+ const DimensionedField&
+ );
+
+ //- Construct and return a clone setting internal field reference
+ virtual tmp clone
+ (
+ const DimensionedField& iF
+ ) const
+ {
+ return tmp
+ (
+ new interstitialInletVelocityFvPatchVectorField(*this, iF)
+ );
+ }
+
+
+ // Member functions
+
+ //- Update the coefficients associated with the patch field
+ virtual void updateCoeffs();
+
+ //- Write
+ virtual void write(Ostream&) const;
+
+};
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //