]> AND Private Git Repository - GMRES2stage.git/commitdiff
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
1ere version du journal
authorcouturie <raphael.couturier@univ-fcomte.Fr>
Tue, 1 Sep 2015 16:06:39 +0000 (18:06 +0200)
committercouturie <raphael.couturier@univ-fcomte.Fr>
Tue, 1 Sep 2015 16:06:39 +0000 (18:06 +0200)
IJHPCN/biblio.bib [new file with mode: 0644]
IJHPCN/doublecol-new.cls [new file with mode: 0644]
IJHPCN/nb_iter_sec_ex15_juqueen.pdf [new file with mode: 0644]
IJHPCN/nb_iter_sec_ex54_curie.pdf [new file with mode: 0644]
IJHPCN/paper.tex [new file with mode: 0644]

diff --git a/IJHPCN/biblio.bib b/IJHPCN/biblio.bib
new file mode 100644 (file)
index 0000000..c3ab7d4
--- /dev/null
@@ -0,0 +1,223 @@
+@article{Saad86,
+ author = {Saad, Y. and Schultz, M.H.},
+ title = {{GMRES} : a Generalized Minimal Residual Algorithm for Solving Nonsymmetric Linear Systems},
+ journal = {SIAM J. Sci. Stat. Comput.},
+ year = {1986},
+ volume = {7},
+ number = {3},
+ pages = {856--869},
+ publisher = {Society for Industrial and Applied Mathematics},
+ address = {Philadelphia, PA, USA},
+ }
+
+
+@book{Saad2003,
+ author = {Saad, Y.},
+ title = {Iterative Methods for Sparse Linear Systems},
+ year = {2003},
+ isbn = {0898715342},
+ edition = {2nd},
+ publisher = {Society for Industrial and Applied Mathematics},
+ address = {Philadelphia, PA, USA},
+} 
+
+
+@article{Hestenes52,
+  author = {Hestenes, M. R. and Stiefel, E.},
+  journal = {Journal of research of the National Bureau of Standards},
+  pages = {409--436},
+  timestamp = {2008-10-07T16:03:39.000+0200},
+  title = {Methods of conjugate gradients for solving linear systems},
+  volume = 49,
+  year = 1952
+}
+
+@article{Paige82,
+ author = {Paige, Christopher C. and Saunders, Michael A.},
+ title = {{LSQR:} An Algorithm for Sparse Linear Equations and Sparse Least Squares},
+ journal = {ACM Trans. Math. Softw.},
+ issue_date = {March 1982},
+ volume = {8},
+ number = {1},
+ month = mar,
+ year = {1982},
+ issn = {0098-3500},
+ pages = {43--71},
+ numpages = {29},
+ url = {http://doi.acm.org/10.1145/355984.355989},
+ doi = {10.1145/355984.355989},
+ acmid = {355989},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+} 
+
+@Misc{petsc-web-page,
+            author = {Satish Balay and Shrirang Abhyankar and Mark~F. Adams and Jed Brown and Peter Brune
+                      and Kris Buschelman and Victor Eijkhout and William~D. Gropp
+                      and Dinesh Kaushik and Matthew~G. Knepley
+                      and Lois Curfman McInnes and Karl Rupp and Barry~F. Smith
+                      and Hong Zhang},
+            title =  {{PETS}c {W}eb page},
+            url =    {http://www.mcs.anl.gov/petsc},
+            howpublished = {\url{http://www.mcs.anl.gov/petsc}},
+            year = {2014}
+          }
+
+
+@misc{Dav97,
+ author = {Davis, T. and Hu, Y.},
+ title = {The {U}niversity of {F}lorida Sparse Matrix Collection},
+ year = {1997},
+ note = {Digest, \url{http://www.cise.ufl.edu/research/sparse/matrices/}},
+ }
+
+
+@article{Saad:1993,
+ author = {Saad, Y.},
+ title = {A Flexible Inner-outer Preconditioned GMRES Algorithm},
+ journal = {SIAM J. Sci. Comput.},
+ issue_date = {March 1993},
+ volume = {14},
+ number = {2},
+ month = mar,
+ year = {1993},
+ issn = {1064-8275},
+ pages = {461--469},
+ numpages = {9},
+ url = {http://dx.doi.org/10.1137/0914028},
+ doi = {10.1137/0914028},
+ acmid = {160089},
+ publisher = {Society for Industrial and Applied Mathematics},
+ address = {Philadelphia, PA, USA},
+ keywords = {GMRES, Krylov subspace methods, non-Hermitian systems, preconditioned conjugate gradient, variable preconditioners},
+} 
+
+@incollection{bahicontascoutu,
+title = {{P}arallel iterative algorithms: from sequential to grid computing},
+author = {Bahi, J.M. and Contassot-Vivier, S. and Couturier, R.},
+booktitle = {Numerical Analysis and Scientific Computing},
+publisher = {Chapman \& Hall/CRC},
+year = {2008},
+}
+
+@Article{Nichols:1973:CTS,
+  author =     "Nancy K. Nichols",
+  title =      "On the Convergence of Two-Stage Iterative Processes
+                for Solving Linear Equations",
+  journal =    "SIAM Journal on Numerical Analysis",
+  volume =     "10",
+  number =     "3",
+  pages =      "460--469",
+  month =      jun,
+  year =       "1973",
+  CODEN =      "SJNAAM",
+  ISSN =       "0036-1429 (print), 1095-7170 (electronic)",
+  issn-l =     "0036-1429",
+  bibdate =    "Fri Oct 16 06:57:22 MDT 1998",
+  bibsource =  "http://www.math.utah.edu/pub/tex/bib/siamjnumeranal.bib;
+                JSTOR database",
+  acknowledgement = "Nelson H. F. Beebe, University of Utah, Department
+                of Mathematics, 110 LCB, 155 S 1400 E RM 233, Salt Lake
+                City, UT 84112-0090, USA, Tel: +1 801 581 5254, FAX: +1
+                801 581 4148, e-mail: \path|beebe@math.utah.edu|,
+                \path|beebe@acm.org|, \path|beebe@computer.org|
+                (Internet), URL:
+                \path|http://www.math.utah.edu/~beebe/|",
+  fjournal =   "SIAM Journal on Numerical Analysis",
+  journal-url =  "http://epubs.siam.org/sinum",
+}
+
+@article{Meijerink77,
+ author = {Meijerink, J.A. and Vorst, H.A. Van der},
+ title = {An Iterative Solution Method for Linear Systems of Which the Coefficient Matrix is a Symmetric {M}-Matrix},
+ journal = {Mathematics of Computation},
+ year = {1977},
+ volume = {31},
+ number = {137},
+ pages = {148--162},
+ publisher = {American Mathematical Society},
+ }
+
+@techreport{Huang89,
+    author    = {Huang, Y. and Van der Vorst, H.A.},
+    title     = {Some Observations on the Convergence Behavior of {GMRES}},
+    institution = {Delft Univ. Technology},
+    type     = { Report 89--09}, 
+    year      = {1989},
+}
+
+@article {Vorst94,
+author = {Van der Vorst, H. A. and Vuik, C.},
+title = {{GMRESR}: a family of nested {GMRES} methods},
+journal = {Numerical Linear Algebra with Applications},
+volume = {1},
+number = {4},
+publisher = {John Wiley & Sons, Ltd},
+issn = {1099-1506},
+url = {http://dx.doi.org/10.1002/nla.1680010404},
+doi = {10.1002/nla.1680010404},
+pages = {369--386},
+year = {1994},
+}
+
+@inproceedings{Yamazaki2014,
+ author = {Yamazaki, Ichitaro and Anzt, Hartwig and Tomov, Stanimire and Hoemmen, Mark and Dongarra, Jack},
+ title = {Improving the Performance of CA-GMRES on Multicores with Multiple GPUs},
+ booktitle = {Proceedings of the 2014 IEEE 28th International Parallel and Distributed Processing Symposium},
+ series = {IPDPS '14},
+ year = {2014},
+ isbn = {978-1-4799-3800-1},
+ pages = {382--391},
+ numpages = {10},
+ url = {http://dx.doi.org/10.1109/IPDPS.2014.48},
+ doi = {10.1109/IPDPS.2014.48},
+ acmid = {2650529},
+ publisher = {IEEE Computer Society},
+ address = {Washington, DC, USA},
+} 
+
+@techreport{Hoemmen2010,
+    author    = {Hoemmen, Mark},
+    title     = {Communication-avoiding Krylov subspace methods},
+    institution = {University of California, Berkeley},
+    type     = {Ph.D. thesis}, 
+    url = {http://www.cs.berkeley.edu/~mhoemmen/pubs/thesis.pdf},
+    year      = {2010},
+}
+
+@inproceedings{Mohiyuddin2009,
+ author = {Mohiyuddin, Marghoob and Hoemmen, Mark and Demmel, James and Yelick, Katherine},
+ title = {Minimizing Communication in Sparse Matrix Solvers},
+ booktitle = {Proceedings of the Conference on High Performance Computing Networking, Storage and Analysis},
+ series = {SC '09},
+ year = {2009},
+ isbn = {978-1-60558-744-8},
+ location = {Portland, Oregon},
+ pages = {36:1--36:12},
+ articleno = {36},
+ numpages = {12},
+ url = {http://doi.acm.org/10.1145/1654059.1654096},
+ doi = {10.1145/1654059.1654096},
+ acmid = {1654096},
+ publisher = {ACM},
+ address = {New York, NY, USA},
+} 
+
+
+
+
+@article{cz15:ij,
+inhal = {no},
+domainehal = {INFO:INFO_DC, INFO:INFO_CR, INFO:INFO_MO},
+equipe = {and},
+classement = {ACLI},
+impact-factor ={0.841},
+isi-acro = {J SUPERCOMPUT},
+author = {Couturier, Rapha\"el and Ziane Khodja, Lilia},
+title = {A scalable multisplitting algorithm to solve large sparse linear systems},
+journal = {The journal of Supercomputing},
+note={{O}nline version, 10.1007/s11227-014-1367-7},
+publisher = {Springer},
+year = 2015,
+
+}
\ No newline at end of file
diff --git a/IJHPCN/doublecol-new.cls b/IJHPCN/doublecol-new.cls
new file mode 100644 (file)
index 0000000..013e82e
--- /dev/null
@@ -0,0 +1,1579 @@
+\NeedsTeXFormat{LaTeX2e}[1995/12/01] \ProvidesClass{singlecol}\r
+              [1998/05/05 v1.3y\r
+ Standard LaTeX document class]\r
+\r
+%\def\clsdir{C:/Inderscience/IJBRA-sample}\r
+\RequirePackage{epsf,endnotes,ifthen,dcolumn,graphics,leqno,calc,lastpage,color}\r
+\r
+\usepackage{amsmath,amsfonts,amssymb,bm,latexsym}\r
+\r
+%\usepackage[LY1]{fontenc}\r
+%\r
+%\edef\@tempa{\rmdefault}\r
+%\def\@tempb {cmr}\r
+%\ifx\@tempa\@tempb\r
+%  \renewcommand*\sfdefault{phv}\r
+%  \renewcommand*\rmdefault{ptm}\r
+%  \renewcommand*\ttdefault{fftt}\r
+%  \renewcommand*\bfdefault{b}\r
+%\fi\r
+\r
+\DeclareOldFontCommand{\RMbi}{\rmfamily\bfseries\itshape}{\mathbi}\r
+   \let\bi=\RMbi\r
+\r
+\newcommand\@ptsize{}\r
+\newif\if@restonecol\r
+\newif\if@titlepage\r
+\@titlepagefalse\r
+\if@compatibility\else\r
+\DeclareOption{a4paper}\r
+   {\setlength\paperheight {297mm}%\r
+    \setlength\paperwidth  {210mm}}\r
+\DeclareOption{a5paper}\r
+   {\setlength\paperheight {210mm}%\r
+    \setlength\paperwidth  {148mm}}\r
+\DeclareOption{b5paper}\r
+   {\setlength\paperheight {250mm}%\r
+    \setlength\paperwidth  {176mm}}\r
+\DeclareOption{letterpaper}\r
+   {\setlength\paperheight {11in}%\r
+    \setlength\paperwidth  {8.5in}}\r
+\DeclareOption{legalpaper}\r
+   {\setlength\paperheight {14in}%\r
+    \setlength\paperwidth  {8.5in}}\r
+\DeclareOption{executivepaper}\r
+   {\setlength\paperheight {9.5in}%\r
+    \setlength\paperwidth  {6.5in}}\r
+\DeclareOption{landscape}\r
+   {\setlength\@tempdima   {\paperheight}%\r
+    \setlength\paperheight {\paperwidth}%\r
+    \setlength\paperwidth  {\@tempdima}}\r
+\fi\r
+\if@compatibility\r
+  \renewcommand\@ptsize{0}\r
+\else\r
+\DeclareOption{10pt}{\renewcommand\@ptsize{0}}\r
+\fi\r
+\DeclareOption{11pt}{\renewcommand\@ptsize{1}}\r
+\DeclareOption{12pt}{\renewcommand\@ptsize{2}}\r
+\if@compatibility\else\r
+\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}\r
+\fi\r
+\DeclareOption{twoside}{\@twosidetrue  \@mparswitchtrue}\r
+\DeclareOption{draft}{\setlength\overfullrule{5pt}%\r
+  \AtBeginDocument{\PagePositionCropYes\r
+    {7pc}{5.3pc}{5.9pc}{7pt}\r
+    {7in}{10in}{-1in}{-1in}}}\r
+\DeclareOption{boxdraft}{\setlength\overfullrule{5pt}%\r
+  \AtBeginDocument{\PagePositionBoxYes\r
+    {7pc}{5.3pc}{5.9pc}{7pt}\r
+    {7in}{10in}{-1in}{-1in}}}\r
+\DeclareOption{final}{\setlength\overfullrule{0pt}%\r
+  \AtBeginDocument{\PagePositionCropYes\r
+    {4pc}{4pc}{3.77pc}{7pt}\r
+    {8.26in}{11.68in}{-1in}{-1in}}}\r
+\DeclareOption{finalcro}{\setlength\overfullrule{0pt}%\r
+  \AtBeginDocument{\PagePositionCropYes\r
+    {7pc}{5.3pc}{5.9pc}{7pt}\r
+    {7in}{10in}{-1in}{-1in}}}\r
+\DeclareOption{titlepage}{\@titlepagetrue}\r
+\if@compatibility\else\r
+\DeclareOption{notitlepage}{\@titlepagefalse}\r
+\fi\r
+\if@compatibility\else\r
+\DeclareOption{onecolumn}{\@twocolumnfalse}\r
+\fi\r
+\DeclareOption{twocolumn}{\@twocolumntrue}\r
+\DeclareOption{leqno}{\input{leqno.clo}}\r
+\DeclareOption{fleqn}{\input{fleqn.clo}}\r
+\DeclareOption{openbib}{%\r
+  \AtEndOfPackage{%\r
+   \renewcommand\@openbib@code{%\r
+      \advance\leftmargin\bibindent\r
+      \itemindent -\bibindent\r
+      \listparindent \itemindent\r
+      \parsep \z@\r
+      }%\r
+   \renewcommand\newblock{\par}}%\r
+}\r
+\ExecuteOptions{letterpaper,10pt,twoside,onecolumn,final}\r
+\ProcessOptions\r
+\input{size1\@ptsize.clo}\r
+\setlength\lineskip{1\p@}\r
+\setlength\normallineskip{1\p@}\r
+\renewcommand\baselinestretch{}\r
+\setlength\parskip{0\p@ \@plus \p@}\r
+\@lowpenalty   51\r
+\@medpenalty  151\r
+\@highpenalty 301\r
+\setcounter{topnumber}{2}\r
+\renewcommand\topfraction{.7}\r
+\setcounter{bottomnumber}{1}\r
+\renewcommand\bottomfraction{.3}\r
+\setcounter{totalnumber}{3}\r
+\renewcommand\textfraction{.2}\r
+\renewcommand\floatpagefraction{.5}\r
+\setcounter{dbltopnumber}{2}\r
+\renewcommand\dbltopfraction{.7}\r
+\renewcommand\dblfloatpagefraction{.5}\r
+\r
+%\DeclareFontFamily{LY1}{fftt}{}%\r
+%\DeclareFontShape{LY1}{fftt}{m}{n}{<->jmcrxr}\r
+%  {\hyphenchar\font=-1}%\r
+%\DeclareFontShape{LY1}{fftt}{m}{it}{<->jmcrxi}\r
+%  {\hyphenchar\font=-1}%\r
+%\DeclareFontShape{LY1}{fftt}{b}{n}{<->jmcrxb}\r
+%  {\hyphenchar\font=-1}%\r
+%\DeclareFontShape{LY1}{fftt}{b}{it}{<->jmcrxw}\r
+%  {\hyphenchar\font=-1}%\r
+\r
+\def\SEVEN{\fontsize{7}{9}\selectfont}\r
+\def\EGT{\fontsize{8}{10}\selectfont}\r
+\def\NINE{\fontsize{9}{10}\selectfont}\r
+\def\TEN{\fontsize{10}{12}\selectfont}\r
+\def\ELEVEN{\fontsize{11}{13}\selectfont}\r
+\def\TWELVE{\fontsize{12}{14}\selectfont}\r
+\def\THIRTEEN{\fontsize{13}{15}\selectfont}\r
+\def\FOURTEEN{\fontsize{14}{16}\selectfont}\r
+\def\SIXTEEN{\fontsize{16}{22}\selectfont}\r
+\r
+\newdimen\markwidth\r
+\newdimen\blth\r
+\newdimen\marklength\r
+\newdimen\markdistance\r
+\newdimen\trimwidth\r
+\newdimen\trimheight\r
+\newdimen\auxaaa\r
+\newdimen\auxbbb\r
+\newdimen\auxccc\r
+\newdimen\auxddd\r
+\r
+\long\def\koo#1#2#3{\vbox to0pt{\hsize0pt\kern #2\hbox to0pt{\kern\r
+#1{#3}\hss}\vss}}\r
+\long\def\zeroCC#1{\vbox to0pt{\vss\hbox to0pt{\hss #1\hss}\vss}}\r
+\long\def\zeroLC#1{\vbox to0pt{\vss\hbox to0pt{\hss #1\hss}}}\r
+\long\def\zeroUC#1{\vbox to0pt{\hbox to0pt{\hss #1\hss}\vss}}\r
+\long\def\zeroLR#1{\vbox to0pt{\vss\hbox to0pt{\hss #1}}}\r
+\long\def\zeroLL#1{\vbox to0pt{\vss\hbox to0pt{#1\hss}}}\r
+\long\def\zeroUR#1{\vbox to0pt{\hbox to0pt{\hss #1}\vss}}\r
+\long\def\zeroUL#1{\vbox to0pt{\hbox to0pt{#1\hss}\vss}}\r
+\long\def\zeroCL#1{\vbox to0pt{\vss\hbox to0pt{#1\hss}\vss}}\r
+\long\def\zeroCR#1{\vbox to0pt{\vss\hbox to0pt{\hss #1}\vss}}\r
+\r
+\newcolumntype{d}[1]{D{.}{.}{#1}}\r
+\r
+%%%%%%%%%%%%%%%%%%% Numbers supplied down here!\r
+\markwidth=.5pt %0.4 truept % Thickness of the mark line\r
+\blth=0.2pt\r
+\marklength=20 truept % Length of the mark line\r
+\markdistance=3 truept % Distance of the real corner to the beg. of the mark\r
+%%% \trimwidth=\textwidth+\oddsidemargin+\evensidemargin\r
+\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\r
+\auxaaa\marklength\advance\auxaaa\markdistance\r
+\def\oddevenswitch{\ifodd\c@page \auxbbb=\oddsidemargin\r
+ \else\auxbbb=\evensidemargin\fi}%\r
+\r
+%%% First reset all page position parameters depending on the job:\r
+% \PagePositionCropYes - should be just for testing\r
+% \PagePositionCropNo  - should be the default behavior\r
+% \PagePositionBoxYes  - gives the page box for testing\r
+\r
+\def\PagePositionCropYes#1#2#3#4#5#6#7#8{%\r
+  \oddsidemargin=#1%  % [3] inner margin / gutter\r
+  \evensidemargin=#2% % [4] outside margin\r
+  \topmargin=#3%      % [5] \rhsink = \topmargin + \headheight (=12pt here)\r
+  \headheight=#4%     % [6] VERY IMPORTANT! (see above)\r
+  \trimwidth=#5%      % [7]\r
+  \trimheight=#6%     % [8]\r
+  \hoffset=#7%        % = -1in to move the area in the upper left corner\r
+  \voffset=#8%        % = -1in to move the area in the upper left corner\r
+%%%\r
+ \def\CROPMARKS{\oddevenswitch\r
+ \hbox to0pt{\kern-\auxbbb\r
+   \vbox to0bp{\kern-\topmargin\kern-\headheight\r
+   \hbox to\trimwidth{%\r
+     \koo{-\auxaaa}{-\markwidth}{\VRHDW{\markwidth}{0pt}{\marklength}}%\r
+     \koo{-\markwidth}{-\auxaaa}{\VRHDW{0pt}{\marklength}{\markwidth}}%\r
+     \hfill\r
+     \koo{\markdistance}{-\markwidth}{\VRHDW{\markwidth}{0pt}{\marklength}}%\r
+     \koo{0pt}{-\auxaaa}{\VRHDW{0pt}{\marklength}{\markwidth}}}%\r
+   \nointerlineskip\vskip\trimheight\r
+   \nointerlineskip\r
+   \hbox to\trimwidth{%\r
+     \koo{-\auxaaa}{0pt}{\VRHDW{0pt}{\markwidth}{\marklength}}%\r
+     \koo{-\markwidth}{\markdistance}{\VRHDW{0pt}{\marklength}{\markwidth}}%\r
+     \hfill\r
+     \koo{\markdistance}{0pt}{\VRHDW{0pt}{\markwidth}{\marklength}}%\r
+     \koo{0pt}{\markdistance}{\VRHDW{0pt}{\marklength}{\markwidth}}}%\r
+   \vss}\hss}}%\r
+}%\r
+\r
+\def\PagePositionCropNo#1#2#3#4#5#6#7#8{%\r
+  \oddsidemargin=#1%  % [3] inner margin / gutter\r
+  \evensidemargin=#2% % [4] outside margin\r
+  \topmargin=#3%      % [5] \rhsink = \topmargin + \headheight (=12pt here)\r
+  \headheight=#4%     % [6] VERY IMPORTANT! (see above)\r
+  \trimwidth=#5%      % [7]\r
+  \trimheight=#6%     % [8]\r
+  \hoffset=#7%        % = -1in to move the area in the upper left corner\r
+  \voffset=#8%        % = -1in to move the area in the upper left corner\r
+%%%\r
+\def\CROPMARKS{}%\r
+}%\r
+\r
+\def\PagePositionBoxYes#1#2#3#4#5#6#7#8{%\r
+  \oddsidemargin=#1%  % [3] inner margin / gutter\r
+  \evensidemargin=#2% % [4] outside margin\r
+  \topmargin=#3%      % [5] \rhsink = \topmargin + \headheight (=12pt here)\r
+  \headheight=#4%     % [6] VERY IMPORTANT! (see above)\r
+  \trimwidth=#5%      % [7]\r
+  \trimheight=#6%     % [8]\r
+  \hoffset=#7%        % = -1in to move the area in the upper left corner\r
+  \voffset=#8%        % = -1in to move the area in the upper left corner\r
+%%%\r
+ \def\CROPMARKS{\oddevenswitch\r
+ \hbox to0pt{\kern-\auxbbb\r
+   \vbox to0bp{\kern-\topmargin\kern-\headheight\r
+   \hbox to\trimwidth{%\r
+     \auxccc=\trimwidth \advance\auxccc by 2\blth\r
+     \auxddd=\trimheight \advance\auxddd by 2\blth\r
+     \koo{-\blth}{0pt}{\zeroLL{\VRHDW{\blth}{0pt}{\auxccc}}}%\r
+     \koo{-\blth}{-\blth}{\zeroUL{\VRHDW{\auxddd}{0pt}{\blth}}}%\r
+     \koo{\trimwidth}{-\blth}{\zeroUL{\VRHDW{\auxddd}{0pt}{\blth}}}%\r
+     \koo{-\blth}{\trimheight}{\zeroUL{\VRHDW{\blth}{0pt}{\auxccc}}}\hss}%\r
+   \vss}\hss}}%\r
+}%\r
+\r
+\def\LRH#1{\gdef\setLRH{#1}}\def\setLRH{}%\r
+\def\RRH#1{\gdef\setRRH{#1}}\def\setRRH{}%\r
+\r
+\LRH{author}\r
+\RRH{short title}\r
+\r
+\def\ps@headings{\let\@mkboth\markboth\r
+  \def\@oddfoot{\setoddFOOT}%\r
+  \def\@evenfoot{\setevenFOOT}%\r
+  \def\@evenhead{\setevenRH}%\r
+  \def\@oddhead{\setoddRH}%\r
+  \def\sectionmark##1{}%\r
+  \def\subsectionmark##1{}}%\r
+\r
+%%%%%%%%%%%%%%%%%%% Standard settings:\r
+\r
+\def\setoddRH{\VRHDW{\headheight}{0pt}{0pt}\CROPMARKS%\r
+  \raisebox{0pt}[\headheight][0pt]{%\r
+%    \marginnumbering\r
+    \begin{tabular}{@{}c@{}}\\[-15pt]%\r
+%    \TEN\hskip -1pt\today\\[27pt]%\r
+  \hbox to \textwidth{\hspace*{36pt}{\TEN\it\spaceskip0.41em\setRRH}\hfill{\TEN\thepage}}\r
+    \end{tabular}\r
+  }}%\r
+\r
+\def\setevenRH{\VRHDW{\headheight}{0pt}{0pt}\CROPMARKS%\r
+  \raisebox{0pt}[\headheight][0pt]{%\r
+% \marginnumbering\r
+  \begin{tabular}{@{}c@{}}\\[-15pt]%\r
+%    \TEN\hskip -1pt\today \\[30pt]%\r
+  \hbox to \textwidth{\spaceskip0.41em{\TEN\thepage}\hspace*{30pt}\TEN\it%\r
+  \setLRH}%\r
+    \end{tabular}\r
+  }}%\r
+\r
+\def\setevenFOOT{\hfil}\r
+\def\setoddFOOT{\hfil}\r
+\r
+\let\savesetevenRH=\setevenRH\r
+\let\savesetoddRH=\setoddRH\r
+\let\savesetoddFOOT=\setoddFOOT\r
+\let\savesetevenFOOT=\setevenFOOT\r
+\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\ps@plain\r
+\def\ps@plain{\let\@mkboth\@gobbletwo\r
+     \def\@oddhead{\it \CROPMARKS\TEN \theJOURNALNAME, Vol. \theVOL, No. \theISSUE, \thePUBYEAR\hfill{\rm \thepage}}%\r
+     \let\@evenhead=\@oddhead\r
+     \def\@oddfoot{\NINE Copyright \copyright\ 2009 Inderscience Enterprises Ltd.\hfill}%\r
+     \def\@evenfoot{\NINE Copyright \copyright\ 2009 Inderscience Enterprises Ltd.\hfill}}\r
+\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\ps@empty\r
+\def\ps@empty{\let\@mkboth\@gobbletwo\r
+     \def\@oddhead{\hfil}%\r
+     \let\@evenhead=\@oddhead\r
+     \def\@oddfoot{\hfil}%\r
+     \let\@evenfoot=\@oddfoot}\r
+\r
+\def\jname{ETC}\r
+\r
+\def\boxtext{\begin{tabular}{l}\r
+\\[-190pt]\r
+\hbox to \textwidth{\hfill{\parbox{16pc}\r
+    {\EGT\r
+    \begin{tabular}{c}\r
+    \jname\ \artname\quad Pe:\ \penumber/LE/CP/DISK (LaTeX)\\\r
+   \today\quad \printtime\quad Ist Proof\r
+    \end{tabular}\r
+    }\r
+}\enskip}\r
+\end{tabular}}\r
+\r
+\def\DS{\displaystyle}\r
+\r
+\def\KLUWERLOGO{\epsffile[0 0 16 18]{aglogo3.eps}}%\r
+\r
+\def\setfirstoddFOOT{\hfil}\r
+\def\setfirstevenFOOT{\hfil}\r
+\r
+\def\JOURNALNAME#1{\gdef\theJOURNALNAME{#1}}%\r
+\def\VOL#1{\gdef\theVOL{#1}}%\r
+\VOL{0}%\r
+\def\PAGES#1{\gdef\thePAGES{#1}}%\r
+\PAGES{\thepage--\pageref{LastPage}}%\r
+\def\PUBYEAR#1{\gdef\thePUBYEAR{#1}}%\r
+\PUBYEAR{2004}%\r
+\def\ISSUE#1{\gdef\theISSUE{#1}}%\r
+\ISSUE{00}%\r
+\r
+\JOURNALNAME{\TEN{\it Int. J. Signal and Imaging Systems Engineering}}%\r
+\def\jtitlefont{\fontsize{16}{22}\selectfont\rm}\r
+\r
+\def\Dnum#1{\gdef\theDnum{#1}}%\r
+\Dnum{Please enter the Dekker No}%\r
+\r
+\def\CLline{{\CROPMARKS\vskip -36pt \fontsize{9}{12}\selectfont\r
+\TEN\hskip -1pt\\\r
+\NINE{\theJOURNALNAME\\[9pt]\r
+%Vol. \theVOL, No. \theISSUE, pp. \thePAGES, \thePUBYEAR}\r
+}\endgraf}\vspace*{38pt}}%\r
+\r
+\def\BottomCatch{%\r
+\vskip -10pt\r
+\thispagestyle{empty}%\r
+\begin{table}[b]%\r
+\NINE\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}lcr@{}}%\r
+\\[-12pt]\r
+Copyright \copyright\ 2008 Inderscience Enterprises Ltd. & &%\r
+\end{tabular*}%\r
+\vskip -15pt%\r
+\end{table}%\r
+}%\r
+\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%SSS\r
+%%%%%% \Trivlist, \TRivlist, \Center, \Flushleft, \Flushright\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\r
+\def\Trivlist{\parskip0pt\topsep=0pt\parsep0pt\partopsep0pt\@nmbrlistfalse\r
+  \@trivlist \labelwidth\z@ \leftmargin\z@\r
+  \itemindent\z@ \def\makelabel##1{##1}}\r
+\r
+\def\endTrivlist{\if@newlist\@noitemerr\fi\r
+   \if@inlabel\indent\fi\r
+   \ifhmode\unskip \par\fi\r
+   \if@noparlist \else\r
+      \ifdim\lastskip >\z@ \@tempskipa\lastskip \vskip -\lastskip\r
+         \advance\@tempskipa\parskip \advance\@tempskipa -\@outerparskip\r
+         \vskip\@tempskipa\r
+   \fi\@endparenv\fi}\r
+\r
+\def\TRivlist{\parskip0pt\topsep=12pt plus 5pt minus 5pt\r
+  \parsep0pt\partopsep0pt\@nmbrlistfalse\r
+  \@trivlist \labelwidth\z@\r
+  \leftmargin 0pt \rightmargin 0pt\r
+  \itemindent\z@ \def\makelabel##1{##1}}\r
+\r
+\def\endTRivlist{\if@newlist\@noitemerr\fi\r
+   \if@inlabel\indent\fi\r
+   \ifhmode\unskip \par\fi\r
+   \if@noparlist \else\r
+      \ifdim\lastskip >\z@ \@tempskipa\lastskip \vskip -\lastskip\r
+         \advance\@tempskipa\parskip \advance\@tempskipa -\@outerparskip\r
+         \vskip\@tempskipa\r
+   \fi\@endparenv\fi}\r
+\r
+\def\Center{\Trivlist \centering\item[]}\r
+\let\endCenter=\endTrivlist\r
+\def\Flushleft{\Trivlist \raggedright\item[]}\r
+\let\endFlushleft=\endTrivlist\r
+\def\Flushright{\Trivlist \raggedleft\item[]}\r
+\let\endFlushright=\endTrivlist\r
+\r
+\newcommand{\up}{\HD{9}{0}}% for tables\r
+\newcommand{\down}{\HD{0}{6}}%\r
+\r
+%%%%%%%%%%koo.sty\r
+\def\VRHDW#1#2#3{\vrule height #1 depth #2 width #3}\r
+\def\HRHDW#1#2#3{\hrule height #1 depth #2 width #3}\r
+\def\HD#1#2{\vrule height #1pt depth #2pt width 0pt\relax}\r
+\def\halmos{\VRHDW{8pt}{0pt}{4pt}}%\r
+\r
+\newcommand\abstractname{\NINE Abstract:}\r
+%\newcommand\keywordname{Keywords:\null}\r
+\r
+\newbox\t@abstract\r
+\newbox\t@receivedname\r
+\newbox\temptbox\r
+\newdimen\tempdime\r
+\r
+\def\authorA#1{\gdef\@authorA{\bf #1}}%{\authfont #1}}\r
+\def\authorB#1{\gdef\@authorB{\bf #1}}%{\authfont #1}}\r
+\def\authorC#1{\gdef\@authorC{\bf #1}}%{\authfont #1}}\r
+\def\authorD#1{\gdef\@authorD{\bf #1}}%{\authfont #1}}\r
+\r
+\def\affA#1{\gdef\@affA{\TEN #1}}\r
+\def\affB#1{\gdef\@affB{\TEN #1}}\r
+\def\affC#1{\gdef\@affC{\TEN #1}}\r
+\def\affD#1{\gdef\@affD{\TEN #1}}\r
+\r
+\def\HISTORY#1{\gdef\@HISTORY{\NINE #1}}\r
+\def\ADDITIONAL#1{\gdef\@ADDITIONAL{\NINE #1}}\r
+\def\PRESENTED#1{\gdef\@PRESENTED{\NINE #1}}\r
+\def\DEDICATED#1{\gdef\@DEDICATED{{\TWELVE\it #1}}}\r
+\r
+\def\REF#1{\gdef\@REF{\NINE #1}}\r
+\def\BIO#1{\gdef\@BIO{\NINE #1}}\r
+\def\JEL#1{\gdef\@JEL{\NINE #1}}\r
+\def\PACS#1{\gdef\@PACS{\NINE #1}}\r
+\def\KEYWORD#1{\gdef\@KEYWORD{\NINE #1}}\r
+\r
+%%\r
+\def\sechead#1{\def\@sechead{#1}}\r
+\def\docHeading#1{\def\@docHeading{#1}}\r
+\def\subtitle#1{\def\@subtitle{\uppercase{#1}}}\r
+\r
+\def\address#1{\def\@address{#1}}\r
+\def\Date#1{\def\@Date{Accepted~#1}}\r
+\def\abstract{\@ifnextchar[{\@abstract}{\@abstract[]}}\r
+\r
+\def\@abstract[#1]{%\r
+  \global\setbox\t@abstract=\vbox\bgroup%\r
+    \parindent10pt\leftskip 12.75pc%\rightskip 3pc%\r
+    \noindent{\bf\TEN \abstractname}\ %\vskip 12.8pt\r
+    \noindent\NINE%\r
+    \ignorespaces}%\r
+\def\endabstract{\egroup}\r
+\r
+\newcommand\bioname{\NINE Biographical notes:}\r
+\newbox\t@bio\r
+\def\bio{\@ifnextchar[{\@bio}{\@bio[]}}\r
+\def\@bio[#1]{%\r
+  \global\setbox\t@bio=\vbox\bgroup%\r
+    \parindent10pt\leftskip 12.75pc%\rightskip 3pc%\r
+    \noindent{\bf\TEN \bioname}\ %\vskip 12.8pt\r
+    \noindent\NINE%\r
+    \ignorespaces}%\r
+\def\endbio{\egroup}\r
+\r
+%\font\titfont=ARIALBD at 14pt\r
+%\font\authfont=ARIAL at 14pt\r
+\r
+\newcommand\maketitle{\par\r
+  \begingroup\r
+      \gdef\thefootnote{\alph{footnote}}\r
+    \def\@makefnmark{\hbox\r
+    to 0pt{$^{\@thefnmark}$\hss}}\r
+    \long\def\@makefntext##1{\noindent\r
+      \ifnum\c@footnote=1\hbox{*\,}\else\r
+      \hbox{\@textsuperscript{\normalfont\@thefnmark}\,}\fi\r
+      \foot ##1}%\r
+%      \ifnum \col@number=\@ne\r
+%        \@maketitle\r
+%      \else\r
+%        \@maketitle\r
+          \twocolumn[\@maketitle]%\r
+%      \fi\r
+      \thispagestyle{plain}\r
+  \@thanks\r
+  \endgroup\r
+  \setcounter{footnote}{0}%\r
+  \global\let\maketitle\relax\global\let\@maketitle\relax\r
+}\r
+\r
+\long\gdef\ARTICLEOPENING#1{\long\gdef\@maketitle{#1}}%\r
+\ARTICLEOPENING{}%\r
+\r
+%FFF\r
+\def\@maketitle{%\r
+%  \begin{Center}%\r
+    \let \footnote \thanks%\r
+      {%\r
+       \hyphenpenalty 10000%\r
+        \begin{Flushleft}\r
+        \vskip-1pc\r
+        \leftskip 12.75pc plus 20pc\r
+        \rule{30pc}{1.5pt}\\%[1pt]\r
+        \baselineskip16pt plus .2pt minus .2pt\r
+         \HD{0}{0}\FOURTEEN%\titfont\r
+         {\bf \@title}\\[-8pt]\r
+         \rule{30pc}{1.5pt}\HD{0}{6}%\r
+         \end{Flushleft}\r
+            \par}%\r
+%%%authorA  %GGG\r
+    \ifx\@authorA\undefined%\r
+    \else%\r
+      \begin{Flushleft}%\r
+        \baselineskip16pt plus .25pt minus .24pt\r
+         \leftskip 12.75pc plus 20pc  %\rightskip 3pc plus 20pc\r
+    \HD{19}{0}\FOURTEEN\@authorA\HD{0}{0}\r
+    \end{Flushleft}%\r
+    \fi\par%\r
+    \ifx\@affA\undefined%\r
+    \else\r
+      \begin{Flushleft}%\r
+    \HD{15}{0}%\r
+    \leftskip 12.75pc plus 0pt  %\rightskip 3pc plus 0pt\r
+    \@affA\HD{0}{12}%\r
+      \end{Flushleft}%\r
+          \fi%\r
+%%%\r
+    \ifx\@authorB\undefined%\r
+    \else%\r
+      \begin{Flushleft}%\r
+    \leftskip 12.75pc plus 20pc  %\rightskip 3pc plus 20pc\r
+    \HD{10}{0}\FOURTEEN\@authorB\HD{0}{0}\r
+    \end{Flushleft}\r
+    \fi%\r
+    \ifx\@affB\undefined%\r
+    \else \begin{Flushleft}\HD{15}{0}%\r
+    \leftskip 12.75pc plus 0pc  %\rightskip 3pc plus 20pc\r
+    \@affB\HD{0}{12}%\r
+    \end{Flushleft}%%\r
+    \fi%\r
+%%%\r
+%%%\r
+    \ifx\@authorC\undefined%\r
+    \else%\r
+      \begin{Flushleft}%\r
+    \leftskip 12.75pc plus 20pc  %\rightskip 3pc plus 20pc\r
+    \HD{10}{0}\FOURTEEN\@authorC\HD{0}{0}\r
+    \end{Flushleft}\r
+    \fi%\r
+    \ifx\@affC\undefined%\r
+    \else \begin{Flushleft}\HD{15}{0}%\r
+    \leftskip 12.75pc plus 0pc  %\rightskip 3pc plus 20pc\r
+    \@affC\HD{0}{12}%\r
+    \end{Flushleft}%%\r
+    \fi%\r
+%%%\r
+%%%\r
+    \ifx\@authorD\undefined%\r
+    \else%\r
+      \begin{Flushleft}%\r
+    \leftskip 12.75pc plus 20pc  %\rightskip 3pc plus 20pc\r
+    \HD{10}{0}\FOURTEEN\@authorD\HD{0}{0}\r
+    \end{Flushleft}\r
+    \fi%\r
+    \ifx\@affD\undefined%\r
+    \else \begin{Flushleft}\HD{15}{0}%\r
+    \leftskip 12.75pc plus 0pc  %\rightskip 3pc plus 20pc\r
+    \@affD\HD{0}{12}%\r
+    \end{Flushleft}%%\r
+    \fi%\r
+%%%\r
+    \ifx\@Date\undefined\else{\footnotesize%\r
+    \@Date%\r
+    \par}\vskip24pt\fi%\r
+    \HD{3}{0}%\r
+    \ifx\@ADDITIONAL\undefined%\r
+    \else%\r
+        \@ADDITIONAL \HD{0}{20}\par%\r
+    \fi%\r
+    \ifx\@PRESENTED\undefined%\r
+    \else%\r
+        \@PRESENTED\HD{0}{20}\par%\r
+    \fi%\r
+    \ifx\@HISTORY\undefined%\r
+    \else%\r
+        \@HISTORY \HD{9}{0}\par%\r
+    \fi%\r
+    \HD{0}{0}%\r
+%    \tableofcontents\r
+    \noindent\leftskip 12.75pc%\rightskip 3pc%\r
+    {\unvbox\t@abstract}%\r
+%     \end{Center}%\r
+    \ifx\@KEYWORD\undefined%\r
+    \else%\r
+    \noindent\leftskip 12.75pc%\rightskip 3pc%\r
+     \HD{19}{0}\NINE{\bf Keywords:}\ \@KEYWORD \HD{0}{0}\par%\r
+     \fi\r
+        \ifx\@REF\undefined%\r
+    \else%\r
+    \noindent\leftskip 12.75pc%\rightskip 3pc%\r
+     \HD{21}{0}\NINE{\bf Reference}\  \@REF \HD{0}{0}\par%\r
+    \fi%\r
+    \HD{12}{0}{\unvbox\t@bio}%\r
+%%bio\r
+      \noindent\leftskip 0pc%\rightskip 2pc\r
+             \HD{18.5}{0}\rule{42.5pc}{1.5pt}\r
+  \vskip 20pt plus 3pt minus 2pt%\r
+  \relax%\r
+}%\r
+\r
+\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%-b-THEOREM\r
+\r
+\RequirePackage{theorem}\r
+\r
+\gdef\th@TH{%\r
+  \def\theorem@headerfont{\normalfont\mdseries\bf}%\r
+  \theorempreskipamount=12pt plus 1pt minus 1pt%\r
+  \theorempostskipamount=12pt plus 1pt minus 1pt%\r
+  \def\@begintheorem##1##2{\normalfont\it%\r
+        \item[\noindent\hskip\labelsep\theorem@headerfont\bf ##1\ ##2:]\enskip}%\r
+  \def\@opargbegintheorem##1##2##3{\normalfont\it%\r
+        \item[\noindent\hskip\labelsep\theorem@headerfont{\bf ##3:}]\enskip}}\r
+\r
+%This is defined to get Rule Case, definition, Example etc.\r
+\gdef\th@THrm{%\r
+  \def\theorem@headerfont{\normalfont\mdseries\bf}%\r
+  \theorempreskipamount=12pt plus 1pt minus 1pt%\r
+  \theorempostskipamount=12pt plus 1pt minus 1pt%\r
+  \labelsep 0.5em %%10pt\r
+  \def\@begintheorem##1##2{\normalfont\rm\r
+        \item[\noindent\hskip\labelsep\theorem@headerfont{\bf ##1\ ##2:}]\enskip}%\r
+  \def\@opargbegintheorem##1##2##3{\normalfont\rm\r
+        \item[\noindent\hskip\labelsep\theorem@headerfont {{\bf ##3:}}]\enskip}}\r
+\r
+\gdef\th@THhit{%\r
+  \def\theorem@headerfont{\normalfont\mdseries\scshape}%\r
+  \theorempreskipamount=12pt plus 1pt minus 1pt%\r
+  \theorempostskipamount=12pt plus 1pt minus 1pt%\r
+  \labelsep 0.5em %%10pt\r
+  \def\@begintheorem##1##2{\it\r
+        \item[\noindent\hskip\labelsep\theorem@headerfont {\bf ##1}\ {\bf ##2:}]\enskip}%\r
+  \def\@opargbegintheorem##1##2##3{\normalfont\it\r
+        \item[\noindent\hskip\labelsep\theorem@headerfont {\bf ##3:}]\enskip}}\r
+\r
+\gdef\th@THkeyall{%\r
+  \def\theorem@headerfont{\normalfont\mdseries\scshape}%\r
+  \theorempreskipamount=12pt plus 6pt minus 3pt%\r
+  \theorempostskipamount=12pt plus 6pt minus 3pt%\r
+  \labelsep 0.5em %%10pt\r
+  \def\@begintheorem##1##2{\normalfont\it\r
+        \item[\indent\hskip\labelsep \theorem@headerfont ##1.]}%\r
+  \def\@opargbegintheorem##1##2##3{\normalfont\it\r
+        \item[\indent]{\theorem@headerfont {##3}\hskip\labelsep}\ignorespaces}}\r
+\r
+\gdef\th@EX{%\r
+  \def\theorem@headerfont{\normalfont\mdseries\scshape}%\r
+  \theorempreskipamount=0pt\theorempostskipamount=0pt\r
+  \labelsep 0.5em %%10pt\r
+  \def\@begintheorem##1##2{\normalfont\upshape\r
+        \item[\indent\hskip\labelsep \theorem@headerfont ##1\ ##2.]}%\r
+  \def\@opargbegintheorem##1##2##3{\normalfont\upshape\r
+        \item[\indent\hskip\labelsep \theorem@headerfont ##1\ ##2\ {##3.}]}}\r
+\r
+\gdef\th@EXkey{%\r
+  \def\theorem@headerfont{\normalfont\mdseries\scshape}%\r
+  \theorempreskipamount=13pt\theorempostskipamount=13pt\r
+  \labelsep 0.5em %%10pt\r
+  \def\@begintheorem##1##2{\normalfont\upshape\r
+        \item[\indent\hskip\labelsep \theorem@headerfont ##1\ ##2.]}%\r
+  \def\@opargbegintheorem##1##2##3{\normalfont\upshape\r
+        \item[\indent\hskip\labelsep \theorem@headerfont {##3}]}}\r
+\r
+\gdef\th@EXkeyall{%\r
+  \def\theorem@headerfont{\normalfont\mdseries\scshape}%\r
+  \theorempreskipamount=0pt\theorempostskipamount=0pt\r
+  \labelsep 0.5em %%10pt\r
+  \def\@begintheorem##1##2{\normalfont\upshape\r
+        \item[\indent\hskip\labelsep \theorem@headerfont ##1\ ##2.]}%\r
+  \def\@opargbegintheorem##1##2##3{\normalfont\upshape\r
+        \item[\indent\hskip\labelsep]{\theorem@headerfont {##3}}}}\r
+\r
+\def\problem#1{\noindent{\bf Problem #1.\/}\enskip\rm}\r
+\def\endproblem{\hfill$\square$\vskip 10pt}\r
+\r
+\def\theo#1{\vskip 10pt \noindent{\bi Theorem #1.\/}\enskip\it}\r
+\def\endtheo{\hfill$\square$\vskip 12pt}\r
+%% Use for proper proofs that end with extra space (regardless of the use\r
+%% or non-use of \qed (=the black box)\r
+\def\THTrivlist{\parskip0pt\topsep=1.2em plus 0.3em minus 0.2em\r
+  \parsep0pt\partopsep0pt\@nmbrlistfalse\r
+  \@trivlist \labelwidth\z@ \leftmargin\z@\r
+  \itemindent\z@ \def\makelabel##1{##1}}\r
+\r
+\let\endTHTrivlist=\endlist\r
+\r
+\def\proof#1{\THTrivlist %%\addvspace{0pt}\r
+  \item[\hspace*{0pt}\hskip\labelsep{\it #1}:\enskip]\ignorespaces}\r
+\def\endproof{\hfill $\square$\endTHTrivlist}\r
+\r
+\def\endSQproof{\hfill\endTHTrivlist}\r
+% this is to remove square from end of Proof\r
+\r
+\def\thproof#1{\vskip-\lastskip\par{ #1.\/}\enskip\rm}\r
+\def\endthproof{\hfill$\square$\vskip 12pt}\r
+\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%-e-THEOREM\r
+\r
+%%% BIBLIOGRAPHY\r
+\r
+\def\@biblabel#1{[#1]}\r
+ \def\@cite#1{[#1]}\r
+\r
+%%%%%%%%%%%%%%%%%BIBLIOGRAPHY %%%%%%%%%%%%BBBBBB\r
+\r
+\def\thebibliography#1{%\r
+    \par{\section*{References and Notes}}%\r
+    \list{}{\settowidth\labelwidth{#1}\r
+    \setlength{\topsep}{0pt}\r
+    \labelsep 0pt\labelwidth 0pt\r
+    \leftmargin 8pt\r
+     \itemindent-8pt\r
+    \itemsep  5pt\r
+    \def\bibitem{\item \NINE\r
+     \baselineskip10pt plus 0.3pt minus 0.25pt\relax}}\r
+    \def\newblock{\hskip .11em plus .33em minus .07em}\r
+    \sloppy\clubpenalty4000\widowpenalty4000\r
+    \sfcode`\.=1000\relax}\r
+\r
+\def\endthebibliography{\endlist}\r
+\r
+\def\notesname{Notes}% <------ JK\r
+\def\enoteheading{\section*{\notesname}%\r
+ \leavevmode\par}\r
+\r
+\def\enoteformat{\rightskip\z@ \leftskip6pt \parindent=0em\r
+     \leavevmode\llap{\hbox{$^{\@theenmark}$}}}\r
+\r
+\def\enotesize{\footnotesize}\r
+\r
+\def\NUMBIB{\def\@biblabel##1{\bf ##1}%\r
+\def\thebibliography##1{%\r
+  \par{\section*{References and Notes\HD{0}{0}}}%\r
+  \list\r
+  {\@biblabel{\arabic{enumiv}}}{\NINE\r
+    \baselineskip 10pt plus 0.3pt minus 0.25pt\relax\r
+    \settowidth\labelwidth{\@biblabel{##1}}%\r
+    \leftmargin\labelwidth\r
+    \advance\leftmargin\labelsep\r
+    \usecounter{enumiv}%\r
+    \let\p@enumiv\@empty\r
+    \labelsep 8pt\labelwidth 13.5pt\r
+    \itemsep  2pt\r
+    \parskip4pt\topsep4pt\r
+    \def\theenumiv{\arabic{enumiv}}}%\r
+    \def\newblock{\hskip .11em plus.33em minus.07em}%\r
+    \sloppy\clubpenalty4000\widowpenalty4000\r
+    \sfcode`\.=1000\relax\r
+    \parsep0pt}}\r
+\r
+\clubpenalty 10000\r
+\widowpenalty 10000\r
+\predisplaypenalty=10000\r
+\setcounter{secnumdepth}{3}\r
+\newcounter {part}\r
+\newcounter {section}\r
+\newcounter {subsection}[section]\r
+\newcounter {subsubsection}[subsection]\r
+\newcounter {paragraph}[subsubsection]\r
+\newcounter {subparagraph}[paragraph]\r
+\renewcommand \thepart {\@Roman\c@part}\r
+\renewcommand \thesection {\@arabic\c@section}\r
+\renewcommand\thesubsection   {\thesection.\@arabic\c@subsection}\r
+\renewcommand\thesubsubsection{\thesubsection .\@arabic\c@subsubsection}\r
+\renewcommand\theparagraph    {\thesubsubsection.\@arabic\c@paragraph}\r
+\renewcommand\thesubparagraph {\theparagraph.\@arabic\c@subparagraph}\r
+\newcommand\part{\par\r
+   \addvspace{4ex}%\r
+   \@afterindentfalse\r
+   \secdef\@part\@spart}\r
+\r
+\def\@part[#1]#2{%\r
+    \ifnum \c@secnumdepth >\m@ne\r
+      \refstepcounter{part}%\r
+      \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%\r
+    \else\r
+      \addcontentsline{toc}{part}{#1}%\r
+    \fi\r
+    {\parindent \z@ \raggedright\r
+     \interlinepenalty \@M\r
+     \normalfont\r
+     \ifnum \c@secnumdepth >\m@ne\r
+       \Large\bfseries \partname~\thepart\r
+       \par\nobreak\r
+     \fi\r
+     \huge \bfseries #2%\r
+     \markboth{}{}\par}%\r
+    \nobreak\r
+    \vskip 3ex\r
+    \@afterheading}\r
+\def\@spart#1{%\r
+    {\parindent \z@ \raggedright\r
+     \interlinepenalty \@M\r
+     \normalfont\r
+     \huge \bfseries #1\par}%\r
+     \nobreak\r
+     \vskip 3ex\r
+     \@afterheading}\r
+\r
+\def\@startsection#1#2#3#4#5#6{\if@noskipsec \leavevmode \fi\r
+   \par \@tempskipa #4\relax\r
+   \@afterindentfalse\r
+   \ifdim \@tempskipa <\z@ \@tempskipa -\@tempskipa \@afterindentfalse\fi\r
+   \if@nobreak \everypar{}\else\r
+     \addpenalty{\@secpenalty}\addvspace{\@tempskipa}\fi \@ifstar\r
+     {\@ssect{#3}{#4}{#5}{#6}}{\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}\r
+\r
+\def\@sect#1#2#3#4#5#6[#7]#8{%\r
+     \ifnum #2>\c@secnumdepth\r
+       \let\@svsec\@empty\r
+     \else\r
+       \refstepcounter{#1}%\r
+       \edef\@svsec{\csname the#1\endcsname\hskip 9.3pt}%\r
+     \fi\r
+     \@tempskipa #5\relax\r
+      \ifdim \@tempskipa>\z@\r
+        \begingroup #6{\relax\r
+               \parindent0pt\r
+               \@hangfrom{\hskip #3\relax\@svsec}{\interlinepenalty \@M #8\par}}%\r
+        \endgroup\r
+       \csname #1mark\endcsname{#7}\addcontentsline\r
+         {toc}{#1}{\ifnum #2>8 %%%\c@secnumdepth\r
+                     \else\r
+                      \protect\numberline{\csname the#1\endcsname}\fi\r
+                    #7}\else\r
+        \def\@svsechd{#6\hskip #3\relax  %% \relax added 2 May 90\r
+                   \@svsec #8.\csname #1mark\endcsname\r
+                      {#7}\addcontentsline\r
+                           {toc}{#1}{\ifnum #2>\c@secnumdepth \else\r
+                             \protect\numberline{\csname the#1\endcsname}\fi\r
+                       #7}}\fi\r
+     \@xsect{#5}}\r
+\r
+\def\@xsect#1{\@tempskipa #1\relax\r
+      \ifdim \@tempskipa>\z@\r
+       \par \nobreak\r
+       \vskip \@tempskipa\r
+       \@afterheading\r
+    \else \global\@nobreakfalse \global\@noskipsectrue\r
+       \everypar{\if@noskipsec \global\@noskipsecfalse\r
+                   \clubpenalty\@M \hskip -\parindent\r
+                   \begingroup \@svsechd \endgroup \unskip\r
+                   \hskip -#1\relax  % relax added 14 Jan 91\r
+                  \else \clubpenalty \@clubpenalty\r
+                    \everypar{}\fi}\fi\ignorespaces}\r
+\r
+\def\@ssect#1#2#3#4#5{\@tempskipa #3\relax\r
+   \ifdim \@tempskipa>\z@\r
+     \begingroup #4{\@hangfrom{\hskip #1}{\interlinepenalty \@M #5\par}}\endgroup\r
+   \else \def\@svsechd{#4\hskip #1\relax #5}\fi\r
+    \@xsect{#3}}\r
+\r
+\def\section{\@startsection {section}{1}{\z@}\r
+    {24pt plus 4pt minus 4pt}\r
+    {12pt}\r
+    {\reset@font\hyphenpenalty9999\ELEVEN\bfseries\hangindent1.33pc}}\r
+\r
+\def\subsection{\@startsection{subsection}{2}{\z@}\r
+    {12pt plus 4pt minus 4pt}\r
+    {10pt}\r
+    {\reset@font\hyphenpenalty9999\ELEVEN\it\raggedright\hangindent1.95pc}}\r
+\r
+\def\subsubsection{\@startsection{subsubsection}{3}{\z@}\r
+    {12pt plus 4pt minus 4pt}\r
+    {8pt}\r
+    {\reset@font\hyphenpenalty9999\ELEVEN\it\hangindent1.95pc}}\r
+\r
+\def\paragraph{\@startsection{paragraph}{4}{0pt}\r
+    {12pt plus 4pt minus 2pt}\r
+    {-8pt}\r
+    {\reset@font\hyphenpenalty9999\it\hangindent1.95pc}}\r
+\r
+\def\subparagraph{\@startsection{subparagraph}{5}{18pt}\r
+    {13pt plus 4pt minus 2pt}\r
+    {-10pt}\r
+    {\reset@font\TEN\SECRR\bf }}\r
+\if@twocolumn\r
+  \setlength\leftmargini  {2em}\r
+\else\r
+  \setlength\leftmargini  {2.5em}\r
+\fi\r
+\leftmargin  \leftmargini\r
+\setlength\leftmarginii  {2.2em}\r
+\setlength\leftmarginiii {1.87em}\r
+\setlength\leftmarginiv  {1.7em}\r
+\if@twocolumn\r
+  \setlength\leftmarginv  {.5em}\r
+  \setlength\leftmarginvi {.5em}\r
+\else\r
+  \setlength\leftmarginv  {1em}\r
+  \setlength\leftmarginvi {1em}\r
+\fi\r
+\setlength  \labelsep  {.5em}\r
+\setlength  \labelwidth{\leftmargini}\r
+\addtolength\labelwidth{-\labelsep}\r
+\@beginparpenalty -\@lowpenalty\r
+\@endparpenalty   -\@lowpenalty\r
+\@itempenalty     -\@lowpenalty\r
+\renewcommand\theenumi{\@arabic\c@enumi}\r
+\renewcommand\theenumii{\@alph\c@enumii}\r
+\renewcommand\theenumiii{\@roman\c@enumiii}\r
+\renewcommand\theenumiv{\@Alph\c@enumiv}\r
+\newcommand\labelenumi{\theenumi.}\r
+\newcommand\labelenumii{(\theenumii)}\r
+\newcommand\labelenumiii{\theenumiii.}\r
+\newcommand\labelenumiv{\theenumiv.}\r
+\renewcommand\p@enumii{\theenumi}\r
+\renewcommand\p@enumiii{\theenumi(\theenumii)}\r
+\renewcommand\p@enumiv{\p@enumiii\theenumiii}\r
+\newcommand\labelitemi{\textbullet}\r
+\newcommand\labelitemii{\normalfont\bfseries \textendash}\r
+\newcommand\labelitemiii{\textasteriskcentered}\r
+\newcommand\labelitemiv{\textperiodcentered}\r
+\newenvironment{description}\r
+               {\list{}{\labelwidth\z@ \itemindent-\leftmargin\r
+                        \let\makelabel\descriptionlabel}}\r
+               {\endlist}\r
+\newcommand*\descriptionlabel[1]{\hspace\labelsep\r
+                                \normalfont\bfseries #1}\r
+\newenvironment{verse}\r
+               {\let\\\@centercr\r
+                \list{}{\itemsep      \z@\r
+                        \itemindent   -1.5em%\r
+                        \listparindent\itemindent\r
+                        \rightmargin  \leftmargin\r
+                        \advance\leftmargin 1.5em}%\r
+                \item\relax}\r
+               {\endlist}\r
+\newenvironment{quotation}\r
+               {\list{}{\listparindent 1.5em%\r
+                        \itemindent    \listparindent\r
+                        \rightmargin   \leftmargin\r
+                        \parsep        \z@ \@plus\p@}%\r
+                \item\relax}\r
+               {\endlist}\r
+\newenvironment{quote}\r
+               {\list{}{\NINE\rightmargin 14pt\leftmargin 14pt}%\r
+                \item\relax}\r
+               {\endlist}\r
+\if@compatibility\r
+\newenvironment{titlepage}\r
+    {%\r
+      \if@twocolumn\r
+        \@restonecoltrue\onecolumn\r
+      \else\r
+        \@restonecolfalse\newpage\r
+      \fi\r
+      \thispagestyle{empty}%\r
+      \setcounter{page}\z@\r
+    }%\r
+    {\if@restonecol\twocolumn \else \newpage \fi\r
+    }\r
+\else\r
+\newenvironment{titlepage}\r
+    {%\r
+      \if@twocolumn\r
+        \@restonecoltrue\onecolumn\r
+      \else\r
+        \@restonecolfalse\newpage\r
+      \fi\r
+      \thispagestyle{empty}%\r
+      \setcounter{page}\@ne\r
+    }%\r
+    {\if@restonecol\twocolumn \else \newpage \fi\r
+     \if@twoside\else\r
+        \setcounter{page}\@ne\r
+     \fi\r
+    }\r
+\fi\r
+\newcommand\appendix{\par\r
+  \setcounter{section}{0}%\r
+  \setcounter{subsection}{0}%\r
+  \renewcommand\thesection{\@Alph\c@section}}\r
+\setlength\arraycolsep{1\p@}\r
+\setlength\tabcolsep{6\p@}\r
+\setlength\arrayrulewidth{.4\p@}\r
+\setlength\doublerulesep{2\p@}\r
+\setlength\tabbingsep{\labelsep}\r
+\skip\@mpfootins = \skip\footins\r
+\setlength\fboxsep{3\p@}\r
+\setlength\fboxrule{.4\p@}\r
+\newdimen\mathindent\r
+\mathindent=9pt\r
+\renewcommand \theequation {\@arabic\c@equation}\r
+\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%EQUATIONS\r
+% They are indented from left 2 picas and have on the right eqno as "[23]"\r
+%\def\EQtrivlist{\parskip0pt\topsep=10pt plus 5pt minus 6pt\r
+%   \parsep0pt\partopsep0pt\@nmbrlistfalse\r
+%   \@trivlist \labelwidth\z@ \leftmargin\z@\listparindent\z@\r
+%   \itemindent\z@ \def\makelabel##1{##1}}%\r
+%\def\endEQtrivlist{\if@newlist\@noitemerr\fi\r
+%   \if@inlabel\indent\fi\r
+%   \ifhmode\unskip \par\fi\r
+%   \if@noparlist \else\r
+%      \ifdim\lastskip >\z@ \@tempskipa\lastskip \vskip -\lastskip\r
+%         \advance\@tempskipa\parskip \advance\@tempskipa -\@outerparskip\r
+%         \vskip\@tempskipa\r
+%   \fi\@endparenv\fi}%\r
+%\r
+%%%%%%%%%%%%%%%%%%%%%%-B-fleqn.sty-(modified)\r
+\def\[{\relax\ifmmode\@badmath\else\r
+       \begin{trivlist}%\r
+ \@beginparpenalty\predisplaypenalty\r
+  \@endparpenalty\postdisplaypenalty\r
+  \item[]\leavevmode\r
+  \hbox to\linewidth\bgroup $\m@th\displaystyle\r
+  \hskip\mathindent\bgroup\fi}\r
+\r
+\def\]{\relax\ifmmode \egroup $\hfil\displaywidth\linewidth\r
+  \egroup \end{trivlist}\else \@badmath \fi\noindent\ignorespaces}\r
+\r
+\def\equation{\@beginparpenalty\predisplaypenalty\r
+  \@endparpenalty\postdisplaypenalty\r
+  \refstepcounter{equation}\trivlist \item[]\leavevmode\r
+  \hbox to\linewidth\bgroup $\m@th\displaystyle\hskip\mathindent}\r
+\r
+\def\endequation{$\hfil\displaywidth\linewidth\@eqnnum\egroup\endtrivlist}\r
+\r
+\def\VVV{\@beginparpenalty\predisplaypenalty\r
+  \@endparpenalty\postdisplaypenalty\r
+  \EQtrivlist \item[]\leavevmode\r
+  \hbox to\linewidth\bgroup $\m@th\displaystyle\hskip\mathindent}\r
+\r
+\def\endVVV{$\hfil\displaywidth\linewidth\egroup\endEQtrivlist}\r
+\r
+\def\eqnarray{\stepcounter{equation}\let\@currentlabel=\theequation\r
+  \global\@eqnswtrue\r
+  \global\@eqcnt\z@\tabskip\mathindent\let\\=\@eqncr\r
+  \abovedisplayskip 12pt plus 5pt minus 5pt\r
+  \belowdisplayskip\abovedisplayskip\r
+  \belowdisplayshortskip\abovedisplayskip\r
+  \abovedisplayshortskip\abovedisplayskip\r
+  $$\m@th\halign to\linewidth\bgroup\@eqnsel\r
+  \hskip\@centering\r
+  $\displaystyle\tabskip\z@\r
+  {##}$&\global\@eqcnt\@ne \hfil$\displaystyle{{}##{}}$\hfil\r
+  &\global\@eqcnt\tw@ $\displaystyle{##}$\hfil\r
+   \tabskip\@centering&\llap{##}\tabskip\z@\cr}\r
+\r
+\def\endeqnarray{\@@eqncr\egroup\r
+      \global\advance\c@equation\m@ne$$\global\@ignoretrue}\r
+\r
+\newdimen\mathindent\r
+\mathindent=9pt %%% \leftmargini\r
+\r
+%%%%%%%%%%%%%%%%%%%%-E-fleqn.sty-(modified)\r
+\r
+\r
+\newcounter{figure}\r
+\renewcommand \thefigure {\@arabic\c@figure}\r
+\def\fps@figure{tbp}\r
+\def\ftype@figure{1}\r
+\def\ext@figure{lof}\r
+\def\fnum@figure{\bf\figurename~\thefigure}\r
+\newenvironment{figure}\r
+               {\@float{figure}}\r
+               {\end@float}\r
+\newenvironment{figure*}\r
+               {\@dblfloat{figure}}\r
+               {\end@dblfloat}\r
+\newcounter{table}\r
+\renewcommand\thetable{\@arabic\c@table}\r
+\def\fps@table{tbp}\r
+\def\ftype@table{2}\r
+\def\ext@table{lot}\r
+\def\fnum@table{\bf\tablename~\thetable}\r
+\newenvironment{table}\r
+               {\@float{table}}\r
+               {\end@float}\r
+\newenvironment{table*}\r
+               {\@dblfloat{table}}\r
+               {\end@dblfloat}\r
+\newlength\abovecaptionskip\r
+\newlength\belowcaptionskip\r
+\setlength\abovecaptionskip{10\p@}\r
+\setlength\belowcaptionskip{0\p@}\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\@makecaption!!!\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%ragu\r
+%\long\def\@makecaption#1#2{\parindent0pt\r
+%\ifx\@captype\@tabtxt\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%TABLE\r
+%\NINE\r
+%\par\noindent\hbox to\textwidth{\hfil\parbox{\tabw}{\noindent %\r
+%   {\tabnamefont #1.}\quad\hangindent3.3pc #2\HD{0}{18}\endgraf}\hfil}\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\r
+%\else %% if it is a figure!\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%FIGURE\r
+%\NINE\r
+%\par\noindent{\fignamefont #1\HD{7}{0}}\quad\r
+%\hangindent3.2pc\raggedright #2\vspace{6pt} \fi}\r
+\r
+\long\def\@makecaption#1#2{\parindent0pt\r
+\ifx\@captype\@tabtxt\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%TABLE\r
+\NINE\r
+\par\noindent\hbox to\textwidth{\hfil\parbox{\tabw}{\noindent %\r
+   {\tabnamefont #1.}\quad\raggedright\hangindent3.3pc #2\HD{0}{18}\endgraf}\hfil}\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\r
+\else %% if it is a figure!\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%FIGURE\r
+\NINE\par\noindent{\fignamefont #1\HD{7}{0}}\quad\r
+\hangindent3.29pc\raggedright #2\vspace{6pt} \fi}\r
+\r
+\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}\r
+\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}\r
+\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}\r
+\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}\r
+\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}\r
+\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}\r
+\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}\r
+\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}\r
+\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}\r
+\newcommand\@pnumwidth{1.55em}\r
+\newcommand\@tocrmarg{2.55em}\r
+\newcommand\@dotsep{4.5}\r
+\setcounter{tocdepth}{3}\r
+\newcommand\tableofcontents{%\r
+    \section*{\contentsname\r
+        \@mkboth{%\r
+           \MakeUppercase\contentsname}{\MakeUppercase\contentsname}}%\r
+    \@starttoc{toc}%\r
+    }\r
+\newcommand*\l@part[2]{%\r
+  \ifnum \c@tocdepth >-2\relax\r
+    \addpenalty\@secpenalty\r
+    \addvspace{2.25em \@plus\p@}%\r
+    \begingroup\r
+      \parindent \z@ \rightskip \@pnumwidth\r
+      \parfillskip -\@pnumwidth\r
+      {\leavevmode\r
+       \large \bfseries #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par\r
+       \nobreak\r
+       \if@compatibility\r
+         \global\@nobreaktrue\r
+         \everypar{\global\@nobreakfalse\everypar{}}%\r
+      \fi\r
+    \endgroup\r
+  \fi}\r
+\newcommand*\l@section[2]{%\r
+  \ifnum \c@tocdepth >\z@\r
+    \addpenalty\@secpenalty\r
+    \addvspace{1.0em \@plus\p@}%\r
+    \setlength\@tempdima{1.5em}%\r
+    \begingroup\r
+      \parindent \z@ \rightskip \@pnumwidth\r
+      \parfillskip -\@pnumwidth\r
+      \leavevmode \bfseries\r
+      \advance\leftskip\@tempdima\r
+      \hskip -\leftskip\r
+      #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par\r
+    \endgroup\r
+  \fi}\r
+\newcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.3em}}\r
+\newcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}\r
+\newcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{4.1em}}\r
+\newcommand*\l@subparagraph{\@dottedtocline{5}{10em}{5em}}\r
+\newcommand\listoffigures{%\r
+    \section*{\listfigurename\r
+      \@mkboth{\MakeUppercase\listfigurename}%\r
+              {\MakeUppercase\listfigurename}}%\r
+    \@starttoc{lof}%\r
+    }\r
+\newcommand*\l@figure{\@dottedtocline{1}{1.5em}{2.3em}}\r
+\newcommand\listoftables{%\r
+    \section*{\listtablename\r
+      \@mkboth{%\r
+          \MakeUppercase\listtablename}{\MakeUppercase\listtablename}}%\r
+    \@starttoc{lot}%\r
+    }\r
+\let\l@table\l@figure\r
+\r
+\newenvironment{NLh}[1]{%\r
+ \setbox\boxH=\hbox{{\rm #1}}%\r
+ \raggedright\r
+ \begin{list}{\rm{\arabic{enumii}.}}{%\r
+ \usecounter{enumii}%\r
+ \topsep=10pt plus .5pt minus .5pt%\r
+ \partopsep=0pt%\r
+ \itemsep=6pt%\r
+ \parsep=0pt%\r
+ \labelsep=14pt%\r
+ \labelwidth=\wd\boxH%\r
+ \leftmargin=\labelwidth%\r
+ \advance\leftmargin\labelsep%\r
+ \rightmargin=0pt%\r
+ \listparindent=0em%\r
+ \itemindent 0pt\ignorespaces}\mathindent=0pt}{\end{list}}%\r
+\r
+\def\LM{\leavevmode }\r
+\newenvironment{BL}{%\r
+ \begin{list}{\LM\hbox{$\bullet$}}{%\r
+\raggedright\r
+ \topsep=10pt plus 4pt minus 4pt\r
+ \partopsep=0pt\r
+ \itemsep=6pt %2pt\r
+ \parsep=0pt\r
+ \labelsep=14pt\r
+ \labelwidth=10pt\r
+ \rightmargin=0pt\r
+ \listparindent=0pt\r
+ \itemindent=0pt %=\leftmargin\r
+ \leftmargin=20pt}\mathindent=0pt}{\end{list}}%\r
+\r
+\floatsep 16pt plus 4pt minus 4pt\r
+\textfloatsep 16pt plus 4pt minus 4pt\r
+\intextsep 14pt plus 4pt minus 4pt\r
+\@fptop 0pt plus 1fil \@fpsep 8pt plus\r
+2fil \@fpbot 0pt plus 1fil\r
+\r
+\newenvironment{inFig}\r
+{\vskip 14pt\noindent\hskip -0pt}\r
+{\vskip 10pt}\r
+\r
+\newif\if@ttirotate \@ttirotatefalse\r
+\def\ttirotate{\global\@ttirotatetrue}\r
+\def\endttirotate{\global\@ttirotatefalse}\r
+\r
+%------ Figures intro\r
+\newcommand\listfigurename{List of Figures}\r
+\def\thefigure{\arabic{figure}}\r
+\def\fignamefont{\NINE}\r
+\def\tabnamefont{\NINE}\r
+\r
+%------ Tables intro\r
+\newbox\@tempboxb\r
+\newcommand\tablename{Table}\r
+\newcommand\listtablename{List of Tables}\r
+\renewcommand\thetable{\arabic{table}}\r
+\def\fps@table{tbp}\def\ftype@table{2}\def\ext@table{lot}\r
+\def\fnum@table{\tabnamefont\bf\tablename\ \thetable}\r
+\def\table{\let\@makecaption\@tablecaption\@float{table}}\r
+\let\endtable\end@float\r
+\@namedef{table*}{\let\@makecaption\@tablecaption\@dblfloat{table}}\r
+\@namedef{endtable*}{\end@dblfloat}\r
+\r
+\long\def\@tablecaption#1#2{%\r
+% Set TN followed by the caption see the length\r
+  \setbox\@tempboxa\r
+  \hbox{\NINE{\it #1}\quad #2}%\r
+% Set the caption only to examine its existence and length if any\r
+  \setbox\@tempboxb\r
+  \hbox{\NINE#2}%\r
+% If no caption, TN centers with no period after it\r
+  \ifdim\wd\@tempboxb < 3pt\r
+    \begin{Center}\NINE\r
+    \HD{8}{0}{\it #1}\HD{0}{6}\end{Center}\r
+  \else\r
+% If TN+caption shorter than the table\r
+  \ifdim\wd\@tempboxa < \tempdime\r
+    %\begin{Center}\r
+    \NINE \HD{8}{0}{\it #1}\qquad #2\HD{0}{6}%\end{Center}\r
+  \else\r
+% If TN+caption longer than the table\r
+    \noindent\NINE\HD{8}{0}{\bf #1}\quad\r
+    \raggedright\hangindent3.05pc  #2\HD{0}{6}\endgraf\r
+  \fi\fi}\r
+\r
+%------TABLE\r
+\r
+\newbox\boxH\r
+\newbox\boxHrunin\r
+\newbox\temptbox\r
+\newbox\temptboxA\r
+\r
+\newdimen\tempdime\r
+\newdimen\tempdimeA\r
+\newdimen\rboxh\r
+\newdimen\rboxw\r
+\def\EGT{\footnotesize}\r
+\r
+\newcommand{\TABLE}[3]{%\r
+  \setbox\temptboxA=\hbox{{\NINE#1}}%\r
+  \setbox\temptbox=\hbox{{\EGT#2}}%\r
+  \tempdime\wd\temptbox%\r
+  \tempdimeA\wd\temptboxA%\r
+  \@TABLE{\hangindent3.1pc {#1}\vs{2}}{#2}{#3}{\tempdime}}\r
+\r
+\newcommand{\@TABLE}[4]{%\r
+\long\def\testtabnote{#3}%\r
+\long\def\itis@empty{}%\r
+\ifx\testtabnote\itis@empty\r
+  \long\def\tabnote##1{\relax}%\r
+\else\r
+  \long\def\tabnote##1{\par{\NINE \vspace*{4pt} ##1\endgraf}}%\r
+\fi\r
+\if@ttirotate\r
+  \setbox4=\hbox to #4 %%\textheight\r
+  {\vbox to \textwidth{\hsize #4 %%%\textheight\r
+  \vss\overfullrule=0pt\r
+  \begin{minipage}[c]{#4}%\r
+    \caption{#1}%\r
+    {\NINE#2}\r
+    \tabnote{\hspace*{3pc}#3}%\r
+  \end{minipage}%\r
+  \vss}}\r
+\else\r
+  \setbox4=\hbox to \hsize{\hss\r
+  % Table should be indented by 2pc\r
+  %  from left margin\r
+  \begin{minipage}[t]{#4}%\r
+    \caption{#1}%\r
+    {\NINE#2}%\r
+    \tabnote{\hspace*{3pc}#3}%\r
+  \end{minipage}\hss}\r
+\fi\r
+\if@ttirotate\r
+  \setbox5=\zeroCC{\box4}%\r
+  \par\noindent\hspace*{0.5\textwidth}%\r
+  \vrule width 0pt height 0.5\textheight depth 0.499\textheight\r
+  \rotatebox{90}{\box5}%\r
+\else\r
+  \noindent\box4%\r
+\fi\r
+}\r
+\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%-b-figures-and-tables\r
+\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%BBB\r
+%%% FIGURES AND TABLES\r
+\r
+\setcounter{topnumber}{3}\r
+\def\topfraction{0.99}\r
+\setcounter{bottomnumber}{2}\r
+\def\bottomfraction{.99}\r
+\setcounter{totalnumber}{5}\r
+\def\textfraction{.08}\r
+\def\floatpagefraction{.55}\r
+\setcounter{dbltopnumber}{3}\r
+\def\dbltopfraction{.9}\r
+\def\dblfloatpagefraction{.5}\r
+\r
+% FIGURE\r
+\r
+\def\fps@figure{tbp}\r
+\def\ftype@figure{1}\r
+\def\ext@figure{lof}\r
+%\def\fnum@figure{\bf Figure\ \thefigure}\r
+\def\figure{\@float{figure}}\r
+\let\endfigure\end@float\r
+\@namedef{figure*}{\@dblfloat{figure}}\r
+\@namedef{endfigure*}{\end@dblfloat}\r
+\r
+\newenvironment{theindex}\r
+               {\if@twocolumn\r
+                  \@restonecolfalse\r
+                \else\r
+                  \@restonecoltrue\r
+                \fi\r
+                \columnseprule \z@\r
+                \columnsep 35\p@\r
+                \twocolumn[\section*{\indexname}]%\r
+                \@mkboth{\MakeUppercase\indexname}%\r
+                        {\MakeUppercase\indexname}%\r
+                \thispagestyle{plain}\parindent\z@\r
+                \parskip\z@ \@plus .3\p@\relax\r
+                \let\item\@idxitem}\r
+               {\if@restonecol\onecolumn\else\clearpage\fi}\r
+\newcommand\@idxitem{\par\hangindent 40\p@}\r
+\newcommand\subitem{\@idxitem \hspace*{20\p@}}\r
+\newcommand\subsubitem{\@idxitem \hspace*{30\p@}}\r
+\newcommand\indexspace{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax}\r
+\renewcommand\footnoterule{%\r
+  \kern-3\p@\r
+  \hrule\@width.4\columnwidth\r
+  \kern2.6\p@}\r
+\newcommand\@makefntext[1]{%\r
+    \parindent 1em%\r
+    \noindent\r
+    \hb@xt@1.8em{\hss\@makefnmark}#1}\r
+\r
+\renewcommand{\footnote}{\endnote}\r
+\def\enotesize{\NINE}\r
+\r
+\newcommand\contentsname{Contents}\r
+\newcommand\refname{References}\r
+\newcommand\indexname{Index}\r
+\newcommand\figurename{Figure}\r
+\newcommand\partname{Part}\r
+\newcommand\appendixname{Appendix}\r
+\def\p#1{\phantom{#1}}\r
+\def\vvp{\vadjust{\vfill\pagebreak}}\r
+\def\vvsp#1{\vadjust{\vspace{#1pt}\pagebreak}}\r
+\def\vvSP#1{\HD{0}{#1}\pagebreak}\r
+\def\tra#1{\spaceskip 0.#1em plus 0.15em minus 0.09em\relax}%\r
+\def\vs#1{\vadjust{\vspace{#1pt}}}\r
+\def\mathtight{\r
+\thickmuskip2mu \thinmuskip1mu \medmuskip=1.5mu\relax}\r
+\r
+%\font\bb=qp3tir at 10pt\r
+%\def\sst{\mbox{\bb\char"019}}\r
+%\def\aet{\mbox{\bb\char"01A}}\r
+%\def\oet{\mbox{\bb\char"01B}}\r
+%\def\oot{\mbox{\bb\char"01C}}\r
+%\def\AEt{\mbox{\bb\char"01D}}\r
+%\def\OEt{\mbox{\bb\char"01E}}\r
+%\def\OOt{\mbox{\bb\char"01F}}\r
+%\r
+%\font\bs=qp3tir at 9pt\r
+%\def\ssr{\mbox{\bs\char"019}}\r
+%\def\aer{\mbox{\bs\char"01A}}\r
+%\def\oer{\mbox{\bs\char"01B}}\r
+%\def\oor{\mbox{\bs\char"01C}}\r
+%\def\AEr{\mbox{\bs\char"01D}}\r
+%\def\OEr{\mbox{\bs\char"01E}}\r
+%\def\OOr{\mbox{\bs\char"01F}}\r
+%\r
+%\font\gs=r1-tii at 10pt\r
+%\def\UPalpha{\mbox{\gs\char"0C1}}\r
+%\def\UPbeta{\mbox{\gs\char"0C2}}\r
+%\def\UPgamma{\mbox{\gs\char"0C3}}\r
+%\def\UPdelta{\mbox{\gs\char"0C4}}\r
+%\def\UPepsilon{\mbox{\gs\char"0C5}}\r
+%\def\UPzeta{\mbox{\gs\char"0C6}}\r
+%\def\UPeta{\mbox{\gs\char"0C7}}\r
+%\def\UPtheta{\mbox{\gs\char"0C8}}\r
+%\def\UPiota{\mbox{\gs\char"0C9}}\r
+%\def\UPkappa{\mbox{\gs\char"0CA}}\r
+%\def\UPlambda{\mbox{\gs\char"0CB}}\r
+%\def\UPmu{\mbox{\gs\char"0CC}}\r
+%\def\UPnu{\mbox{\gs\char"0CD}}\r
+%\def\UPxi{\mbox{\gs\char"0CE}}\r
+%\def\UPpi{\mbox{\gs\char"0CF}}\r
+%\def\UPrho{\mbox{\gs\char"0D0}}\r
+%\def\UPsigma{\mbox{\gs\char"0D1}}\r
+%\def\UPtau{\mbox{\gs\char"0D2}}\r
+%\def\UPupsilon{\mbox{\gs\char"0D3}}\r
+%\def\UPphi{\mbox{\gs\char"0D4}}\r
+%\def\UPchi{\mbox{\gs\char"0D5}}\r
+%\def\UPpsi{\mbox{\gs\char"0D6}}\r
+%\def\UPomega{\mbox{\gs\char"0D7}}\r
+\r
+%%For Table rule\r
+\r
+\def\toprule{\noalign{\ifnum0=`}\fi \hrule \@height 2.0pt \hrule\r
+\@height 2pt \@width 0pt \futurelet\@tempa\@xhline}\r
+\r
+\def\midrule{\noalign{\ifnum0=`}\fi \hrule \@height 2pt \@width 0pt\r
+\hrule \@height 0.7pt \hrule \@height 2pt \@width 0pt\r
+\futurelet\@tempa\@xhline}\r
+\r
+\def\botrule{\noalign{\ifnum0=`}\fi \hrule\r
+\@height 2pt \@width 0pt \hrule \@height 2.0pt\r
+\futurelet\@tempa\@xhline}\r
+\r
+\def\hline{\noalign{\ifnum0=`}\fi\hrule \@height .5pt \futurelet\r
+  \reserved@a\@xhline}\r
+\def\@xhline{\ifx\reserved@a\hline\vskip\doublerulesep\r
+  \vskip-0.5pt\fi\ifnum0=`{\fi}}\r
+\r
+% Thick 1 pt table rules\r
+\def\Hline{\noalign{\ifnum0=`}\fi\hrule \@height .7pt \futurelet\r
+  \reserved@a\@xHLINE}\r
+\def\@xHline{\ifx\reserved@a\Hline\vskip0.5pt\vskip\doublerulesep\r
+  \vskip-1pt\fi\ifnum0=`{\fi}}\r
+\r
+% Thick 2 pt table rules\r
+\def\HLINE{\noalign{\ifnum0=`}\fi\hrule \@height 2.0pt \futurelet\r
+  \reserved@a\@xHLINE}\r
+\def\@xHLINE{\ifx\reserved@a\HLINE\vskip1pt\vskip\doublerulesep\r
+  \vskip-1pt\fi\ifnum0=`{\fi}}\r
+\topmargin12pt\r
+\headheight12pt\r
+\headsep 14pt\r
+\topskip=4pt %% \headsep + \topskip s/b here 27pt (17+10)\r
+\footskip 36pt\r
+\textheight=704pt %% = 46 x 12 + 10 = 47 lines of text 10/12\r
+\textwidth=42.5pc\r
+\columnsep 22pt\r
+\columnseprule 0pt\r
+\r
+\def\ps@kumaresh{\let\@mkboth\markboth\r
+  \def\@oddfoot{\setoddFOOT}%\r
+  \def\@evenfoot{\setevenFOOT}%\r
+  \def\@evenhead{{\VRHDW{\headheight}{0pt}{0pt}\CROPMARKS%\r
+  \raisebox{0pt}[\headheight][0pt]{%\r
+%\hspace*{-25pt}    \marginnumbering\hspace*{18pt}\r
+  \begin{tabular}{@{}c@{}}\\[-15pt]%\r
+  \hbox to\r
+  \textwidth{\spaceskip0.41em{%\TEN\thepage\r
+  }\hfill\centerline{%\TEN\it\setLRH\r
+  }}\r
+    \end{tabular}\r
+  }}}%\r
+  \def\@oddhead{{\VRHDW{\headheight}{0pt}{0pt}\CROPMARKS%\r
+  \raisebox{0pt}[\headheight][0pt]{%\r
+%\hspace*{-25pt}    \marginnumbering\hspace*{18pt}\r
+    \begin{tabular}{@{}c@{}}\\[-15pt]%\r
+ \hbox to \textwidth{\hfill{%\TEN\it\spaceskip0.41em\setRRH\r
+ }\hfill{%\TEN\thepage\r
+ }}\r
+    \end{tabular}\r
+  }}}%\r
+  \def\sectionmark##1{}%\r
+  \def\subsectionmark##1{}}\r
+\r
+\newcommand{\querypage}[1]{\def\testquerypage{#1}%\r
+\newpage\thispagestyle{kumaresh}%\r
+\begin{center}\r
+\HD{5}{0}\fontsize{14}{16}\selectfont\bf\MakeUppercase\@title\HD{3}{30}\par\r
+{\TEN \setLRH}\vskip1pc\par\r
+{\TEN Author Queries}\r
+\vskip1pc\r
+\end{center}\r
+\hangindent3.7pc\Q}\r
+\r
+\def\Q#1{\noindent \hangindent3.7pc\h{AQ#1 Au:}}\r
+\r
+\def\mgpl#1{\marginpar{{\hspace*{-1.8pc}}\EGT #1}}\r
+\def\mgpr#1{\marginpar{{\hspace*{.8pc}\EGT #1}}}\r
+\r
+\r
+%\def\mgp#1{\marginpar{\kern-6pt{\EGT #1}}}\r
+\def\x{\end{document}}\r
+\def\h{\hbox}\r
+\def\p#1{\phantom{#1}}\r
+\def\vvp{\vadjust{\vfill\pagebreak}}\r
+\def\vvsp#1{\vadjust{\vspace{#1pt}\pagebreak}}\r
+\def\vvSP#1{\HD{0}{#1}\pagebreak}\r
+\def\tra#1{\spaceskip 0.#1em plus 0.15em minus 0.09em\relax}%\r
+\def\vs#1{\vadjust{\vspace{#1pt}}}\r
+\def\mathtight{\r
+\thickmuskip2mu \thinmuskip1mu \medmuskip=1.5mu\relax}\r
+\r
+\def\today{\ifcase\month\or\r
+  January\or February\or March\or April\or May\or June\or\r
+  July\or August\or September\or October\or November\or December\fi\r
+  \space\number\day, \number\year}\r
+\setlength\columnsep{22\p@}\r
+\setlength\columnseprule{0\p@}\r
+\setlength\parindent{14\p@}\r
+\pagestyle{headings}\r
+\r
+\clubpenalty 10000 \widowpenalty 10000 \predisplaypenalty=10000\r
+\interdisplaylinepenalty=100 \displaywidowpenalty 1500\r
+\postdisplaypenalty 0 %%%500\r
+\interlinepenalty 0\r
+\brokenpenalty 500 % Plain default = 100\r
+\adjdemerits=100 % Plain default = 10000\r
+\linepenalty=10 \doublehyphendemerits=10000 \finalhyphendemerits=5000\r
+\hyphenpenalty=10 \exhyphenpenalty=50\r
+\binoppenalty=150 % 700\r
+\relpenalty=100 % 500\r
+\interfootnotelinepenalty=100\r
+%\nulldelimiterspace=1.2pt\r
+\lefthyphenmin=15\r
+\righthyphenmin=15\r
+\tolerance=9999\r
+\emergencystretch=1.6pc\r
+\frenchspacing\r
+\r
+\thinmuskip=3mu\r
+\medmuskip=4mu% plus 1mu minus 1mu\r
+\thickmuskip=5mu% plus 3mu\r
+\def\enotesize{\NINE}\r
+\r
+\pagenumbering{arabic}\r
+\if@twoside\r
+\else\r
+  \raggedbottom\r
+\fi\r
+\if@twocolumn\r
+  \twocolumn\r
+  \sloppy\r
+  \flushbottom\r
+\else\r
+  \onecolumn\r
+\fi\r
+\endinput\r
+%%\r
+%% End of file `doublecol.cls'.\r
diff --git a/IJHPCN/nb_iter_sec_ex15_juqueen.pdf b/IJHPCN/nb_iter_sec_ex15_juqueen.pdf
new file mode 100644 (file)
index 0000000..748cda4
Binary files /dev/null and b/IJHPCN/nb_iter_sec_ex15_juqueen.pdf differ
diff --git a/IJHPCN/nb_iter_sec_ex54_curie.pdf b/IJHPCN/nb_iter_sec_ex54_curie.pdf
new file mode 100644 (file)
index 0000000..d588709
Binary files /dev/null and b/IJHPCN/nb_iter_sec_ex54_curie.pdf differ
diff --git a/IJHPCN/paper.tex b/IJHPCN/paper.tex
new file mode 100644 (file)
index 0000000..0c88f29
--- /dev/null
@@ -0,0 +1,860 @@
+%%%%%%%%%%%%%%%%%%%%%%\r
+\documentclass{doublecol-new}\r
+%%%%%%%%%%%%%%%%%%%%%%\r
+\r
+\usepackage{natbib,stfloats}\r
+\usepackage{mathrsfs}\r
+\usepackage[utf8]{inputenc}\r
+\usepackage[T1]{fontenc}\r
+\usepackage{algorithm}\r
+\usepackage{algpseudocode}\r
+\usepackage{amsmath}\r
+\usepackage{amssymb}\r
+\usepackage{multirow}\r
+\usepackage{graphicx}\r
+\usepackage{url}\r
+\r
+\def\newblock{\hskip .11em plus .33em minus .07em}\r
+\r
+\theoremstyle{TH}{\r
+\newtheorem{lemma}{Lemma}\r
+\newtheorem{theorem}[lemma]{Theorem}\r
+\newtheorem{corrolary}[lemma]{Corrolary}\r
+\newtheorem{conjecture}[lemma]{Conjecture}\r
+\newtheorem{proposition}[lemma]{Proposition}\r
+\newtheorem{claim}[lemma]{Claim}\r
+\newtheorem{stheorem}[lemma]{Wrong Theorem}\r
+%\newtheorem{algorithm}{Algorithm}\r
+}\r
+\r
+\theoremstyle{THrm}{\r
+\newtheorem{definition}{Definition}[section]\r
+\newtheorem{question}{Question}[section]\r
+\newtheorem{remark}{Remark}\r
+\newtheorem{scheme}{Scheme}\r
+}\r
+\r
+\theoremstyle{THhit}{\r
+\newtheorem{case}{Case}[section]\r
+}\r
+\algnewcommand\algorithmicinput{\textbf{Input:}}\r
+\algnewcommand\Input{\item[\algorithmicinput]}\r
+\r
+\algnewcommand\algorithmicoutput{\textbf{Output:}}\r
+\algnewcommand\Output{\item[\algorithmicoutput]}\r
+\r
+\r
+\r
+\r
+\makeatletter\r
+\def\theequation{\arabic{equation}}\r
+\r
+%\JOURNALNAME{\TEN{\it Int. J. System Control and Information\r
+%Processing,\r
+%Vol. \theVOL, No. \theISSUE, \thePUBYEAR\hfill\thepage}}%\r
+%\r
+%\def\BottomCatch{%\r
+%\vskip -10pt\r
+%\thispagestyle{empty}%\r
+%\begin{table}[b]%\r
+%\NINE\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}lcr@{}}%\r
+%\\[-12pt]\r
+%Copyright \copyright\ 2012 Inderscience Enterprises Ltd. & &%\r
+%\end{tabular*}%\r
+%\vskip -30pt%\r
+%%%\vskip -35pt%\r
+%\end{table}%\r
+%}\r
+\makeatother\r
+\r
+%%%%%%%%%%%%%%%%%\r
+\begin{document}%\r
+%%%%%%%%%%%%%%%%%\r
+\r
+\setcounter{page}{1}\r
+\r
+\LRH{F. Wang et~al.}\r
+\r
+\RRH{Metadata Based Management and Sharing of Distributed Biomedical\r
+Data}\r
+\r
+\VOL{x}\r
+\r
+\ISSUE{x}\r
+\r
+\PUBYEAR{xxxx}\r
+\r
+\BottomCatch\r
+\r
+\PUBYEAR{2012}\r
+\r
+\subtitle{}\r
+\r
+\title{TSIRM: A Two-Stage Iteration with least-squares Residual Minimization algorithm to solve large sparse linear and non linear systems}\r
+\r
+%\r
+\authorA{Rapha\"el Couturier}\r
+%\r
+\affA{Femto-ST Institute, University of Bourgogne Franche-Comte, France\\\r
+  E-mail: raphael.couturier@univ-fcomte.fr}\r
+%\r
+%\r
+\authorB{Lilia Ziane Khodja}\r
+\affB{LTAS-Mécanique numérique non linéaire, University of Liege, Belgium \\\r
+   E-mail: l.zianekhodja@ulg.ac.be}\r
+\r
+\authorC{Christophe Guyeux}\r
+\affC{Femto-ST Institute, University of Bourgogne Franche-Comte, France\\\r
+  E-mail: christophe.guyeux@univ-fcomte.fr}\r
+\r
+\r
+\begin{abstract}\r
+In  this article, a  two-stage iterative  algorithm is  proposed to  improve the\r
+convergence  of  Krylov  based  iterative  methods,  typically  those  of  GMRES\r
+variants.  The  principle of  the  proposed approach  is  to  build an  external\r
+iteration over the  Krylov method, and to frequently  store its current residual\r
+(at each GMRES restart for instance).  After a given number of outer iterations,\r
+a least-squares minimization step is applied on the matrix composed by the saved\r
+residuals, in order  to compute a better solution and to  make new iterations if\r
+required.  It  is proven that the  proposal has the  same convergence properties\r
+than the  inner embedded  method itself.  Experiments  using up to  16,394 cores\r
+also  show that the  proposed algorithm  runs around  5 or  7 times  faster than\r
+GMRES.\r
+\end{abstract}\r
+\r
+\KEYWORD{Iterative Krylov methods; sparse linear and non linear systems; two stage iteration; least-squares residual minimization; PETSc.}\r
+\r
+%\REF{to this paper should be made as follows: Rodr\'{\i}guez\r
+%Bol\'{\i}var, M.P. and Sen\'{e}s Garc\'{\i}a, B. (xxxx) `The\r
+%corporate environmental disclosures on the internet: the case of\r
+%IBEX 35 Spanish companies', {\it International Journal of Metadata,\r
+%Semantics and Ontologies}, Vol. x, No. x, pp.xxx\textendash xxx.}\r
+\r
+\begin{bio}\r
+Manuel Pedro Rodr\'iguez Bol\'ivar received his PhD in Accounting at\r
+the University of Granada. He is a Lecturer at the Department of\r
+Accounting and Finance, University of Granada. His research\r
+interests include issues related to conceptual frameworks of\r
+accounting, diffusion of financial information on Internet, Balanced\r
+Scorecard applications and environmental accounting. He is author of\r
+a great deal of research studies published at national and\r
+international journals, conference proceedings as well as book\r
+chapters, one of which has been edited by Kluwer Academic\r
+Publishers.\vs{9}\r
+\r
+\noindent Bel\'en Sen\'es Garc\'ia received her PhD in Accounting at\r
+the University of Granada. She is a Lecturer at the Department of\r
+Accounting and Finance, University of Granada. Her research\r
+interests are related to cultural, institutional and historic\r
+accounting and in environmental accounting. She has published\r
+research papers at national and international journals, conference\r
+proceedings as well as chapters of books.\vs{8}\r
+\r
+\noindent Both authors have published a book about environmental\r
+accounting edited by the Institute of Accounting and Auditing,\r
+Ministry of Economic Affairs, in Spain in October 2003.\r
+\end{bio}\r
+\r
+\r
+\maketitle\r
+\r
+\r
+ \section{Introduction}\r
+\r
+Iterative methods have recently become more attractive than direct ones to solve\r
+very large sparse  linear systems~\cite{Saad2003}.  They are more  efficient in a\r
+parallel context,  supporting thousands of  cores, and they require  less memory\r
+and  arithmetic operations than  direct methods~\cite{bahicontascoutu}.  This is\r
+why new iterative methods are frequently proposed or adapted by researchers, and\r
+the increasing need to solve very  large sparse linear systems has triggered the\r
+development  of  such  efficient  iterative  techniques  suitable  for  parallel\r
+processing.\r
+\r
+Most  of the  successful  iterative  methods currently  available  are based  on\r
+so-called ``Krylov  subspaces''. They consist  in forming a basis  of successive\r
+matrix powers  multiplied by an  initial vector, which  can be for  instance the\r
+residual. These methods  use vectors orthogonality of the  Krylov subspace basis\r
+in  order to solve  linear systems.   The best  known iterative  Krylov subspace\r
+methods are conjugate gradient and GMRES ones (Generalized Minimal RESidual).\r
+\r
+\r
+However,  iterative  methods  suffer   from  scalability  problems  on  parallel\r
+computing  platforms  with many  processors,  due  to  their need  of  reduction\r
+operations,   and  to   collective  communications   to   achieve  matrix-vector\r
+multiplications. The  communications on large  clusters with thousands  of cores\r
+and large sizes  of messages can significantly affect  the performances of these\r
+iterative methods. As a consequence, Krylov subspace iteration methods are often\r
+used  with  preconditioners  in  practice,  to increase  their  convergence  and\r
+accelerate their  performances.  However, most  of the good  preconditioners are\r
+not scalable on large clusters.\r
+\r
+In  this research work,  a two-stage  algorithm based  on two  nested iterations\r
+called inner-outer  iterations is proposed.  This algorithm  consists in solving\r
+the sparse  linear system iteratively with  a small number  of inner iterations,\r
+and  restarting  the  outer step  with  a  new  solution minimizing  some  error\r
+functions  over some previous  residuals. For  further information  on two-stage\r
+iteration      methods,     interested      readers      are     invited      to\r
+consult~\cite{Nichols:1973:CTS}. Two-stage algorithms are easy to parallelize on\r
+large clusters.  Furthermore,  the least-squares minimization technique improves\r
+its convergence and performances.\r
+\r
+The present  article is  organized as follows.   Related works are  presented in\r
+Section~\ref{sec:02}. Section~\ref{sec:03} details the two-stage algorithm using\r
+a  least-squares  residual   minimization,  while  Section~\ref{sec:04}  provides\r
+convergence  results  regarding this  method.   Section~\ref{sec:05} shows  some\r
+experimental  results  obtained  on  large  clusters  using  routines  of  PETSc\r
+toolkit. This research work ends by  a conclusion section, in which the proposal\r
+is summarized while intended perspectives are provided.\r
+\r
+\r
+\r
+%%%*********************************************************\r
+%%%*********************************************************\r
+\r
+\r
+\r
+%%%*********************************************************\r
+%%%*********************************************************\r
+\section{Related works}\r
+\label{sec:02} \r
+Krylov subspace iteration methods have increasingly become key\r
+techniques  for  solving  linear and nonlinear systems,  or  eigenvalue  problems,\r
+especially      since       the      increasing      development       of      \r
+preconditioners~\cite{Saad2003,Meijerink77}.  One reason  for  the popularity  of\r
+these methods is their generality, simplicity, and efficiency to solve systems of\r
+equations arising from very large and complex problems.\r
+\r
+GMRES is one of the most  widely used Krylov iterative method for solving sparse\r
+and   large  linear   systems.  It   has   been  developed   by  Saad   \emph{et\r
+  al.}~\cite{Saad86}  as  a generalized  method  to  deal  with unsymmetric  and\r
+non-Hermitian problems,  and indefinite symmetric problems too.  In its original\r
+version  called full  GMRES,  this  algorithm minimizes  the  residual over  the\r
+current Krylov subspace  until convergence in at most  $n$ iterations, where $n$\r
+is the size  of the sparse matrix.   Full GMRES is however too  expensive in the\r
+case  of  large  matrices,  since  the required  orthogonalization  process  per\r
+iteration grows  quadratically with the  number of iterations. For  that reason,\r
+GMRES is  restarted in  practice after  each $m\ll n$  iterations, to  avoid the\r
+storage of a  large orthonormal basis. However, the  convergence behavior of the\r
+restarted GMRES,  called GMRES($m$), in  many cases depends quite  critically on\r
+the  $m$  value~\cite{Huang89}.  Therefore  in  most  cases,  a  preconditioning\r
+technique  is applied  to the  restarted GMRES  method in  order to  improve its\r
+convergence.\r
+\r
+To enhance the robustness of Krylov iterative solvers, some techniques have been\r
+proposed allowing the use of different preconditioners, if necessary, within the\r
+iteration  itself   instead  of  restarting.   Those  techniques   may  lead  to\r
+considerable  savings  in  CPU  time  and memory  requirements.  Van  der  Vorst\r
+in~\cite{Vorst94} has for  instance proposed variants of the  GMRES algorithm in\r
+which a  different preconditioner is applied  in each iteration,  leading to the\r
+so-called  GMRESR  family of  nested  methods.  In  fact,  the  GMRES method  is\r
+effectively preconditioned with other iterative schemes (or GMRES itself), where\r
+the  iterations  of the  GMRES  method are  called  outer  iterations while  the\r
+iterations of  the preconditioning process  is referred to as  inner iterations.\r
+Saad in~\cite{Saad:1993}  has proposed Flexible GMRES (FGMRES)  which is another\r
+variant of the  GMRES algorithm using a variable  preconditioner.  In FGMRES the\r
+search  directions  are  preconditioned  whereas  in GMRESR  the  residuals  are\r
+preconditioned. However,  in practice, good  preconditioners are those  based on\r
+direct methods,  as ILU preconditioners, which  are not easy  to parallelize and\r
+suffer from the scalability problems on large clusters of thousands of cores.\r
+\r
+Recently,  communication-avoiding  methods have  been  developed  to reduce  the\r
+communication overheads in Krylov subspace iterative solvers. On modern computer\r
+architectures,   communications  between   processors  are   much   slower  than\r
+floating-point        arithmetic       operations        on        a       given\r
+processor.   Communication-avoiding  techniques  reduce   either  communications\r
+between processors or data movements  between levels of the memory hierarchy, by\r
+reformulating the communication-bound kernels (more frequently SpMV kernels) and\r
+the orthogonalization  operations within the Krylov  iterative solver. Different\r
+works have  studied the communication-avoiding techniques for  the GMRES method,\r
+so-called     CA-GMRES,     on     multicore    processors     and     multi-GPU\r
+machines~\cite{Mohiyuddin2009,Hoemmen2010,Yamazaki2014}.\r
+\r
+Compared  to all these  works and  to all  the other  works on  Krylov iterative\r
+methods,  the originality of  our work  is to  build a  second iteration  over a\r
+Krylov  iterative method  and to  minimize  the residuals  with a  least-squares\r
+method after a given number of outer iterations.\r
+\r
+%%%*********************************************************\r
+%%%*********************************************************\r
+\r
+\r
+\r
+%%%*********************************************************\r
+%%%*********************************************************\r
+\section{TSIRM: Two-stage iteration with least-squares residuals minimization algorithm}\r
+\label{sec:03}\r
+A two-stage  algorithm is proposed to  solve large sparse linear  systems of the\r
+form  $Ax=b$,  where  $A\in\mathbb{R}^{n\times   n}$  is  a  sparse  and  square\r
+nonsingular   matrix,   $x\in\mathbb{R}^n$   is   the   solution   vector,   and\r
+$b\in\mathbb{R}^n$  is  the  right-hand  side.   As  explained  previously,  the\r
+algorithm is implemented  as an inner-outer iteration solver  based on iterative\r
+Krylov  methods.  The  main key-points  of  the  proposed  solver are  given  in\r
+Algorithm~\ref{algo:01}.  It can be summarized as follows: the inner solver is a\r
+Krylov  based one.  In order  to accelerate  its convergence,  the  outer solver\r
+periodically applies  a least-squares minimization on the  residuals computed by\r
+the inner one.\r
+\r
+At each  outer iteration,  the sparse linear  system $Ax=b$ is  partially solved\r
+using only $m$ iterations of  an iterative method, this latter being initialized\r
+with the last obtained approximation.  The GMRES method~\cite{Saad86}, or any of\r
+its variants, can potentially be used as inner solver. The current approximation\r
+of the Krylov method  is then stored inside a $n \times  s$ matrix $S$, which is\r
+composed by  the $s$  last solutions  that have been  computed during  the inner\r
+iterations phase.   In the remainder,  the $i$-th column  vector of $S$  will be\r
+denoted by $S_i$.\r
+\r
+At each $s$ iterations, another kind of minimization step is applied in order to\r
+compute  a new  solution $x$.  For that,  the previous  residuals of  $Ax=b$ are\r
+computed  by  the  inner  iterations  with $(b-AS)$.  The  minimization  of  the\r
+residuals is obtained by\r
+\begin{equation}\r
+   \underset{\alpha\in\mathbb{R}^{s}}{min}\|b-R\alpha\|_2\r
+\label{eq:01}\r
+\end{equation}\r
+with $R=AS$. The new solution $x$ is then computed with $x=S\alpha$.\r
+\r
+\r
+In practice, $R$ is a dense rectangular matrix belonging in $\mathbb{R}^{n\times\r
+  s}$,  with $s\ll  n$.   In order  to  minimize~\eqref{eq:01}, a  least-squares\r
+method such  as CGLS ~\cite{Hestenes52}  or LSQR~\cite{Paige82} is  used. Remark\r
+that  these methods  are  more appropriate  than  a single  direct  method in  a\r
+parallel context. CGLS has recently been used to improve the performance of multisplitting algorithms \cite{cz15:ij}.\r
+\r
+\r
+\r
+\begin{algorithm}[t]\r
+\caption{TSIRM}\r
+\begin{algorithmic}[1]\r
+  \Input $A$ (sparse matrix), $b$ (right-hand side)\r
+  \Output $x$ (solution vector)\vspace{0.2cm}\r
+  \State Set the initial guess $x_0$\r
+  \For {$k=1,2,3,\ldots$ until convergence ($error<\epsilon_{tsirm}$)} \label{algo:conv}\r
+    \State  $[x_k,error]=Solve(A,b,x_{k-1},max\_iter_{kryl})$   \label{algo:solve}\r
+    \State $S_{k \mod s}=x_k$ \label{algo:store} \Comment{update column ($k \mod s$) of $S$}\r
+    \If {$k \mod s=0$ {\bf and} $error>\epsilon_{kryl}$}\r
+      \State $R=AS$ \Comment{compute dense matrix} \label{algo:matrix_mul}\r
+            \State $\alpha=Least\_Squares(R,b,max\_iter_{ls})$ \label{algo:}\r
+      \State $x_k=S\alpha$  \Comment{compute new solution}\r
+    \EndIf\r
+  \EndFor\r
+\end{algorithmic}\r
+\label{algo:01}\r
+\end{algorithm}\r
+\r
+Algorithm~\ref{algo:01} summarizes  the principle  of the proposed  method.  The\r
+outer iteration is inside the \emph{for} loop. Line~\ref{algo:solve}, the Krylov\r
+method is called  for a maximum of $max\_iter_{kryl}$  iterations.  In practice,\r
+we suggest to  set this parameter equal to the restart  number in the GMRES-like\r
+method. Moreover,  a tolerance  threshold must be  specified for the  solver. In\r
+practice, this threshold must be  much smaller than the convergence threshold of\r
+the TSIRM  algorithm (\emph{i.e.},  $\epsilon_{tsirm}$).  We also  consider that\r
+after  the call of  the $Solve$  function, we  obtain the  vector $x_k$  and the\r
+$error$, which is defined by $||Ax_k-b||_2$.\r
+\r
+  Line~\ref{algo:store},  $S_{k \mod  s}=x_k$ consists  in copying  the solution\r
+  $x_k$ into the  column $k \mod s$ of $S$.  After  the minimization, the matrix\r
+  $S$ is reused with the new values of the residuals.  To solve the minimization\r
+  problem, an  iterative method is used.  Two parameters are  required for that:\r
+  the maximum number of iterations  ($max\_iter_{ls}$) and the threshold to stop\r
+  the method ($\epsilon_{ls}$).\r
+\r
+Let us summarize the most important parameters of TSIRM:\r
+\begin{itemize}\r
+\item $\epsilon_{tsirm}$: the threshold that stops the TSIRM method;\r
+\item $max\_iter_{kryl}$: the maximum number of iterations for the Krylov method;\r
+\item $s$: the number of outer iterations before applying the minimization step;\r
+\item $max\_iter_{ls}$: the maximum number of iterations for the iterative least-squares method;\r
+\item $\epsilon_{ls}$: the threshold used to stop the least-squares method.\r
+\end{itemize}\r
+\r
+\r
+The  parallelization  of  TSIRM  relies   on  the  parallelization  of  all  its\r
+parts. More  precisely, except the least-squares  step, all the  other parts are\r
+obvious to  achieve out in parallel. In  order to develop a  parallel version of\r
+our   code,   we   have   chosen   to   use   PETSc~\cite{petsc-web-page}.    In\r
+line~\ref{algo:matrix_mul}, the matrix-matrix  multiplication is implemented and\r
+efficient since the matrix $A$ is sparse and the matrix $S$ contains few columns\r
+in  practice.  As  explained  previously,  at  least  two  methods  seem  to  be\r
+interesting  to solve  the least-squares  minimization,  the CGLS  and the  LSQR\r
+methods.\r
+\r
+In Algorithm~\ref{algo:02} we remind the CGLS algorithm. The LSQR method follows\r
+more or less the  same principle but it takes more place,  so we briefly explain\r
+the parallelization of CGLS which is  similar to LSQR.\r
+\r
+\begin{algorithm}[t]\r
+\caption{CGLS}\r
+\begin{algorithmic}[1]\r
+  \Input $A$ (matrix), $b$ (right-hand side)\r
+  \Output $x$ (solution vector)\vspace{0.2cm}\r
+  \State Let $x_0$ be an initial approximation\r
+  \State $r_0=b-Ax_0$\r
+  \State $p_1=A^Tr_0$\r
+  \State $s_0=p_1$\r
+  \State $\gamma=||s_0||^2_2$\r
+  \For {$k=1,2,3,\ldots$ until convergence ($\gamma<\epsilon_{ls}$)} \label{algo2:conv}\r
+    \State $q_k=Ap_k$\r
+    \State $\alpha_k=\gamma/||q_k||^2_2$\r
+    \State $x_k=x_{k-1}+\alpha_kp_k$\r
+    \State $r_k=r_{k-1}-\alpha_kq_k$\r
+    \State $s_k=A^Tr_k$\r
+    \State $\gamma_{old}=\gamma$\r
+    \State $\gamma=||s_k||^2_2$\r
+    \State $\beta_k=\gamma/\gamma_{old}$\r
+    \State $p_{k+1}=s_k+\beta_kp_k$\r
+  \EndFor\r
+\end{algorithmic}\r
+\label{algo:02}\r
+\end{algorithm}\r
+\r
+\r
+In each iteration  of CGLS, there are two  matrix-vector multiplications and some\r
+classical  operations:  dot  product,   norm,  multiplication,  and  addition  on\r
+vectors.  All  these  operations are  easy  to  implement  in PETSc  or  similar\r
+environment.  It should be noticed that LSQR follows the same principle, it is a\r
+little bit longer but it performs more or less the same operations.\r
+\r
+\r
+%%%*********************************************************\r
+%%%*********************************************************\r
+\r
+\section{Convergence results}\r
+\label{sec:04}\r
+\r
+\r
+We can now claim that,\r
+\begin{proposition}\r
+\label{prop:saad}\r
+If $A$ is either a definite positive or a positive matrix and GMRES($m$) is used as a solver, then the TSIRM algorithm is convergent. \r
+\r
+Furthermore, let $r_k$ be the\r
+$k$-th residue of TSIRM, then\r
+we have the following boundaries:\r
+\begin{itemize}\r
+\item when $A$ is positive:\r
+\begin{equation}\r
+||r_k|| \leqslant \left(1-\dfrac{\alpha}{\beta}\right)^{\frac{km}{2}} ||r_0|| ,\r
+\end{equation}\r
+where $M$ is the symmetric part of $A$, $\alpha = \lambda_{min}(M)^2$ and $\beta = \lambda_{max}(A^T A)$;\r
+\item when $A$ is positive definite:\r
+\begin{equation}\r
+\|r_k\| \leq \left( 1-\frac{\lambda_{\mathrm{min}}^2(1/2(A^T + A))}{ \lambda_{\mathrm{max}}(A^T A)} \right)^{km/2} \|r_0\|.\r
+\end{equation}\r
+\end{itemize}\r
+%In the general case, where A is not positive definite, we have\r
+%$\|r_n\| \le \inf_{p \in P_n} \|p(A)\| \le \kappa_2(V) \inf_{p \in P_n} \max_{\lambda \in \sigma(A)} |p(\lambda)| \|r_0\|, .$\r
+\end{proposition}\r
+\r
+\begin{proof}\r
+Let us first recall that the residue is under control when considering the GMRES algorithm on a positive definite matrix, and it is bounded as follows:\r
+\begin{equation*}\r
+\|r_k\| \leq \left( 1-\frac{\lambda_{\mathrm{min}}^2(1/2(A^T + A))}{ \lambda_{\mathrm{max}}(A^T A)} \right)^{k/2} \|r_0\| .\r
+\end{equation*}\r
+Additionally, when $A$ is a positive real matrix with symmetric part $M$, then the residual norm provided at the $m$-th step of GMRES satisfies:\r
+\begin{equation*}\r
+||r_m|| \leqslant \left(1-\dfrac{\alpha}{\beta}\right)^{\frac{m}{2}} ||r_0|| ,\r
+\end{equation*}\r
+where $\alpha$ and $\beta$ are defined as in Proposition~\ref{prop:saad}, which proves \r
+the convergence of GMRES($m$) for all $m$ under such assumptions regarding $A$.\r
+These well-known results can be found, \emph{e.g.}, in~\cite{Saad86}.\r
+\r
+We will now prove by a mathematical induction that, for each $k \in \mathbb{N}^\ast$, \r
+$||r_k|| \leqslant \left(1-\dfrac{\alpha}{\beta}\right)^{\frac{mk}{2}} ||r_0||$ when $A$ is positive, and $\|r_k\| \leq \left( 1-\frac{\lambda_{\mathrm{min}}^2(1/2(A^T + A))}{ \lambda_{\mathrm{max}}(A^T A)} \right)^{km/2} \|r_0\|$ when $A$ is positive definite.\r
+\r
+The base case is obvious, as for $k=1$, the TSIRM algorithm simply consists in applying GMRES($m$) once, leading to a new residual $r_1$ that follows the inductive hypothesis due to the results recalled above.\r
+\r
+Suppose now that the claim holds for all $m=1, 2, \hdots, k-1$, that is, $\forall m \in \{1,2,\hdots, k-1\}$, $||r_m|| \leqslant \left(1-\dfrac{\alpha}{\beta}\right)^{\frac{km}{2}} ||r_0||$ in the positive case, and $\|r_k\| \leq \left( 1-\frac{\lambda_{\mathrm{min}}^2(1/2(A^T + A))}{ \lambda_{\mathrm{max}}(A^T A)} \right)^{km/2} \|r_0\|$ in the definite positive one.\r
+We will show that the statement holds too for $r_k$. Two situations can occur:\r
+\begin{itemize}\r
+\item If $k \not\equiv 0 ~(\textrm{mod}\ m)$, then the TSIRM algorithm consists in executing GMRES once. In that case and by using the inductive hypothesis, we obtain either $||r_k|| \leqslant \left(1-\dfrac{\alpha}{\beta}\right)^{\frac{m}{2}} ||r_{k-1}||\leqslant \left(1-\dfrac{\alpha}{\beta}\right)^{\frac{km}{2}} ||r_0||$ if $A$ is positive, or $\|r_k\| \leqslant \left( 1-\frac{\lambda_{\mathrm{min}}^2(1/2(A^T + A))}{ \lambda_{\mathrm{max}}(A^T A)} \right)^{m/2} \|r_{k-1}\|$ $\leqslant$ $\left( 1-\frac{\lambda_{\mathrm{min}}^2(1/2(A^T + A))}{ \lambda_{\mathrm{max}}(A^T A)} \right)^{km/2} \|r_{0}\|$ in the positive definite case.\r
+\item Else, the TSIRM algorithm consists in two stages: a first GMRES($m$) execution leads to a temporary $x_k$ whose residue satisfies:\r
+\begin{itemize}\r
+\item $||r_k|| \leqslant \left(1-\dfrac{\alpha}{\beta}\right)^{\frac{m}{2}} ||r_{k-1}||\leqslant \left(1-\dfrac{\alpha}{\beta}\right)^{\frac{km}{2}} ||r_0||$ in the positive case, \r
+\item $\|r_k\| \leqslant \left( 1-\frac{\lambda_{\mathrm{min}}^2(1/2(A^T + A))}{ \lambda_{\mathrm{max}}(A^T A)} \right)^{m/2} \|r_{k-1}\|$ $\leqslant$ $\left( 1-\frac{\lambda_{\mathrm{min}}^2(1/2(A^T + A))}{ \lambda_{\mathrm{max}}(A^T A)} \right)^{km/2} \|r_{0}\|$ in the positive definite one,\r
+\end{itemize}\r
+and a least squares resolution.\r
+Let $\operatorname{span}(S) = \left \{ {\sum_{i=1}^k \lambda_i v_i \Big| k \in \mathbb{N}, v_i \in S, \lambda _i \in \mathbb{R}} \right \}$ be the linear span of a set of real vectors $S$. So,\\\r
+$\min_{\alpha \in \mathbb{R}^s} ||b-R\alpha ||_2 = \min_{\alpha \in \mathbb{R}^s} ||b-AS\alpha ||_2$\r
+\r
+$\begin{array}{ll}\r
+& = \min_{x \in span\left(S_{k-s+1}, S_{k-s+2}, \hdots, S_{k} \right)} ||b-AS\alpha ||_2\\\r
+& = \min_{x \in span\left(x_{k-s+1}, x_{k-s}+2, \hdots, x_{k} \right)} ||b-AS\alpha ||_2\\\r
+& \leqslant \min_{x \in span\left( x_{k} \right)} ||b-Ax ||_2\\\r
+& \leqslant \min_{\lambda \in \mathbb{R}} ||b-\lambda Ax_{k} ||_2\\\r
+& \leqslant ||b-Ax_{k}||_2\\\r
+& = ||r_k||_2\\\r
+& \leqslant \left(1-\dfrac{\alpha}{\beta}\right)^{\frac{km}{2}} ||r_0||, \textrm{ if $A$ is positive,}\\\r
+& \leqslant \left( 1-\frac{\lambda_{\mathrm{min}}^2(1/2(A^T + A))}{ \lambda_{\mathrm{max}}(A^T A)} \right)^{km/2} \|r_{0}\|, \textrm{ if $A$ is}\\\r
+& \textrm{positive definite,} \r
+\end{array}$\r
+\end{itemize}\r
+which concludes the induction and the proof.\r
+\end{proof}\r
+\r
+Remark that a similar proposition can be formulated at each time\r
+the given solver satisfies an inequality of the form $||r_n|| \leqslant \mu^n ||r_0||$,\r
+with $|\mu|<1$. Furthermore, it is \emph{a priori} possible in some particular cases \r
+regarding $A$, \r
+that the proposed TSIRM converges while the GMRES($m$) does not.\r
+\r
+%%%*********************************************************\r
+%%%*********************************************************\r
+\section{Experiments using PETSc}\r
+\label{sec:05}\r
+\r
+\r
+In order to see the behavior of our approach when considering only one processor,\r
+a  first  comparison  with  GMRES  or  FGMRES and  the  new  algorithm  detailed\r
+previously  has been  experimented.  Matrices  that  have been  used with  their\r
+characteristics (names, fields, rows,  and nonzero coefficients) are detailed in\r
+Table~\ref{tab:01}.  These  latter, which are  real-world applications matrices,\r
+have    been   extracted    from   the    Davis   collection,    University   of\r
+Florida~\cite{Dav97}.\r
+\r
+\begin{table}[htbp]\r
+\begin{center}\r
+\begin{tabular}{|c|c|r|r|r|} \r
+\hline\r
+Matrix name              & Field             &\# Rows   & \# Nonzeros   \\\hline \hline\r
+crashbasis         & Optimization      & 160,000  &  1,750,416  \\\r
+parabolic\_fem     & Comput. fluid dynamics  & 525,825 & 2,100,225 \\\r
+epb3               & Thermal problem   & 84,617  & 463,625  \\\r
+atmosmodj          & Comput. fluid dynamics  & 1,270,432 & 8,814,880 \\\r
+bfwa398            & Electromagnetics pb & 398 & 3,678 \\\r
+torso3             & 2D/3D problem & 259,156 & 4,429,042 \\\r
+\hline\r
+\r
+\end{tabular}\r
+\caption{Main characteristics of the sparse matrices chosen from the Davis collection}\r
+\label{tab:01}\r
+\end{center}\r
+\end{table}\r
+Chosen parameters  are detailed below.   \r
+We have  stopped  the  GMRES every  30\r
+iterations (\emph{i.e.}, $max\_iter_{kryl}=30$), which is the default \r
+setting of GMRES restart parameter.  The parameter $s$ has been set to 8. CGLS \r
+ minimizes  the   least-squares  problem   with  parameters\r
+$\epsilon_{ls}=1e-40$ and $max\_iter_{ls}=20$.  The external precision is set to\r
+$\epsilon_{tsirm}=1e-10$.  These  experiments have been performed  on an Intel(R)\r
+Core(TM) i7-3630QM CPU @ 2.40GHz with the 3.5.1 version  of PETSc.\r
+\r
+\r
+Experiments comparing \r
+a GMRES variant with TSIRM in the resolution of linear systems are given in  Table~\ref{tab:02}. \r
+The  second column describes whether GMRES or FGMRES has been used for linear systems solving.  \r
+Different preconditioners  have been used according to the matrices.  With  TSIRM, the  same\r
+solver and the  same preconditioner are used.  This table  shows that TSIRM can\r
+drastically reduce  the number of iterations needed to reach the  convergence, when the\r
+number of iterations for  the normal GMRES is more or less  greater than 500. In\r
+fact this also depends on two parameters: the number of iterations before stopping GMRES\r
+and the number of iterations to perform the minimization.\r
+\r
+\r
+\begin{table}[htbp]\r
+\begin{center}\r
+\begin{tabular}{|c|c|r|r|r|r|} \r
+\hline\r
+\r
+ \multirow{2}{*}{Matrix name}  & Solver /   & \multicolumn{2}{c|}{GMRES} & \multicolumn{2}{c|}{TSIRM CGLS} \\ \r
+\cline{3-6}\r
+       &  precond             & Time  & \# Iter.  & Time  & \# Iter.  \\\hline \hline\r
+\r
+crashbasis         & gmres / none             &  15.65     & 518  &  14.12 & 450  \\\r
+parabolic\_fem     & gmres / ilu           & 1009.94   & 7573 & 401.52 & 2970 \\\r
+epb3               & fgmres / sor             &  8.67     & 600  &  8.21 & 540  \\\r
+atmosmodj          &  fgmres / sor & 104.23  & 451 & 88.97 & 366  \\\r
+bfwa398            & gmres / none  & 1.42 & 9612 & 0.28 & 1650 \\\r
+torso3             & fgmres / sor  & 37.70 & 565 & 34.97 & 510 \\\r
+\hline\r
+\r
+\end{tabular}\r
+\caption{Comparison between sequential standalone (F)GMRES and TSIRM with (F)GMRES (time in seconds).}\r
+\label{tab:02}\r
+\end{center}\r
+\end{table}\r
+\r
+\r
+\r
+\r
+\r
+In order to perform larger experiments, we have tested some example applications\r
+of  PETSc. These  applications are  available in  the \emph{ksp}  part,  which is\r
+suited for scalable linear equations solvers:\r
+\begin{itemize}\r
+\item ex15  is an example  that solves in  parallel an operator using  a finite\r
+  difference  scheme.   The  diagonal  is  equal to  4  and  4  extra-diagonals\r
+  representing the neighbors in each directions  are equal to -1. This example is\r
+  used  in many  physical phenomena, for  example, heat  and fluid  flow, wave\r
+  propagation, etc.\r
+\item ex54 is another example based on a 2D problem discretized with quadrilateral\r
+  finite elements. In this example, the user can define the scaling of material\r
+  coefficient in embedded circle called $\alpha$.\r
+\end{itemize}\r
+For more technical details on these applications, interested readers are invited\r
+to read  the codes  available in  the PETSc sources.   These problems  have been\r
+chosen because they are scalable with many  cores.\r
+\r
+In  the  following,   larger  experiments  are  described  on   two  large  scale\r
+architectures: Curie  and Juqueen.   Both these architectures  are supercomputers\r
+respectively  composed  of  80,640  cores   for  Curie  and  458,752  cores  for\r
+Juqueen. Those  machines are respectively hosted  by GENCI in  France and Jülich\r
+Supercomputing Center in Germany.  They belong with other similar architectures\r
+to the  PRACE initiative (Partnership  for Advanced Computing  in Europe), which\r
+aims  at  proposing  high  performance supercomputing  architecture  to  enhance\r
+research  in  Europe.  The  Curie  architecture is  composed  of  Intel  E5-2680\r
+processors  at 2.7  GHz with  2Gb memory  by core.  The Juqueen  architecture,\r
+for its part, is\r
+composed by IBM PowerPC  A2 at  1.6 GHz with  1Gb memory  per core.  Both those\r
+architectures are equipped with a dedicated high speed network.\r
+\r
+\r
+In  many situations, using  preconditioners is  essential in  order to  find the\r
+solution of a linear system.  There are many preconditioners available in PETSc.\r
+However, for parallel applications, all  the preconditioners based on matrix factorization\r
+are  not  available. In  our  experiments, we  have  tested  different kinds  of\r
+preconditioners, but  as it is  not the subject  of this paper, we  will not\r
+present results with many preconditioners. In  practice, we have chosen to use a\r
+multigrid (mg)  and successive  over-relaxation (sor). For  further details  on the\r
+preconditioners in PETSc, readers are referred to~\cite{petsc-web-page}.\r
+\r
+\r
+\r
+\begin{table*}[htbp]\r
+\begin{center}\r
+\begin{tabular}{|r|r|r|r|r|r|r|r|r|} \r
+\hline\r
+\r
+  nb. cores & precond   & \multicolumn{2}{c|}{FGMRES} & \multicolumn{2}{c|}{TSIRM CGLS} &  \multicolumn{2}{c|}{TSIRM LSQR} & best gain \\ \r
+\cline{3-8}\r
+             &                       & Time  & \# Iter.  & Time  & \# Iter. & Time  & \# Iter. & \\\hline \hline\r
+  2,048      & mg                    & 403.49   & 18,210    & 73.89  & 3,060   & 77.84  & 3,270  & 5.46 \\\r
+  2,048      & sor                   & 745.37   & 57,060    & 87.31  & 6,150   & 104.21 & 7,230  & 8.53 \\\r
+  4,096      & mg                    & 562.25   & 25,170    & 97.23  & 3,990   & 89.71  & 3,630  & 6.27 \\\r
+  4,096      & sor                   & 912.12   & 70,194    & 145.57 & 9,750   & 168.97 & 10,980 & 6.26 \\\r
+  8,192      & mg                    & 917.02   & 40,290    & 148.81 & 5,730   & 143.03 & 5,280  & 6.41 \\\r
+  8,192      & sor                   & 1,404.53 & 106,530   & 212.55 & 12,990  & 180.97 & 10,470 & 7.76 \\\r
+  16,384     & mg                    & 1,430.56 & 63,930    & 237.17 & 8,310   & 244.26 & 7,950  & 6.03 \\\r
+  16,384     & sor                   & 2,852.14 & 216,240   & 418.46 & 21,690  & 505.26 & 23,970 & 6.82 \\\r
+\hline\r
+\r
+\end{tabular}\r
+\caption{Comparison of FGMRES and TSIRM with FGMRES for example ex15 of PETSc with two preconditioners (mg and sor) having 25,000 components per core on Juqueen ($\epsilon_{tsirm}=1e-3$, $max\_iter_{kryl}=30$, $s=12$, $max\_iter_{ls}=15$, $\epsilon_{ls}=1e-40$),  time is expressed in seconds.}\r
+\label{tab:03}\r
+\end{center}\r
+\end{table*}\r
+\r
+Table~\ref{tab:03} shows  the execution  times and the  number of  iterations of\r
+example ex15  of PETSc on the  Juqueen architecture. Different  numbers of cores\r
+are studied  ranging from 2,048 up-to  16,383 with the  two preconditioners {\it\r
+  mg}  and {\it  sor}.   For those  experiments,  the number  of components  (or\r
+unknowns  of  the problems)  per  core  is fixed  at  25,000,  also called  weak\r
+scaling. This number  can seem relatively small. In  fact, for some applications\r
+that  need a  lot of  memory, the  number of  components per  processor requires\r
+sometimes to  be small. Other parameters  for this application  are described in\r
+the legend of this table.\r
+\r
+\r
+\r
+In  Table~\ref{tab:03},  we  can  notice   that  TSIRM  is  always  faster  than\r
+FGMRES. The last  column shows the ratio between FGMRES and  the best version of\r
+TSIRM according  to the minimization  procedure: CGLS or  LSQR. Even if  we have\r
+computed the worst case between CGLS and  LSQR, it is clear that TSIRM is always\r
+faster than  FGMRES. For  this example, the  multigrid preconditioner  is faster\r
+than SOR. The gain between TSIRM and  FGMRES is more or less similar for the two\r
+preconditioners.  Looking at the number  of iterations to reach the convergence,\r
+it is  obvious that TSIRM allows the  reduction of the number  of iterations. It\r
+should be noticed  that for TSIRM, in those experiments,  only the iterations of\r
+the Krylov solver  are taken into account.  Iterations of CGLS  or LSQR were not\r
+recorded  but they  are  time-consuming.  In  general, each  $max\_iter_{kryl}*s$\r
+iterations which corresponds to 30*12, there are $max\_iter_{ls}$ iterations for\r
+the least-squares method which corresponds to 15.\r
+\r
+\begin{figure}[htbp]\r
+\centering\r
+  \includegraphics[width=0.5\textwidth]{nb_iter_sec_ex15_juqueen}\r
+\caption{Number of iterations per second with ex15 and the same parameters as in Table~\ref{tab:03} (weak scaling)}\r
+\label{fig:01}\r
+\end{figure}\r
+\r
+\r
+In  Figure~\ref{fig:01}, the number  of iterations  per second  corresponding to\r
+Table~\ref{tab:03}  is  displayed.   It  can  be  noticed  that  the  number  of\r
+iterations per second of FMGRES is constant whereas it decreases with TSIRM with\r
+both preconditioners. This can be explained  by the fact that when the number of\r
+cores increases, the time for the least-squares minimization step also increases\r
+but, generally, when the number of  cores increases, the number of iterations to\r
+reach the threshold  also increases, and, in that case,  TSIRM is more efficient\r
+to reduce  the number of iterations. So,  the overall benefit of  using TSIRM is\r
+interesting.\r
+\r
+\r
+\r
+\r
+\r
+\r
+\begin{table*}[htbp]\r
+\begin{center}\r
+\begin{tabular}{|r|r|r|r|r|r|r|r|r|} \r
+\hline\r
+\r
+  nb. cores & $\epsilon_{tsirm}$  & \multicolumn{2}{c|}{FGMRES} & \multicolumn{2}{c|}{TSIRM CGLS} &  \multicolumn{2}{c|}{TSIRM LSQR} & best gain \\ \r
+\cline{3-8}\r
+             &                       & Time  & \# Iter.  & Time  & \# Iter. & Time  & \# Iter. & \\\hline \hline\r
+  2,048      & 8e-5                  & 108.88 & 16,560  & 23.06  &  3,630  & 22.79  & 3,630   & 4.77 \\\r
+  2,048      & 6e-5                  & 194.01 & 30,270  & 35.50  &  5,430  & 27.74  & 4,350   & 6.99 \\\r
+  4,096      & 7e-5                  & 160.59 & 22,530  & 35.15  &  5,130  & 29.21  & 4,350   & 5.49 \\\r
+  4,096      & 6e-5                  & 249.27 & 35,520  & 52.13  &  7,950  & 39.24  & 5,790   & 6.35 \\\r
+  8,192      & 6e-5                  & 149.54 & 17,280  & 28.68  &  3,810  & 29.05  & 3,990  & 5.21 \\\r
+  8,192      & 5e-5                  & 785.04 & 109,590 & 76.07  &  10,470  & 69.42 & 9,030  & 11.30 \\\r
+  16,384     & 4e-5                  & 718.61 & 86,400 & 98.98  &  10,830  & 131.86  & 14,790  & 7.26 \\\r
+\hline\r
+\r
+\end{tabular}\r
+\caption{Comparison of FGMRES  and TSIRM with FGMRES algorithms for ex54 of Petsc (both with the MG preconditioner) with 25,000 components per core on Curie ($max\_iter_{kryl}=30$, $s=12$, $max\_iter_{ls}=15$, $\epsilon_{ls}=1e-40$),  time is expressed in seconds.}\r
+\label{tab:04}\r
+\end{center}\r
+\end{table*}\r
+\r
+\r
+In  Table~\ref{tab:04},  some  experiments   with  example  ex54  on  the  Curie\r
+architecture are reported.  For this  application, we fixed $\alpha=0.6$.  As it\r
+can be seen in that table, the size of the problem has a strong influence on the\r
+number of iterations to reach the  convergence. That is why we have preferred to\r
+change the threshold.  If we set  it to $1e-3$ as with the previous application,\r
+only one iteration is necessary  to reach the convergence. So Table~\ref{tab:04}\r
+shows the  results of  different executions with  different number of  cores and\r
+different thresholds. As with the previous example, we can observe that TSIRM is\r
+faster than  FGMRES. The ratio greatly  depends on the number  of iterations for\r
+FMGRES to reach the threshold. The greater the number of iterations to reach the\r
+convergence is, the  better the ratio between our algorithm  and FMGRES is. This\r
+experiment is  also a  weak scaling with  approximately $25,000$  components per\r
+core. It can also  be observed that the difference between CGLS  and LSQR is not\r
+significant. Both can be good but it seems not possible to know in advance which\r
+one will be the best.\r
+\r
+Table~\ref{tab:05} shows  a strong scaling  experiment with example ex54  on the\r
+Curie  architecture. So,  in  this case,  the  number of  unknowns  is fixed  at\r
+$204,919,225$ and the number of cores ranges from $512$ to $8192$ with the power\r
+of two.  The  threshold is fixed at $5e-5$ and only  the $mg$ preconditioner has\r
+been  tested. Here  again  we can  see that  TSIRM  is faster  than FGMRES.  The\r
+efficiency of each algorithm is reported.  It can be noticed that the efficiency\r
+of FGMRES is  better than the TSIRM  one except with $8,192$ cores  and that its\r
+efficiency is  greater than one  whereas the efficiency  of TSIRM is  lower than\r
+one.  Nevertheless,  the ratio  of TSIRM with  any version of  the least-squares\r
+method is  always faster.  With $8,192$  cores when the number  of iterations is\r
+far  more important  for  FGMRES,  we can  see  that it  is  only slightly  more\r
+important for TSIRM.\r
+\r
+In Figure~\ref{fig:02}  we report  the number of  iterations per second  for the\r
+experiments  reported in  Table~\ref{tab:05}.  This  figure highlights  that the\r
+number of iterations  per second is more  or less the same for  FGMRES and TSIRM\r
+with a little advantage for FGMRES. It  can be explained by the fact that, as we\r
+have previously  explained, the  iterations of the  least-squares steps  are not\r
+taken into account with TSIRM.\r
+\r
+\begin{table*}[htbp]\r
+\begin{center}\r
+\begin{tabular}{|r|r|r|r|r|r|r|r|r|r|r|} \r
+\hline\r
+\r
+  nb. cores   & \multicolumn{2}{c|}{FGMRES} & \multicolumn{2}{c|}{TSIRM CGLS} &  \multicolumn{2}{c|}{TSIRM LSQR} & best gain & \multicolumn{3}{c|}{efficiency} \\ \r
+\cline{2-7} \cline{9-11}\r
+                    & Time  & \# Iter.  & Time  & \# Iter. & Time  & \# Iter. &   & FGMRES & TS CGLS & TS LSQR\\\hline \hline\r
+   512              & 3,969.69 & 33,120 & 709.57 & 5,790  & 622.76 & 5,070  & 6.37  &   1    &    1    &     1     \\\r
+   1024             & 1,530.06  & 25,860 & 290.95 & 4,830  & 307.71 & 5,070 & 5.25  &  1.30  &    1.21  &   1.01     \\\r
+   2048             & 919.62    & 31,470 & 237.52 & 8,040  & 194.22 & 6,510 & 4.73  & 1.08   &    .75   &   .80\\\r
+   4096             & 405.60    & 28,380 & 111.67 & 7,590  & 91.72  & 6,510 & 4.42  & 1.22   &  .79     &   .84 \\\r
+   8192             & 785.04   & 109,590 & 76.07  & 10,470 & 69.42 & 9,030  & 11.30 &   .32  &   .58    &  .56 \\\r
+\r
+\hline\r
+\r
+\end{tabular}\r
+\caption{Comparison of FGMRES  and TSIRM for ex54 of PETSc (both with the MG preconditioner) with 204,919,225 components on Curie with different number of cores ($\epsilon_{tsirm}=5e-5$, $max\_iter_{kryl}=30$, $s=12$, $max\_iter_{ls}=15$, $\epsilon_{ls}=1e-40$),  time is expressed in seconds.}\r
+\label{tab:05}\r
+\end{center}\r
+\end{table*}\r
+\r
+\begin{figure}[htbp]\r
+\centering\r
+  \includegraphics[width=0.5\textwidth]{nb_iter_sec_ex54_curie}\r
+\caption{Number of iterations per second with ex54 and the same parameters as in Table~\ref{tab:05} (strong scaling)}\r
+\label{fig:02}\r
+\end{figure}\r
+\r
+\r
+Concerning the  experiments some  other remarks are  interesting.\r
+\begin{itemize}\r
+\item We have tested other examples  of PETSc (ex29, ex45, ex49).  For all these\r
+  examples,  we have also  obtained similar  gains between  GMRES and  TSIRM but\r
+  those  examples are  not scalable  with many  cores. In  general, we  had some\r
+  problems with more than $4,096$ cores.\r
+\item We have tested many iterative  solvers available in PETSc.  In fact, it is\r
+  possible to use most of them with TSIRM. From our point of view, the condition\r
+  to  use  a  solver inside  TSIRM  is  that  the  solver  must have  a  restart\r
+  feature. More precisely,  the solver must support to  be stopped and restarted\r
+  without decreasing its convergence. That is  why with GMRES we stop it when it\r
+  is  naturally restarted (\emph{i.e.}   with $m$  the restart  parameter).  The\r
+  Conjugate Gradient (CG) and all its variants do not have ``restarted'' version\r
+  in PETSc,  so they are not efficient.   They will converge with  TSIRM but not\r
+  quickly because  if we  compare a  normal CG with  a CG  which is  stopped and\r
+  restarted every  16 iterations (for example),  the normal CG will  be far more\r
+  efficient.   Some  restarted  CG or  CG  variant  versions  exist and  may  be\r
+  interesting to study in future works.\r
+\end{itemize}\r
+%%%*********************************************************\r
+%%%*********************************************************\r
+\r
+\r
+\r
+%%%*********************************************************\r
+%%%*********************************************************\r
+\section{Conclusion}\r
+\label{sec:06}\r
+%The conclusion goes here. this is more of the conclusion\r
+%%%*********************************************************\r
+%%%*********************************************************\r
+\r
+A new two-stage iterative  algorithm TSIRM has been proposed in this article,\r
+in order to accelerate the convergence of Krylov iterative  methods.\r
+Our TSIRM proposal acts as a merger between Krylov based solvers and\r
+a least-squares minimization step.\r
+The convergence of the method has been proven in some situations, while \r
+experiments up to 16,394 cores have been led to verify that TSIRM runs\r
+5 or  7 times  faster than GMRES.\r
+\r
+\r
+For  future  work, the  authors'  intention is  to  investigate  other kinds  of\r
+matrices, problems, and  inner solvers. In particular, the possibility \r
+to obtain a convergence of TSIRM in situations where the GMRES is divergent will be\r
+investigated. The influence of  all parameters must be\r
+tested too, while other methods to minimize the residuals must be regarded.  The\r
+number of outer  iterations to minimize should become  adaptive to improve the\r
+overall performances of the proposal.   Finally, this solver will be implemented\r
+inside PETSc, which would be of interest as it would  allows us to test\r
+all the non-linear  examples and compare our algorithm  with the other algorithm\r
+implemented in PETSc.\r
+\r
+\r
+% conference papers do not normally have an appendix\r
+\r
+\r
+\r
+% use section* for acknowledgement\r
+%%%*********************************************************\r
+%%%*********************************************************\r
+\section*{Acknowledgment}\r
+This  paper  is   partially  funded  by  the  Labex   ACTION  program  (contract\r
+ANR-11-LABX-01-01).  We  acknowledge PRACE for  awarding us access  to resources\r
+Curie and Juqueen respectively based in France and Germany.\r
+\r
+\r
+\r
+\r
+\r
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\r
+\r
+\bibliography{biblio}\r
+\bibliographystyle{unsrt}\r
+\bibliographystyle{alpha}\r
+\r
+\end{document}\r