From ccrmwiki
Jump to: navigation, search

Besides the following info, you may also search archived messages from the SCHISM mailing list on the same web where you registered yourself for the mailing list. Just log in, and select 'Archive' from the left of the screen, and then on right side of screen select 'Advanced search'.

1. My results show platform/compiler/CPU dependency Due to some intricate differences between different compilers/platforms some minor differences in results are expected.

Bit-by-bit match of results using different numbers of CPUs is impossible also. But the differences should be small and should stabilize over time iteration.

2. Run crashed with a fort.11 error message "QUICKSEARCH: no intersecting edge...."

First, you need to viz the results before the crash (e.g. surface velocity) to see if anything is outrageously wrong. If the results look reasonable, contact the developers for more info.

3. Run crashed with a fort.11 error message "bktrk_subs: overflow..." or "MAIN: nbtrk > mxnbt"

The backtracking (ELM) in SCHISM is parallelized across MPI processes, and some arrays need to be allocated to store trajectories that exited the augmented domain. The dimension of those arrays is defined in mxnbt and mnbt, which are proportional to local # of side and # of levels, and the proportionality constants are defined in param.in: s1_mxnbt = 0.5 s2_mxnbt = 3.5 95 (Gradually) increasing these (to say 1, and 4) will solve the problem. Note that these constants only affect memory consumption but not accuracy.

4. How to do a tidal simulation with SCHISM?

The simplest way is to use SCHISM 2D. If you have to use SCHISM 3D, make sure the vertical grid is reasonable.

5. My run crashed; how can I find out why?

The best way to find out the reason for a crash is to visualize the surface velocity with VisIT. Usually, you may see some large/noisy velocity somewhere, which may give you some hints on grid or forcing issues etc. Sometimes you want to visualize the problem right before the crash. You cannot use autocombine_MPI_elfe.pl as the last stack of output is incomplete. But you can use them FORTRAN combine script (e.g., combine_output*) to directly combine an incomplete stack. Just follow the instruction in the header of this script to prepare the inputs and run. Then visualize the combined outputs.

6. How to impose river discharge if the depth is negative there?

See Manual Chapter 5.1.7.

7. Run crashes with a dry boundary/depth error.

SCHISM does not allow any open-boundary nodes to become dry at any time; see Manual Chapter 5.1.7.

8. I have large velocity at open boundary

In hydrostatic models, the incoming velocity should be specified at open boundary. Over-specification i.e. elevation+velocity B.C. there usually avoids the problem, but the two B.C. ’s must be largely consistent with each other. In reality it's often difficult to find velocity B.C., and so a useful way is to use one-way nesting approach described in Manual Section 5.4.

9. fort.11 indicates “Could not find suitable element in input”

This is likely because your sflux*.nc is not prepared properly: either the grid in .nc does not cover hgrid.ll, or the structured grid in .nc is not ordered counter-clockwise.

10. Need more explanations on some of the parameters in param.in?

Send the request to the schism mailing list. Frequently asked ones will be added below and included into the manual if necessary:

   "xlsc0" (surface mixing length scale constant)

11. I have some legacy input files in binary format that no longer work for the SCHISM versions after v5.6, do I need to re-write my scripts and generate the inputs in netcdf format?

Not necessarily, here are a list of format conversion scripts in the source code folders:

  • 3D or 2D boudary conditions: *[23]D.th -> *[23]D.th.nc (your_SCHISM_dir/trunk/src/Utility/Pre-Processing/convert_3Dth_nc.f90);
  • hotstart: hotstart.in -> hotstart.nc (your_SCHISM_dir/trunk/src/Utility/Gen_Hotstart/convert_hotstart_nc.f90);
  • nudging: *_nu.in -> *_nu.nc (your_SCHISM_dir/trunk/src/Utility/Pre-Processing/convert_nudge_nc.f90).

The usages of the scripts are described in the beginning lines of the source codes.

The hotstart conversion script asks for "ns" (number of sides) as a command line input. The easiest way to find "ns" is to look at the beginning lines of your previous mirror.out, which list grid information; or, run your project with 1 core and "ipre=1" in param.in, which generates the grid info but does not require hotstart.in.

Personal tools