Strange results are obtained when using collocated Lobatto nodes

When running the Euler vortex test case, I tried adding viscosity and using collocated Lobatto points. The .ini file is as follows (only the input file has been modified):

[backend]
precision = double

[constants]
gamma = 1.4
mu = 0.1
Pr = 0.72

; Euler vortex params
S = 13.5    ; Strength
M = 0.4     ; Mach number
R = 1.5     ; Radius

[solver]
system = navier-stokes
order = 3

[solver-time-integrator]
scheme = rk4
controller = none
tstart = 0.0
tend = 100.0
dt = 0.005

[solver-interfaces]
riemann-solver = rusanov
ldg-beta = 0.5
ldg-tau = 0.1

[solver-interfaces-line]
flux-pts = gauss-legendre-lobatto

[solver-elements-quad]
soln-pts = gauss-legendre-lobatto

[soln-plugin-nancheck]
nsteps = 50

[soln-plugin-writer]
dt-out = 10.0
basedir = .
basename = euler-vortex-{t:.1f}

[soln-ics]
; Factored common subexpression
f = ((1 - x*x - y*y)/(2*R*R))

rho = pow(1 - S*S*M*M*(gamma - 1)*exp(2*%(f)s)/(8*pi*pi), 1/(gamma - 1))
u = S*y*exp(%(f)s)/(2*pi*R)
v = 1 - S*x*exp(%(f)s)/(2*pi*R)
p = 1/(gamma*M*M)*pow(1 - S*S*M*M*(gamma - 1)*exp(2*%(f)s)/(8*pi*pi), gamma/(gamma - 1))

However, an incorrect result was obtained, with unwanted oscillations, as shown in the figure below.

Any idea? It seems like a bug.

Thanks. Does the issue occur using GLL points without viscosity? And/or does it occur adding viscosity but keeping GL points?

Dear Professor Vincent, I’m sorry for the late reply. I tested using GLL points without viscosity (GLL Euler) and GL points with viscosity (GL NS) respectively, and I think the results are as expected (It is normal for GLL points to have some spurious oscillations due to the inaccurate mass matrix). It seems that the oscillatory result only occurs in the GLL + viscosity combination. Could there be a problem with the periodic boundary when handling the viscous term using GLL points?

Thanks.

The results are incorrect and are due to a bug in how the gradient fusion optimisation interacts with another specific optimization for GLL type points.

You can work around it by setting:

to be false.

Regards, Freddie.

1 Like

Thanks, I think that solves the problem.

Thanks. We are planning on releasing v3 shortly which contains a permanent fix for this issue.

Regards, Freddie.

1 Like

Great! I’m really looking forward to it!