<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[116398] trunk/dports/math/arpack</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="https://trac.macports.org/changeset/116398">116398</a></dd>
<dt>Author</dt> <dd>sean@macports.org</dd>
<dt>Date</dt> <dd>2014-01-23 12:16:10 -0800 (Thu, 23 Jan 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>arpack: update to 3.1.4 and use new mpi portgroup

This also makes the change for g95 supporting shared libraries now.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkdportsmatharpackPortfile">trunk/dports/math/arpack/Portfile</a></li>
<li><a href="#trunkdportsmatharpackfilespatchPARPACKcdotandzdotdiff">trunk/dports/math/arpack/files/patch-PARPACK-cdot-and-zdot.diff</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkdportsmatharpackfilespatchUTILsecond_NONEfdiff">trunk/dports/math/arpack/files/patch-UTIL-second_NONE.f.diff</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkdportsmatharpackPortfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/math/arpack/Portfile (116397 => 116398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/math/arpack/Portfile        2014-01-23 20:16:05 UTC (rev 116397)
+++ trunk/dports/math/arpack/Portfile        2014-01-23 20:16:10 UTC (rev 116398)
</span><span class="lines">@@ -3,10 +3,13 @@
</span><span class="cx"> 
</span><span class="cx"> PortSystem          1.0
</span><span class="cx"> PortGroup           muniversal 1.0
</span><del>-PortGroup           active_variants 1.1
</del><ins>+PortGroup           mpi 1.0
</ins><span class="cx"> 
</span><ins>+mpi.setup           require_fortran
+
</ins><span class="cx"> name                arpack
</span><del>-version             3.1.3
</del><ins>+version             3.1.4
+revision            1
</ins><span class="cx"> categories          math
</span><span class="cx"> license             BSD
</span><span class="cx"> platforms           darwin
</span><span class="lines">@@ -17,14 +20,18 @@
</span><span class="cx">                     is included if built with an MPI variant.
</span><span class="cx"> homepage            http://forge.scilab.org/index.php/p/arpack-ng
</span><span class="cx"> master_sites        ${homepage}/downloads/get
</span><del>-distfiles           arpack-ng-${version}.tar.gz
-checksums           md5     90ba42eae70b517ebdb72921cb4186df \
-                    sha1    c1ac96663916a4e11618e9557636ba1bd1a7b556 \
-                    rmd160  30a3b8a707417afeb3f8a794ee3aa0160fa3e745
</del><ins>+distfiles           arpack-ng_${version}.tar.gz
</ins><span class="cx"> worksrcdir          ${name}-ng-${version}
</span><span class="cx"> 
</span><ins>+checksums           rmd160  58ee298f08390ee56528f3198ccc9887e661504f \
+                    sha256  a1b2ca4c30f7027b56f94d42e646df4762944486790da66ce8ffbad386c78c54
+
</ins><span class="cx"> configure.args      home=${worksrcpath} --disable-mpi
</span><span class="cx"> 
</span><ins>+if {![fortran_variant_isset]} {
+    default_variants +gfortran
+}
+
</ins><span class="cx"> if {${build_arch} eq &quot;x86_64&quot; || ${build_arch} eq &quot;ppc64&quot;} {
</span><span class="cx">     configure.args-append FFLAGS='-O2 -m64'
</span><span class="cx"> } else {
</span><span class="lines">@@ -41,11 +48,11 @@
</span><span class="cx">         return -code error &quot;incompatible Mac OS X version&quot;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    if {[variant_isset openmpi]} {
-        # see g95 variant below for explanation
-        if { [active_variants openmpi g95] } {
-            configure.args-append --disable-shared
-        }
</del><ins>+    if {[mpi_variant_isset]} {
+        configure.args-delete  --disable-mpi
+        configure.args-append  --enable-mpi
+        configure.args-append  F77=${mpi.f77} \
+                               MPIF77=${mpi.f77}
</ins><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -56,56 +63,6 @@
</span><span class="cx">     set universal_archs_supported &quot;ppc ppc64&quot;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-variant openmpi description {build PARPACK, with OpenMPI} conflicts gcc43 gcc44 gcc45 gcc46 gcc47 gcc48 g95 mpich universal {
-    depends_lib-append     port:openmpi
-    configure.args-delete  --disable-mpi
-    configure.args-append  --enable-mpi
-    configure.env-append   F77=${prefix}/bin/openmpif77 MPIF77=${prefix}/bin/openmpif77
-}
-
-variant mpich description {build PARPACK, with MPICH} conflicts gcc43 gcc44 gcc45 gcc46 gcc47 gcc48 g95 openmpi {
-    depends_lib-append     path:bin/mpif77-mp:mpich-default
-    configure.args-delete  --disable-mpi
-    configure.args-append  --enable-mpi
-    configure.env-append   F77=${prefix}/bin/mpif77-mp MPIF77=${prefix}/bin/mpif77-mp
-}
-
-variant gcc43 description {build with gfortran-mp-4.3} conflicts gcc44 gcc45 gcc46 gcc47 gcc48 g95 universal openmpi mpich {
-        configure.compiler      macports-gcc-4.3
-}
-
-variant gcc44 description {build with gfortran-mp-4.4} conflicts gcc43 gcc45 gcc46 gcc47 gcc48 g95 openmpi mpich {
-        configure.compiler      macports-gcc-4.4
-}
-
-variant gcc45 description {build with gfortran-mp-4.5} conflicts gcc43 gcc44 gcc46 gcc47 gcc48 g95 openmpi mpich {
-        configure.compiler      macports-gcc-4.5
-}
-
-variant gcc46 description {build with gfortran-mp-4.6} conflicts gcc43 gcc44 gcc45 gcc47 gcc48 g95 openmpi mpich {
-        configure.compiler      macports-gcc-4.6
-}
-
-variant gcc47 description {build with gfortran-mp-4.7} conflicts gcc43 gcc44 gcc45 gcc46 gcc48 g95 openmpi mpich {
-        configure.compiler      macports-gcc-4.7
-}
-
-variant gcc48 description {build with gfortran-mp-4.7} conflicts gcc43 gcc44 gcc45 gcc46 gcc47 g95 openmpi mpich {
-        configure.compiler      macports-gcc-4.8
-}
-
-# does not work without --shared-lib, will not accept -force_load in linking stage
-variant g95 description {build with g95 (static only)} conflicts gcc43 gcc44 gcc45 gcc46 gcc47 gcc48 universal openmpi mpich {
-        depends_build-append    port:g95
-        configure.args-append   --disable-shared
-        configure.env-append    F77=${prefix}/bin/g95
-}
-
-if { ![variant_isset gcc43] &amp;&amp; ![variant_isset gcc44] &amp;&amp; ![variant_isset gcc45] &amp;&amp; ![variant_isset gcc46] \
-   &amp;&amp; ![variant_isset gcc47] &amp;&amp; ![variant_isset g95] &amp;&amp; ![variant_isset openmpi] &amp;&amp; ![variant_isset mpich]} {
-    default_variants      +gcc48
-}
-
</del><span class="cx"> variant accelerate conflicts atlas description {build with Accelerate framework} {
</span><span class="cx">     # the change of LDFLAGS is required to avoid linking against the ATLAS ones
</span><span class="cx">     # if they are present; if we specify /usr/lib/libblas.dylib directly, the
</span><span class="lines">@@ -113,14 +70,8 @@
</span><span class="cx">     configure.args-delete  LDFLAGS=''
</span><span class="cx">     configure.args-append  LDFLAGS='/usr/lib/libblas.dylib /usr/lib/liblapack.dylib' --with-blas=&quot;-lblas -llapack&quot;
</span><span class="cx">     patchfiles-append      patch-ARPACK-cdot-and-zdot.diff
</span><del>-    if {[variant_isset openmpi] || [variant_isset mpich]} {
</del><ins>+    if {[mpi_variant_isset]} {
</ins><span class="cx">         patchfiles-append patch-PARPACK-cdot-and-zdot.diff
</span><del>-        # PARPACK unwisely uses 'second' from LAPACK (not provided by
-        # Accelerate) instead of internal 'arscnd' like ARPACK so, we make a
-        # 'second' which wraps 'arscnd'. Really, 'second' should just be
-        # replaced in PARPACK source.
-        # http://forge.scilab.org/index.php/p/arpack-ng/issues/1245/
-        patchfiles-append patch-UTIL-second_NONE.f.diff
</del><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -151,5 +102,3 @@
</span><span class="cx"> livecheck.type  regex
</span><span class="cx"> livecheck.url   http://forge.scilab.org/index.php/p/arpack-ng/downloads/
</span><span class="cx"> livecheck.regex ${name}-ng (\[0-9.\]+\[0-9\])
</span><del>-
-variant mpich2 requires mpich description {Legacy compatibility variant} {}
</del></span></pre></div>
<a id="trunkdportsmatharpackfilespatchPARPACKcdotandzdotdiff"></a>
<div class="modfile"><h4>Modified: trunk/dports/math/arpack/files/patch-PARPACK-cdot-and-zdot.diff (116397 => 116398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/math/arpack/files/patch-PARPACK-cdot-and-zdot.diff        2014-01-23 20:16:05 UTC (rev 116397)
+++ trunk/dports/math/arpack/files/patch-PARPACK-cdot-and-zdot.diff        2014-01-23 20:16:10 UTC (rev 116398)
</span><span class="lines">@@ -1,15 +1,17 @@
</span><del>---- ./PARPACK/SRC/BLACS/pcgetv0.f.orig        2012-08-07 11:00:22.000000000 +1000
-+++ ./PARPACK/SRC/BLACS/pcgetv0.f        2012-08-07 10:28:53.000000000 +1000
-@@ -188,7 +188,7 @@
</del><ins>+--- PARPACK/SRC/BLACS/pcgetv0.f
++++ PARPACK/SRC/BLACS/pcgetv0.f
+@@ -186,21 +186,19 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><del>--      external    ccopy, cgemv, pclarnv, pcvout, second
-+      external    ccopy, cdotc, cgemv, pclarnv, pcvout, second
</del><ins>+-      external    ccopy, cgemv, pclarnv, pcvout, arscnd
++      external    ccopy, cdotc, cgemv, pclarnv, pcvout, arscnd
</ins><span class="cx">  c
</span><span class="cx">  c     %--------------------%
</span><span class="cx">  c     | External Functions |
</span><del>-@@ -196,9 +196,7 @@
</del><ins>+ c     %--------------------%
</ins><span class="cx">  c
</span><span class="cx">        Real  
</span><span class="cx">       &amp;           pscnorm2, slapy2
</span><span class="lines">@@ -20,7 +22,11 @@
</span><span class="cx">  c
</span><span class="cx">  c     %-----------------%
</span><span class="cx">  c     | Data Statements |
</span><del>-@@ -335,7 +333,7 @@
</del><ins>+ c     %-----------------%
+ c
+@@ -333,11 +331,11 @@ c
+          tmvbx = tmvbx + (t3 - t2)
+       end if
</ins><span class="cx">  c 
</span><span class="cx">        first = .FALSE.
</span><span class="cx">        if (bmat .eq. 'G') then
</span><span class="lines">@@ -29,8 +35,12 @@
</span><span class="cx">            call cgsum2d( comm, 'All', ' ', 1, 1, cnorm, 1, -1, -1 )
</span><span class="cx">            rnorm0 = sqrt(slapy2(real (cnorm),aimag(cnorm)))
</span><span class="cx">        else if (bmat .eq. 'I') then
</span><del>-@@ -394,7 +392,7 @@
</del><ins>+            rnorm0 = pscnorm2( comm, n, resid, 1)
</ins><span class="cx">        end if
</span><ins>+@@ -392,11 +390,11 @@ c
+          call arscnd (t3)
+          tmvbx = tmvbx + (t3 - t2)
+       end if
</ins><span class="cx">  c 
</span><span class="cx">        if (bmat .eq. 'G') then
</span><span class="cx"> -         cnorm = cdotc (n, resid, 1, workd, 1)
</span><span class="lines">@@ -38,15 +48,19 @@
</span><span class="cx">           call cgsum2d( comm, 'All', ' ', 1, 1, cnorm, 1, -1, -1 )
</span><span class="cx">           rnorm = sqrt(slapy2(real (cnorm),aimag(cnorm)))
</span><span class="cx">        else if (bmat .eq. 'I') then
</span><del>---- ./PARPACK/SRC/BLACS/pcnaitr.f.orig        2012-08-07 11:00:42.000000000 +1000
-+++ ./PARPACK/SRC/BLACS/pcnaitr.f        2012-08-07 10:56:31.000000000 +1000
-@@ -295,18 +295,16 @@
</del><ins>+          rnorm = pscnorm2(comm, n, resid, 1)
+       end if
+--- PARPACK/SRC/BLACS/pcnaitr.f
++++ PARPACK/SRC/BLACS/pcnaitr.f
+@@ -293,22 +293,20 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><span class="cx"> -      external   caxpy, ccopy, cscal, cgemv, pcgetv0, slabad, 
</span><span class="cx"> +      external   caxpy, ccopy, cdotc, cscal, cgemv, pcgetv0, slabad, 
</span><del>-      &amp;           csscal, pcvout, pcmout, pivout, second
</del><ins>+      &amp;           csscal, pcvout, pcmout, pivout, arscnd
</ins><span class="cx">  c
</span><span class="cx">  c     %--------------------%
</span><span class="cx">  c     | External Functions |
</span><span class="lines">@@ -61,7 +75,11 @@
</span><span class="cx">  c
</span><span class="cx">  c     %---------------------%
</span><span class="cx">  c     | Intrinsic Functions |
</span><del>-@@ -573,7 +571,7 @@
</del><ins>+ c     %---------------------%
+ c
+@@ -571,11 +569,11 @@ c        %------------------------------
+ c        | The following is needed for STEP 5. |
+ c        | Compute the B-norm of OP*v_{j}.     |
</ins><span class="cx">  c        %-------------------------------------%
</span><span class="cx">  c
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="lines">@@ -70,8 +88,12 @@
</span><span class="cx">               call cgsum2d( comm, 'All', ' ', 1, 1, cnorm, 1, -1, -1 )
</span><span class="cx">               wnorm = sqrt( slapy2(real(cnorm),aimag(cnorm)) )
</span><span class="cx">           else if (bmat .eq. 'I') then
</span><del>-@@ -647,7 +645,7 @@
</del><ins>+              wnorm = pscnorm2(comm, n, resid, 1)
+          end if
+@@ -645,11 +643,11 @@ c
</ins><span class="cx">  c        %------------------------------%
</span><ins>+ c        | Compute the B-norm of r_{j}. |
+ c        %------------------------------%
</ins><span class="cx">  c
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="cx"> -            cnorm = cdotc (n, resid, 1, workd(ipj), 1)
</span><span class="lines">@@ -79,8 +101,12 @@
</span><span class="cx">              call cgsum2d( comm, 'All', ' ', 1, 1, cnorm, 1, -1, -1 )
</span><span class="cx">              rnorm = sqrt( slapy2(real(cnorm),aimag(cnorm)) )
</span><span class="cx">           else if (bmat .eq. 'I') then
</span><del>-@@ -749,7 +747,7 @@
</del><ins>+             rnorm = pscnorm2(comm, n, resid, 1)
+          end if
+@@ -747,11 +745,11 @@ c
</ins><span class="cx">  c        %-----------------------------------------------------%
</span><ins>+ c        | Compute the B-norm of the corrected residual r_{j}. |
+ c        %-----------------------------------------------------%
</ins><span class="cx">  c 
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="cx"> -             cnorm = cdotc (n, resid, 1, workd(ipj), 1)
</span><span class="lines">@@ -88,16 +114,20 @@
</span><span class="cx">               call cgsum2d( comm, 'All', ' ', 1, 1, cnorm, 1, -1, -1 )
</span><span class="cx">               rnorm1 = sqrt( slapy2(real(cnorm),aimag(cnorm)) )
</span><span class="cx">           else if (bmat .eq. 'I') then
</span><del>---- ./PARPACK/SRC/BLACS/pcnaup2.f.orig        2012-08-07 11:00:57.000000000 +1000
-+++ ./PARPACK/SRC/BLACS/pcnaup2.f        2012-08-07 10:31:22.000000000 +1000
-@@ -246,18 +246,16 @@
</del><ins>+              rnorm1 = pscnorm2(comm, n, resid, 1)
+          end if
+--- PARPACK/SRC/BLACS/pcnaup2.f
++++ PARPACK/SRC/BLACS/pcnaup2.f
+@@ -244,22 +244,20 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><span class="cx"> -      external   ccopy, pcgetv0, pcnaitr, pcneigh, pcngets, pcnapps,
</span><del>--     &amp;           csortc, cswap, pcmout, pcvout, pivout, second
</del><ins>+-     &amp;           csortc, cswap, pcmout, pcvout, pivout, arscnd
</ins><span class="cx"> +      external   ccopy, cdotc, pcgetv0, pcnaitr, pcneigh, pcngets,
</span><del>-+     &amp;           pcnapps, csortc, cswap, pcmout, pcvout, pivout, second
</del><ins>++     &amp;           pcnapps, csortc, cswap, pcmout, pcvout, pivout, arscnd
</ins><span class="cx">  c
</span><span class="cx">  c     %--------------------%
</span><span class="cx">  c     | External functions |
</span><span class="lines">@@ -112,7 +142,11 @@
</span><span class="cx">  c
</span><span class="cx">  c     %---------------------%
</span><span class="cx">  c     | Intrinsic Functions |
</span><del>-@@ -767,7 +765,7 @@
</del><ins>+ c     %---------------------%
+ c
+@@ -765,11 +763,11 @@ c
+             call arscnd (t3)
+             tmvbx = tmvbx + (t3 - t2)
</ins><span class="cx">           end if
</span><span class="cx">  c 
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="lines">@@ -121,9 +155,13 @@
</span><span class="cx">              call cgsum2d( comm, 'All', ' ', 1, 1, cmpnorm, 1, -1, -1 )
</span><span class="cx">              rnorm = sqrt(slapy2(real(cmpnorm),aimag(cmpnorm)))
</span><span class="cx">           else if (bmat .eq. 'I') then
</span><del>---- ./PARPACK/SRC/BLACS/pcneupd.f.orig        2012-08-07 11:01:13.000000000 +1000
-+++ ./PARPACK/SRC/BLACS/pcneupd.f        2012-08-07 10:32:35.000000000 +1000
-@@ -327,7 +327,7 @@
</del><ins>+             rnorm = pscnorm2(comm, n, resid, 1)
+          end if
+--- PARPACK/SRC/BLACS/pcneupd.f
++++ PARPACK/SRC/BLACS/pcneupd.f
+@@ -325,11 +325,11 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><span class="lines">@@ -132,7 +170,11 @@
</span><span class="cx">       &amp;           cunm2r,ctrmm,pcvout,pivout,
</span><span class="cx">       &amp;           clahqr
</span><span class="cx">  c  
</span><del>-@@ -339,10 +339,6 @@
</del><ins>+ c     %--------------------%
+ c     | External Functions |
+@@ -337,14 +337,10 @@ c     %--------------------%
+ c
+       Real
</ins><span class="cx">       &amp;           scnrm2,pslamch,slapy2
</span><span class="cx">        external   scnrm2,pslamch,slapy2
</span><span class="cx">  c
</span><span class="lines">@@ -143,7 +185,11 @@
</span><span class="cx">  c     %---------------------%
</span><span class="cx">  c     | Intrinsic Functions |
</span><span class="cx">  c     %---------------------%
</span><del>-@@ -743,7 +739,7 @@
</del><ins>+ c
+       intrinsic    abs
+@@ -741,11 +737,11 @@ c                 | Schur basis of H wit
+ c                 | Note that the eigenvector matrix of T is |
+ c                 | upper triangular, thus the length of the |
</ins><span class="cx">  c                 | inner product can be set to j.           |
</span><span class="cx">  c                 %------------------------------------------%
</span><span class="cx">  c 
</span><span class="lines">@@ -152,18 +198,22 @@
</span><span class="cx">       &amp;                        workl(invsub+(j-1)*ldq), 1)
</span><span class="cx">   40         continue
</span><span class="cx">  c
</span><del>---- ./PARPACK/SRC/BLACS/pzgetv0.f.orig        2012-08-07 11:35:26.000000000 +1000
-+++ ./PARPACK/SRC/BLACS/pzgetv0.f        2012-08-07 10:18:37.000000000 +1000
-@@ -188,7 +188,7 @@
</del><ins>+             if (msglvl .gt. 2) then
+                call ccopy(nconv, workl(invsub+ncv-1), ldq,
+--- PARPACK/SRC/BLACS/pzgetv0.f
++++ PARPACK/SRC/BLACS/pzgetv0.f
+@@ -186,21 +186,19 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><del>--      external    zcopy , zgemv , pzlarnv , pzvout , second
-+      external    zcopy , zdotc , zgemv , pzlarnv , pzvout , second
</del><ins>+-      external    zcopy , zgemv , pzlarnv , pzvout , arscnd
++      external    zcopy , zdotc , zgemv , pzlarnv , pzvout , arscnd
</ins><span class="cx">  c
</span><span class="cx">  c     %--------------------%
</span><span class="cx">  c     | External Functions |
</span><del>-@@ -196,9 +196,7 @@
</del><ins>+ c     %--------------------%
</ins><span class="cx">  c
</span><span class="cx">        Double precision  
</span><span class="cx">       &amp;           pdznorm2 , dlapy2 
</span><span class="lines">@@ -174,7 +224,11 @@
</span><span class="cx">  c
</span><span class="cx">  c     %-----------------%
</span><span class="cx">  c     | Data Statements |
</span><del>-@@ -335,7 +333,7 @@
</del><ins>+ c     %-----------------%
+ c
+@@ -333,11 +331,11 @@ c
+          tmvbx = tmvbx + (t3 - t2)
+       end if
</ins><span class="cx">  c 
</span><span class="cx">        first = .FALSE.
</span><span class="cx">        if (bmat .eq. 'G') then
</span><span class="lines">@@ -183,8 +237,12 @@
</span><span class="cx">            call zgsum2d ( comm, 'All', ' ', 1, 1, cnorm, 1, -1, -1 )
</span><span class="cx">            rnorm0 = sqrt(dlapy2 (dble (cnorm),dimag (cnorm)))
</span><span class="cx">        else if (bmat .eq. 'I') then
</span><del>-@@ -394,7 +392,7 @@
</del><ins>+            rnorm0 = pdznorm2 ( comm, n, resid, 1)
</ins><span class="cx">        end if
</span><ins>+@@ -392,11 +390,11 @@ c
+          call arscnd (t3)
+          tmvbx = tmvbx + (t3 - t2)
+       end if
</ins><span class="cx">  c 
</span><span class="cx">        if (bmat .eq. 'G') then
</span><span class="cx"> -         cnorm = zdotc  (n, resid, 1, workd, 1)
</span><span class="lines">@@ -192,15 +250,19 @@
</span><span class="cx">           call zgsum2d ( comm, 'All', ' ', 1, 1, cnorm, 1, -1, -1 )
</span><span class="cx">           rnorm = sqrt(dlapy2 (dble (cnorm),dimag (cnorm)))
</span><span class="cx">        else if (bmat .eq. 'I') then
</span><del>---- ./PARPACK/SRC/BLACS/pznaitr.f.orig        2012-08-07 11:36:36.000000000 +1000
-+++ ./PARPACK/SRC/BLACS/pznaitr.f        2012-08-07 10:18:48.000000000 +1000
-@@ -295,18 +295,16 @@
</del><ins>+          rnorm = pdznorm2 (comm, n, resid, 1)
+       end if
+--- PARPACK/SRC/BLACS/pznaitr.f
++++ PARPACK/SRC/BLACS/pznaitr.f
+@@ -293,22 +293,20 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><span class="cx"> -      external   zaxpy, zcopy, zscal, zgemv, pzgetv0, dlabad, 
</span><span class="cx"> +      external   zaxpy, zcopy, zdotc, zscal, zgemv, pzgetv0, dlabad, 
</span><del>-      &amp;           zdscal, pzvout, pzmout, pivout, second
</del><ins>+      &amp;           zdscal, pzvout, pzmout, pivout, arscnd
</ins><span class="cx">  c
</span><span class="cx">  c     %--------------------%
</span><span class="cx">  c     | External Functions |
</span><span class="lines">@@ -215,7 +277,11 @@
</span><span class="cx">  c
</span><span class="cx">  c     %---------------------%
</span><span class="cx">  c     | Intrinsic Functions |
</span><del>-@@ -573,7 +571,7 @@
</del><ins>+ c     %---------------------%
+ c
+@@ -571,11 +569,11 @@ c        %------------------------------
+ c        | The following is needed for STEP 5. |
+ c        | Compute the B-norm of OP*v_{j}.     |
</ins><span class="cx">  c        %-------------------------------------%
</span><span class="cx">  c
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="lines">@@ -224,8 +290,12 @@
</span><span class="cx">               call zgsum2d( comm, 'All', ' ', 1, 1, cnorm, 1, -1, -1 )
</span><span class="cx">               wnorm = sqrt( dlapy2(dble(cnorm),dimag(cnorm)) )
</span><span class="cx">           else if (bmat .eq. 'I') then
</span><del>-@@ -647,7 +645,7 @@
</del><ins>+              wnorm = pdznorm2(comm, n, resid, 1)
+          end if
+@@ -645,11 +643,11 @@ c
</ins><span class="cx">  c        %------------------------------%
</span><ins>+ c        | Compute the B-norm of r_{j}. |
+ c        %------------------------------%
</ins><span class="cx">  c
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="cx"> -            cnorm = zdotc (n, resid, 1, workd(ipj), 1)
</span><span class="lines">@@ -233,8 +303,12 @@
</span><span class="cx">              call zgsum2d( comm, 'All', ' ', 1, 1, cnorm, 1, -1, -1 )
</span><span class="cx">              rnorm = sqrt( dlapy2(dble(cnorm),dimag(cnorm)) )
</span><span class="cx">           else if (bmat .eq. 'I') then
</span><del>-@@ -749,7 +747,7 @@
</del><ins>+             rnorm = pdznorm2(comm, n, resid, 1)
+          end if
+@@ -747,11 +745,11 @@ c
</ins><span class="cx">  c        %-----------------------------------------------------%
</span><ins>+ c        | Compute the B-norm of the corrected residual r_{j}. |
+ c        %-----------------------------------------------------%
</ins><span class="cx">  c 
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="cx"> -             cnorm = zdotc (n, resid, 1, workd(ipj), 1)
</span><span class="lines">@@ -242,16 +316,20 @@
</span><span class="cx">               call zgsum2d( comm, 'All', ' ', 1, 1, cnorm, 1, -1, -1 )
</span><span class="cx">               rnorm1 = sqrt( dlapy2(dble(cnorm),dimag(cnorm)) )
</span><span class="cx">           else if (bmat .eq. 'I') then
</span><del>---- ./PARPACK/SRC/BLACS/pznaup2.f.orig        2012-08-07 11:37:23.000000000 +1000
-+++ ./PARPACK/SRC/BLACS/pznaup2.f        2012-08-07 10:14:05.000000000 +1000
-@@ -246,18 +246,16 @@
</del><ins>+              rnorm1 = pdznorm2(comm, n, resid, 1)
+          end if
+--- PARPACK/SRC/BLACS/pznaup2.f
++++ PARPACK/SRC/BLACS/pznaup2.f
+@@ -244,22 +244,20 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><span class="cx"> -      external   zcopy, pzgetv0, pznaitr, pzneigh, pzngets, pznapps,
</span><del>--     &amp;           zsortc, zswap, pzmout, pzvout, pivout, second
</del><ins>+-     &amp;           zsortc, zswap, pzmout, pzvout, pivout, arscnd
</ins><span class="cx"> +      external   zcopy, zdotc, pzgetv0, pznaitr, pzneigh, pzngets,
</span><del>-+     &amp;           pznapps, zsortc, zswap, pzmout, pzvout, pivout, second
</del><ins>++     &amp;           pznapps, zsortc, zswap, pzmout, pzvout, pivout, arscnd
</ins><span class="cx">  c
</span><span class="cx">  c     %--------------------%
</span><span class="cx">  c     | External functions |
</span><span class="lines">@@ -266,7 +344,11 @@
</span><span class="cx">  c
</span><span class="cx">  c     %---------------------%
</span><span class="cx">  c     | Intrinsic Functions |
</span><del>-@@ -767,7 +765,7 @@
</del><ins>+ c     %---------------------%
+ c
+@@ -765,11 +763,11 @@ c
+             call arscnd (t3)
+             tmvbx = tmvbx + (t3 - t2)
</ins><span class="cx">           end if
</span><span class="cx">  c 
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="lines">@@ -275,9 +357,13 @@
</span><span class="cx">              call zgsum2d( comm, 'All', ' ', 1, 1, cmpnorm, 1, -1, -1 )
</span><span class="cx">              rnorm = sqrt(dlapy2(dble(cmpnorm),dimag(cmpnorm)))
</span><span class="cx">           else if (bmat .eq. 'I') then
</span><del>---- ./PARPACK/SRC/BLACS/pzneupd.f.orig        2012-08-07 11:37:59.000000000 +1000
-+++ ./PARPACK/SRC/BLACS/pzneupd.f        2012-08-07 09:59:41.000000000 +1000
-@@ -327,7 +327,7 @@
</del><ins>+             rnorm = pdznorm2(comm, n, resid, 1)
+          end if
+--- PARPACK/SRC/BLACS/pzneupd.f
++++ PARPACK/SRC/BLACS/pzneupd.f
+@@ -325,11 +325,11 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><span class="lines">@@ -286,7 +372,11 @@
</span><span class="cx">       &amp;           zunm2r,ztrmm,pzvout,pivout,
</span><span class="cx">       &amp;           zlahqr
</span><span class="cx">  c  
</span><del>-@@ -339,10 +339,6 @@
</del><ins>+ c     %--------------------%
+ c     | External Functions |
+@@ -337,14 +337,10 @@ c     %--------------------%
+ c
+       Double precision
</ins><span class="cx">       &amp;           dznrm2,pdlamch,dlapy2
</span><span class="cx">        external   dznrm2,pdlamch,dlapy2
</span><span class="cx">  c
</span><span class="lines">@@ -297,7 +387,11 @@
</span><span class="cx">  c     %---------------------%
</span><span class="cx">  c     | Intrinsic Functions |
</span><span class="cx">  c     %---------------------%
</span><del>-@@ -743,7 +739,7 @@
</del><ins>+ c
+       intrinsic    abs
+@@ -741,11 +737,11 @@ c                 | Schur basis of H wit
+ c                 | Note that the eigenvector matrix of T is |
+ c                 | upper triangular, thus the length of the |
</ins><span class="cx">  c                 | inner product can be set to j.           |
</span><span class="cx">  c                 %------------------------------------------%
</span><span class="cx">  c 
</span><span class="lines">@@ -306,18 +400,22 @@
</span><span class="cx">       &amp;                        workl(invsub+(j-1)*ldq), 1)
</span><span class="cx">   40         continue
</span><span class="cx">  c
</span><del>---- ./PARPACK/SRC/MPI/pcgetv0.f.orig        2012-08-07 11:05:27.000000000 +1000
-+++ ./PARPACK/SRC/MPI/pcgetv0.f        2012-08-07 10:35:16.000000000 +1000
-@@ -191,7 +191,7 @@
</del><ins>+             if (msglvl .gt. 2) then
+                call zcopy(nconv, workl(invsub+ncv-1), ldq,
+--- PARPACK/SRC/MPI/pcgetv0.f
++++ PARPACK/SRC/MPI/pcgetv0.f
+@@ -189,21 +189,19 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><del>--      external    ccopy, cgemv, pclarnv, pcvout, second
-+      external    ccopy, cdotc, cgemv, pclarnv, pcvout, second
</del><ins>+-      external    ccopy, cgemv, pclarnv, pcvout, arscnd
++      external    ccopy, cdotc, cgemv, pclarnv, pcvout, arscnd
</ins><span class="cx">  c
</span><span class="cx">  c     %--------------------%
</span><span class="cx">  c     | External Functions |
</span><del>-@@ -199,9 +199,7 @@
</del><ins>+ c     %--------------------%
</ins><span class="cx">  c
</span><span class="cx">        Real  
</span><span class="cx">       &amp;           pscnorm2, slapy2
</span><span class="lines">@@ -328,7 +426,11 @@
</span><span class="cx">  c
</span><span class="cx">  c     %-----------------%
</span><span class="cx">  c     | Data Statements |
</span><del>-@@ -331,7 +329,7 @@
</del><ins>+ c     %-----------------%
+ c
+@@ -329,11 +327,11 @@ c
+          tmvbx = tmvbx + (t3 - t2)
+       end if
</ins><span class="cx">  c 
</span><span class="cx">        first = .FALSE.
</span><span class="cx">        if (bmat .eq. 'G') then
</span><span class="lines">@@ -337,7 +439,11 @@
</span><span class="cx">            call MPI_ALLREDUCE( cnorm_buf, cnorm, 1,
</span><span class="cx">       &amp;          MPI_COMPLEX, MPI_SUM, comm, ierr )
</span><span class="cx">            rnorm0 = sqrt(slapy2(real (cnorm),aimag(cnorm)))
</span><del>-@@ -392,7 +390,7 @@
</del><ins>+       else if (bmat .eq. 'I') then
+            rnorm0 = pscnorm2( comm, n, resid, 1)
+@@ -390,11 +388,11 @@ c
+          call arscnd (t3)
+          tmvbx = tmvbx + (t3 - t2)
</ins><span class="cx">        end if
</span><span class="cx">  c 
</span><span class="cx">        if (bmat .eq. 'G') then
</span><span class="lines">@@ -346,15 +452,19 @@
</span><span class="cx">           call MPI_ALLREDUCE( cnorm_buf, cnorm, 1,
</span><span class="cx">       &amp;            MPI_COMPLEX, MPI_SUM, comm, ierr )
</span><span class="cx">           rnorm = sqrt(slapy2(real (cnorm),aimag(cnorm)))
</span><del>---- ./PARPACK/SRC/MPI/pcnaitr.f.orig        2012-08-07 11:06:20.000000000 +1000
-+++ ./PARPACK/SRC/MPI/pcnaitr.f        2012-08-07 10:35:14.000000000 +1000
-@@ -298,18 +298,16 @@
</del><ins>+       else if (bmat .eq. 'I') then
+          rnorm = pscnorm2(comm, n, resid, 1)
+--- PARPACK/SRC/MPI/pcnaitr.f
++++ PARPACK/SRC/MPI/pcnaitr.f
+@@ -296,22 +296,20 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><span class="cx"> -      external   caxpy, ccopy, cscal, cgemv, pcgetv0, slabad, 
</span><span class="cx"> +      external   caxpy, ccopy, cdotc, cscal, cgemv, pcgetv0, slabad, 
</span><del>-      &amp;           csscal, pcvout, pcmout, pivout, second
</del><ins>+      &amp;           csscal, pcvout, pcmout, pivout, arscnd
</ins><span class="cx">  c
</span><span class="cx">  c     %--------------------%
</span><span class="cx">  c     | External Functions |
</span><span class="lines">@@ -369,7 +479,11 @@
</span><span class="cx">  c
</span><span class="cx">  c     %---------------------%
</span><span class="cx">  c     | Intrinsic Functions |
</span><del>-@@ -576,7 +574,7 @@
</del><ins>+ c     %---------------------%
+ c
+@@ -574,11 +572,11 @@ c        %------------------------------
+ c        | The following is needed for STEP 5. |
+ c        | Compute the B-norm of OP*v_{j}.     |
</ins><span class="cx">  c        %-------------------------------------%
</span><span class="cx">  c
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="lines">@@ -378,8 +492,12 @@
</span><span class="cx">              call MPI_ALLREDUCE( cnorm_buf, cnorm, 1,
</span><span class="cx">       &amp;           MPI_COMPLEX, MPI_SUM, comm, ierr )
</span><span class="cx">               wnorm = sqrt( slapy2(real(cnorm),aimag(cnorm)) )
</span><del>-@@ -652,7 +650,7 @@
</del><ins>+          else if (bmat .eq. 'I') then
+              wnorm = pscnorm2(comm, n, resid, 1)
+@@ -650,11 +648,11 @@ c
</ins><span class="cx">  c        %------------------------------%
</span><ins>+ c        | Compute the B-norm of r_{j}. |
+ c        %------------------------------%
</ins><span class="cx">  c
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="cx"> -            cnorm_buf = cdotc (n, resid, 1, workd(ipj), 1)
</span><span class="lines">@@ -387,8 +505,12 @@
</span><span class="cx">              call MPI_ALLREDUCE( cnorm_buf, cnorm, 1,
</span><span class="cx">       &amp;           MPI_COMPLEX, MPI_SUM, comm, ierr )
</span><span class="cx">              rnorm = sqrt( slapy2(real(cnorm),aimag(cnorm)) )
</span><del>-@@ -756,7 +754,7 @@
</del><ins>+          else if (bmat .eq. 'I') then
+             rnorm = pscnorm2(comm, n, resid, 1)
+@@ -754,11 +752,11 @@ c
</ins><span class="cx">  c        %-----------------------------------------------------%
</span><ins>+ c        | Compute the B-norm of the corrected residual r_{j}. |
+ c        %-----------------------------------------------------%
</ins><span class="cx">  c 
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="cx"> -             cnorm_buf = cdotc (n, resid, 1, workd(ipj), 1)
</span><span class="lines">@@ -396,16 +518,20 @@
</span><span class="cx">              call MPI_ALLREDUCE( cnorm_buf, cnorm, 1,
</span><span class="cx">       &amp;           MPI_COMPLEX, MPI_SUM, comm, ierr )
</span><span class="cx">               rnorm1 = sqrt( slapy2(real(cnorm),aimag(cnorm)) )
</span><del>---- ./PARPACK/SRC/MPI/pcnaup2.f.orig        2012-08-07 11:08:14.000000000 +1000
-+++ ./PARPACK/SRC/MPI/pcnaup2.f        2012-08-07 10:40:51.000000000 +1000
-@@ -249,18 +249,16 @@
</del><ins>+          else if (bmat .eq. 'I') then
+              rnorm1 = pscnorm2(comm, n, resid, 1)
+--- PARPACK/SRC/MPI/pcnaup2.f
++++ PARPACK/SRC/MPI/pcnaup2.f
+@@ -247,22 +247,20 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><span class="cx"> -      external   ccopy, pcgetv0, pcnaitr, pcneigh, pcngets, pcnapps,
</span><del>--     &amp;           csortc, cswap, pcmout, pcvout, pivout, second
</del><ins>+-     &amp;           csortc, cswap, pcmout, pcvout, pivout, arscnd
</ins><span class="cx"> +      external   ccopy, cdotc, pcgetv0, pcnaitr, pcneigh, pcngets,
</span><del>-+     &amp;           pcnapps, csortc, cswap, pcmout, pcvout, pivout, second
</del><ins>++     &amp;           pcnapps, csortc, cswap, pcmout, pcvout, pivout, arscnd
</ins><span class="cx">  c
</span><span class="cx">  c     %--------------------%
</span><span class="cx">  c     | External functions |
</span><span class="lines">@@ -420,7 +546,11 @@
</span><span class="cx">  c
</span><span class="cx">  c     %---------------------%
</span><span class="cx">  c     | Intrinsic Functions |
</span><del>-@@ -770,7 +768,7 @@
</del><ins>+ c     %---------------------%
+ c
+@@ -768,11 +766,11 @@ c
+             call arscnd (t3)
+             tmvbx = tmvbx + (t3 - t2)
</ins><span class="cx">           end if
</span><span class="cx">  c 
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="lines">@@ -429,9 +559,13 @@
</span><span class="cx">              call MPI_ALLREDUCE( cmpnorm_buf, cmpnorm, 1,
</span><span class="cx">       &amp;               MPI_COMPLEX, MPI_SUM, comm, ierr )
</span><span class="cx">              rnorm = sqrt(slapy2(real(cmpnorm),aimag(cmpnorm)))
</span><del>---- ./PARPACK/SRC/MPI/pcneupd.f.orig        2012-08-07 11:07:45.000000000 +1000
-+++ ./PARPACK/SRC/MPI/pcneupd.f        2012-08-07 10:42:02.000000000 +1000
-@@ -327,7 +327,7 @@
</del><ins>+          else if (bmat .eq. 'I') then
+             rnorm = pscnorm2(comm, n, resid, 1)
+--- PARPACK/SRC/MPI/pcneupd.f
++++ PARPACK/SRC/MPI/pcneupd.f
+@@ -325,11 +325,11 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><span class="lines">@@ -440,7 +574,11 @@
</span><span class="cx">       &amp;           cunm2r,ctrmm,pcvout,pivout,
</span><span class="cx">       &amp;           clahqr
</span><span class="cx">  c  
</span><del>-@@ -339,10 +339,6 @@
</del><ins>+ c     %--------------------%
+ c     | External Functions |
+@@ -337,14 +337,10 @@ c     %--------------------%
+ c
+       Real
</ins><span class="cx">       &amp;           scnrm2,pslamch,slapy2
</span><span class="cx">        external   scnrm2,pslamch,slapy2
</span><span class="cx">  c
</span><span class="lines">@@ -451,7 +589,11 @@
</span><span class="cx">  c     %---------------------%
</span><span class="cx">  c     | Intrinsic Functions |
</span><span class="cx">  c     %---------------------%
</span><del>-@@ -743,7 +739,7 @@
</del><ins>+ c
+       intrinsic    abs
+@@ -741,11 +737,11 @@ c                 | Schur basis of H wit
+ c                 | Note that the eigenvector matrix of T is |
+ c                 | upper triangular, thus the length of the |
</ins><span class="cx">  c                 | inner product can be set to j.           |
</span><span class="cx">  c                 %------------------------------------------%
</span><span class="cx">  c 
</span><span class="lines">@@ -460,18 +602,22 @@
</span><span class="cx">       &amp;                        workl(invsub+(j-1)*ldq), 1)
</span><span class="cx">   40         continue
</span><span class="cx">  c
</span><del>---- ./PARPACK/SRC/MPI/pzgetv0.f.orig        2012-08-07 11:31:40.000000000 +1000
-+++ ./PARPACK/SRC/MPI/pzgetv0.f        2012-08-07 10:14:39.000000000 +1000
-@@ -191,7 +191,7 @@
</del><ins>+             if (msglvl .gt. 2) then
+                call ccopy(nconv, workl(invsub+ncv-1), ldq,
+--- PARPACK/SRC/MPI/pzgetv0.f
++++ PARPACK/SRC/MPI/pzgetv0.f
+@@ -189,21 +189,19 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><del>--      external    zcopy , zgemv , pzlarnv , pzvout , second
-+      external    zcopy , zdotc , zgemv , pzlarnv , pzvout , second
</del><ins>+-      external    zcopy , zgemv , pzlarnv , pzvout , arscnd
++      external    zcopy , zdotc , zgemv , pzlarnv , pzvout , arscnd
</ins><span class="cx">  c
</span><span class="cx">  c     %--------------------%
</span><span class="cx">  c     | External Functions |
</span><del>-@@ -199,9 +199,7 @@
</del><ins>+ c     %--------------------%
</ins><span class="cx">  c
</span><span class="cx">        Double precision  
</span><span class="cx">       &amp;           pdznorm2 , dlapy2 
</span><span class="lines">@@ -482,7 +628,11 @@
</span><span class="cx">  c
</span><span class="cx">  c     %-----------------%
</span><span class="cx">  c     | Data Statements |
</span><del>-@@ -331,7 +329,7 @@
</del><ins>+ c     %-----------------%
+ c
+@@ -329,11 +327,11 @@ c
+          tmvbx = tmvbx + (t3 - t2)
+       end if
</ins><span class="cx">  c 
</span><span class="cx">        first = .FALSE.
</span><span class="cx">        if (bmat .eq. 'G') then
</span><span class="lines">@@ -491,7 +641,11 @@
</span><span class="cx">            call MPI_ALLREDUCE( cnorm_buf, cnorm, 1,
</span><span class="cx">       &amp;          MPI_DOUBLE_COMPLEX , MPI_SUM, comm, ierr )
</span><span class="cx">            rnorm0 = sqrt(dlapy2 (dble (cnorm),dimag (cnorm)))
</span><del>-@@ -392,7 +390,7 @@
</del><ins>+       else if (bmat .eq. 'I') then
+            rnorm0 = pdznorm2 ( comm, n, resid, 1)
+@@ -390,11 +388,11 @@ c
+          call arscnd (t3)
+          tmvbx = tmvbx + (t3 - t2)
</ins><span class="cx">        end if
</span><span class="cx">  c 
</span><span class="cx">        if (bmat .eq. 'G') then
</span><span class="lines">@@ -500,15 +654,19 @@
</span><span class="cx">           call MPI_ALLREDUCE( cnorm_buf, cnorm, 1,
</span><span class="cx">       &amp;            MPI_DOUBLE_COMPLEX , MPI_SUM, comm, ierr )
</span><span class="cx">           rnorm = sqrt(dlapy2 (dble (cnorm),dimag (cnorm)))
</span><del>---- ./PARPACK/SRC/MPI/pznaitr.f.orig        2012-08-07 11:32:19.000000000 +1000
-+++ ./PARPACK/SRC/MPI/pznaitr.f        2012-08-07 10:15:01.000000000 +1000
-@@ -298,18 +298,16 @@
</del><ins>+       else if (bmat .eq. 'I') then
+          rnorm = pdznorm2 (comm, n, resid, 1)
+--- PARPACK/SRC/MPI/pznaitr.f
++++ PARPACK/SRC/MPI/pznaitr.f
+@@ -296,22 +296,20 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><span class="cx"> -      external   zaxpy, zcopy, zscal, zgemv, pzgetv0, dlabad, 
</span><span class="cx"> +      external   zaxpy, zcopy, zdotc, zscal, zgemv, pzgetv0, dlabad, 
</span><del>-      &amp;           zdscal, pzvout, pzmout, pivout, second
</del><ins>+      &amp;           zdscal, pzvout, pzmout, pivout, arscnd
</ins><span class="cx">  c
</span><span class="cx">  c     %--------------------%
</span><span class="cx">  c     | External Functions |
</span><span class="lines">@@ -523,7 +681,11 @@
</span><span class="cx">  c
</span><span class="cx">  c     %---------------------%
</span><span class="cx">  c     | Intrinsic Functions |
</span><del>-@@ -576,7 +574,7 @@
</del><ins>+ c     %---------------------%
+ c
+@@ -574,11 +572,11 @@ c        %------------------------------
+ c        | The following is needed for STEP 5. |
+ c        | Compute the B-norm of OP*v_{j}.     |
</ins><span class="cx">  c        %-------------------------------------%
</span><span class="cx">  c
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="lines">@@ -532,8 +694,12 @@
</span><span class="cx">              call MPI_ALLREDUCE( cnorm_buf, cnorm, 1,
</span><span class="cx">       &amp;           MPI_DOUBLE_COMPLEX, MPI_SUM, comm, ierr )
</span><span class="cx">               wnorm = sqrt( dlapy2(dble(cnorm),dimag(cnorm)) )
</span><del>-@@ -652,7 +650,7 @@
</del><ins>+          else if (bmat .eq. 'I') then
+              wnorm = pdznorm2(comm, n, resid, 1)
+@@ -650,11 +648,11 @@ c
</ins><span class="cx">  c        %------------------------------%
</span><ins>+ c        | Compute the B-norm of r_{j}. |
+ c        %------------------------------%
</ins><span class="cx">  c
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="cx"> -            cnorm_buf = zdotc (n, resid, 1, workd(ipj), 1)
</span><span class="lines">@@ -541,8 +707,12 @@
</span><span class="cx">              call MPI_ALLREDUCE( cnorm_buf, cnorm, 1,
</span><span class="cx">       &amp;           MPI_DOUBLE_COMPLEX, MPI_SUM, comm, ierr )
</span><span class="cx">              rnorm = sqrt( dlapy2(dble(cnorm),dimag(cnorm)) )
</span><del>-@@ -756,7 +754,7 @@
</del><ins>+          else if (bmat .eq. 'I') then
+             rnorm = pdznorm2(comm, n, resid, 1)
+@@ -754,11 +752,11 @@ c
</ins><span class="cx">  c        %-----------------------------------------------------%
</span><ins>+ c        | Compute the B-norm of the corrected residual r_{j}. |
+ c        %-----------------------------------------------------%
</ins><span class="cx">  c 
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="cx"> -             cnorm_buf = zdotc (n, resid, 1, workd(ipj), 1)
</span><span class="lines">@@ -550,16 +720,20 @@
</span><span class="cx">              call MPI_ALLREDUCE( cnorm_buf, cnorm, 1,
</span><span class="cx">       &amp;           MPI_DOUBLE_COMPLEX, MPI_SUM, comm, ierr )
</span><span class="cx">               rnorm1 = sqrt( dlapy2(dble(cnorm),dimag(cnorm)) )
</span><del>---- ./PARPACK/SRC/MPI/pznaup2.f.orig        2012-08-07 11:33:54.000000000 +1000
-+++ ./PARPACK/SRC/MPI/pznaup2.f        2012-08-07 10:16:53.000000000 +1000
-@@ -249,18 +249,16 @@
</del><ins>+          else if (bmat .eq. 'I') then
+              rnorm1 = pdznorm2(comm, n, resid, 1)
+--- PARPACK/SRC/MPI/pznaup2.f
++++ PARPACK/SRC/MPI/pznaup2.f
+@@ -247,22 +247,20 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><span class="cx"> -      external   zcopy, pzgetv0, pznaitr, pzneigh, pzngets, pznapps,
</span><del>--     &amp;           zsortc, zswap, pzmout, pzvout, pivout, second
</del><ins>+-     &amp;           zsortc, zswap, pzmout, pzvout, pivout, arscnd
</ins><span class="cx"> +      external   zcopy, zdotc, pzgetv0, pznaitr, pzneigh, pzngets,
</span><del>-+     &amp;           pznapps, zsortc, zswap, pzmout, pzvout, pivout, second
</del><ins>++     &amp;           pznapps, zsortc, zswap, pzmout, pzvout, pivout, arscnd
</ins><span class="cx">  c
</span><span class="cx">  c     %--------------------%
</span><span class="cx">  c     | External functions |
</span><span class="lines">@@ -574,7 +748,11 @@
</span><span class="cx">  c
</span><span class="cx">  c     %---------------------%
</span><span class="cx">  c     | Intrinsic Functions |
</span><del>-@@ -770,7 +768,7 @@
</del><ins>+ c     %---------------------%
+ c
+@@ -768,11 +766,11 @@ c
+             call arscnd (t3)
+             tmvbx = tmvbx + (t3 - t2)
</ins><span class="cx">           end if
</span><span class="cx">  c 
</span><span class="cx">           if (bmat .eq. 'G') then
</span><span class="lines">@@ -583,9 +761,13 @@
</span><span class="cx">              call MPI_ALLREDUCE( cmpnorm_buf, cmpnorm, 1,
</span><span class="cx">       &amp;               MPI_DOUBLE_COMPLEX, MPI_SUM, comm, ierr )
</span><span class="cx">              rnorm = sqrt(dlapy2(dble(cmpnorm),dimag(cmpnorm)))
</span><del>---- ./PARPACK/SRC/MPI/pzneupd.f.orig        2012-08-07 11:48:27.000000000 +1000
-+++ ./PARPACK/SRC/MPI/pzneupd.f        2012-08-07 11:48:14.000000000 +1000
-@@ -327,7 +327,7 @@
</del><ins>+          else if (bmat .eq. 'I') then
+             rnorm = pdznorm2(comm, n, resid, 1)
+--- PARPACK/SRC/MPI/pzneupd.f
++++ PARPACK/SRC/MPI/pzneupd.f
+@@ -325,11 +325,11 @@ c
+ c
+ c     %----------------------%
</ins><span class="cx">  c     | External Subroutines |
</span><span class="cx">  c     %----------------------%
</span><span class="cx">  c
</span><span class="lines">@@ -594,7 +776,11 @@
</span><span class="cx">       &amp;           zunm2r,ztrmm,pzvout,pivout,
</span><span class="cx">       &amp;           zlahqr
</span><span class="cx">  c  
</span><del>-@@ -339,10 +339,6 @@
</del><ins>+ c     %--------------------%
+ c     | External Functions |
+@@ -337,14 +337,10 @@ c     %--------------------%
+ c
+       Double precision
</ins><span class="cx">       &amp;           dznrm2,pdlamch,dlapy2
</span><span class="cx">        external   dznrm2,pdlamch,dlapy2
</span><span class="cx">  c
</span><span class="lines">@@ -605,7 +791,11 @@
</span><span class="cx">  c     %---------------------%
</span><span class="cx">  c     | Intrinsic Functions |
</span><span class="cx">  c     %---------------------%
</span><del>-@@ -743,7 +739,7 @@
</del><ins>+ c
+       intrinsic    abs
+@@ -741,11 +737,11 @@ c                 | Schur basis of H wit
+ c                 | Note that the eigenvector matrix of T is |
+ c                 | upper triangular, thus the length of the |
</ins><span class="cx">  c                 | inner product can be set to j.           |
</span><span class="cx">  c                 %------------------------------------------%
</span><span class="cx">  c 
</span><span class="lines">@@ -614,3 +804,5 @@
</span><span class="cx">       &amp;                        workl(invsub+(j-1)*ldq), 1)
</span><span class="cx">   40         continue
</span><span class="cx">  c
</span><ins>+             if (msglvl .gt. 2) then
+                call zcopy(nconv, workl(invsub+ncv-1), ldq,
</ins></span></pre></div>
<a id="trunkdportsmatharpackfilespatchUTILsecond_NONEfdiff"></a>
<div class="delfile"><h4>Deleted: trunk/dports/math/arpack/files/patch-UTIL-second_NONE.f.diff (116397 => 116398)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/math/arpack/files/patch-UTIL-second_NONE.f.diff        2014-01-23 20:16:05 UTC (rev 116397)
+++ trunk/dports/math/arpack/files/patch-UTIL-second_NONE.f.diff        2014-01-23 20:16:10 UTC (rev 116398)
</span><span class="lines">@@ -1,15 +0,0 @@
</span><del>---- UTIL/second_NONE.f.orig        2013-06-17 12:02:43.000000000 -0400
-+++ UTIL/second_NONE.f        2013-06-17 12:01:23.000000000 -0400
-@@ -34,3 +34,12 @@
- *     End of ARSCND
- *
-       END
-+
-+
-+
-+      subroutine second(t)
-+        real :: t
-+
-+        call arscnd(t)
-+
-+      end subroutine
</del></span></pre>
</div>
</div>

</body>
</html>