constantLhgr
Description
The constantLhgr heatSource class in OFFBEAT allows you to set a constant
average linear heat generation rate (lhgr) via a keyword in the heatSource
subDictionary.
It is also possible to apply a radial and an axial profile to the lhgr. Note that even if the lhgr is constant over time, the axial and radial profile might change over time, depending on the profile type chosen by the user.
Formulation
The final volumetric heat source is derived as a combination of lhgr, radial and axial profiles, as follows:
where:
- \(r\) is the relative radial position (0...1)
- \(z\) is the relative axial position (0...1)
- \(t\) is the current time
- \(f(r,t)\) and \(g(z,t)\) are the radial and axial profiles, respectively
- \(Q_{avg}\) is the average power density in \(W/m^3\).
The radial and axial profiles are expected to be normalized to 1, while the average power density is obtained from:
where:
- \(h_{ref}\) is the height of the rod in the reference, undeformed geometry
- \(V_{model}\) is the volume of the fuel as calculated by OpenFOAM in the model
- \(\alpha\) is the fraction of the real geometry modeled in the simulations (e.g. 0.25 if you are using symmetry BCs and you are simulating only a quarter of the rod).
Options
The constantLhgr heat source model requires the user to specify a few
additional parameters in the heatSourceOptions sub-dictionary located
within the solverDict.
Parameters in heatSourceOptions:
| lhgr | The constant linear heat generation rate in W/m. |
| materials | A list of material (or cellZones names) where the heat source model applies. |
| axialProfile | A sub-dictionary that specifies the type of axial profile. |
| radialProfile | A sub-dictionary that specifies the type of radial profile. - useReferenceDimensions – A bool to activate reading reference dimensions for axial profile (zMin and zMax) from the dictionary (false by default). - zMin – The reference axial coordinate of the bottom of the fuel region. Only used if useReferenceDimensions is set to true. - zMax – The reference axial coordinate of the top of the fuel region. Only used if useReferenceDimensions is set to true. - volumeFraction – The fraction of the reference rod present in the local mesh. Only used if useReferenceDimensions is set to true.
|
The constantLhgr heat source model is designed to calculate the volumetric
power density for a cylindrical rod with an initial reference height (i.e., in
undeformed geometry) along a given axial direction. For simulations where there
is an axis of symmetry, the class can take into consideration the angular
fraction of the real rod that is being modeled.
Thus, the class requires the additional parameters in the globalOptions sub-dictionary
of the solverDict dictionary.
Parameters in globalOptions:
| pinDirection | The vector of the axial direction (e.g. (0 0 1) for the z-axis). |
| angularFraction | The fraction of the 360 degree angle that is being modeled. |
Warning
Reove the angularFraction keyword for axisymmetric r-z models, as the
angular fraction is automatically calculated from the wedge boundaries. Otherwise, it
must be provided. For example, set it to 0.25 for quarter symmetry, to 0.5 for
half-symmetry and to 1.0 for 3D simulations.
Usage
Here is a code snippet the solverDict to be used for the case of a constant
lhgr of 10e3 W/m with flat (i.e. uniform) axial and radial profiles.
This particular example considers a quarter of a fuel disc.
heatSource constantLhgr;
globalOptions
{
angularFraction 0.25;
pinDirection (0 0 1);
}
heatSourceOptions
{
lhgr 10e3;
materials ( fuel );
useExternalReferenceDimensions off;
// // Alternatively one can use external reference dimensions
// useExternalReferenceDimensions on;
// zMin 0.0;
// zmax 3.0;
// volumeFraction 0.01;
axialProfile
{
type flat;
}
radialProfile
{
type flat;
}
}
For a time-dependent axial profile, one can modify the axialProfile sub-
dictionary as follows:
heatSourceOptions
{
// .. The rest of the dictionary may remain unchanged
axialProfile
{
// Example: time dependent axial radial profile.
// The user provides a 2D table (z-vs-time) of normalized lhgr values
// (normalized to the average).
// Other options are available (see axialProfile class).
type timeDependentTabulated;
// List of time points for axial profile
timePoints ( 0 3600 31539600 );
// List of axial locations for axial profile
axialLocations ( 0.0 0.5 1.0 );
// 2D table for axial profile (z is x axis; time is y axis)
data
(
( 1.0 1.0 1.0 )
( 0.5 1.0 1.5 )
( 0.8 1.1 1.0 )
);
// Select the axial interpolation method
axialInterpolationMethod linear;
// Select the time interpolation method for time steps that fall in-between
// the time points indicated in the timePoints list above
timeInterpolationMethod linear;
}
}