[Wrf-users] tc.exe segmentation fault and divide by zero

Will Thurston willthurston at gmail.com
Tue May 18 00:23:19 MDT 2010


Hi all,

I have encountered some problems trying to run the program tc.exe to
bogus a tropical cyclone (using WRF 3.1.1 with which I have already
successfully run geogrid.exe, ungrib.exe, metgrid.exe, real.exe and
wrf.exe).

Initially I got the following error, with the program seg faulting at
the very beginning:

forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image              PC                Routine            Line        Source
libmpi.so          2000000000116310  Unknown               Unknown  Unknown
libmpi.so          200000000011D240  Unknown               Unknown  Unknown
libmpi.so          200000000011D310  Unknown               Unknown  Unknown
tc.exe             4000000000BD4E90  Unknown               Unknown  Unknown
tc.exe             4000000000006530  Unknown               Unknown  Unknown
tc.exe             40000000000063D0  Unknown               Unknown  Unknown
libc.so.6.1        200000000061BD20  Unknown               Unknown  Unknown
tc.exe             4000000000006200  Unknown               Unknown  Unknown


Having searched the mailing list and wrf forum I recompiled in serial
mode and tried again, setting the debug_level to 10000. This time the
tc.exe output is:

 Namelist dfi_control not found in namelist.input. Using registry defaults for v
 ariables in dfi_control
 Namelist scm not found in namelist.input. Using registry defaults for variables
  in scm
 Namelist fire not found in namelist.input. Using registry defaults for variable
 s in fire
 TC_EM V3.1.1 PREPROCESSOR
   real_em: calling alloc_and_configure_domain
forrtl: severe (71): integer divide by zero
Image              PC                Routine            Line        Source
tc.exe             4000000002ADD202  Unknown               Unknown  Unknown
tc.exe             4000000000BAA900  Unknown               Unknown  Unknown
tc.exe             4000000000BA0BF0  Unknown               Unknown  Unknown
tc.exe             4000000000BAFBC0  Unknown               Unknown  Unknown
tc.exe             40000000001B7DF0  Unknown               Unknown  Unknown
tc.exe             40000000001BEE60  Unknown               Unknown  Unknown
tc.exe             40000000000052A0  Unknown               Unknown  Unknown
tc.exe             4000000000004ED0  Unknown               Unknown  Unknown
libc.so.6.1        2000000000603D20  Unknown               Unknown  Unknown
tc.exe             4000000000004D00  Unknown               Unknown  Unknown

So now, tc.exe is at least reading namelist.input, but encounters a
divide by zero, presumably when calling alloc_and_configure_domain. I
can't understand why it is failing here, as the lines calling
alloc_and_configure_domain in real_em.F and tc_em.F appear to be
exactly the same and real.exe runs without a hitch.

Can anyone please offer me any advice or suggestions on fixing this problem?

Many thanks,
Will Thurston.


More information about the Wrf-users mailing list