<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from text --><style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>
</head>
<body>
<meta content="text/html; charset=UTF-8">
<style type="text/css" style="">
<!--
p
        {margin-top:0;
        margin-bottom:0}
-->
</style>
<div dir="ltr">
<div id="x_divtagdefaultwrapper" dir="ltr" style="font-size:12pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif">
<p>Hi Gus,</p>
<p><br>
</p>
<p>Yes, I do use gfortran.</p>
<p><br>
</p>
<p>Thanks a lot for all your help!</p>
<p><br>
</p>
<p>Yangxin</p>
</div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="x_divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>From:</b> MITgcm-support <mitgcm-support-bounces@mitgcm.org> on behalf of Gus Correa <gus@ldeo.columbia.edu><br>
<b>Sent:</b> Thursday, November 16, 2017 3:12:02 PM<br>
<b>To:</b> MITgcm Support<br>
<b>Subject:</b> Re: [MITgcm-support] NaN - stop running?</font>
<div> </div>
</div>
</div>
<font size="2"><span style="font-size:10pt;">
<div class="PlainText">Hi Yangxin<br>
<br>
Yes, I do have the same -ffpe-trap options that you listed.<br>
That should stop the execution on NaNs or Infinity,<br>
division by zero, and overflows.<br>
<br>
I use gfortran, and it seems to me that you're also using it, right?<br>
Intel and PGI are likely to have different flags, if you're using<br>
either one, check the compiler man page and MITgcm example option files<br>
for those compilers.<br>
<br>
Suggestion: If not yet there, add -fbacktrace to the FFLAGS.<br>
It helps much to find the source file and line where code failed.<br>
<br>
I hope this helps.<br>
Gus Correa<br>
<br>
On 11/16/2017 12:22 PM, Yangxin He wrote:<br>
> Hi Gus,<br>
> <br>
> <br>
> Thanks for your reply.<br>
> <br>
> <br>
> I added a flag in my optfile " -ffpe-trap=invalid,zero,overflow", will <br>
> this solve my problem too? how does this compare with your solution?<br>
> <br>
> <br>
> Yangxin<br>
> <br>
> ------------------------------------------------------------------------<br>
> *From:* MITgcm-support <mitgcm-support-bounces@mitgcm.org> on behalf of <br>
> Gus Correa <gus@ldeo.columbia.edu><br>
> *Sent:* Thursday, November 16, 2017 12:14:38 PM<br>
> *To:* MITgcm Support<br>
> *Subject:* Re: [MITgcm-support] NaN - stop running?<br>
> Hi Yangxin<br>
> <br>
> Pass the --ieee and --devel flags to genmake2,<br>
> when you build the model (do a 'make CLEAN' beforehand).<br>
> Something like this (assuming you use MPI):<br>
> <br>
> /path/to/MITgcm/tools/genmake2 \<br>
> --rootdir=/path/to/MITgcm \<br>
> --optfile= /path/to/MITgcm/tools/build_options/your_build_options_file \<br>
> --mods=/path/to/your/experiment/code \<br>
> --mpi \<br>
> --ieee \<br>
> --devel \<br>
> <br>
> <br>
> If your build_options file was properly written, it will<br>
> turn on your compiler's floating point exceptions (as Jody suggested),<br>
> and the model will crash at the first NaN.<br>
> <br>
> Besides, it is also useful to turn on "traceback"<br>
> (or "backtrace", check the compiler man page) compiler flag,<br>
> which will tell you in which preprocessed ".f" file<br>
> (in your build directory)<br>
> and on which line of code line the problem happened.<br>
> BTW, keep the ".f" files, don't do a 'make clean' while you're<br>
> chasing the error.<br>
> <br>
> If your build_options file doesn't have these features,<br>
> you can find some example files that do have that<br>
> in the MITgcm original build_options directory.<br>
> Look there for "macros" such as IEEE, and DEVEL.<br>
> Copy the corresponding blocks to your build_options file,<br>
> and adjust to your compiler's specific flags.<br>
> <br>
> I hope this helps,<br>
> Gus Correa<br>
> <br>
> On 11/15/2017 01:33 PM, Jody Klymak wrote:<br>
>> You want to look up floating-point exception handling for your compiler.<br>
>> <br>
>> Cheers,   Jody<br>
>> <br>
>> <br>
>> <br>
>>> On 15 Nov 2017, at  10:18 AM, Yangxin He <y67he@uwaterloo.ca <br>
>>> <<a href="mailto:y67he@uwaterloo.ca">mailto:y67he@uwaterloo.ca</a>>> wrote:<br>
>>><br>
>>> Hey,<br>
>>><br>
>>> I am having a (probably) small problem. Sometimes my output data gives <br>
>>> all NaN for various reasons. But it still kept running until the end. <br>
>>> Is there any way that I can make the model stop running once it starts <br>
>>> to generate NaNs?<br>
>>><br>
>>> Thanks<br>
>>><br>
>>> Yangxin<br>
>>> _______________________________________________<br>
>>> MITgcm-support mailing list<br>
>>> MITgcm-support@mitgcm.org <<a href="mailto:MITgcm-support@mitgcm.org">mailto:MITgcm-support@mitgcm.org</a>><br>
>>> <a href="http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support">http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support</a><br>
>> <br>
>> --<br>
>> Jody Klymak<br>
>> <a href="http://web.uvic.ca/~jklymak/">http://web.uvic.ca/~jklymak/</a><br>
>> <br>
>> <br>
>> <br>
>> <br>
>> <br>
>> <br>
>> <br>
>> _______________________________________________<br>
>> MITgcm-support mailing list<br>
>> MITgcm-support@mitgcm.org<br>
>> <a href="http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support">http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support</a><br>
>> <br>
> <br>
> _______________________________________________<br>
> MITgcm-support mailing list<br>
> MITgcm-support@mitgcm.org<br>
> <a href="http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support">http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support</a><br>
> <br>
> <br>
> _______________________________________________<br>
> MITgcm-support mailing list<br>
> MITgcm-support@mitgcm.org<br>
> <a href="http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support">http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support</a><br>
> <br>
<br>
_______________________________________________<br>
MITgcm-support mailing list<br>
MITgcm-support@mitgcm.org<br>
<a href="http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support">http://mailman.mitgcm.org/mailman/listinfo/mitgcm-support</a><br>
</div>
</span></font>
</body>
</html>