<div dir="ltr">Dear Developers:<br><br>&nbsp; I just checked out source code via cvs, and found a compilation error due to <br>routine ptoolkit.f90 with information below :<br>&quot;<br>IF( ( ii - 1 )/nproc + 1 &gt; SIZE(a,1) ) CALL errore( msg, &#39; ( ii - 1 )/npr <br>
&nbsp; The upper bound in the last dimension must appear in the reference to the assumed size array &#39;a&#39; at (1). &quot;<br>My compilor is gfortran v4.1.2.<br><br>I then examined this routine ,and found subroutine check_sndbuf_index only <br>
called by cyc2blk_*redist in parallel computation. But no mpi macros&nbsp; are defined<br>for this subroutine. I just wonder we should modify this routine by adding mpi <br>macro as following :<br>#if defined (_MPI)<br>&nbsp;&nbsp; IF( j&nbsp; &gt; SIZE(sndbuf,2) ) CALL errore( msg, &#39; j &gt; SIZE(sndbuf,2) &#39;, ip+1 )<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IF( il &gt; SIZE(sndbuf,1) ) CALL errore( msg, &#39; il &gt; SIZE(sndbuf,1) &#39;, ip+1 )<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IF( ( ii - 1 )/nproc + 1 &lt; 1 ) CALL errore( msg, &#39; ( ii - 1 )/nproc + 1 &lt; 1 &#39;, ip+1 )<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IF( ( ii - 1 )/nproc + 1 &gt; SIZE(a,1) ) CALL errore( msg, &#39; ( ii - 1 )/nproc + 1 &gt; SIZE(a,1) &#39;, ip+1 )<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IF( jj &lt; 1 ) CALL errore( msg, &#39; jj &lt; 1 &#39;, ip+1 )<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IF( jj &gt; n ) CALL errore( msg, &#39; jj &gt; n &#39;, ip+1 )<br>#endif<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; RETURN<br><br><br>I then recompiled it, and found no error occured again during compiling. I would like <br>
to know whether it is reasonable by adding this mpi macro for ptoolkit subroutine.<br><br>Best,<br><br>Hai-Ping<br clear="all"><br>-- <br>Hai-Ping Lan <br>Department of Electronics ,<br>Peking University , Bejing, 100871<br>
<a href="mailto:lanhaiping@gmail.com">lanhaiping@gmail.com</a>, <a href="mailto:hplan@pku.edu.cn">hplan@pku.edu.cn</a><br>
</div>