140 likes | 260 Vues
This paper presents an efficient and conservative grid coupling algorithm designed for solving multi-domain problems in atmospheric sciences. It addresses challenges arising from differences in topography and computational resources by transferring values between grids A and B. The method ensures flux conservation, stability, and minimal dissipation, thus preventing unrealistic values. The algorithm is applicable to both Cartesian grids and features straightforward programming, making it an effective solution for researchers in atmospheric modeling.
E N D
Grid Coupling in TIMCOM 鄭偉明 TAY Wee-Beng Department of Atmospheric Sciences National Taiwan University
Motivation • Multi-domain problems • Problems which require 2 or more domains (grids) to solve efficiently. • Arises due to difference in topography or restriction in computation resources.
Objective • To transfer values from grid A to B and vice versa efficiently and conservatively • Efficiently • Algorithm must not take up too much computational resources. • Relatively simple to program. • Conservatively • Flux must be conserved, minimal dissipation. • No appearance of unrealistic value. • To ensure stability
Multi-domain examples • From simple to complex
Multi-domain in TIMCOM • Features • Both Cartesian grids (TAI and NPB) • Same orientation, fixed in space • NPB is twice the size of TAI • Boundary faces of TAI positioned exactly at center of NPB cells
Algorithm: TAI to NPB grid • UWNPB(JJ,K)= U(I3,J,K) +U(I3,J+1,K) • UWNPB is west face value • U(I,J,K) from TAI • I3 = I0-3
Algorithm: TAI to NPB grid • U2NPB(JJ,K)=0.25*[U2(I2,J,K)+ U2(I1,J,K)+ U2(I2,J+1,K)+ U2(I1,J+1,K)] • U2NPB is center value • U2NPB = U@(I=2) • U2(I,J,K) from TAI • I2 = I0-2 • Average of 4 values • Same for V, S and T • Same for U1NPB, except different cell
Using interpolated values in NPB • U(1,127,K)=IN(2,127,K)*(FLT1*UWNPB(J,K)+FLT2*U(1,127,K)) • U(1,127,K) is face value • IN - Mask array for scalar quantities IN(I,J,K)=1,0 for water, land respectively • UWNPB - Interpolated face value from TAI • FLT1/2 – time filter to improve stability since TAI has finer grid, smaller time step. Use part of old value to improve stability
Using interpolated values in NPB • TMP=U2NPB(J,K)-U1(2,N,K) • TMP represents a small incremental difference • Same effect as previous case to improve stability • U2(2,N,K)=U2(2,N,K)+TMP • U2(2,N,K) is center value • To give a smaller and smoother increment • Improves stability • Same for V, S and T
Using interpolated values in NPB • U2(1,N,K)=U1NPB(J,K) • U2(1,N,K) is center value • U1NPB - Interpolated center value from TAI • U1NPB = U@(I=1) • Same for V, S and T • No time filter due to spatial averaging
Algorithm: NPB to TAI grid • UETAI(J,K)=U(2,(J-2)/2+127,K) • UETAI is east face value • U(I,J,K) from NPB
Algorithm: NPB to TAI grid • UI0TAI(J,K)=U2(3,(J-2)/2+127,K) • UI0TAI is center value • U2(I,J,K) from NPB • Same for V, S and T
Using interpolated values in TAI • U(I1,J,K)=IN(I1,J,K)*UETAI(J,K) • U(I1,J,K) is face value • IN - Mask array for scalar quantities IN(I1,J,K)=1,0 for water, land respectively • No time filter • U2(I0,J,K)=UI0TAI(J,K) • U2(I0,J,K) is center value • No time filter and IN multiplication required
Conclusion • Multi-domain problems requires the use of grid coupling • Objective to transfer values from one grid to another • Efficient and conservative algorithm • Use of filter to ensure smooth transition and stability