# Post-processing flow fields in the finite-difference grid

The visualisation of the flow fields output by Nektar++ looks not smooth if the resolution is not enough.

Figure 1 is an example of the leading-edge vortex generated by a plunging wing at Reynolds number 10,000. The result is from paper: Son, O., Gao, A., Gursul, I., Cantwell, C., Wang, Z., & Sherwin, S. (2022). Leading-edge vortex dynamics on plunging airfoils and wings. *Journal of Fluid Mechanics,* *940*, A28. doi:10.1017/jfm.2022.224. Although there are 40M degrees of freedom for each velocity component, the discontinuities between element boundaries are still very obvious and the vortex looks not smooth.

A feasible solution is interpolating the spectral element field to a finite difference grid and then doing the post-processing using the finite difference method. In figure 2, the spectral element field is first interpolated into 301 x 301 x 601 grid in the domain [-0.5, 2.5] x [-0.5, 1.5] x [0, 5.5]. Then the vorticity and Q are calculated using a second-order central difference scheme. The Q iso-surface looks much smoother.

The bash script to do the interpolation is

`for((n=64; n<=64; n+=1))`

do

mpirun -np 12 $NEKBIN/FieldConvert -f -e -v -m \

`interppoints:fromxml=wing.xml:fromfld=wing_${n}.chk:box=301,301,601,-0.5,2.5,-0.5,1.5,0,5.5 \`

`interp${n}.plt`

done

In the finite-difference grid, a Gaussian filter can be easily applied by convolution operation to remove small scale vortices. Figure 3 shows that with decreasing filter size, there are more and more small scale vortices in the Q iso-surface.

The same operation can also be applied to 2D and 3DH1D fields. The finite different tool is a small c++ code available here https://github.com/gaoak/ptspostprocessing