I'm trying to solve an advection - convection problem using an implicit upwind scheme - you can see here the finite difference discretization used.
I start the model (built from scratch on Scilab) and I run some convergence tests.
The big problem is that the velocity v is enormous - about 200m/s.
The spatial discretization I use is of 2m, and after some tests it works just fine.
However, the time discretization is what really bugs me. I try to run some scripts by discretizing the time as
time = 0:dt:tend
And I do some tests for different timescales, all fractions of tend. More specifically, the array of different timesteps I use is
dtlist = tend/10^(0:5)
So, for example, for tend=1s I'll test for dtlist = [0.00001, 0.0001, 0.001, 0.01, 0.1, 1]s.
I run the test, and what I get is this:
(DT is the temperature difference between the fluid between t=0 and t=tend)
Now... How is it possible that I have such different results, for the same timesteps of 10^-5s and 10^-4s?
In general, is there a general rule to determine the convergence of an implicit upwind problem? I know that the CFL condition doesn't count here, since the scheme is implicit, but maybe there are other conditions I didn't analize...