Question on 2d Euler explicit Steger-Warming method
Dear people.
I have studied on Vol II written by Hoffmann. Accoding to the book, my cfd code uses finite difference method with values(u,v,etc) on nodes. To fix my wrong 2d euler cfd code, I'm seeking for a bugs.. Now I doubt that there is an error in implementing flux vector( E, F) splitting. The reason why I think like this is as follows.. When I update Q flux vector using explicit Steger-Warming method, E +-, F +- on boundary(wall) are refered. DelQ(i,j) = -dt/dxi*(Ep(i,j)-Ep(i-1,j)+Em(i+1,j)-Em(i,j)) -dt/detz*(Fp(i,j)-Fp(i,j-1)+Fm(i,j+1)-Fm(i,j)) -dt(alpha*H)... The problem is that if j=2 or JMAX-1, then I need Fp(i,1) or Fm(i,JMAX). but the eigenvalues on (i,1) or (i,JMAX) can be zero I mean that there are only cases as follows. 1. eigenvalue(1)>0 and eigenvalue(4)>0 2. eigenvalue(1)>0 and eigenvalue(4)<0 3. eigenvalue(1)<0 and eigenvalue(3)<0 4. eigenvalue(1)<0 and eigenvalue(3)>0 but "eigenvalue(1) = eta_x*u+eta_y*v" can be zero at flat wall(when flow is steady state, eta_x = 0 and v=0) So my question is 1. Is there any special treatment to compute E+-, F+- on boundary wall( ex. F+<i,1>, F-<i,JM> )? 2. What should I do when eigenvalue at 1st row is zero? 3. I calculated metrics like this... ex. eta_y = Jacobian*x_xi where, Jacobian = 1 / (x_xi*y_eta + y_xi*x_eta) x_xi = (x(i+1,j)-x(i-1,j))/(2*d_xi) I'd like to know this is proper equation to get metrics. If not, how can I compute metrics? I appriciate in advance for your kind comments. Yours sincerely, Dave |
All times are GMT -4. The time now is 04:04. |