Difference between revisions of "Mesh generation"
| Line 1: | Line 1: | ||
==Beware of CFL number== | ==Beware of CFL number== | ||
| − | You may be familiar with the CFL restriction associated with explicit (mode-splitting) | + | You may be familiar with the CFL restriction associated with explicit (mode-splitting) models; the CFL number, defined as |
CFL=(|u|+sqrt(g*h))*dt/dx | CFL=(|u|+sqrt(g*h))*dt/dx | ||
| − | must be <1 for given dx,dt. Here h is the local water depth, and u is the flow velocity. | + | must be <1 for given dx,dt in such models. Here h is the local water depth, and u is the flow velocity. Note that the sqrt() term is related to surface wave celerity. |
Being an implicit model using Eulerian-Lagrangian method (ELM), SELFE has a somewhat opposite requirement: CFL>0.4. Therefore care must be taken in the grid generation | Being an implicit model using Eulerian-Lagrangian method (ELM), SELFE has a somewhat opposite requirement: CFL>0.4. Therefore care must be taken in the grid generation | ||
Revision as of 08:25, 29 August 2012
Beware of CFL number
You may be familiar with the CFL restriction associated with explicit (mode-splitting) models; the CFL number, defined as
CFL=(|u|+sqrt(g*h))*dt/dx
must be <1 for given dx,dt in such models. Here h is the local water depth, and u is the flow velocity. Note that the sqrt() term is related to surface wave celerity.
Being an implicit model using Eulerian-Lagrangian method (ELM), SELFE has a somewhat opposite requirement: CFL>0.4. Therefore care must be taken in the grid generation process; otherwise numerical diffusion in ELM would ruin your results, which may manifest itself in the form of either noise or dissipation.
With xmgredit5, you can very easily visualize CFL for the entire grid. Note, however, that CFL number is undefined when h<0. In these shallow regions, we should use |u| alone and neglect the wave celerity term (sqrt(g*h)). E.g., if we estimate |u| ~ 1m/s, with a time step of 100s, the max. dx should be 250m; with dt=50s, dx_max=125m.
- Viz CFL number in xmgredit5
- xmgredit5 -belel -1.e-10 hgrid.gr3 (note: '-belel -1.e-10' is used mainly to increase precision for lat/lon grid)
- since the CFL inside ACE is calculated without u, we should impose a min depth of 0.1 (so that sqrt(g*h)>=1m/s); you can do this by: Edit
Baratropic simulation
Grid quality requirement is relatively lax for barotropic simulations. Besides the CFL above, you mainly need to use appropriate resolution based on physics (e.g., coarser resolution in deeper depths and finer resolution for shallow depths).
Baroclinic simulation
The transport process is influenced by your choice of grid.