## 3 Computational Methods
### Boundary and Initial Conditions  
The boundary conditions for the CFD simulations are shown on the computational domain in Figure 4, including the inlet injection. For the main flow inlet, a fully developed velocity profile was used as the boundary condition at the entrance of the pipe. This fully developed velocity profile for different main flow rates was achieved through a series of precursor steady-state simulations with a longer pipe of the same diameter. A uniform distributed flow was applied at the inlet, and its outlet fully developed velocity profile was collected and exported to the main simulations. Using the fully developed velocity profile at the inlet, allowed us to avoid the entrance effect of the uniform velocity boundary condition. This allowed for shortening the inlet region, which, in turn, reduced the mesh count/computational requirements for each simulation. In total, there were 12 different main flow rates used in the CFD simulations. They were divided into three groups for three different meshing refinement levels. The main inlet boundary conditions for the low-flow-rate meshing model were 39.52 GPM (0.00249 m\({}^{3}\)/s), 65.13 GPM (0.00411 m\({}^{3}\)/s), 75.82 GPM (0.00478 m\({}^{3}\)/s), and 93.53 GPM (0.00590 m\({}^{3}\)/s). The main inlet boundary  
Figure 3: Computational domain used for CCF flow estimation, with fluid injection pipe, temperature sensor region, and flow direction shown.  
conditions for the medium-flow-rate meshing model were 101.95 GPM (0.00643 m\({}^{3}\)/s), 114.2 GPM (0.00720 m\({}^{3}\)/s), 123.84 GPM (0.00781 m\({}^{3}\)/s), and 133.51 GPM (0.00842 m\({}^{3}\)/s). The main inlet boundary conditions for the high-flow-rate meshing model were 145.83 GPM (0.00920 m\({}^{3}\)/s), 156.42 GPM (0.00987 m\({}^{3}\)/s), 167.61 GPM (0.01057 m\({}^{3}\)/s), and 178.3 GPM (0.01125 m\({}^{3}\)/s). The main flow Reynolds number ranged from 5.8 \(\times\) 10\({}^{4}\) to 2.6 \(\times\) 10\({}^{5}\), so all the cases were with a turbulent flow regime. The temperature of the main flow rate was set to 308 K (\(\sim\)95 F).  
For the injection pipe boundary conditions, water was injected into the main flow periodically with time-dependent velocities and temperatures. The injected temperature and velocity followed a sharply ramped step function at the beginning and end of the injection period, reflecting the actual physical injection function applied in the experimental flow loop. One injection period for the injection pipe boundary condition is shown in Figure 5 for both velocity and temperature. The total injection period was 4.0 s, including 1.0 s for fluid injection and a 3.0 s delay before the next injection. Figure 5 shows an initial three-second delay from the previous injection, followed by injection of the fluid for 1.0 s. In the experimental setup, three different injection flow rates were investigated: 0.920 m/s, 0.821 m/s, and 0.497 m/s. In the simulations, these three injection flow rates were applied separately and compared with each other under different main flow rates. This enabled a comparison of whether the injection flow rate was correlated with the optimal setup for flow estimation under different flow rates. All three injection flow rates used the same injected fluid temperature of 285 K (\(\sim\)53 F). The injection temperature was 23 K lower than the temperature of the main flow to introduce additional perturbations and increase the signal-to-noise ratio, which benefits CCF flow estimation.  
The remaining boundaries (walls) were set as no-slip wall boundary conditions. The computational domain was initialized based on the fully developed inlet condition at the given flow rate and with a constant initial temperature of 308 K.  
Figure 4: Computational domain, indicating the boundary conditions, including the injection fluid boundary conditions.