Ensuring the same pressure loss in KULI and CFD

Quite often, a combined 1D/3D simulation of engine cooling is done. The cooling package is simulated in KULI and the air flow simulation is done in a 3D CFD simulation for the underhood region. To ensure these two simulation models are consistent, it is required that the air-side pressure drop of the components in the cooling package (radiator, charge air cooler, etc.) is the same in both tools. In most cases, the pressure drop information for these components is available as measurement data or even directly as a KULI file. In both cases KULI can directly use this information. In CFD, however, these components are modeled as porous media, and the air side resistance is specified with the help of a formula where the parameters need to be adjusted for the particular component. For example, in StarCCM+© the resistance is modeled as

where L is the thickness of the radiator, v is the velocity in x-direction, and a and b are the parameters that need to be adjusted.

Determining the parameters of a and b can now be done with the help of the KULI optimization. The idea is to let KULI choose parameters a and b, such that the sum of the deviations of the pressure drops of the component itself and the value obtained by the formula for different flow rates becomes minimal. Most of the modeling effort, therefore, is done in the signal path.

Figure 1: Signal path for optimizing the porosity coefficients


Both the air-side and the fluid circuits are kept as simple as possible. There is simply an air-side volume flow source which sets the volume flow according to the desired velocity multiplied by the size of the radiator core. There is also an open coolant circuit in which the temperature is set to the ambient temperature, simulating an isothermal condition in CFD.

Note that the KULI optimization behaves in two different ways. If there is an analysis controller within the system (in the current system it is the “sum” object) then the optimization is performed for all operating points at once, resulting in a single set of optimization parameters suiting all operating points. If there is no analysis controller, then the optimization would be performed separately for each operating point, resulting in different optimization parameters for each operating point. Therefore, an analysis object should be used for any kind of regression work.

The model described here is available for download in the KULI online library. It is called “Porosity Calculator”.