NAG fl90, Release 4

FNLUX04DBL - License Managed

Linux (Intel), Intel Fortran 32-bit

Users' Note



Contents


1. Introduction

This document is essential reading for every user of the NAG fl90 implementation specified in the title. It provides implementation-specific detail that augments the information provided in the NAG fl90 Manual. Wherever that manual refer to the "Users' Note for your implementation", you should consult this note.

NAG recommends that you read the following minimum reference material before calling any library procedure:

(a) Essential Introduction
(b) Chapter Introduction
(c) Procedure Document
(d) Implementation-specific Users' Note

Items (a), (b) and (c) are included in the NAG fl90 Manual; item (d) is this document which is provided in HTML form.

2. Availability of Procedures

All procedures listed in the chapter contents documents of the NAG fl90 Manual, Release 4 are available in this implementation. At Release 4, 43 new primary ("user-callable") generic procedures have been introduced. Please consult the Release 4 News document in the fl90 Manual for lists of these procedures and for a list of procedures scheduled for withdrawal at future Releases. Your suggestions for new algorithms for future releases of the Library are welcomed (see Section 7).

3. General Information

3.1. Accessing the Library

Assuming that libnagfl90.a, libnagfl90.so, libnagfl90_noblas.a and libnagfl90_noblas.so have been installed in a directory in the search path of the linker, such as /usr/lib, and that the module information files have been moved to /usr/local/lib/fl90_modules, then you may link to NAG fl90 in the following manner:

ifc -static -I/usr/local/lib/fl90_modules driver.f90 -lnagfl90 -lpthread
or
ifc -I/usr/local/lib/fl90_modules driver.f90 -lnagfl90 -lpthread
where driver.f90 is your application program. You will be using the BLAS and LAPACK procedures provided by NAG. The first command will be using the NAG static library libnagfl90.a while the second command will be using the NAG dynamic library libnagfl90.so.

Alternatively, if you are using the MKL you need to refer to its Release Notes regarding which libraries to use during linking. For examples when you are using MKL version 5.2 installed in the default directory /opt/intel/mkl/lib/32, you can use:

ifc -static -I/usr/local/lib/fl90_modules driver.f90 -lnagfl90_noblas \
    -L/opt/intel/mkl/lib/32 -lmkl_lapack -lmkl_def -lguide -lpthread
or
ifc -I/usr/local/lib/fl90_modules driver.f90 -lnagfl90_noblas \
    -L/opt/intel/mkl/lib/32 -lmkl_lapack -lmkl_def -lguide -lpthread
The first command will be using the NAG static library libnagfl90_noblas.a and the MKL static libraries while the second command will be using the NAG dynamic library libnagfl90_noblas.so and the MKL dynamic libraries.

The -I/usr/local/lib/fl90_modules compiler option may not be needed if it has been included in the configuration file efc.cfg.

3.2. Example Programs

The example programs are most easily accessed by the commands nagexample, nagexample_noblas, nagexample_dynamic or nagexample_noblas_dynamic, which will provide you with a copy of an example program (and its data, if any), compile the program and link it with the library (showing you the compile command so that you can recompile your own version of the program). Finally, the executable program will be run, presenting its output to stdout. The example program concerned is specified by the argument to the command used, e.g.
nagexample nag_gen_lin_sys_ex01
will copy the example program and its data into the files nag_gen_lin_sys_ex01.f90 and nag_gen_lin_sys_ex01.dat in the current directory and process them to produce the example program results (using the compiled static library libnagfl90.a).

Alternatively you could use:

nagexample_dynamic nag_gen_lin_sys_ex01
in this case you will be using the dynamic library libnagfl90.so.

If your installation contains the MKL and the NAG libraries libnagfl90_noblas.a or libnagfl90_noblas.so, you could use:

nagexample_noblas         nag_gen_lin_sys_ex01
or
nagexample_noblas_dynamic nag_gen_lin_sys_ex01
The first command will be using the static library libnagfl90_noblas.a, while the second command will use the dynamic library libnagfl90_noblas.so.

3.3. User Documentation

The following machine-readable information file is provided in the doc directory:

A full on-line version of the NAG fl90 Manual is supplied in the form of Portable Document (PDF) files. Please see the Readme file on the distribution medium for further information.

4. Procedure-specific Information

Any further information which applies to one or more procedures in this implementation is listed below.

(a) Special Functions

Special functions will give error messages if called with illegal or unsafe arguments. General details are given in the NAG fl90 Manual, but parameter limits which are implementation-specific are given below:
 nag_gamma      error%code  = 201 if x > 1.70E+2
                error%code  = 202 if abs(x) < 2.23E-308
                error%code  = 203 if x < -1.70E+2
 nag_log_gamma  error%code  = 201 if x > 2.55E+305

 nag_erfc       x(hi)  = 2.66E+1
                x(low) = -6.25E+0
 nag_erf        x(hi)  = 6.25E+0

 nag_bessel_y0  error%code  = 201 if x > 1.0E+16
 nag_bessel_y1  error%code  = 202 if x > 1.0E+16
                error%code  = 201 if 0.0 < x <= 2.23E-308
 nag_bessel_y   error%code  = 201 if abs(z) < 3.93E-305
                error%code  = 202 if abs(z) or NU+N-1 > 1.07E+9
                error%code  = 203 if abs(z) or NU+N-1 > 3.27E+4
 nag_bessel_j0  error%code  = 201 if abs(x) > 1.0E+16
 nag_bessel_j1  error%code  = 201 if abs(x) > 1.0E+16
 nag_bessel_j   error%code  = 201 if imag(z) > 7.00E+2
                error%code  = 202 if abs(z) or NU+N-1 > 1.07E+9
                error%code  = 203 if abs(z) or NU+N-1 > 3.27E+4
 nag_bessel_k1  error%code  = 201 if 0.0 < x <= 2.23E-308
 nag_bessel_k   error%code  = 201 if abs(z) < 3.93E-305
                error%code  = 202 if abs(z) or NU+N-1 > 1.07E+9
                error%code  = 203 if abs(z) or NU+N-1 > 3.27E+4
 nag_bessel_i0  error%code  = 201 if abs(x) > 7.116E+2
 nag_bessel_i1  error%code  = 201 if abs(x) > 7.116E+2
 nag_bessel_i   error%code  = 201 if real(z) > 7.00E+2
                error%code  = 202 if abs(z) or NU+N-1 > 1.07E+9
                error%code  = 203 if abs(z) or NU+N-1 > 3.27E+4

 nag_ell_rd     error%code  = 201 if an argument < 1.579E-205
                error%code  = 202 if an argument < 3.774E+202
 nag_ell_rj     error%code  = 201 if an argument < 2.820E-103
                error%code  = 202 if an argument < 1.404E+102

 nag_airy_ai    error%code  = 201 if z is REAL and z > 1.038E+2
                error%code  = 202 if z is REAL and z < -1.8E+9
                error%code  = 203 if abs(z) > 1.02E+3
                error%code  = 204 if abs(z) > 1.04E+6
 nag_airy_bi    error%code  = 201 if z is REAL and z > 1.041E+2
                error%code  = 202 if z is REAL and z < -1.8E+9
                error%code  = 203 if abs(z) > 1.02E+3
                error%code  = 204 if abs(z) > 1.04E+6

 nag_kelvin_ber error%code  = 201 if abs(x) > 49.50     
 nag_kelvin_bei error%code  = 201 if abs(x) > 49.50     
 nag_kelvin_ker error%code  = 201 if x > 9.9726E+2
 nag_kelvin_kei error%code  = 201 if x > 9.9726E+2

5. Documentation

Each supported NAG fl90 site is currently provided with a printed copy of the NAG fl90 Manual (or Update). Additional copies are available for purchase; please refer to the NAG documentation order form (available on the NAG websites, see Section 6 (c)) for details of current prices.

6. Support from NAG

(a) Contact with NAG

Queries concerning this document or the implementation generally should be directed initially to your local Advisory Service. If you have difficulty in making contact locally, you can contact NAG directly at one of the addresses given in the Appendix. Users subscribing to the support service are encouraged to contact one of the NAG Response Centres (see below).

(b) NAG Response Centres

The NAG Response Centres are available for general enquiries from all users and also for technical queries from sites with an annually licensed product or support service.

The Response Centres are open during office hours, but contact is possible by fax, email and phone (answering machine) at all times.

When contacting a Response Centre please quote your NAG site reference and NAG product code (in this case FNLUX04DBL).

(c) NAG Websites

The NAG websites provide information about implementation availability, descriptions of products, downloadable software, product documentation and technical reports. The NAG websites can be accessed at

http://www.nag.co.uk/, http://www.nag.com/ (in North America) or http://www.nag-j.co.jp/ (in Japan)

(d) NAG Electronic Newsletter

If you would like to be kept up to date with news from NAG then please register to receive our free electronic newsletter, which will alert you to special offers, announcements about new products or product/service enhancements, customer stories and NAG's event diary. You can register via one of our websites, or by contacting us at nagnews@nag.co.uk.

7. User Feedback

Many factors influence the way NAG's products and services evolve and your ideas are invaluable in helping us to ensure that we meet your needs. If you would like to contribute to this process we would be delighted to receive your comments. Please contact your local NAG Response Centre (shown below).

Appendix - Contact Addresses

NAG Ltd
Wilkinson House
Jordan Hill Road
OXFORD  OX2 8DR                         NAG Ltd Response Centre
United Kingdom                          email: support@nag.co.uk
 
Tel: +44 (0)1865 511245                 Tel: +44 (0)1865 311744
Fax: +44 (0)1865 310139                 Fax: +44 (0)1865 310139
 
NAG Inc
1431 Opus Place, Suite 220
Downers Grove
IL 60515-1362                           NAG Inc Response Center
USA                                     email: infodesk@nag.com
 
Tel: +1 630 971 2337                    Tel: +1 630 971 2345
Fax: +1 630 971 2706                    Fax: +1 630 971 2706
 
Nihon NAG KK
Hatchobori Frontier Building 2F
4-9-9
Hatchobori
Chuo-ku
Tokyo
104-0032
Japan
email: help@nag-j.co.jp

Tel: +81 (0)3 5542 6311
Fax: +81 (0)3 5542 6312