HSL (Fortran Library)
   HOME

TheInfoList



OR:

HSL, originally the Harwell Subroutine Library, is a collection of Fortran 77 and 95 codes that address core problems in
numerical analysis Numerical analysis is the study of algorithms that use numerical approximation (as opposed to symbolic computation, symbolic manipulations) for the problems of mathematical analysis (as distinguished from discrete mathematics). It is the study of ...
. It is primarily developed by the Numerical Analysis Group at the
Rutherford Appleton Laboratory The Rutherford Appleton Laboratory (RAL) is one of the national scientific research laboratories in the UK operated by the Science and Technology Facilities Council (STFC). It began as the Rutherford High Energy Laboratory, merged with the At ...
with contributions from other experts in the field. HSL codes are easily recognizable by the format of their names, consisting of two letters followed by two numbers, dating back to early versions of Fortran's limited
subroutine In computer programming, a function (also procedure, method, subroutine, routine, or subprogram) is a callable unit of software logic that has a well-defined interface and behavior and can be invoked multiple times. Callable units provide a ...
name length. The letters denote a broad classification of the problem they solve, and the numbers serve to distinguish different codes. For example, the well known sparse LU code ''MA28'' (superseded by ''MA48'') is a Matrix Algebra code number 28. Fortran 95 codes are differentiated from Fortran 77 codes by the prefix ''HSL_''.


History


Early history

Original development of the Harwell Subroutine Library began in 1963 by Mike Powell and Mike Hopper for internal use on an IBM mainframe at AERE Harwell. Early contributors also included Alan Curtis. With a spreading reputation, the Library was distributed externally for the first time in 1964 upon request. The first library catalog (AERE Report M-1748) was released in 1966.


Recent history

Over the intervening years, HSL has striven to maintain a high standard of reliability and has garnered a worldwide reputation as a prime source of numerical software. It has undergone a number of changes to reflect newly available features of the Fortran language, completing in 1990 the conversion to Fortran 77, and more recently, the entire Library has been made
thread safe In multi-threaded computer programming, a function is thread-safe when it can be invoked or accessed concurrently by multiple threads without causing unexpected behavior, race conditions, or data corruption. As in the multi-threaded context where ...
. Many newer codes are written in Fortran 95. New packages continue to be developed, with a new release issued every two to three years. Many older codes have now been superseded and are available in the HSL Archive.


Licensing

The current version, ''HSL 2007'' is a commercial product sold by AspenTech, but is also available without charge to individual academics direct from STFC for teaching and their own academic research purposes. HSL is currently not sold to commercial competitors of Aspen Technology. Obsolete routines are stored in the ''HSL archive'' and are available for personal non-commercial use by anyone following registration with HSL. Commercial use and distribution of these routines still requires a purchased licence.


References

* J.K.Reid and J.A.Scott (Dec 2006, Sep 2007), ''Guidelines for the development of HSL software'', Technical Repor
RAL-TR-2006-031
* M.J.D.Powell ''25 years of Theoretical Physics 1954-1979: Chapter XVIII: Numerical Analysis''. A special publication by Harwell Research Laboratory of UKAEA


Footnotes


External links


HSL home page at STFC

HSL home page at AspenTech


Fortran libraries Numerical software Science and Technology Facilities Council Science and technology in Oxfordshire Vale of White Horse {{compu-library-stub