diff --git a/applications/solvers/heatTransfer/buoyantPimpleFoam/Make/options b/applications/solvers/heatTransfer/buoyantPimpleFoam/Make/options
index 8d01214e6cf4ab096cb34b4ee3d4cc4694420798..69a3f27e448fbde79fa68c2080455628c7fed047 100644
--- a/applications/solvers/heatTransfer/buoyantPimpleFoam/Make/options
+++ b/applications/solvers/heatTransfer/buoyantPimpleFoam/Make/options
@@ -10,4 +10,6 @@ EXE_LIBS = \
     -lcompressibleTurbulenceModel \
     -lcompressibleRASModels \
     -lcompressibleLESModels \
-    -lfiniteVolume
+    -lfiniteVolume \
+    -L$(FOAM_USER_LIBBIN) \
+        -lFvPatchScalarFieldEnthalpyJump
diff --git a/src/finiteVolume/Make/files b/src/finiteVolume/Make/files
index 3691354d0bce17a25fe23fc7d03206b80910225a..22988f32169a94d03186bcb7328e24f85c13294e 100644
--- a/src/finiteVolume/Make/files
+++ b/src/finiteVolume/Make/files
@@ -174,6 +174,7 @@ $(derivedFvPatchFields)/waveSurfacePressure/waveSurfacePressureFvPatchScalarFiel
 $(derivedFvPatchFields)/phaseHydrostaticPressure/phaseHydrostaticPressureFvPatchScalarField.C
 $(derivedFvPatchFields)/variableHeightFlowRate/variableHeightFlowRateFvPatchField.C
 $(derivedFvPatchFields)/variableHeightFlowRateInletVelocity/variableHeightFlowRateInletVelocityFvPatchVectorField.C
+$(derivedFvPatchFields)/temperatureJump/temperatureJumpFvPatchScalarField.C
 
 fvsPatchFields = fields/fvsPatchFields
 $(fvsPatchFields)/fvsPatchField/fvsPatchFields.C
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/temperatureJump/temperatureJumpFvPatchScalarField.C b/src/finiteVolume/fields/fvPatchFields/derived/temperatureJump/temperatureJumpFvPatchScalarField.C
new file mode 100644
index 0000000000000000000000000000000000000000..99be42e3d6fc610f434fb8db65acb9889266dfbf
--- /dev/null
+++ b/src/finiteVolume/fields/fvPatchFields/derived/temperatureJump/temperatureJumpFvPatchScalarField.C
@@ -0,0 +1,129 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2012 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 <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "addToRunTimeSelectionTable.H"
+#include "temperatureJumpFvPatchScalarField.H"
+#include "volFields.H"
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::temperatureJumpFvPatchScalarField::temperatureJumpFvPatchScalarField
+(
+    const fvPatch& p,
+    const DimensionedField<scalar, volMesh>& iF
+)
+:
+    fixedJumpFvPatchField<scalar>(p, iF),
+    jumpTable_(0)
+{}
+
+
+Foam::temperatureJumpFvPatchScalarField::temperatureJumpFvPatchScalarField
+(
+    const temperatureJumpFvPatchScalarField& ptf,
+    const fvPatch& p,
+    const DimensionedField<scalar, volMesh>& iF,
+    const fvPatchFieldMapper& mapper
+)
+:
+    fixedJumpFvPatchField<scalar>(ptf, p, iF, mapper),
+    jumpTable_(ptf.jumpTable_().clone().ptr())
+{}
+
+
+Foam::temperatureJumpFvPatchScalarField::temperatureJumpFvPatchScalarField
+(
+    const fvPatch& p,
+    const DimensionedField<scalar, volMesh>& iF,
+    const dictionary& dict
+)
+:
+    fixedJumpFvPatchField<scalar>(p, iF),
+    jumpTable_(new DataEntry<scalar>("jumpTable"))
+{
+
+    if (this->cyclicPatch().owner())
+    {
+         jumpTable_ = DataEntry<scalar>::New("jumpTable", dict);
+    }
+
+    if (dict.found("value"))
+    {
+        fvPatchScalarField::operator=
+        (
+            scalarField("value", dict, p.size())
+        );
+    }
+}
+
+
+Foam::temperatureJumpFvPatchScalarField::temperatureJumpFvPatchScalarField
+(
+    const temperatureJumpFvPatchScalarField& ptf
+)
+:
+    cyclicLduInterfaceField(),
+    fixedJumpFvPatchField<scalar>(ptf),
+    jumpTable_(ptf.jumpTable_().clone().ptr())
+{}
+
+
+Foam::temperatureJumpFvPatchScalarField::temperatureJumpFvPatchScalarField
+(
+    const temperatureJumpFvPatchScalarField& ptf,
+    const DimensionedField<scalar, volMesh>& iF
+)
+:
+    fixedJumpFvPatchField<scalar>(ptf, iF),
+    jumpTable_(ptf.jumpTable_().clone().ptr())
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+
+void Foam::temperatureJumpFvPatchScalarField::write(Ostream& os) const
+{
+    fixedJumpFvPatchField<scalar>::write(os);
+    if (this->cyclicPatch().owner())
+    {
+        jumpTable_->writeData(os);
+    }
+    this->writeEntry("value", os);
+}
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+   makePatchTypeField
+   (
+       fvPatchScalarField,
+       temperatureJumpFvPatchScalarField
+   );
+}
+
+// ************************************************************************* //
diff --git a/src/finiteVolume/fields/fvPatchFields/derived/temperatureJump/temperatureJumpFvPatchScalarField.H b/src/finiteVolume/fields/fvPatchFields/derived/temperatureJump/temperatureJumpFvPatchScalarField.H
new file mode 100644
index 0000000000000000000000000000000000000000..55364eac5d23dd54cdd62af3c6b8494fda4a5635
--- /dev/null
+++ b/src/finiteVolume/fields/fvPatchFields/derived/temperatureJump/temperatureJumpFvPatchScalarField.H
@@ -0,0 +1,159 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2012 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 <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::temperatureJumpFvPatchScalarField
+
+Description
+    Introduce a jump in temperature on a cycle patch
+    front
+    {
+        type            temperatureJump;
+        patchType       cyclic;
+        jumpTable       constant 100;
+        value           uniform 300;
+    }
+
+SourceFiles
+    temperatureJumpFvPatchScalarField.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef temperatureJumpFvPatchScalarField_H
+#define temperatureJumpFvPatchScalarField_H
+
+#include "fixedJumpFvPatchField.H"
+#include "DataEntry.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                Class temperatureJumpFvPatchScalarField Declaration
+\*---------------------------------------------------------------------------*/
+
+class temperatureJumpFvPatchScalarField
+:
+    public fixedJumpFvPatchField<scalar>
+{
+
+    // Private data
+
+        //- Interpolation table
+        autoPtr<DataEntry<scalar> > jumpTable_;
+
+
+public:
+
+    //- Runtime type information
+    TypeName("temperatureJump");
+
+    // Constructors
+
+        //- Construct from patch and internal field
+        temperatureJumpFvPatchScalarField
+        (
+            const fvPatch&,
+            const DimensionedField<scalar, volMesh>&
+        );
+
+        //- Construct from patch, internal field and dictionary
+        temperatureJumpFvPatchScalarField
+        (
+            const fvPatch&,
+            const DimensionedField<scalar, volMesh>&,
+            const dictionary&
+        );
+
+        //- Construct by mapping given temperatureJumpFvPatchScalarField onto a
+        //  new patch
+        temperatureJumpFvPatchScalarField
+        (
+            const temperatureJumpFvPatchScalarField&,
+            const fvPatch&,
+            const DimensionedField<scalar, volMesh>&,
+            const fvPatchFieldMapper&
+        );
+
+        //- Construct as copy
+        temperatureJumpFvPatchScalarField
+        (
+            const temperatureJumpFvPatchScalarField&
+        );
+
+        //- Construct and return a clone
+        virtual tmp<fvPatchField<scalar> > clone() const
+        {
+            return tmp<fvPatchField<scalar> >
+            (
+                new temperatureJumpFvPatchScalarField(*this)
+            );
+        }
+
+        //- Construct as copy setting internal field reference
+        temperatureJumpFvPatchScalarField
+        (
+            const temperatureJumpFvPatchScalarField&,
+            const DimensionedField<scalar, volMesh>&
+        );
+
+        //- Construct and return a clone setting internal field reference
+        virtual tmp<fvPatchField<scalar> > clone
+        (
+            const DimensionedField<scalar, volMesh>& iF
+        ) const
+        {
+            return tmp<fvPatchField<scalar> >
+            (
+                new temperatureJumpFvPatchScalarField(*this, iF)
+            );
+        }
+
+
+    // Member functions
+
+
+        // Access functions
+
+            //- Return jumpTable
+            const DataEntry<scalar>& jumpTable() const
+            {
+                return jumpTable_();
+            }
+
+
+        //- Write
+        virtual void write(Ostream&) const;
+};
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/thermophysicalModels/basic/Make/files b/src/thermophysicalModels/basic/Make/files
index 1c08f455dfd1f1231e23ddf8d4b1835b2cec8fb9..ba53ed77405176ae3cfacce07456807bcf6dfbb3 100644
--- a/src/thermophysicalModels/basic/Make/files
+++ b/src/thermophysicalModels/basic/Make/files
@@ -22,6 +22,7 @@ derivedFvPatchFields/mixedEnthalpy/mixedEnthalpyFvPatchScalarField.C
 derivedFvPatchFields/fixedInternalEnergy/fixedInternalEnergyFvPatchScalarField.C
 derivedFvPatchFields/gradientInternalEnergy/gradientInternalEnergyFvPatchScalarField.C
 derivedFvPatchFields/mixedInternalEnergy/mixedInternalEnergyFvPatchScalarField.C
+derivedFvPatchFields/enthalpyJump/enthalpyJumpFvPatchScalarField.C
 
 derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C
 
diff --git a/src/thermophysicalModels/basic/Make/options b/src/thermophysicalModels/basic/Make/options
index 8b8c0733d056383ffe992b66fee93fc3ba6a028b..4eba2f1e115c0d5d02742c6473cf95391bf8410c 100644
--- a/src/thermophysicalModels/basic/Make/options
+++ b/src/thermophysicalModels/basic/Make/options
@@ -1,6 +1,8 @@
 EXE_INC = \
     -I$(LIB_SRC)/finiteVolume/lnInclude \
-    -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude
+    -I$(LIB_SRC)/thermophysicalModels/specie/lnInclude \
+    -I/home/tom3/sergio/development/chtMultiRegionCoupledFoam/lnInclude
 
 LIB_LIBS = \
-    -lfiniteVolume
+    -lfiniteVolume \
+    -L$(FOAM_USER_LIBBIN)/FvPatchScalarFieldEnthalpyJump
diff --git a/src/thermophysicalModels/basic/basicThermo/basicThermo.C b/src/thermophysicalModels/basic/basicThermo/basicThermo.C
index 59c00560407c1f35fba58930b69ded28f8261ad6..bb6acc01ed2ab34b02d30be378a273e114be5b00 100644
--- a/src/thermophysicalModels/basic/basicThermo/basicThermo.C
+++ b/src/thermophysicalModels/basic/basicThermo/basicThermo.C
@@ -33,6 +33,8 @@ License
 #include "fixedInternalEnergyFvPatchScalarField.H"
 #include "gradientInternalEnergyFvPatchScalarField.H"
 #include "mixedInternalEnergyFvPatchScalarField.H"
+#include "temperatureJumpFvPatchScalarField.H"
+#include "enthalpyJumpFvPatchScalarField.H"
 
 /* * * * * * * * * * * * * * * private static data * * * * * * * * * * * * * */
 
@@ -64,10 +66,14 @@ Foam::wordList Foam::basicThermo::hBoundaryTypes()
         {
             hbt[patchi] = gradientEnthalpyFvPatchScalarField::typeName;
         }
-        else if (isA<mixedFvPatchScalarField>(tbf[patchi]))
+        else if(isA<mixedFvPatchScalarField>(tbf[patchi]))
         {
             hbt[patchi] = mixedEnthalpyFvPatchScalarField::typeName;
         }
+        else if (isA<temperatureJumpFvPatchScalarField>(tbf[patchi]))
+        {
+            hbt[patchi] = enthalpyJumpFvPatchScalarField::typeName;
+        }
     }
 
     return hbt;
@@ -85,7 +91,7 @@ void Foam::basicThermo::hBoundaryCorrection(volScalarField& h)
             refCast<gradientEnthalpyFvPatchScalarField>(hbf[patchi]).gradient()
                 = hbf[patchi].fvPatchField::snGrad();
         }
-        else if (isA<mixedEnthalpyFvPatchScalarField>(hbf[patchi]))
+        else if(isA<mixedEnthalpyFvPatchScalarField>(hbf[patchi]))
         {
             refCast<mixedEnthalpyFvPatchScalarField>(hbf[patchi]).refGrad()
                 = hbf[patchi].fvPatchField::snGrad();
diff --git a/src/thermophysicalModels/basic/derivedFvPatchFields/enthalpyJump/enthalpyJumpFvPatchScalarField.C b/src/thermophysicalModels/basic/derivedFvPatchFields/enthalpyJump/enthalpyJumpFvPatchScalarField.C
new file mode 100644
index 0000000000000000000000000000000000000000..4337dd2ffb9c8e1f20b4fef88bfdc6d594634f2d
--- /dev/null
+++ b/src/thermophysicalModels/basic/derivedFvPatchFields/enthalpyJump/enthalpyJumpFvPatchScalarField.C
@@ -0,0 +1,165 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2012 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 <http://www.gnu.org/licenses/>.
+
+\*---------------------------------------------------------------------------*/
+
+#include "addToRunTimeSelectionTable.H"
+#include "enthalpyJumpFvPatchScalarField.H"
+#include "temperatureJumpFvPatchScalarField.H"
+#include "basicThermo.H"
+
+// * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
+
+Foam::enthalpyJumpFvPatchScalarField::enthalpyJumpFvPatchScalarField
+(
+    const fvPatch& p,
+    const DimensionedField<scalar, volMesh>& iF
+)
+:
+    fixedJumpFvPatchField<scalar>(p, iF)
+{}
+
+
+Foam::enthalpyJumpFvPatchScalarField::enthalpyJumpFvPatchScalarField
+(
+    const enthalpyJumpFvPatchScalarField& ptf,
+    const fvPatch& p,
+    const DimensionedField<scalar, volMesh>& iF,
+    const fvPatchFieldMapper& mapper
+)
+:
+    fixedJumpFvPatchField<scalar>(ptf, p, iF, mapper)
+{}
+
+
+Foam::enthalpyJumpFvPatchScalarField::enthalpyJumpFvPatchScalarField
+(
+    const fvPatch& p,
+    const DimensionedField<scalar, volMesh>& iF,
+    const dictionary& dict
+)
+:
+    fixedJumpFvPatchField<scalar>(p, iF)
+{
+
+    if (dict.found("value"))
+    {
+        fvPatchScalarField::operator=
+        (
+            scalarField("value", dict, p.size())
+        );
+    }
+}
+
+
+Foam::enthalpyJumpFvPatchScalarField::enthalpyJumpFvPatchScalarField
+(
+    const enthalpyJumpFvPatchScalarField& ptf
+)
+:
+    cyclicLduInterfaceField(),
+    fixedJumpFvPatchField<scalar>(ptf)
+{}
+
+
+Foam::enthalpyJumpFvPatchScalarField::enthalpyJumpFvPatchScalarField
+(
+    const enthalpyJumpFvPatchScalarField& ptf,
+    const DimensionedField<scalar, volMesh>& iF
+)
+:
+    fixedJumpFvPatchField<scalar>(ptf, iF)
+{}
+
+
+// * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+void Foam::enthalpyJumpFvPatchScalarField::updateCoeffs()
+{
+    if (this->updated())
+    {
+        return;
+    }
+
+    if (this->cyclicPatch().owner())
+    {
+        const basicThermo& thermo = db().lookupObject<basicThermo>
+        (
+            "thermophysicalProperties"
+        );
+
+        label patchID = patch().index();
+
+        const temperatureJumpFvPatchScalarField& TbPatch =
+            refCast<const temperatureJumpFvPatchScalarField>
+            (
+                thermo.T().boundaryField()[patchID]
+            );
+
+        const scalar time = this->db().time().value();
+        const scalarField jumpTb
+        (
+            patch().size(), TbPatch.jumpTable().value(time)
+        );
+
+        const labelUList& faceCells = this->patch().faceCells();
+
+        if (db().foundObject<volScalarField>("h"))
+        {
+            jump_ = thermo.h(jumpTb, faceCells);
+        }
+        else if (db().foundObject<volScalarField>("hs"))
+        {
+            jump_ = thermo.hs(jumpTb, faceCells);
+        }
+        else
+        {
+             FatalErrorIn("enthalpyJumpFvPatchScalarField::updateCoeffs()")
+            << " hs or h are not found in db()"
+            << exit(FatalError);
+        }
+    }
+
+    fixedJumpFvPatchField<scalar>::updateCoeffs();
+}
+
+
+void Foam::enthalpyJumpFvPatchScalarField::write(Ostream& os) const
+{
+    fixedJumpFvPatchField<scalar>::write(os);
+    this->writeEntry("value", os);
+}
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+   makePatchTypeField
+   (
+       fvPatchScalarField,
+       enthalpyJumpFvPatchScalarField
+   );
+}
+
+// ************************************************************************* //
diff --git a/src/thermophysicalModels/basic/derivedFvPatchFields/enthalpyJump/enthalpyJumpFvPatchScalarField.H b/src/thermophysicalModels/basic/derivedFvPatchFields/enthalpyJump/enthalpyJumpFvPatchScalarField.H
new file mode 100644
index 0000000000000000000000000000000000000000..770e2a473949d86e5391c4c7c832389d5182be0d
--- /dev/null
+++ b/src/thermophysicalModels/basic/derivedFvPatchFields/enthalpyJump/enthalpyJumpFvPatchScalarField.H
@@ -0,0 +1,142 @@
+/*---------------------------------------------------------------------------*\
+  =========                 |
+  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+   \\    /   O peration     |
+    \\  /    A nd           | Copyright (C) 2012 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 <http://www.gnu.org/licenses/>.
+
+Class
+    Foam::enthalpyJumpFvPatchScalarField
+
+Description
+
+SourceFiles
+    enthalpyJumpFvPatchScalarField.C
+
+\*---------------------------------------------------------------------------*/
+
+#ifndef enthalpyJumpFvPatchScalarField_H
+#define enthalpyJumpFvPatchScalarField_H
+
+#include "fixedJumpFvPatchField.H"
+#include "DataEntry.H"
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+namespace Foam
+{
+
+/*---------------------------------------------------------------------------*\
+                    Class enthalpyJumpFvPatchScalarField Declaration
+\*---------------------------------------------------------------------------*/
+
+class enthalpyJumpFvPatchScalarField
+:
+    public fixedJumpFvPatchField<scalar>
+{
+
+public:
+
+    //- Runtime type information
+    TypeName("enthalpyJump");
+
+    // Constructors
+
+        //- Construct from patch and internal field
+        enthalpyJumpFvPatchScalarField
+        (
+            const fvPatch&,
+            const DimensionedField<scalar, volMesh>&
+        );
+
+        //- Construct from patch, internal field and dictionary
+        enthalpyJumpFvPatchScalarField
+        (
+            const fvPatch&,
+            const DimensionedField<scalar, volMesh>&,
+            const dictionary&
+        );
+
+        //- Construct by mapping given enthalpyJumpFvPatchScalarField onto a
+        //  new patch
+        enthalpyJumpFvPatchScalarField
+        (
+            const enthalpyJumpFvPatchScalarField&,
+            const fvPatch&,
+            const DimensionedField<scalar, volMesh>&,
+            const fvPatchFieldMapper&
+        );
+
+        //- Construct as copy
+        enthalpyJumpFvPatchScalarField
+        (
+            const enthalpyJumpFvPatchScalarField&
+        );
+
+        //- Construct and return a clone
+        virtual tmp<fvPatchField<scalar> > clone() const
+        {
+            return tmp<fvPatchField<scalar> >
+            (
+                new enthalpyJumpFvPatchScalarField(*this)
+            );
+        }
+
+        //- Construct as copy setting internal field reference
+        enthalpyJumpFvPatchScalarField
+        (
+            const enthalpyJumpFvPatchScalarField&,
+            const DimensionedField<scalar, volMesh>&
+        );
+
+        //- Construct and return a clone setting internal field reference
+        virtual tmp<fvPatchField<scalar> > clone
+        (
+            const DimensionedField<scalar, volMesh>& iF
+        ) const
+        {
+            return tmp<fvPatchField<scalar> >
+            (
+                new enthalpyJumpFvPatchScalarField(*this, iF)
+            );
+        }
+
+
+    // Member functions
+
+
+        // Evaluation functions
+
+            //- Update the coefficients
+            virtual void updateCoeffs();
+
+
+        //- Write
+        virtual void write(Ostream&) const;
+};
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+} // End namespace Foam
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#endif
+
+// ************************************************************************* //
diff --git a/src/thermophysicalModels/basic/psiThermo/hPsiThermo/hPsiThermo.C b/src/thermophysicalModels/basic/psiThermo/hPsiThermo/hPsiThermo.C
index 7f4d0fe1887fd55d1da3c260c10346443f93b8e8..92604068408029540f631cc1216f6fc8bd0d6f68 100644
--- a/src/thermophysicalModels/basic/psiThermo/hPsiThermo/hPsiThermo.C
+++ b/src/thermophysicalModels/basic/psiThermo/hPsiThermo/hPsiThermo.C
@@ -113,7 +113,8 @@ Foam::hPsiThermo<MixtureType>::hPsiThermo(const fvMesh& mesh)
         ),
         mesh,
         dimEnergy/dimMass,
-        this->hBoundaryTypes()
+        this->hBoundaryTypes(),
+        mesh.boundaryMesh().types()
     )
 {
     scalarField& hCells = h_.internalField();
diff --git a/src/thermophysicalModels/basic/psiThermo/hsPsiThermo/hsPsiThermo.C b/src/thermophysicalModels/basic/psiThermo/hsPsiThermo/hsPsiThermo.C
index a8010f8700f2721bd80c86a9843db5ed7c8ee429..7d1cae28f9715b44e38904cb421e051ad1d00ea0 100644
--- a/src/thermophysicalModels/basic/psiThermo/hsPsiThermo/hsPsiThermo.C
+++ b/src/thermophysicalModels/basic/psiThermo/hsPsiThermo/hsPsiThermo.C
@@ -113,7 +113,8 @@ Foam::hsPsiThermo<MixtureType>::hsPsiThermo(const fvMesh& mesh)
         ),
         mesh,
         dimEnergy/dimMass,
-        this->hBoundaryTypes()
+        this->hBoundaryTypes(),
+        mesh.boundaryMesh().types()
     )
 {
     scalarField& hsCells = hs_.internalField();
diff --git a/src/thermophysicalModels/basic/rhoThermo/hRhoThermo/hRhoThermo.C b/src/thermophysicalModels/basic/rhoThermo/hRhoThermo/hRhoThermo.C
index e2e7503cfc938a1681a55fdf12940d02ad7f3044..d27b7b31cd9b4c1c81bfb01f2832f3db6692358c 100644
--- a/src/thermophysicalModels/basic/rhoThermo/hRhoThermo/hRhoThermo.C
+++ b/src/thermophysicalModels/basic/rhoThermo/hRhoThermo/hRhoThermo.C
@@ -118,9 +118,11 @@ Foam::hRhoThermo<MixtureType>::hRhoThermo(const fvMesh& mesh)
         ),
         mesh,
         dimEnergy/dimMass,
-        this->hBoundaryTypes()
+        this->hBoundaryTypes(),
+        mesh.boundaryMesh().types()
     )
 {
+
     scalarField& hCells = h_.internalField();
     const scalarField& TCells = this->T_.internalField();
 
@@ -138,6 +140,7 @@ Foam::hRhoThermo<MixtureType>::hRhoThermo(const fvMesh& mesh)
     hBoundaryCorrection(h_);
 
     calculate();
+
 }
 
 
diff --git a/src/thermophysicalModels/basic/rhoThermo/hsRhoThermo/hsRhoThermo.C b/src/thermophysicalModels/basic/rhoThermo/hsRhoThermo/hsRhoThermo.C
index f8697bf675beabbcb7d650d392dd17a33bbac7f4..8d55e26d93d05a476305d5e1481381b01287bb64 100644
--- a/src/thermophysicalModels/basic/rhoThermo/hsRhoThermo/hsRhoThermo.C
+++ b/src/thermophysicalModels/basic/rhoThermo/hsRhoThermo/hsRhoThermo.C
@@ -118,7 +118,8 @@ Foam::hsRhoThermo<MixtureType>::hsRhoThermo(const fvMesh& mesh)
         ),
         mesh,
         dimEnergy/dimMass,
-        this->hBoundaryTypes()
+        this->hBoundaryTypes(),
+        mesh.boundaryMesh().types()
     )
 {
     scalarField& hsCells = hs_.internalField();