# Q: Numerical Treatment on Cross-derivatives ?

 User Name Remember Me Password
 Register Blogs Members List Search Today's Posts Mark Forums Read

 October 5, 2002, 01:19 Q: Numerical Treatment on Cross-derivatives ? #1 Wen Long Guest   Posts: n/a Hi, friends: I got a question on cross-derivative treatment for a 2-D horziontal weakly nonlinear shallow water equation model. Basically the equation being: Continuity: eta_t + h*u_x + h*v_y=0 (*) where eta is the ocean surface elevation, h is water depth. X-momentum: u_t +u_xxt+v_yxt+u_yxt+v_yyt = f(x,y,t) Y-momentum: v_t +v_yyt+u_xyt+v_xyt+v_xxt = g(x,y,t) I'm using a predictor -corrector scheme to solve them. When solve the x momentum equation, all the cross derivative terms and v stuff are moved to rhs: u_t+u_xxt= f(x,y,t)-v_yxt-v_yyt-u_yxt =F(x,y,t) and define u+u_xx=U, so the upper equation becomes U_t =F (**) Similarly,when solve the y momentum equation, all the derivative terms and u starff are moved to rhs: v_t+v_yyt =g(x,y,t)-u_xyt-u_xxt-v_xyt =G(x,y,t) i.e. U_t=(u+u_xx)_t =G(x,y,t) (***) Finit Difference Method is used. Firstly 3 time levels of F(x,y,t) are calcualted, to predict U at n+1 level, and then solve U=u+u_xx by tridiagonal method to get u(x,y,t) Then 3 time levels of G(x,y,t) are calcualted to predict V at n+1 level and then solve for v(x,y,t). The precedure is iterated since source f,g are nonlinear. The code works pretty well, except one thing: the biggest iteration error comes out from the cross-derivative term v_yxt in x-momentum eqn and u_xyt in y-momentum equation. It take much more iteration steps when these terms are at present. It's a 2-D code. I'm runing it for a 1-D test case, basically v~=0, but in the code, I cann't make v exactly zero when solve y-momentum equation because of numerical rounding, so I get v_xyt very small but not zero and this feeds back to x-momentum equation. That is the cross derivative term transfers error back and forth between the x and y equation. I wonder if my treatment of them is okay or not. Is there a better way? I'm getting mad on it ... Thanks, if you point me an idea, I'm gonna buy pizza for you!

 October 5, 2002, 01:21 Re: Q: Numerical Treatment on Cross-derivatives ? #2 Wen Long Guest   Posts: n/a Oops, one typo in equation (***) should be: V_t=(v+v_yy)_t=G(x,y,t) (***) wen

 Thread Tools Display Modes Linear Mode

 Posting Rules You may not post new threads You may not post replies You may not post attachments You may not edit your posts BB code is On Smilies are On [IMG] code is On HTML code is OffTrackbacks are On Pingbacks are On Refbacks are On Forum Rules

 Similar Threads Thread Thread Starter Forum Replies Last Post chriswatt Main CFD Forum 0 February 15, 2011 22:32 Hamid Karani Main CFD Forum 1 September 30, 2008 05:51 wen long Main CFD Forum 2 September 12, 2005 02:10 ado Main CFD Forum 3 October 12, 2000 08:20 Eleuterio TORO Main CFD Forum 0 December 18, 1998 13:41

All times are GMT -4. The time now is 22:31.

 Contact Us - CFD Online - Privacy Statement - Top