Pure Thermal Diffusion Around a Wellbore
Problem description
This example uses the thermal single-phase flow solver to model a pure thermal diffusion problem around a wellbore. To mimic this specific problem, thermal convection and fluid flow are neglected by setting fluid pressure and fluid heat capacity to zero. With a uniform temperature applied on the inner surface of the wellbore, temperature field would radially diffuse as shown in the figure below:
Analytical results of the temperature profile along the radial direction is given by (Wang and Papamichos, 1994) :
where is the radial coordinate, is the temperature applied on the surface of the wellbore at , is the thermal diffusion coefficient of rock, which is defined as the ratio between the thermal conductivity and the volumetric heat capacity of rock.
Input file
This benchmark example uses no external input file and everything required is contained within two GEOS xml files that are located at:
inputFiles/singlePhaseFlow/thermalCompressible_2d_base.xml
and
inputFiles/singlePhaseFlow/thermalCompressible_2d_benchmark.xml
The corresponding integrated test is
inputFiles/singlePhaseFlow/thermalCompressible_2d_smoke.xml
In this example, we would focus our attention on the Constitutive
and FieldSpecifications
tags.
Constitutive
The volumetric heat capacity of the medium around the wellbore is defined in the SolidInternalEnergy
XML block as
<SolidInternalEnergy
name="rockInternalEnergy_linear"
referenceVolumetricHeatCapacity="1.0e6"
referenceTemperature="0"
referenceInternalEnergy="0"/>
The thermal conductivity of the medium around the wellbore is defined in the SinglePhaseConstantThermalConductivity
XML block as
<SinglePhaseThermalConductivity
name="thermalCond_linear"
defaultThermalConductivityComponents="{ 1.66, 1.66, 1.66 }"
thermalConductivityGradientComponents="{ 0, 0, 0 }"
referenceTemperature="0"/>
The volumetric heat capacity of fluid is set to a negligible value to exclude thermal convection effect. It is defined in the ThermalCompressibleSinglePhaseFluid
XML block as
<ThermalCompressibleSinglePhaseFluid
name="fluid"
defaultDensity="1000"
defaultViscosity="0.001"
referencePressure="0.0"
referenceTemperature="0"
compressibility="5e-10"
thermalExpansionCoeff="3e-4"
viscosibility="0.0"
specificHeatCapacity="1"
referenceInternalEnergy="0.99"/>
FieldSpecifications
The initial temperature, the imposed temperature at the curved wellbore surface as well as the far-field temperature are defined as Dirichlet face boundary conditions using faceManager
as
<FieldSpecification
name="initialTemperature"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/region/cb"
fieldName="temperature"
scale="100"/>
<FieldSpecification
name="sinkTemperature"
setNames="{ rpos }"
objectPath="faceManager"
fieldName="temperature"
scale="100"/>
<FieldSpecification
name="sourceTemperature"
setNames="{ rneg }"
objectPath="faceManager"
fieldName="temperature"
scale="-20.0"/>
Although a pure thermal diffusion problem is considered, it is also required to define specifications for fluid pressure, as thermal transfer is always coupled with fluid flow in GEOS. In this example, fluid pressure is set to zero everywhere to mimic a pure thermal diffusion problem as
<FieldSpecification
name="initialPressure"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/region/cb"
fieldName="pressure"
scale="0e6"/>
<FieldSpecification
name="sinkPressure"
setNames="{ rpos }"
objectPath="faceManager"
fieldName="pressure"
scale="0e6"/>
<FieldSpecification
name="sourcePressure"
setNames="{ rneg }"
objectPath="faceManager"
fieldName="pressure"
scale="0e6"/>
Results and benchmark
A good agreement between the GEOS results and analytical results is shown in the figure below:
To go further
Feedback on this example
This concludes the example of pure thermal diffusion problem around a wellbore. For any feedback on this example, please submit a GitHub issue on the project’s GitHub page.