mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
ENH: Re-worked/simplified temperature jump BC
This commit is contained in:
@ -14,11 +14,6 @@ derivedFvPatchFields/mixedEnergy/mixedEnergyFvPatchScalarField.C
|
|||||||
derivedFvPatchFields/energyJump/energyJump/energyJumpFvPatchScalarField.C
|
derivedFvPatchFields/energyJump/energyJump/energyJumpFvPatchScalarField.C
|
||||||
derivedFvPatchFields/energyJump/energyJumpAMI/energyJumpAMIFvPatchScalarField.C
|
derivedFvPatchFields/energyJump/energyJumpAMI/energyJumpAMIFvPatchScalarField.C
|
||||||
|
|
||||||
derivedFvPatchFields/temperatureJump/temperatureJumpBase/temperatureJumpBase.C
|
|
||||||
derivedFvPatchFields/temperatureJump/temperatureJumpBase/temperatureJumpAMIBase.C
|
|
||||||
derivedFvPatchFields/temperatureJump/uniformTemperatureJump/uniformTemperatureJumpFvPatchScalarField.C
|
|
||||||
derivedFvPatchFields/temperatureJump/uniformTemperatureJumpAMI/uniformTemperatureJumpAMIFvPatchScalarField.C
|
|
||||||
|
|
||||||
derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C
|
derivedFvPatchFields/wallHeatTransfer/wallHeatTransferFvPatchScalarField.C
|
||||||
|
|
||||||
LIB = $(FOAM_LIBBIN)/libfluidThermophysicalModels
|
LIB = $(FOAM_LIBBIN)/libfluidThermophysicalModels
|
||||||
|
|||||||
@ -25,7 +25,7 @@ License
|
|||||||
|
|
||||||
#include "addToRunTimeSelectionTable.H"
|
#include "addToRunTimeSelectionTable.H"
|
||||||
#include "energyJumpFvPatchScalarField.H"
|
#include "energyJumpFvPatchScalarField.H"
|
||||||
#include "temperatureJumpBase.H"
|
#include "fixedJumpFvPatchFields.H"
|
||||||
#include "basicThermo.H"
|
#include "basicThermo.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
@ -107,8 +107,8 @@ void Foam::energyJumpFvPatchScalarField::updateCoeffs()
|
|||||||
label patchID = patch().index();
|
label patchID = patch().index();
|
||||||
|
|
||||||
const scalarField& pp = thermo.p().boundaryField()[patchID];
|
const scalarField& pp = thermo.p().boundaryField()[patchID];
|
||||||
const temperatureJumpBase& TbPatch =
|
const fixedJumpFvPatchScalarField& TbPatch =
|
||||||
refCast<const temperatureJumpBase>
|
refCast<const fixedJumpFvPatchScalarField>
|
||||||
(
|
(
|
||||||
thermo.T().boundaryField()[patchID]
|
thermo.T().boundaryField()[patchID]
|
||||||
);
|
);
|
||||||
|
|||||||
@ -25,7 +25,7 @@ License
|
|||||||
|
|
||||||
#include "addToRunTimeSelectionTable.H"
|
#include "addToRunTimeSelectionTable.H"
|
||||||
#include "energyJumpAMIFvPatchScalarField.H"
|
#include "energyJumpAMIFvPatchScalarField.H"
|
||||||
#include "temperatureJumpBase.H"
|
#include "fixedJumpAMIFvPatchFields.H"
|
||||||
#include "basicThermo.H"
|
#include "basicThermo.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
@ -107,8 +107,8 @@ void Foam::energyJumpAMIFvPatchScalarField::updateCoeffs()
|
|||||||
label patchID = patch().index();
|
label patchID = patch().index();
|
||||||
|
|
||||||
const scalarField& pp = thermo.p().boundaryField()[patchID];
|
const scalarField& pp = thermo.p().boundaryField()[patchID];
|
||||||
const temperatureJumpBase& TbPatch =
|
const fixedJumpAMIFvPatchScalarField& TbPatch =
|
||||||
refCast<const temperatureJumpBase>
|
refCast<const fixedJumpAMIFvPatchScalarField>
|
||||||
(
|
(
|
||||||
thermo.T().boundaryField()[patchID]
|
thermo.T().boundaryField()[patchID]
|
||||||
);
|
);
|
||||||
|
|||||||
@ -1,49 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / 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 "temperatureJumpAMIBase.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
defineTypeNameAndDebug(temperatureJumpAMIBase, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Foam::temperatureJumpAMIBase::temperatureJumpAMIBase()
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Foam::temperatureJumpAMIBase::~temperatureJumpAMIBase()
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,79 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / 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/>.
|
|
||||||
|
|
||||||
Description
|
|
||||||
Base class for temperature jump boundary conditions that provides access
|
|
||||||
to the jump field
|
|
||||||
|
|
||||||
SourceFiles
|
|
||||||
temperatureJumpBase.C
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#ifndef temperatureJumpAMIBase_H
|
|
||||||
#define temperatureJumpAMIBase_H
|
|
||||||
|
|
||||||
#include "typeInfo.H"
|
|
||||||
#include "scalarField.H"
|
|
||||||
#include "tmp.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
Class temperatureJumpAMIBase Declaration
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
class temperatureJumpAMIBase
|
|
||||||
{
|
|
||||||
|
|
||||||
public:
|
|
||||||
|
|
||||||
//- Runtime type information
|
|
||||||
TypeName("temperatureJumpAMIBase");
|
|
||||||
|
|
||||||
//- Construct null
|
|
||||||
temperatureJumpAMIBase();
|
|
||||||
|
|
||||||
|
|
||||||
//- Destructor
|
|
||||||
virtual ~temperatureJumpAMIBase();
|
|
||||||
|
|
||||||
|
|
||||||
// Member functions
|
|
||||||
|
|
||||||
//- Return a field of the temperature jump
|
|
||||||
virtual tmp<scalarField> jump() const = 0;
|
|
||||||
};
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
} // End namespace Foam
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,49 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / 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 "temperatureJumpBase.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
defineTypeNameAndDebug(temperatureJumpBase, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Foam::temperatureJumpBase::temperatureJumpBase()
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Foam::temperatureJumpBase::~temperatureJumpBase()
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,79 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / 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/>.
|
|
||||||
|
|
||||||
Description
|
|
||||||
Base class for temperature jump boundary conditions that provides access
|
|
||||||
to the jump field
|
|
||||||
|
|
||||||
SourceFiles
|
|
||||||
temperatureJumpBase.C
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#ifndef temperatureJumpBase_H
|
|
||||||
#define temperatureJumpBase_H
|
|
||||||
|
|
||||||
#include "typeInfo.H"
|
|
||||||
#include "scalarField.H"
|
|
||||||
#include "tmp.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
Class temperatureJumpBase Declaration
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
class temperatureJumpBase
|
|
||||||
{
|
|
||||||
|
|
||||||
public:
|
|
||||||
|
|
||||||
//- Runtime type information
|
|
||||||
TypeName("temperatureJumpBase");
|
|
||||||
|
|
||||||
//- Construct null
|
|
||||||
temperatureJumpBase();
|
|
||||||
|
|
||||||
|
|
||||||
//-Destructor
|
|
||||||
virtual ~temperatureJumpBase();
|
|
||||||
|
|
||||||
|
|
||||||
// Member functions
|
|
||||||
|
|
||||||
//- Return a field of the temperature jump
|
|
||||||
virtual tmp<scalarField> jump() const = 0;
|
|
||||||
};
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
} // End namespace Foam
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,100 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / 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 "uniformTemperatureJumpFvPatchScalarField.H"
|
|
||||||
#include "volFields.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Foam::uniformTemperatureJumpFvPatchScalarField::
|
|
||||||
uniformTemperatureJumpFvPatchScalarField
|
|
||||||
(
|
|
||||||
const fvPatch& p,
|
|
||||||
const DimensionedField<scalar, volMesh>& iF
|
|
||||||
)
|
|
||||||
:
|
|
||||||
uniformJumpFvPatchField<scalar>(p, iF)
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
Foam::uniformTemperatureJumpFvPatchScalarField::
|
|
||||||
uniformTemperatureJumpFvPatchScalarField
|
|
||||||
(
|
|
||||||
const uniformTemperatureJumpFvPatchScalarField& ptf,
|
|
||||||
const fvPatch& p,
|
|
||||||
const DimensionedField<scalar, volMesh>& iF,
|
|
||||||
const fvPatchFieldMapper& mapper
|
|
||||||
)
|
|
||||||
:
|
|
||||||
uniformJumpFvPatchField<scalar>(ptf, p, iF, mapper)
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
Foam::uniformTemperatureJumpFvPatchScalarField::
|
|
||||||
uniformTemperatureJumpFvPatchScalarField
|
|
||||||
(
|
|
||||||
const fvPatch& p,
|
|
||||||
const DimensionedField<scalar, volMesh>& iF,
|
|
||||||
const dictionary& dict
|
|
||||||
)
|
|
||||||
:
|
|
||||||
uniformJumpFvPatchField<scalar>(p, iF)
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
Foam::uniformTemperatureJumpFvPatchScalarField::
|
|
||||||
uniformTemperatureJumpFvPatchScalarField
|
|
||||||
(
|
|
||||||
const uniformTemperatureJumpFvPatchScalarField& ptf
|
|
||||||
)
|
|
||||||
:
|
|
||||||
uniformJumpFvPatchField<scalar>(ptf)
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
Foam::uniformTemperatureJumpFvPatchScalarField::
|
|
||||||
uniformTemperatureJumpFvPatchScalarField
|
|
||||||
(
|
|
||||||
const uniformTemperatureJumpFvPatchScalarField& ptf,
|
|
||||||
const DimensionedField<scalar, volMesh>& iF
|
|
||||||
)
|
|
||||||
:
|
|
||||||
uniformJumpFvPatchField<scalar>(ptf, iF)
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePatchTypeField
|
|
||||||
(
|
|
||||||
fvPatchScalarField,
|
|
||||||
uniformTemperatureJumpFvPatchScalarField
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,174 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / 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::uniformTemperatureJumpFvPatchScalarField
|
|
||||||
|
|
||||||
Group
|
|
||||||
grpCoupledBoundaryConditions
|
|
||||||
|
|
||||||
Description
|
|
||||||
This boundary condition provides a temperature jump condition across a
|
|
||||||
coupled pair of cyclic patches, when solving for energy.
|
|
||||||
|
|
||||||
The jump is specified as a \c DataEntry type, to enable the use of, e.g.
|
|
||||||
contant, polynomial, table values.
|
|
||||||
|
|
||||||
\heading Patch usage
|
|
||||||
|
|
||||||
\table
|
|
||||||
Property | Description | Required | Default value
|
|
||||||
patchType | underlying patch type should be \c cyclic| yes |
|
|
||||||
jumpTable | jump data, e.g. \c csvFile | yes |
|
|
||||||
\endtable
|
|
||||||
|
|
||||||
Example of the boundary condition specification:
|
|
||||||
\verbatim
|
|
||||||
myPatch
|
|
||||||
{
|
|
||||||
type uniformTemperatureJump;
|
|
||||||
patchType cyclic;
|
|
||||||
jumpTable constant 100;
|
|
||||||
value uniform 300;
|
|
||||||
}
|
|
||||||
\endverbatim
|
|
||||||
|
|
||||||
The above example shows the use of a constant jump condition of 300 K.
|
|
||||||
|
|
||||||
Note
|
|
||||||
The underlying \c patchType should be set to \c cyclic
|
|
||||||
|
|
||||||
SeeAlso
|
|
||||||
Foam::uniformJumpFvPatchField
|
|
||||||
Foam::energyJumpFvPatchScalarField
|
|
||||||
|
|
||||||
SourceFiles
|
|
||||||
uniformTemperatureJumpFvPatchScalarField.C
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#ifndef uniformTemperatureJumpFvPatchScalarField_H
|
|
||||||
#define uniformTemperatureJumpFvPatchScalarField_H
|
|
||||||
|
|
||||||
#include "temperatureJumpBase.H"
|
|
||||||
#include "uniformJumpFvPatchField.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
Class uniformTemperatureJumpFvPatchScalarField Declaration
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
class uniformTemperatureJumpFvPatchScalarField
|
|
||||||
:
|
|
||||||
public temperatureJumpBase,
|
|
||||||
public uniformJumpFvPatchField<scalar>
|
|
||||||
{
|
|
||||||
|
|
||||||
public:
|
|
||||||
|
|
||||||
//- Runtime type information
|
|
||||||
TypeName("uniformTemperatureJump");
|
|
||||||
|
|
||||||
// Constructors
|
|
||||||
|
|
||||||
//- Construct from patch and internal field
|
|
||||||
uniformTemperatureJumpFvPatchScalarField
|
|
||||||
(
|
|
||||||
const fvPatch&,
|
|
||||||
const DimensionedField<scalar, volMesh>&
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Construct from patch, internal field and dictionary
|
|
||||||
uniformTemperatureJumpFvPatchScalarField
|
|
||||||
(
|
|
||||||
const fvPatch&,
|
|
||||||
const DimensionedField<scalar, volMesh>&,
|
|
||||||
const dictionary&
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Construct by mapping given
|
|
||||||
// uniformTemperatureJumpFvPatchScalarField onto a new patch
|
|
||||||
uniformTemperatureJumpFvPatchScalarField
|
|
||||||
(
|
|
||||||
const uniformTemperatureJumpFvPatchScalarField&,
|
|
||||||
const fvPatch&,
|
|
||||||
const DimensionedField<scalar, volMesh>&,
|
|
||||||
const fvPatchFieldMapper&
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Construct as copy
|
|
||||||
uniformTemperatureJumpFvPatchScalarField
|
|
||||||
(
|
|
||||||
const uniformTemperatureJumpFvPatchScalarField&
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Construct and return a clone
|
|
||||||
virtual tmp<fvPatchField<scalar> > clone() const
|
|
||||||
{
|
|
||||||
return tmp<fvPatchField<scalar> >
|
|
||||||
(
|
|
||||||
new uniformTemperatureJumpFvPatchScalarField(*this)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
//- Construct as copy setting internal field reference
|
|
||||||
uniformTemperatureJumpFvPatchScalarField
|
|
||||||
(
|
|
||||||
const uniformTemperatureJumpFvPatchScalarField&,
|
|
||||||
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 uniformTemperatureJumpFvPatchScalarField(*this, iF)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Member Functions
|
|
||||||
|
|
||||||
virtual tmp<Field<scalar> > jump() const
|
|
||||||
{
|
|
||||||
return uniformJumpFvPatchField::jump();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
} // End namespace Foam
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,100 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / 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 "uniformTemperatureJumpAMIFvPatchScalarField.H"
|
|
||||||
#include "volFields.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
Foam::uniformTemperatureJumpAMIFvPatchScalarField::
|
|
||||||
uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
(
|
|
||||||
const fvPatch& p,
|
|
||||||
const DimensionedField<scalar, volMesh>& iF
|
|
||||||
)
|
|
||||||
:
|
|
||||||
uniformJumpAMIFvPatchField<scalar>(p, iF)
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
Foam::uniformTemperatureJumpAMIFvPatchScalarField::
|
|
||||||
uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
(
|
|
||||||
const uniformTemperatureJumpAMIFvPatchScalarField& ptf,
|
|
||||||
const fvPatch& p,
|
|
||||||
const DimensionedField<scalar, volMesh>& iF,
|
|
||||||
const fvPatchFieldMapper& mapper
|
|
||||||
)
|
|
||||||
:
|
|
||||||
uniformJumpAMIFvPatchField<scalar>(ptf, p, iF, mapper)
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
Foam::uniformTemperatureJumpAMIFvPatchScalarField::
|
|
||||||
uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
(
|
|
||||||
const fvPatch& p,
|
|
||||||
const DimensionedField<scalar, volMesh>& iF,
|
|
||||||
const dictionary& dict
|
|
||||||
)
|
|
||||||
:
|
|
||||||
uniformJumpAMIFvPatchField<scalar>(p, iF)
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
Foam::uniformTemperatureJumpAMIFvPatchScalarField::
|
|
||||||
uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
(
|
|
||||||
const uniformTemperatureJumpAMIFvPatchScalarField& ptf
|
|
||||||
)
|
|
||||||
:
|
|
||||||
uniformJumpAMIFvPatchField<scalar>(ptf)
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
Foam::uniformTemperatureJumpAMIFvPatchScalarField::
|
|
||||||
uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
(
|
|
||||||
const uniformTemperatureJumpAMIFvPatchScalarField& ptf,
|
|
||||||
const DimensionedField<scalar, volMesh>& iF
|
|
||||||
)
|
|
||||||
:
|
|
||||||
uniformJumpAMIFvPatchField<scalar>(ptf, iF)
|
|
||||||
{}
|
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
makePatchTypeField
|
|
||||||
(
|
|
||||||
fvPatchScalarField,
|
|
||||||
uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -1,175 +0,0 @@
|
|||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
========= |
|
|
||||||
\\ / 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::uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
|
|
||||||
Group
|
|
||||||
grpCoupledBoundaryConditions
|
|
||||||
|
|
||||||
Description
|
|
||||||
This boundary condition provides a temperature jump condition across a
|
|
||||||
coupled pair of non-conformal cyclic patches using an arbitrary mesh
|
|
||||||
interface (AMI), when solving for energy.
|
|
||||||
|
|
||||||
The jump is specified as a \c DataEntry type, to enable the use of, e.g.
|
|
||||||
contant, polynomial, table values.
|
|
||||||
|
|
||||||
\heading Patch usage
|
|
||||||
|
|
||||||
\table
|
|
||||||
Property | Description | Required | Default value
|
|
||||||
patchType | underlying patch type should be \c cyclicAMI| yes |
|
|
||||||
jumpTable | jump data, e.g. \c csvFile | yes |
|
|
||||||
\endtable
|
|
||||||
|
|
||||||
Example of the boundary condition specification:
|
|
||||||
\verbatim
|
|
||||||
myPatch
|
|
||||||
{
|
|
||||||
type uniformTemperatureJumpAMI;
|
|
||||||
patchType cyclic;
|
|
||||||
jumpTable constant 100;
|
|
||||||
value uniform 300;
|
|
||||||
}
|
|
||||||
\endverbatim
|
|
||||||
|
|
||||||
The above example shows the use of a constant jump condition of 300 K.
|
|
||||||
|
|
||||||
Note
|
|
||||||
The underlying \c patchType should be set to \c cyclicAMI
|
|
||||||
|
|
||||||
SeeAlso
|
|
||||||
Foam::uniformJumpAMIFvPatchField
|
|
||||||
Foam::energyJumpAMIFvPatchScalarField
|
|
||||||
|
|
||||||
SourceFiles
|
|
||||||
uniformTemperatureJumpAMIFvPatchScalarField.C
|
|
||||||
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
#ifndef uniformTemperatureJumpAMIFvPatchScalarField_H
|
|
||||||
#define uniformTemperatureJumpAMIFvPatchScalarField_H
|
|
||||||
|
|
||||||
#include "temperatureJumpAMIBase.H"
|
|
||||||
#include "uniformJumpAMIFvPatchField.H"
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
|
||||||
{
|
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*\
|
|
||||||
Class uniformTemperatureJumpAMIFvPatchScalarField Declaration
|
|
||||||
\*---------------------------------------------------------------------------*/
|
|
||||||
|
|
||||||
class uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
:
|
|
||||||
public temperatureJumpAMIBase,
|
|
||||||
public uniformJumpAMIFvPatchField<scalar>
|
|
||||||
{
|
|
||||||
|
|
||||||
public:
|
|
||||||
|
|
||||||
//- Runtime type information
|
|
||||||
TypeName("uniformTemperatureJumpAMI");
|
|
||||||
|
|
||||||
// Constructors
|
|
||||||
|
|
||||||
//- Construct from patch and internal field
|
|
||||||
uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
(
|
|
||||||
const fvPatch&,
|
|
||||||
const DimensionedField<scalar, volMesh>&
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Construct from patch, internal field and dictionary
|
|
||||||
uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
(
|
|
||||||
const fvPatch&,
|
|
||||||
const DimensionedField<scalar, volMesh>&,
|
|
||||||
const dictionary&
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Construct by mapping given
|
|
||||||
// uniformTemperatureJumpAMIFvPatchScalarField onto a new patch
|
|
||||||
uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
(
|
|
||||||
const uniformTemperatureJumpAMIFvPatchScalarField&,
|
|
||||||
const fvPatch&,
|
|
||||||
const DimensionedField<scalar, volMesh>&,
|
|
||||||
const fvPatchFieldMapper&
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Construct as copy
|
|
||||||
uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
(
|
|
||||||
const uniformTemperatureJumpAMIFvPatchScalarField&
|
|
||||||
);
|
|
||||||
|
|
||||||
//- Construct and return a clone
|
|
||||||
virtual tmp<fvPatchField<scalar> > clone() const
|
|
||||||
{
|
|
||||||
return tmp<fvPatchField<scalar> >
|
|
||||||
(
|
|
||||||
new uniformTemperatureJumpAMIFvPatchScalarField(*this)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
//- Construct as copy setting internal field reference
|
|
||||||
uniformTemperatureJumpAMIFvPatchScalarField
|
|
||||||
(
|
|
||||||
const uniformTemperatureJumpAMIFvPatchScalarField&,
|
|
||||||
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 uniformTemperatureJumpAMIFvPatchScalarField(*this, iF)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Member Functions
|
|
||||||
|
|
||||||
virtual tmp<Field<scalar> > jump() const
|
|
||||||
{
|
|
||||||
return uniformJumpAMIFvPatchField::jump();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
} // End namespace Foam
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// ************************************************************************* //
|
|
||||||
@ -28,8 +28,8 @@ License
|
|||||||
#include "fixedEnergyFvPatchScalarField.H"
|
#include "fixedEnergyFvPatchScalarField.H"
|
||||||
#include "gradientEnergyFvPatchScalarField.H"
|
#include "gradientEnergyFvPatchScalarField.H"
|
||||||
#include "mixedEnergyFvPatchScalarField.H"
|
#include "mixedEnergyFvPatchScalarField.H"
|
||||||
#include "temperatureJumpBase.H"
|
#include "fixedJumpFvPatchFields.H"
|
||||||
#include "temperatureJumpAMIBase.H"
|
#include "fixedJumpAMIFvPatchFields.H"
|
||||||
#include "energyJumpFvPatchScalarField.H"
|
#include "energyJumpFvPatchScalarField.H"
|
||||||
#include "energyJumpAMIFvPatchScalarField.H"
|
#include "energyJumpAMIFvPatchScalarField.H"
|
||||||
|
|
||||||
@ -61,11 +61,11 @@ Foam::wordList Foam::heThermo<BasicThermo, MixtureType>::heBoundaryTypes()
|
|||||||
{
|
{
|
||||||
hbt[patchi] = mixedEnergyFvPatchScalarField::typeName;
|
hbt[patchi] = mixedEnergyFvPatchScalarField::typeName;
|
||||||
}
|
}
|
||||||
else if (isA<temperatureJumpBase>(tbf[patchi]))
|
else if (isA<fixedJumpFvPatchScalarField>(tbf[patchi]))
|
||||||
{
|
{
|
||||||
hbt[patchi] = energyJumpFvPatchScalarField::typeName;
|
hbt[patchi] = energyJumpFvPatchScalarField::typeName;
|
||||||
}
|
}
|
||||||
else if (isA<temperatureJumpAMIBase>(tbf[patchi]))
|
else if (isA<fixedJumpAMIFvPatchScalarField>(tbf[patchi]))
|
||||||
{
|
{
|
||||||
hbt[patchi] = energyJumpAMIFvPatchScalarField::typeName;
|
hbt[patchi] = energyJumpAMIFvPatchScalarField::typeName;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user