Dear Prof. Bouchut,
The vorticity formulation gives somewhat abnormal results, which conflicted with previous ones. I don’t have much time left to complete my paper, so I go back to solve the original N-S equation, but in parallel. I am working on a convection problem, unlike Boussinesq approximation, the density is modelled nonlinearly: \rho=\rho_0(1-\beta|T-T_M|^q),where β > 0 is the thermal expansion coefficient and ρ_0 is the density at T = T_M.
Conventionally, q=2, and the dimensionless equation set reads
I modified cmd’s parallel code. I added the temperature equation and a linear buoyancy term dubT * vy
referring to T\textbf{e}_z.
When I turned to the nonlinear buoyancy term: (T-T_M)^2\textbf{e}_z, it reported an error with
varf vJ([u1,u2,uT,up],[v1,v2,vT,vp])=int2d(Th)(...-(uT-TM)^2*v2)
,other terms are omitted. I found in varf, a term should be either bilinear or linear, so the uT^2*v2
referred to trilinear term, is illegal.
I tried to substitute uT^2*v2
to uT*uTb*v2
, uTb is temperature at previous step, and I can run code. If it is a right doing? I also tried to use fully explicit term (uTb-TM)^2
, but instability won’t be observed: the system remains stable at a high Rayleigh number, and the growing of time step does not have an effect.