tests about znaupd corrected. 43/10743/2
Cedric Delamarre [Fri, 8 Mar 2013 10:44:53 +0000 (11:44 +0100)]
Change-Id: If7b02b0bfbf455d51afdbc429064bcb7b9b0be61

scilab/modules/arnoldi/tests/unit_tests/znaupd-win.tst
scilab/modules/arnoldi/tests/unit_tests/znaupd.dia.ref
scilab/modules/arnoldi/tests/unit_tests/znaupd.tst
scilab/modules/arnoldi/tests/unit_tests/zneupd-win.tst
scilab/modules/arnoldi/tests/unit_tests/zneupd.dia.ref
scilab/modules/arnoldi/tests/unit_tests/zneupd.tst

index d2fd9ae..80faf85 100644 (file)
@@ -19,9 +19,9 @@ ipntr   = zeros(14, 1);
 _select = zeros(ncv, 1);
 d       = zeros(nev + 1, 1) + 0 * %i;
 z       = zeros(nx, nev) + 0* %i;
-resid   = zeros(nx, 1) + 0 * %i; 
+resid   = zeros(nx, 1) + 0 * %i;
 v       = zeros(nx, ncv) + 0 * %i;
-workd   = zeros(3 * nx, 1) + 0 * %i; 
+workd   = zeros(3 * nx, 1) + 0 * %i;
 workev  = zeros(2 * ncv, 1) + 0 * %i;
 rwork   = zeros(ncv, 1);
 workl   = zeros(3 * ncv * ncv + 5 *ncv, 1) + 0 * %i;
@@ -42,26 +42,26 @@ iparam(1) = ishfts;
 iparam(3) = maxitr;
 iparam(7) = mode1;
 
-sigma = complex(0); 
+sigma = complex(0);
 info_znaupd = 0;
 // M A I N   L O O P (Reverse communication)
 while(ido <> 99)
   // Repeatedly call the routine ZNAUPD and take actions indicated by parameter IDO until
   // either convergence is indicated or maxitr has been exceeded.
 
-  [ido, resid, v, iparam, ipntr, workd, workl, info_znaupd] = znaupd(ido, bmat, nx, which, nev, tol, resid, ncv, v, iparam, ipntr, workd, workl, rwork, info_znaupd);
-  
+  [ido, resid, v, iparam, ipntr, workd, workl, rwork, info_znaupd] = znaupd(ido, bmat, nx, which, nev, tol, resid, ncv, v, iparam, ipntr, workd, workl, rwork, info_znaupd);
+
   if(info_znaupd < 0)
     printf('\nError with znaupd, info = %d\n', info_znaupd);
     printf('Check the documentation of znaupd\n\n');
   end
-  
+
   if(ido == -1 | ido == 1)
-    // Perform matrix vector multiplication 
+    // Perform matrix vector multiplication
     workd(ipntr(2):ipntr(2) + nx - 1) = A * workd(ipntr(1):ipntr(1) + nx - 1);
   end
 end
-  
+
 // Post-Process using ZNEUPD.
 
 rvec    = 1;
@@ -71,4 +71,4 @@ info_zneupd = 0;
 [d, z, resid, iparam, ipntr, workd, workl, rwork, info_zneupd] = zneupd(rvec, howmany, _select, d, z, sigma, workev, bmat, nx, which, nev, tol, resid, ncv, v, ...
                                                                     iparam, ipntr, workd, workl, rwork, info_zneupd);
 
-assert_checkalmostequal(A * z, z * diag(d(1:3)), sqrt(%eps), 1.e-10); 
+assert_checkalmostequal(A * z, z * diag(d(1:3)), sqrt(%eps), 1.e-10);
index c6c211f..2ebe06c 100644 (file)
@@ -4,6 +4,7 @@
 //
 //  This file is distributed under the same license as the Scilab package.
 // =============================================================================
+// <-- UNIX ONLY -->
 nx    = 10;
 nev   = 3;
 ncv   = 6;
@@ -15,9 +16,9 @@ ipntr   = zeros(14, 1);
 _select = zeros(ncv, 1);
 d       = zeros(nev + 1, 1) + 0 * %i;
 z       = zeros(nx, nev) + 0* %i;
-resid   = zeros(nx, 1) + 0 * %i; 
+resid   = zeros(nx, 1) + 0 * %i;
 v       = zeros(nx, ncv) + 0 * %i;
-workd   = zeros(3 * nx, 1) + 0 * %i; 
+workd   = zeros(3 * nx, 1) + 0 * %i;
 workev  = zeros(2 * ncv, 1) + 0 * %i;
 rwork   = zeros(ncv, 1);
 workl   = zeros(3 * ncv * ncv + 5 *ncv, 1) + 0 * %i;
@@ -33,19 +34,19 @@ mode1  = 1;
 iparam(1) = ishfts;
 iparam(3) = maxitr;
 iparam(7) = mode1;
-sigma = complex(0); 
+sigma = complex(0);
 info_znaupd = 0;
 // M A I N   L O O P (Reverse communication)
 while(ido <> 99)
   // Repeatedly call the routine ZNAUPD and take actions indicated by parameter IDO until
   // either convergence is indicated or maxitr has been exceeded.
-  [ido, resid, v, iparam, ipntr, workd, workl, info_znaupd] = znaupd(ido, bmat, nx, which, nev, tol, resid, ncv, v, iparam, ipntr, workd, workl, rwork, info_znaupd);
+  [ido, resid, v, iparam, ipntr, workd, workl, rwork, info_znaupd] = znaupd(ido, bmat, nx, which, nev, tol, resid, ncv, v, iparam, ipntr, workd, workl, rwork, info_znaupd);
   if(info_znaupd < 0)
     printf('\nError with znaupd, info = %d\n', info_znaupd);
     printf('Check the documentation of znaupd\n\n');
   end
   if(ido == -1 | ido == 1)
-    // Perform matrix vector multiplication 
+    // Perform matrix vector multiplication
     workd(ipntr(2):ipntr(2) + nx - 1) = A * workd(ipntr(1):ipntr(1) + nx - 1);
   end
 end
@@ -55,4 +56,4 @@ howmany = 'A';
 info_zneupd = 0;
 [d, z, resid, iparam, ipntr, workd, workl, rwork, info_zneupd] = zneupd(rvec, howmany, _select, d, z, sigma, workev, bmat, nx, which, nev, tol, resid, ncv, v, ...
                                                                     iparam, ipntr, workd, workl, rwork, info_zneupd);
-assert_checkalmostequal(A * z, z * diag(d(1:3)), sqrt(%eps), 1.e-10); 
+assert_checkalmostequal(A * z, z * diag(d(1:3)), sqrt(%eps), 1.e-10);
index 07c3b06..4448358 100644 (file)
@@ -19,9 +19,9 @@ ipntr   = zeros(14, 1);
 _select = zeros(ncv, 1);
 d       = zeros(nev + 1, 1) + 0 * %i;
 z       = zeros(nx, nev) + 0* %i;
-resid   = zeros(nx, 1) + 0 * %i; 
+resid   = zeros(nx, 1) + 0 * %i;
 v       = zeros(nx, ncv) + 0 * %i;
-workd   = zeros(3 * nx, 1) + 0 * %i; 
+workd   = zeros(3 * nx, 1) + 0 * %i;
 workev  = zeros(2 * ncv, 1) + 0 * %i;
 rwork   = zeros(ncv, 1);
 workl   = zeros(3 * ncv * ncv + 5 *ncv, 1) + 0 * %i;
@@ -42,26 +42,26 @@ iparam(1) = ishfts;
 iparam(3) = maxitr;
 iparam(7) = mode1;
 
-sigma = complex(0); 
+sigma = complex(0);
 info_znaupd = 0;
 // M A I N   L O O P (Reverse communication)
 while(ido <> 99)
   // Repeatedly call the routine ZNAUPD and take actions indicated by parameter IDO until
   // either convergence is indicated or maxitr has been exceeded.
 
-  [ido, resid, v, iparam, ipntr, workd, workl, info_znaupd] = znaupd(ido, bmat, nx, which, nev, tol, resid, ncv, v, iparam, ipntr, workd, workl, rwork, info_znaupd);
-  
+  [ido, resid, v, iparam, ipntr, workd, workl, rwork, info_znaupd] = znaupd(ido, bmat, nx, which, nev, tol, resid, ncv, v, iparam, ipntr, workd, workl, rwork, info_znaupd);
+
   if(info_znaupd < 0)
     printf('\nError with znaupd, info = %d\n', info_znaupd);
     printf('Check the documentation of znaupd\n\n');
   end
-  
+
   if(ido == -1 | ido == 1)
-    // Perform matrix vector multiplication 
+    // Perform matrix vector multiplication
     workd(ipntr(2):ipntr(2) + nx - 1) = A * workd(ipntr(1):ipntr(1) + nx - 1);
   end
 end
-  
+
 // Post-Process using ZNEUPD.
 
 rvec    = 1;
@@ -71,4 +71,4 @@ info_zneupd = 0;
 [d, z, resid, iparam, ipntr, workd, workl, rwork, info_zneupd] = zneupd(rvec, howmany, _select, d, z, sigma, workev, bmat, nx, which, nev, tol, resid, ncv, v, ...
                                                                     iparam, ipntr, workd, workl, rwork, info_zneupd);
 
-assert_checkalmostequal(A * z, z * diag(d(1:3)), sqrt(%eps), 1.e-10); 
+assert_checkalmostequal(A * z, z * diag(d(1:3)), sqrt(%eps), 1.e-10);
index d2fd9ae..80faf85 100644 (file)
@@ -19,9 +19,9 @@ ipntr   = zeros(14, 1);
 _select = zeros(ncv, 1);
 d       = zeros(nev + 1, 1) + 0 * %i;
 z       = zeros(nx, nev) + 0* %i;
-resid   = zeros(nx, 1) + 0 * %i; 
+resid   = zeros(nx, 1) + 0 * %i;
 v       = zeros(nx, ncv) + 0 * %i;
-workd   = zeros(3 * nx, 1) + 0 * %i; 
+workd   = zeros(3 * nx, 1) + 0 * %i;
 workev  = zeros(2 * ncv, 1) + 0 * %i;
 rwork   = zeros(ncv, 1);
 workl   = zeros(3 * ncv * ncv + 5 *ncv, 1) + 0 * %i;
@@ -42,26 +42,26 @@ iparam(1) = ishfts;
 iparam(3) = maxitr;
 iparam(7) = mode1;
 
-sigma = complex(0); 
+sigma = complex(0);
 info_znaupd = 0;
 // M A I N   L O O P (Reverse communication)
 while(ido <> 99)
   // Repeatedly call the routine ZNAUPD and take actions indicated by parameter IDO until
   // either convergence is indicated or maxitr has been exceeded.
 
-  [ido, resid, v, iparam, ipntr, workd, workl, info_znaupd] = znaupd(ido, bmat, nx, which, nev, tol, resid, ncv, v, iparam, ipntr, workd, workl, rwork, info_znaupd);
-  
+  [ido, resid, v, iparam, ipntr, workd, workl, rwork, info_znaupd] = znaupd(ido, bmat, nx, which, nev, tol, resid, ncv, v, iparam, ipntr, workd, workl, rwork, info_znaupd);
+
   if(info_znaupd < 0)
     printf('\nError with znaupd, info = %d\n', info_znaupd);
     printf('Check the documentation of znaupd\n\n');
   end
-  
+
   if(ido == -1 | ido == 1)
-    // Perform matrix vector multiplication 
+    // Perform matrix vector multiplication
     workd(ipntr(2):ipntr(2) + nx - 1) = A * workd(ipntr(1):ipntr(1) + nx - 1);
   end
 end
-  
+
 // Post-Process using ZNEUPD.
 
 rvec    = 1;
@@ -71,4 +71,4 @@ info_zneupd = 0;
 [d, z, resid, iparam, ipntr, workd, workl, rwork, info_zneupd] = zneupd(rvec, howmany, _select, d, z, sigma, workev, bmat, nx, which, nev, tol, resid, ncv, v, ...
                                                                     iparam, ipntr, workd, workl, rwork, info_zneupd);
 
-assert_checkalmostequal(A * z, z * diag(d(1:3)), sqrt(%eps), 1.e-10); 
+assert_checkalmostequal(A * z, z * diag(d(1:3)), sqrt(%eps), 1.e-10);
index c6c211f..2ebe06c 100644 (file)
@@ -4,6 +4,7 @@
 //
 //  This file is distributed under the same license as the Scilab package.
 // =============================================================================
+// <-- UNIX ONLY -->
 nx    = 10;
 nev   = 3;
 ncv   = 6;
@@ -15,9 +16,9 @@ ipntr   = zeros(14, 1);
 _select = zeros(ncv, 1);
 d       = zeros(nev + 1, 1) + 0 * %i;
 z       = zeros(nx, nev) + 0* %i;
-resid   = zeros(nx, 1) + 0 * %i; 
+resid   = zeros(nx, 1) + 0 * %i;
 v       = zeros(nx, ncv) + 0 * %i;
-workd   = zeros(3 * nx, 1) + 0 * %i; 
+workd   = zeros(3 * nx, 1) + 0 * %i;
 workev  = zeros(2 * ncv, 1) + 0 * %i;
 rwork   = zeros(ncv, 1);
 workl   = zeros(3 * ncv * ncv + 5 *ncv, 1) + 0 * %i;
@@ -33,19 +34,19 @@ mode1  = 1;
 iparam(1) = ishfts;
 iparam(3) = maxitr;
 iparam(7) = mode1;
-sigma = complex(0); 
+sigma = complex(0);
 info_znaupd = 0;
 // M A I N   L O O P (Reverse communication)
 while(ido <> 99)
   // Repeatedly call the routine ZNAUPD and take actions indicated by parameter IDO until
   // either convergence is indicated or maxitr has been exceeded.
-  [ido, resid, v, iparam, ipntr, workd, workl, info_znaupd] = znaupd(ido, bmat, nx, which, nev, tol, resid, ncv, v, iparam, ipntr, workd, workl, rwork, info_znaupd);
+  [ido, resid, v, iparam, ipntr, workd, workl, rwork, info_znaupd] = znaupd(ido, bmat, nx, which, nev, tol, resid, ncv, v, iparam, ipntr, workd, workl, rwork, info_znaupd);
   if(info_znaupd < 0)
     printf('\nError with znaupd, info = %d\n', info_znaupd);
     printf('Check the documentation of znaupd\n\n');
   end
   if(ido == -1 | ido == 1)
-    // Perform matrix vector multiplication 
+    // Perform matrix vector multiplication
     workd(ipntr(2):ipntr(2) + nx - 1) = A * workd(ipntr(1):ipntr(1) + nx - 1);
   end
 end
@@ -55,4 +56,4 @@ howmany = 'A';
 info_zneupd = 0;
 [d, z, resid, iparam, ipntr, workd, workl, rwork, info_zneupd] = zneupd(rvec, howmany, _select, d, z, sigma, workev, bmat, nx, which, nev, tol, resid, ncv, v, ...
                                                                     iparam, ipntr, workd, workl, rwork, info_zneupd);
-assert_checkalmostequal(A * z, z * diag(d(1:3)), sqrt(%eps), 1.e-10); 
+assert_checkalmostequal(A * z, z * diag(d(1:3)), sqrt(%eps), 1.e-10);
index 07c3b06..4448358 100644 (file)
@@ -19,9 +19,9 @@ ipntr   = zeros(14, 1);
 _select = zeros(ncv, 1);
 d       = zeros(nev + 1, 1) + 0 * %i;
 z       = zeros(nx, nev) + 0* %i;
-resid   = zeros(nx, 1) + 0 * %i; 
+resid   = zeros(nx, 1) + 0 * %i;
 v       = zeros(nx, ncv) + 0 * %i;
-workd   = zeros(3 * nx, 1) + 0 * %i; 
+workd   = zeros(3 * nx, 1) + 0 * %i;
 workev  = zeros(2 * ncv, 1) + 0 * %i;
 rwork   = zeros(ncv, 1);
 workl   = zeros(3 * ncv * ncv + 5 *ncv, 1) + 0 * %i;
@@ -42,26 +42,26 @@ iparam(1) = ishfts;
 iparam(3) = maxitr;
 iparam(7) = mode1;
 
-sigma = complex(0); 
+sigma = complex(0);
 info_znaupd = 0;
 // M A I N   L O O P (Reverse communication)
 while(ido <> 99)
   // Repeatedly call the routine ZNAUPD and take actions indicated by parameter IDO until
   // either convergence is indicated or maxitr has been exceeded.
 
-  [ido, resid, v, iparam, ipntr, workd, workl, info_znaupd] = znaupd(ido, bmat, nx, which, nev, tol, resid, ncv, v, iparam, ipntr, workd, workl, rwork, info_znaupd);
-  
+  [ido, resid, v, iparam, ipntr, workd, workl, rwork, info_znaupd] = znaupd(ido, bmat, nx, which, nev, tol, resid, ncv, v, iparam, ipntr, workd, workl, rwork, info_znaupd);
+
   if(info_znaupd < 0)
     printf('\nError with znaupd, info = %d\n', info_znaupd);
     printf('Check the documentation of znaupd\n\n');
   end
-  
+
   if(ido == -1 | ido == 1)
-    // Perform matrix vector multiplication 
+    // Perform matrix vector multiplication
     workd(ipntr(2):ipntr(2) + nx - 1) = A * workd(ipntr(1):ipntr(1) + nx - 1);
   end
 end
-  
+
 // Post-Process using ZNEUPD.
 
 rvec    = 1;
@@ -71,4 +71,4 @@ info_zneupd = 0;
 [d, z, resid, iparam, ipntr, workd, workl, rwork, info_zneupd] = zneupd(rvec, howmany, _select, d, z, sigma, workev, bmat, nx, which, nev, tol, resid, ncv, v, ...
                                                                     iparam, ipntr, workd, workl, rwork, info_zneupd);
 
-assert_checkalmostequal(A * z, z * diag(d(1:3)), sqrt(%eps), 1.e-10); 
+assert_checkalmostequal(A * z, z * diag(d(1:3)), sqrt(%eps), 1.e-10);