I was running a 4DVAR experiment using a single observation on the North-Western Mediterranean sea to better observe the effect of one variable on another. For the difference between analysis and background, I noticed a lot of noisy patches, principally at the boundaries, gradually increasing as we approach the end of the assimilation window. I compiled the RBL4DVAR_split case without activating the ANA_SPONGE flag, but considering the diff_factor and visc_factor to my grid.nc, with:
LuvSponge = T
LtracerSponge = T T
I noticed that the noisy patches disappeared if I compiled the code with ANA_SPONGE flag activated, and even for the previous configuration (no ANA_SPONGE) with LuvSponge = F and LtracerSponge = F F. I am using here the expression "noisy patches" since in my application (2.3 km res) they really look liked non-physical stuff.
To check if it was related to my specific roms implementation, I reproduced it on the WC13 test case, assimilating only one observation. To do so, I added the visc_factor and diff_factor variables to the wc13_grd.nc file. I activated the DIAGNOSTIC_UV flag and I found that all the momentum horizontal viscosity terms are zero for the analysis run, in case the LuvSponge and LtracerSponge parameters are se to T. This does not occur if they are set to F.
Perhaps there is some problem in the initialization phase for the analysis run in the split algorithm when the sponge factors need to be considered.
I try to summarize it with the following slide (x_b: background, x_a: analysis, temp: temperature, v: v-velocity). I hope it is explanatory.
I only reported the 3d u momentum term for simplicity, but also the other momentum related horizontal viscosity terms were zero for the analysis. I did not check if the same occurs for the tracers diffusivity terms and I haven't checked yet if it happens with the previous RBL4DVAR non-split version.
If necessary, I can share the modified grid file.
Cheers,
Michele