diff options
Diffstat (limited to 'src/algebra/f01.spad.pamphlet')
-rw-r--r-- | src/algebra/f01.spad.pamphlet | 343 |
1 files changed, 0 insertions, 343 deletions
diff --git a/src/algebra/f01.spad.pamphlet b/src/algebra/f01.spad.pamphlet deleted file mode 100644 index c2146298..00000000 --- a/src/algebra/f01.spad.pamphlet +++ /dev/null @@ -1,343 +0,0 @@ -\documentclass{article} -\usepackage{open-axiom} -\begin{document} -\title{\$SPAD/src/algebra f01.spad} -\author{Godfrey Nolan, Mike Dewar} -\maketitle -\begin{abstract} -\end{abstract} -\eject -\tableofcontents -\eject -\section{package NAGF01 NagMatrixOperationsPackage} -<<package NAGF01 NagMatrixOperationsPackage>>= -)abbrev package NAGF01 NagMatrixOperationsPackage -++ Author: Godfrey Nolan and Mike Dewar -++ Date Created: Jan 1994 -++ Date Last Updated: Thu May 12 17:45:15 1994 -++Description: -++This package uses the NAG Library to provide facilities for matrix factorizations and -++associated transformations. -++See \downlink{Manual Page}{manpageXXf01}. -NagMatrixOperationsPackage(): Exports == Implementation where - S ==> Symbol - FOP ==> FortranOutputStackPackage - - Exports ==> with - f01brf : (Integer,Integer,Integer,Integer,_ - DoubleFloat,Boolean,Boolean,List Boolean,Matrix DoubleFloat,Matrix Integer,Matrix Integer,Integer) -> Result - ++ f01brf(n,nz,licn,lirn,pivot,lblock,grow,abort,a,irn,icn,ifail) - ++ factorizes a real sparse matrix. The routine either forms - ++ the LU factorization of a permutation of the entire matrix, or, - ++ optionally, first permutes the matrix to block lower triangular - ++ form and then only factorizes the diagonal blocks. - ++ See \downlink{Manual Page}{manpageXXf01brf}. - f01bsf : (Integer,Integer,Integer,Matrix Integer,_ - Matrix Integer,Matrix Integer,Matrix Integer,Boolean,DoubleFloat,Boolean,Matrix Integer,Matrix DoubleFloat,Integer) -> Result - ++ f01bsf(n,nz,licn,ivect,jvect,icn,ikeep,grow,eta,abort,idisp,avals,ifail) - ++ factorizes a real sparse matrix using the pivotal sequence - ++ previously obtained by F01BRF when a matrix of the same sparsity - ++ pattern was factorized. - ++ See \downlink{Manual Page}{manpageXXf01bsf}. - f01maf : (Integer,Integer,Integer,Integer,_ - List Boolean,Matrix DoubleFloat,Matrix Integer,Matrix Integer,DoubleFloat,DoubleFloat,Integer) -> Result - ++ f01maf(n,nz,licn,lirn,abort,avals,irn,icn,droptl,densw,ifail) - ++ computes an incomplete Cholesky factorization of a real - ++ sparse symmetric positive-definite matrix A. - ++ See \downlink{Manual Page}{manpageXXf01maf}. - f01mcf : (Integer,Matrix DoubleFloat,Integer,Matrix Integer,_ - Integer) -> Result - ++ f01mcf(n,avals,lal,nrow,ifail) - ++ computes the Cholesky factorization of a real symmetric - ++ positive-definite variable-bandwidth matrix. - ++ See \downlink{Manual Page}{manpageXXf01mcf}. - f01qcf : (Integer,Integer,Integer,Matrix DoubleFloat,_ - Integer) -> Result - ++ f01qcf(m,n,lda,a,ifail) - ++ finds the QR factorization of the real m by n matrix A, - ++ where m>=n. - ++ See \downlink{Manual Page}{manpageXXf01qcf}. - f01qdf : (String,String,Integer,Integer,_ - Matrix DoubleFloat,Integer,Matrix DoubleFloat,Integer,Integer,Matrix DoubleFloat,Integer) -> Result - ++ f01qdf(trans,wheret,m,n,a,lda,zeta,ncolb,ldb,b,ifail) - ++ performs one of the transformations - ++ See \downlink{Manual Page}{manpageXXf01qdf}. - f01qef : (String,Integer,Integer,Integer,_ - Integer,Matrix DoubleFloat,Matrix DoubleFloat,Integer) -> Result - ++ f01qef(wheret,m,n,ncolq,lda,zeta,a,ifail) - ++ returns the first ncolq columns of the real m by m - ++ orthogonal matrix Q, where Q is given as the product of - ++ Householder transformation matrices. - ++ See \downlink{Manual Page}{manpageXXf01qef}. - f01rcf : (Integer,Integer,Integer,Matrix Complex DoubleFloat,_ - Integer) -> Result - ++ f01rcf(m,n,lda,a,ifail) - ++ finds the QR factorization of the complex m by n matrix A, - ++ where m>=n. - ++ See \downlink{Manual Page}{manpageXXf01rcf}. - f01rdf : (String,String,Integer,Integer,_ - Matrix Complex DoubleFloat,Integer,Matrix Complex DoubleFloat,Integer,Integer,Matrix Complex DoubleFloat,Integer) -> Result - ++ f01rdf(trans,wheret,m,n,a,lda,theta,ncolb,ldb,b,ifail) - ++ performs one of the transformations - ++ See \downlink{Manual Page}{manpageXXf01rdf}. - f01ref : (String,Integer,Integer,Integer,_ - Integer,Matrix Complex DoubleFloat,Matrix Complex DoubleFloat,Integer) -> Result - ++ f01ref(wheret,m,n,ncolq,lda,theta,a,ifail) - ++ returns the first ncolq columns of the complex m by m - ++ unitary matrix Q, where Q is given as the product of Householder - ++ transformation matrices. - ++ See \downlink{Manual Page}{manpageXXf01ref}. - Implementation ==> add - - import Lisp - import DoubleFloat - import Any - import Record - import Integer - import Matrix DoubleFloat - import Boolean - import NAGLinkSupportPackage - import AnyFunctions1(Integer) - import AnyFunctions1(DoubleFloat) - import AnyFunctions1(Boolean) - import AnyFunctions1(String) - import AnyFunctions1(List Boolean) - import AnyFunctions1(Matrix DoubleFloat) - import AnyFunctions1(Matrix Complex DoubleFloat) - import AnyFunctions1(Matrix Integer) - - - f01brf(nArg:Integer,nzArg:Integer,licnArg:Integer,_ - lirnArg:Integer,pivotArg:DoubleFloat,lblockArg:Boolean,_ - growArg:Boolean,abortArg:List Boolean,aArg:Matrix DoubleFloat,_ - irnArg:Matrix Integer,icnArg:Matrix Integer,ifailArg:Integer): Result == - [(invokeNagman(NIL$Lisp,_ - "f01brf",_ - ["n"::S,"nz"::S,"licn"::S,"lirn"::S,"pivot"::S_ - ,"lblock"::S,"grow"::S,"ifail"::S,"abort"::S,"ikeep"::S,"w"::S,"idisp"::S,"a"::S_ - ,"irn"::S,"icn"::S,"iw"::S]$Lisp,_ - ["ikeep"::S,"w"::S,"idisp"::S,"iw"::S]$Lisp,_ - [["double"::S,"pivot"::S,["w"::S,"n"::S]$Lisp_ - ,["a"::S,"licn"::S]$Lisp]$Lisp_ - ,["integer"::S,"n"::S,"nz"::S,"licn"::S,"lirn"::S_ - ,["ikeep"::S,["*"::S,5$Lisp,"n"::S]$Lisp]$Lisp,["idisp"::S,10$Lisp]$Lisp,["irn"::S,"lirn"::S]$Lisp,["icn"::S,"licn"::S]$Lisp_ - ,"ifail"::S,["iw"::S,["*"::S,8$Lisp,"n"::S]$Lisp]$Lisp]$Lisp_ - ,["logical"::S,"lblock"::S,"grow"::S,["abort"::S,4$Lisp]$Lisp]$Lisp_ - ]$Lisp,_ - ["ikeep"::S,"w"::S,"idisp"::S,"a"::S,"irn"::S,"icn"::S,"ifail"::S]$Lisp,_ - [([nArg::Any,nzArg::Any,licnArg::Any,lirnArg::Any,pivotArg::Any,lblockArg::Any,growArg::Any,ifailArg::Any,abortArg::Any,aArg::Any,irnArg::Any,icnArg::Any ])_ - @List Any]$Lisp)$Lisp)_ - pretend List (Record(key:Symbol,entry:Any))]$Result - - f01bsf(nArg:Integer,nzArg:Integer,licnArg:Integer,_ - ivectArg:Matrix Integer,jvectArg:Matrix Integer,icnArg:Matrix Integer,_ - ikeepArg:Matrix Integer,growArg:Boolean,etaArg:DoubleFloat,_ - abortArg:Boolean,idispArg:Matrix Integer,avalsArg:Matrix DoubleFloat,_ - ifailArg:Integer): Result == - [(invokeNagman(NIL$Lisp,_ - "f01bsf",_ - ["n"::S,"nz"::S,"licn"::S,"grow"::S,"eta"::S_ - ,"abort"::S,"rpmin"::S,"ifail"::S,"ivect"::S,"jvect"::S,"icn"::S,"ikeep"::S,"idisp"::S_ - ,"w"::S,"avals"::S,"iw"::S]$Lisp,_ - ["w"::S,"rpmin"::S,"iw"::S]$Lisp,_ - [["double"::S,"eta"::S,["w"::S,"n"::S]$Lisp_ - ,"rpmin"::S,["avals"::S,"licn"::S]$Lisp]$Lisp_ - ,["integer"::S,"n"::S,"nz"::S,"licn"::S,["ivect"::S,"nz"::S]$Lisp_ - ,["jvect"::S,"nz"::S]$Lisp,["icn"::S,"licn"::S]$Lisp,["ikeep"::S,["*"::S,5$Lisp,"n"::S]$Lisp]$Lisp_ - ,["idisp"::S,2$Lisp]$Lisp,"ifail"::S,["iw"::S,["*"::S,8$Lisp,"n"::S]$Lisp]$Lisp]$Lisp_ - ,["logical"::S,"grow"::S,"abort"::S]$Lisp_ - ]$Lisp,_ - ["w"::S,"rpmin"::S,"avals"::S,"ifail"::S]$Lisp,_ - [([nArg::Any,nzArg::Any,licnArg::Any,growArg::Any,etaArg::Any,abortArg::Any,ifailArg::Any,ivectArg::Any,jvectArg::Any,icnArg::Any,ikeepArg::Any,idispArg::Any,avalsArg::Any ])_ - @List Any]$Lisp)$Lisp)_ - pretend List (Record(key:Symbol,entry:Any))]$Result - - f01maf(nArg:Integer,nzArg:Integer,licnArg:Integer,_ - lirnArg:Integer,abortArg:List Boolean,avalsArg:Matrix DoubleFloat,_ - irnArg:Matrix Integer,icnArg:Matrix Integer,droptlArg:DoubleFloat,_ - denswArg:DoubleFloat,ifailArg:Integer): Result == - [(invokeNagman(NIL$Lisp,_ - "f01maf",_ - ["n"::S,"nz"::S,"licn"::S,"lirn"::S,"droptl"::S_ - ,"densw"::S,"ifail"::S,"abort"::S,"wkeep"::S,"ikeep"::S,"inform"::S,"avals"::S_ - ,"irn"::S,"icn"::S,"iwork"::S]$Lisp,_ - ["wkeep"::S,"ikeep"::S,"inform"::S,"iwork"::S]$Lisp,_ - [["double"::S,["wkeep"::S,["*"::S,3$Lisp,"n"::S]$Lisp]$Lisp_ - ,["avals"::S,"licn"::S]$Lisp,"droptl"::S,"densw"::S]$Lisp_ - ,["integer"::S,"n"::S,"nz"::S,"licn"::S,"lirn"::S_ - ,["ikeep"::S,["*"::S,2$Lisp,"n"::S]$Lisp]$Lisp,["inform"::S,4$Lisp]$Lisp,["irn"::S,"lirn"::S]$Lisp,["icn"::S,"licn"::S]$Lisp_ - ,"ifail"::S,["iwork"::S,["*"::S,6$Lisp,"n"::S]$Lisp]$Lisp]$Lisp_ - ,["logical"::S,["abort"::S,3$Lisp]$Lisp]$Lisp_ - ]$Lisp,_ - ["wkeep"::S,"ikeep"::S,"inform"::S,"avals"::S,"irn"::S,"icn"::S,"droptl"::S,"densw"::S,"ifail"::S]$Lisp,_ - [([nArg::Any,nzArg::Any,licnArg::Any,lirnArg::Any,droptlArg::Any,denswArg::Any,ifailArg::Any,abortArg::Any,avalsArg::Any,irnArg::Any,icnArg::Any ])_ - @List Any]$Lisp)$Lisp)_ - pretend List (Record(key:Symbol,entry:Any))]$Result - - f01mcf(nArg:Integer,avalsArg:Matrix DoubleFloat,lalArg:Integer,_ - nrowArg:Matrix Integer,ifailArg:Integer): Result == - [(invokeNagman(NIL$Lisp,_ - "f01mcf",_ - ["n"::S,"lal"::S,"ifail"::S,"avals"::S,"nrow"::S,"al"::S,"d"::S]$Lisp,_ - ["al"::S,"d"::S]$Lisp,_ - [["double"::S,["avals"::S,"lal"::S]$Lisp,["al"::S,"lal"::S]$Lisp_ - ,["d"::S,"n"::S]$Lisp]$Lisp_ - ,["integer"::S,"n"::S,"lal"::S,["nrow"::S,"n"::S]$Lisp_ - ,"ifail"::S]$Lisp_ - ]$Lisp,_ - ["al"::S,"d"::S,"ifail"::S]$Lisp,_ - [([nArg::Any,lalArg::Any,ifailArg::Any,avalsArg::Any,nrowArg::Any ])_ - @List Any]$Lisp)$Lisp)_ - pretend List (Record(key:Symbol,entry:Any))]$Result - - f01qcf(mArg:Integer,nArg:Integer,ldaArg:Integer,_ - aArg:Matrix DoubleFloat,ifailArg:Integer): Result == - [(invokeNagman(NIL$Lisp,_ - "f01qcf",_ - ["m"::S,"n"::S,"lda"::S,"ifail"::S,"zeta"::S,"a"::S]$Lisp,_ - ["zeta"::S]$Lisp,_ - [["double"::S,["zeta"::S,"n"::S]$Lisp,["a"::S,"lda"::S,"n"::S]$Lisp_ - ]$Lisp_ - ,["integer"::S,"m"::S,"n"::S,"lda"::S,"ifail"::S_ - ]$Lisp_ - ]$Lisp,_ - ["zeta"::S,"a"::S,"ifail"::S]$Lisp,_ - [([mArg::Any,nArg::Any,ldaArg::Any,ifailArg::Any,aArg::Any ])_ - @List Any]$Lisp)$Lisp)_ - pretend List (Record(key:Symbol,entry:Any))]$Result - - f01qdf(transArg:String,wheretArg:String,mArg:Integer,_ - nArg:Integer,aArg:Matrix DoubleFloat,ldaArg:Integer,_ - zetaArg:Matrix DoubleFloat,ncolbArg:Integer,ldbArg:Integer,_ - bArg:Matrix DoubleFloat,ifailArg:Integer): Result == - [(invokeNagman(NIL$Lisp,_ - "f01qdf",_ - ["trans"::S,"wheret"::S,"m"::S,"n"::S,"lda"::S_ - ,"ncolb"::S,"ldb"::S,"ifail"::S,"a"::S,"zeta"::S,"b"::S,"work"::S]$Lisp,_ - ["work"::S]$Lisp,_ - [["double"::S,["a"::S,"lda"::S,"n"::S]$Lisp_ - ,["zeta"::S,"n"::S]$Lisp,["b"::S,"ldb"::S,"ncolb"::S]$Lisp,["work"::S,"ncolb"::S]$Lisp]$Lisp_ - ,["integer"::S,"m"::S,"n"::S,"lda"::S,"ncolb"::S_ - ,"ldb"::S,"ifail"::S]$Lisp_ - ,["character"::S,"trans"::S,"wheret"::S]$Lisp_ - ]$Lisp,_ - ["b"::S,"ifail"::S]$Lisp,_ - [([transArg::Any,wheretArg::Any,mArg::Any,nArg::Any,ldaArg::Any,ncolbArg::Any,ldbArg::Any,ifailArg::Any,aArg::Any,zetaArg::Any,bArg::Any ])_ - @List Any]$Lisp)$Lisp)_ - pretend List (Record(key:Symbol,entry:Any))]$Result - - f01qef(wheretArg:String,mArg:Integer,nArg:Integer,_ - ncolqArg:Integer,ldaArg:Integer,zetaArg:Matrix DoubleFloat,_ - aArg:Matrix DoubleFloat,ifailArg:Integer): Result == - [(invokeNagman(NIL$Lisp,_ - "f01qef",_ - ["wheret"::S,"m"::S,"n"::S,"ncolq"::S,"lda"::S_ - ,"ifail"::S,"zeta"::S,"a"::S,"work"::S]$Lisp,_ - ["work"::S]$Lisp,_ - [["double"::S,["zeta"::S,"n"::S]$Lisp,["a"::S,"lda"::S,"ncolq"::S]$Lisp_ - ,["work"::S,"ncolq"::S]$Lisp]$Lisp_ - ,["integer"::S,"m"::S,"n"::S,"ncolq"::S,"lda"::S_ - ,"ifail"::S]$Lisp_ - ,["character"::S,"wheret"::S]$Lisp_ - ]$Lisp,_ - ["a"::S,"ifail"::S]$Lisp,_ - [([wheretArg::Any,mArg::Any,nArg::Any,ncolqArg::Any,ldaArg::Any,ifailArg::Any,zetaArg::Any,aArg::Any ])_ - @List Any]$Lisp)$Lisp)_ - pretend List (Record(key:Symbol,entry:Any))]$Result - - f01rcf(mArg:Integer,nArg:Integer,ldaArg:Integer,_ - aArg:Matrix Complex DoubleFloat,ifailArg:Integer): Result == - [(invokeNagman(NIL$Lisp,_ - "f01rcf",_ - ["m"::S,"n"::S,"lda"::S,"ifail"::S,"theta"::S,"a"::S]$Lisp,_ - ["theta"::S]$Lisp,_ - [["integer"::S,"m"::S,"n"::S,"lda"::S,"ifail"::S_ - ]$Lisp_ - ,["double complex"::S,["theta"::S,"n"::S]$Lisp,["a"::S,"lda"::S,"n"::S]$Lisp]$Lisp_ - ]$Lisp,_ - ["theta"::S,"a"::S,"ifail"::S]$Lisp,_ - [([mArg::Any,nArg::Any,ldaArg::Any,ifailArg::Any,aArg::Any ])_ - @List Any]$Lisp)$Lisp)_ - pretend List (Record(key:Symbol,entry:Any))]$Result - - f01rdf(transArg:String,wheretArg:String,mArg:Integer,_ - nArg:Integer,aArg:Matrix Complex DoubleFloat,ldaArg:Integer,_ - thetaArg:Matrix Complex DoubleFloat,ncolbArg:Integer,ldbArg:Integer,_ - bArg:Matrix Complex DoubleFloat,ifailArg:Integer): Result == - [(invokeNagman(NIL$Lisp,_ - "f01rdf",_ - ["trans"::S,"wheret"::S,"m"::S,"n"::S,"lda"::S_ - ,"ncolb"::S,"ldb"::S,"ifail"::S,"a"::S,"theta"::S,"b"::S,"work"::S]$Lisp,_ - ["work"::S]$Lisp,_ - [["integer"::S,"m"::S,"n"::S,"lda"::S,"ncolb"::S_ - ,"ldb"::S,"ifail"::S]$Lisp_ - ,["character"::S,"trans"::S,"wheret"::S]$Lisp_ - ,["double complex"::S,["a"::S,"lda"::S,"n"::S]$Lisp,["theta"::S,"n"::S]$Lisp,["b"::S,"ldb"::S,"ncolb"::S]$Lisp,["work"::S,"ncolb"::S]$Lisp]$Lisp_ - ]$Lisp,_ - ["b"::S,"ifail"::S]$Lisp,_ - [([transArg::Any,wheretArg::Any,mArg::Any,nArg::Any,ldaArg::Any,ncolbArg::Any,ldbArg::Any,ifailArg::Any,aArg::Any,thetaArg::Any,bArg::Any ])_ - @List Any]$Lisp)$Lisp)_ - pretend List (Record(key:Symbol,entry:Any))]$Result - - f01ref(wheretArg:String,mArg:Integer,nArg:Integer,_ - ncolqArg:Integer,ldaArg:Integer,thetaArg:Matrix Complex DoubleFloat,_ - aArg:Matrix Complex DoubleFloat,ifailArg:Integer): Result == - [(invokeNagman(NIL$Lisp,_ - "f01ref",_ - ["wheret"::S,"m"::S,"n"::S,"ncolq"::S,"lda"::S_ - ,"ifail"::S,"theta"::S,"a"::S,"work"::S]$Lisp,_ - ["work"::S]$Lisp,_ - [["integer"::S,"m"::S,"n"::S,"ncolq"::S,"lda"::S_ - ,"ifail"::S]$Lisp_ - ,["character"::S,"wheret"::S]$Lisp_ - ,["double complex"::S,["theta"::S,"n"::S]$Lisp,["a"::S,"lda"::S,"n"::S]$Lisp,["work"::S,"ncolq"::S]$Lisp]$Lisp_ - ]$Lisp,_ - ["a"::S,"ifail"::S]$Lisp,_ - [([wheretArg::Any,mArg::Any,nArg::Any,ncolqArg::Any,ldaArg::Any,ifailArg::Any,thetaArg::Any,aArg::Any ])_ - @List Any]$Lisp)$Lisp)_ - pretend List (Record(key:Symbol,entry:Any))]$Result - -@ -\section{License} -<<license>>= ---Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. ---All rights reserved. --- ---Redistribution and use in source and binary forms, with or without ---modification, are permitted provided that the following conditions are ---met: --- --- - Redistributions of source code must retain the above copyright --- notice, this list of conditions and the following disclaimer. --- --- - Redistributions in binary form must reproduce the above copyright --- notice, this list of conditions and the following disclaimer in --- the documentation and/or other materials provided with the --- distribution. --- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the --- names of its contributors may be used to endorse or promote products --- derived from this software without specific prior written permission. --- ---THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS ---IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED ---TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A ---PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER ---OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, ---EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, ---PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR ---PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF ---LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING ---NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS ---SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -@ -<<*>>= -<<license>> - -<<package NAGF01 NagMatrixOperationsPackage>> -@ -\eject -\begin{thebibliography}{99} -\bibitem{1} nothing -\end{thebibliography} -\end{document} |