Problem Description
The semi-cylindrical pipe contains water at ambient temperature and is surrounded by a hot pipe liner composed of two concentric layers made of different materials and initialized at different temperatures. The inner liner is titanium, and the outer liner is copper. (See Figure 1 (Left))
The simulation models the heating process of the fluid as it absorbs heat from the surrounding hot pipe. Typically, such models require temperature calculations throughout the entire domain, including within the thin liner regions. However, explicitly resolving the volume of these thin layers can be computationally expensive and unnecessary when their internal temperature gradients can be captured using a one-dimensional stack approach. Therefore, it is preferable to simulate the system as a single-phase problem with stack layers.
To achieve this, only the fluid is simulated, with the temperature boundary values obtained by solving a
HeatEquation1D at each boundary point.
HeatEquation1D is an implicit temperature solver that models the pipe liners as a one-dimensional stack of discrete points normal to the fluid boundary. This stack, representing the liner materials, is referred to as a
HeatStack1D.
The figure below illustrates the initial conditions of the problem with multiple materials. In the example, the
HeatStack1D replaces the hot pipe of different materials.
Figure 1: Initial temperature distribution in a multi-phase 3D setup (left) vs single-phase fluid with the HeatStack1D approach (right)
Simulation Setup in MESHFREE
The
USER_common_variables setup for this example allows the user to choose between multi-phase 3D or the
HeatStack1D computation through the
ALIAS following:
"TypeOfRun" = "1D" #"1D" or "3D"
For the multi-phase model, the parameter
PHASE_distinction must be set to 'YES' in the
common_variables file.
Refinement Settings
Since the
HeatStack1D only affects the boundary point values, the computation can be accelerated by using adaptive refinement, i.e. fine close to the boundary and coarse in the rest of the fluid. The following
ALIAS in
USER_common_variables allows to select different refinement settings:
"PCRefinement" = "ADTV" #"CONS" or "ADTV"
"CONS" enables constant refinement and "ADTV" enables adaptive refinement of the fluid domain. The adaptive refinement is done by smoothly varying (See
ADTV )the geometry dependent smoothing length defined below:
The refinement of each
HeatStack1D, namely the number of stack points per boundary point, is controlled by the
NB_POINTS_BC_HEAT_EQUATION_1D in the
common_variables file. The upper limit is 80.
Boundary Conditions with Heat Stack
HeatStack1D provides an option to impose the boundary conditions on the bulk using %HEAT_EQ_1D_BC%, see
HeatEquation1D.
BC_T(
$fluid$) = (%BND_ROBIN%,
&htc_in&, [Yopp(
%ind_T%)], 0.0, %HEAT_EQ_1D_BC% )
# BC_T($xyz$) = (%BND_ROBIN%, alpha, T0, inertialThickness), i.e. CAUCHY: lambda*dT/dn = alpha*(T-T0)
The
HeatEquation1D, with the two liner layers as described, is solved with the following material properties:
HEAT_EQ_1D($fluid$,%ind_T%) = (equn{$Liner_Thickness$}, equn{$Liner_EndInterval_1$}, &TEMP_Ti&, equn{$Liner_EndInterval_2$}, &TEMP_Cu&, &Tamb&)
HEAT_EQ_1D($fluid$,%ind_LAM%) = (equn{$Liner_Thickness$}, equn{$Liner_EndInterval_1$}, &LAM_Ti&, equn{$Liner_EndInterval_2$}, &LAM_Cu&)
HEAT_EQ_1D($fluid$,%ind_r%) = (equn{$Liner_Thickness$}, equn{$Liner_EndInterval_1$}, &RHO_Ti&, equn{$Liner_EndInterval_2$}, &RHO_Cu&)
HEAT_EQ_1D($fluid$,%ind_CV%) = (equn{$Liner_Thickness$}, equn{$Liner_EndInterval_1$}, &CV_Ti&, equn{$Liner_EndInterval_2$}, &CV_Cu&)
Here
%ind_T%,
%ind_LAM%,
%ind_r%,
%ind_CV% are the temperature of the liners, conductivity of the liner materials, density of the liner materials, and specific heat capacity of the liner materials respectively. &xxx_Ti& refers to qauntities for the Titanium liner and &xxx_Cu& refers to qantities for the Copper liner.
NOTE: MESHFREE does not support negative values in the indices
%ind_T%,
%ind_LAM%,
%ind_r%,
%ind_CV% . Such values will result in a termination with an error message.
The heat transfer coefficients of the
HeatEquation1D must also be defined as follows:
HEAT_EQ_1D_TRANSFER_COEFF_INTERNAL($fluid$) = [&htc_in&]
HEAT_EQ_1D_TRANSFER_COEFF_EXTERNAL($fluid$) = [&htc_out&]
Here,
HEAT_EQ_1D_TRANSFER_COEFF_INTERNAL is the heat transfer coefficient from
HeatStack1D to the fluid and
HEAT_EQ_1D_TRANSFER_COEFF_EXTERNAL is the heat transfer coefficient from the
HeatStack1D to the outside, for instance ambient temperature.
Additional Parameters and Performance Monitoring
The problem is primarily conceptualized as a cooling problem, so if the ambient temperature is higher than the liner and fluid temperatures, a warning may be triggered. This can be resolved by changing HEAT_EQ_1D_lower_limit in the
common_variables file.
To ensure numerical stability of the scheme, the fluid and liner temperatures are restricted to not being significantly larger than the ambient temperature. This ratio is controlled by HEAT_EQ_1D_upper_limit variable in the
common_variables file.
The linear solver for the
HeatEquation1D can be adapted by
LINEQN_solver_HeatStack1D variable in the
common_variables file.
For performance monitoring, the
HeatEquation1D solver has its own timer called ADMIN_TIME_INTEG.FLIQUID.TEMPERATURE.HeatStack1D, which can be viewed in the
TIMECHECK file at
TIMECHECK_Level = 4.
Observations and Perfomance Monitoring
The average temperature of the fluid bulk and the average temperature of the boundary of the fluid domain are used to examine the performance and convergence behaviour of the simulation, when certain parameters are varied. The following observations are noted:
The average temperature of the fluid bulk is calculated using the following
INTEGRATION statement:
- The influence of the number of HeatStack1D points on the average temperature of the fluid is stronger than the influence of the refinement of the fluid domain.
- For thicker boundary liners, the number of HeatStack1D points causes large variations in the average temperatures. In such cases a 3D-modelling approach is more suitable.
- For modest variations in smoothing length (ratio of Hmax/Hmin < 3), the effect of adaptive refinement on the average temperature field is negligible.
- The computational cost of the HeatStack1D (FLIQUID.TEMPERATURE.HeatStack1D) is significantly smaller compared to the FLIQUID.TEMPERATURE solver, thus making it a practical approach for modeling thin liners.
Figure 2: Average fluid bulk temperatures for different number of HeatStack1D points