I currently meet some problems with the implementaion of the periodic
boundary condition for transient Rayleigh-Benard convection problem.
My code is based on FVM, SIMPLE algorithm and colocatted grid system (with Rhie-Chow interpolation) .
i am prettly sure that my code works for adiabtic boundary condition for
temperature (no-slip wall for velocities), as i compared my results
with some beachmark solutions.
To simulate a infinite long domain in horizontal direction (my solver is
two - dimensional), i want to implment periodic boundary condition for
temperature, velocity and pressure fields.
Thus i did some modification of the code,
for tempearture and velocity field, i exchange the values on boundaries, like (a N by N grid )
phi(1, j) = phi(N-1,j)
phi(N,j) = phi(2,j)
then treat the boundary type like Dirichlet condition;
for pressure field,
at the beginning i think we may not need any modification as the
problem i considered is not like the other type periodic boundary
condition , like there is a incomming flow and we need to guarantee the
constant pressure drop.
then i realized that the pressure correction genearlly implicitly
incoperates with Neumann boundaries for all boundaries, then i did some
modification like temperature field.
However, i failed, as the solver directly divergence in the first
two or three time steps and i do not know the reason. I wish someone who
has similar experience can help me.
If someone can provide some usful materials, it would be great.
in each time step,
i firstly compute U, V
then compute P
finally compute T
in the subroutine for computing pressure correction,
i first assemble AE, AW, AN, AS, AP and right hand side (Su)
then i set the value on boundaries according to the periodic boundary conditions, take the west side as example,
i set pp(1,j) = pp(N-1,j) , pp stands for pressure correction;
since i have the values on boundaries, i treat it like Dirichlet boundary condition
then i call the linear sysmeter solver ...