Numerical Algorithms Group Technical ReportsReports SearchSearch for any word(s) or phrase by typing the word(s) or phrase into the query form and clicking the Submit Search button. The result of each search will be a page(s) containing the page Title, with its link address, for all pages that contain the word(s) or phrase no matter where they appear in the text. Index of Reports
Please note: Only the abstract for the following reports is available from our web site. Contact us regarding the availabilty of the full report as a NAG publication.
Key
TRn/nn - NAG Technical Report series number TR1/08 (NP3665) PDF Format Mat Cross, NAG Ltd, Oxford The (Mark 21) NAG Fortran Library can be called from Python using Pearu Peterson's F2PY tool, which is part of the NumPy package. This report contains examples showing how to interface with the Library on Linux and Windows.
TR1/04 (NP3658) HTML Format Mick Pont, NAG Ltd, Oxford This report gives detailed instructions on how to call routines in the NAG C and Fortran Libraries from the Java programming language. We show examples using Java running on both UNIX and Microsoft Windows platforms.
TR1/01 (NP3615) PDF Format Nadir Bouhamou, NAG Ltd, Oxford This report demonstrates the use of routines from the NAG Fortran Library D06 Chapter, combined with sparse solver routines from the F11 Chapter to solve a partial differential equation using the finite element method.
TR4/00 (NP3533) PDF Format George Levy, Nag Ltd, Oxford Software implementation and testing of GARCH routines in Fortran 77 This paper describes the software implementation of GARCH routines in Fortran 77. The routines considered here cover both symmetric and asymmetric GARCH and also shocks having Gaussian and non-Gaussian distributions. Extensive examples of using the software are provided and the test results from Monte Carlo simulations are presented.
TR3/00 (NP3489) HTML Format Mick Pont, Nag Inc, Downers Grove, Illinois, USA Calling the NAG C Library from Java This report gives detailed instructions on how to call routines in the NAG C Library from the Java programming language. We show examples using Java running on both UNIX and Microsoft Windows platforms. The techniques described are also applicable to other libraries, such as the NAG Fortran Library.
TR2/00 (NP3484) PDF Format K V Fernando, NAG Ltd, Oxford, UK. Practical Portfolio Optimization NAG Libraries have many powerful and reliable optimizers which can be used to solve large portfolio optimization and selection problems in the financial industry. These versatile routines are also suitable for academic research and teaching.
TR1/00 (NP3480) PDF Format George Levy, NAG Ltd, Oxford, UK. Numeric ActiveX Components This paper is concerned with the use of ActiveX components for numerical computations from within the Microsoft Windows environment. Detailed information is provided concerning the use of these components from Microsoft Excel, Microsoft Visual Basic, Microsoft Web browsers and Inprise Delphi. The examples in the paper are based on the following ActiveX components: a fast Fourier transform ActiveX control, a financial derivative pricing ActiveX control, and a numerical optimisation ActiveX control.
TR3/98 (NP3365) Postscript PDF George Levy, NAG Ltd, Oxford, UK. NAG Financial Routines in C This report describes a set of financial routines and example programs in C that have been developed at NAG. TR1/98 (NP3256) Postscript PDF Arnold Krommer, NAG Ltd, Oxford Parallel Sparse Matrix Computations Using the PINEAPL Library: A Performance Study The Numerical Algorithms Group Ltd is currently participating in the European HPCN Fourth Framework project on Parallel Industrial NumErical Applications and Portable Libraries (PINEAPL). One of the main goals of the project is to increase the suitability of the existing NAG Parallel Library for dealing with computationally intensive industrial applications by appropriately extending the range of library routines. Additionally, several industrial applications are being ported onto parallel computers within the PINEAPL project by replacing sequential code sections with calls to appropriate parallel library routines. A substantial part of the library material being developed is concerned with the solution of PDE problems using parallel sparse linear algebra modules. These modules provide support for crucial computational tasks such as graph partitioning, preconditioning and iterative solution of linear systems. Additional support routines assist users in distributing and assembling the data structures used and/or generated by the sparse linear algebra modules. This paper provides a number of performance results which demonstrate the efficiency and scalability of core computational routines - in particular, the iterative solver, the preconditioner and the matrix-vector multiplication routines. Most of the software described in this paper has been incorporated into the recently launched Release 1 of the PINEAPL Library. TR11/96 (NP3087) Postscript PDF George Levy, NAG Ltd, Oxford.
Calling 32-bit NAG C DLL functions from Visual Basic Calling NAG routines from Visual Basic (or Excel) can provide a convenient way quickly to develop graphical user interfaces and packages that use mathematical routines. The aim of this report is to show how the complete range of NAG C DLL routines can be called directly from Visual Basic, and thus allow programmers/package builders maximum flexibility when incorporating calls to NAG routines into their Visual Basic code. Keywords: DLLs Visual Basic Excel Visual C++ TR5/96 (NP3010) Postscript PDF Stefano Salvini, Numerical Algorithms Group Ltd.and Jerzy Wasniewski, Danish Computing Centre for Research and Education Experiences in Developing Numerical Subprograms on a Parallel, Shared Memory Computer This Technical Report describes work carried out on the parallel, shared memory SGI Power Challenge system with MIPS R8000 (75 MHz) processors under OS IRIX 6.1 at UNI·C, Denmark. The main thrust of this work was an investigation of the scalability and efficiency of a range of numerical routines. The routines studied were grouped according to the mode of parallelism they employed. Simple parallelism: concurrent execution of sections of DO loops. The Level-3 BLAS DGEMM and DTRSM were chosen for this group. Automatic parallelization tools could be, and were, employed for these. Lower level parallelism: concurrent execution within lower level routines. The LAPACK routines DGETRF, DPOTRF, DGEQRF, DGETRS and DPOTRS were studied for this group: they rely on calls to parallel Level-3 BLAS. Explicit parallelism: customized code is required to achieve high efficiency and scalability. The quadrature routines D01DAF and D01AUF from the NAG Fortran 77 Library were selected for this group: their parallelism is further complicated by their use of globally shared data structures. Issues of portability were paramount in the development of code: all software was written in Fortran 77 and parallelism was defined by using PCF directives. The results obtained show that this class of systems holds great promise for the development of efficient numerical codes, portable across a range of shared-memory as well as serial systems. Finally, future avenues of enquiry are suggested. TR4/96 (NP3007) Postscript PDF K V Fernando, Numerical Algorithms Group Ltd.Accurately Counting Singular Values of Bidiagonal Matrices We have developed algorithms to count singular values of a bidiagonal matrix which are greater than a specified value. This requires the transformation of the singular value problem to an equivalent symmetric eigenvalue problem. The counting of singular values is paramount in the design of bisection and multisection type algorithms for computing singular values on serial and parallel machines. The algorithms are based on the eigenvalues of BB', B'B and the associated 2n by 2n zero-diagonal tridiagonal matrix (which is permutationally equivalent to the Jordan-Wielandt form), where B is an n by n bidiagonal matrix. The two product matrices, which do not have to be formed explicitly, lead to the progressive and stationary qd algorithms of Rutishauser. The algorithm based on the zero-diagonal matrix, which we have named the Golub-Kahan form, may be considered as a combination of both the progressive and stationary qd algorithms. We study important properties such as the backward error analysis, the monotonicity of the inertia count and the scaling of data which guarantee the accuracy and the integrity of these algorithms. For high relative accuracy of tiny singular values, the algorithm based on the Golub-Kahan form is the best choice. However, if such accuracy is not required or requested, the differential progressive and differential stationary qd algorithms with certain modifications are adequate and more efficient. Keywords: bisection, multisection, singular values, eigenvalues, monotonicity, error analysis, parallel algorithms, qd algorithms, bidiagonal matrices, symmetric tridiagonal matrices, skew-symmetric tridiagonal matrices Partially supported by NSF grant ASC-9005933 and ONR contract N000014-90-J-1372. TR3/96 (NP3005) - Postscript files Part a Part b Part c Mir S Derakhshan, Numerical Algorithms Group Ltd., Oxford, UK.and Lon Waters, Maui High Performance Computing Centre, Kihei, HI. Speed-up Results for NAG Numerical PVM Library Routines on an IBM SP-2 In this report we analyse the performance of some routines in the NAG Numerical PVM Library on an IBM SP-2. Three chapters of the Library are extensively covered and the report includes performance results in the areas of quadrature, linear equations and eigenproblems. TR2/96 (NP2996) Postscript PDF Stefano Salvini and Gareth ShawAn Evaluation of New NAG Library Solvers for Large Sparse Unsymmetric Linear Systems This report presents an experimental comparison of NAG Fortran Library software for the solution of large sparse unsymmetric linear systems of algebraic equations. Preconditioned RGMRES, CGS and Bi-CGSTAB methods to be introduced at Mark 18 are compared against one another, and against direct methods. Test problems include discrete approximations to 2-D elliptic partial differential equations, random-valued randomly structured unsymmetric systems, and matrices from the Harwell--Boeing collection. TR5/95 (NP2960) Postscript PDF K V Fernando, NAG LtdAccurate BABE Factorisation of Tridiagonal Matrices for Eigenproblems Recently, Fernando successfully resurrected a classical method for computing eigenvectors which goes back to the times of Cauchy. This algorithm has been in the doldrums for nearly fifty years because of a fundamental difficulty highlighted by Wilkinson. The algorithm is based on the solution of a nearly homogeneous system of equations (J - rI)z=k µk(r)ek , zk = 1 for the approximate eigenvector z where r is an eigenvalue shift, µk(r) is a scalar and (e)k is a unit vector. .... TR4/95 (NP2953) Postscript PDF K V Fernando, NAG LtdOn Computing an Eigenvector of a Tridiagonal Matrix We consider the solution of the homogeneous equation J-lambda I{x}=0 where J is a tridiagonal matrix, lambda is a known eigenvalue, and {x} is the unknown eigenvector corresponding to lambda. Since the system is under-determined, {x} could be obtained by setting x_k=1 and solving for the rest of the elements of {x}. This method is not entirely new and it can be traced back to the times of Cauchy (1829). In 1958, Wilkinson demonstrated that, in finite-precision arithmetic, the computed {x} is highly sensitive to the choice of k; the traditional practice of setting k=1 or k=n can lead to disastrous results. We develop algorithms to find optimal k which require a LDU and a UDL factorisation of J-lambda I and are based on the theory developed by Fernando for general matrices. We have also discovered new formulae (valid also for more general Hessenberg matrices) for the determinant of J-tau I, which give better numerical results when the shifted matrix is nearly singular. These formulae could be used to compute eigenvalues (or to improve the accuracy of known estimates) based on standard zero finders such as Newton and Laguerre methods. The accuracy of the computed eigenvalues is crucial for obtaining small residuals for the computed eigenvectors. The algorithms for solving eigenproblems are embarrassingly parallel and hence suitable for modern architectures. TR3/95 (NP2929) Postscript PDF K V FernandoOn a Classical Method for Computing Eigenvectors One of the oldest methods for computing an eigenvector of a matrix F is based on the solution of a set of homogeneous equations which can be traced back to the times of Cauchy (1829). The principal difficulty of this approach was identified by Wilkinson (1958). We remove this obstacle and analyse the viability of this classical method. The key to the analysis is provided by the reciprocals of the diagonal elements of the inverse of the matrix F-tau I, where tau is a shift, approximating an eigenvalue. The final missing link is a perturbation result due to Sherman and Morrison. We extend this result to the block case. Finally, we give a new impetus for Rayleigh quotient and Laguerre iterations. TR2/95 (NP2895) Postscript PDF Ian Hounam and Stuart HemstockMigrating from Fortran 77 to Fortran 90 with the NAGWare f77 and f90 Tools The investment in code written in the Fortran language over the last four decades means that there is a vast amount of legacy code written to various standards and incorporating numerous vendor extensions to the language. Meanwhile, the new Fortran 90 standard adds many attractive new features to the language while retaining compatibility with Fortran 77. This paper shows how the NAGWare f77 Tools may be used to standardise Fortran code to a form suitable for porting to standard conforming Fortran 90 compilers. Then the paper goes on to discuss how the NAGWare f90 Tools can be used to convert this code to free format Fortran 90 with standardised precision. TR1/95 (NP2870) Postscript PDF Stefano Salvini and Gareth ShawAn Evaluation of New NAG Library Solvers for Large Sparse Symmetric Linear Systems This report presents experimental results for new NAG Fortran 77 Library software for the solution of large sparse symmetric linear systems of algebraic equations. Preconditioned conjugate gradient methods introduced at Mark 17 are compared against iterative and direct methods previously available in the library. Test problems include discrete approximations to 2-d elliptic partial differential equations, random-valued randomly-structured symmetric positive-definite systems, and some symmetric systems from the Harwell-Boeing collection. TR6/94 (NP2774) Postscript PDF Brankin, R.W. and Gladwell, I.RKSUITE_90: Software for ODE IVPs NAG Ltd, Oxford, October 1994 Announcement of public availability of Fortran 90 software for the initial value problem in ordinary differential equations. TR5/94 (NP2773) Postscript PDF Chelsom, J. and Pengelly, M.The NAG Product Information Database NAG Ltd, Oxford, October 1994 Description of the NAG Product Information Database (NPID) system which manages the production and maintenance of documentation for NAG library products. TR4/94 (NP2716) Postscript PDF Datardina, S. P., Du Croz, J. J. and Levy, G.Level 2 and 3 BLAS in the NAG C Library NAG Ltd, Oxford, September 1994 This report describes a set of matrix-vector routines (Level-2 BLAS) and matrix-matrix routines (Level-3 BLAS) written in C. |
© Numerical Algorithms Group
Visit NAG on the web at:
www.nag.co.uk (Europe and ROW)
www.nag.com (North America)
www.nag-j.co.jp (Japan)
http://www.nag.co.uk/doc/techrep/index.asp