Visible to Intel only — GUID: GUID-DACB4F53-E733-45BB-9F71-4BB0B7584B83
Visible to Intel only — GUID: GUID-DACB4F53-E733-45BB-9F71-4BB0B7584B83
Appendix C: Specific Features of Fortran 95 Interfaces for LAPACK Routines
Intel® oneMKL implements Fortran 95 interface for LAPACK package, further referred to as oneMKL LAPACK95, to provide full capacity of oneMKL FORTRAN 77 LAPACK routines. This is the principal difference of Intel oneMKL from the Netlib Fortran 95 implementation for LAPACK.
A new feature of oneMKL LAPACK95 by comparison with Intel oneMKL LAPACK77 implementation is presenting a package of source interfaces along with wrappers that make the implementation compiler-independent. As a result, the oneMKL LAPACK package can be used in all programming environments intended for Fortran 95.
Depending on the degree and type of difference from Netlib implementation, the oneMKL LAPACK95 interfaces fall into several groups that require different transformations (see "oneMKL Fortran 95 Interfaces for LAPACK Routines vs. Netlib Implementation"). The groups are given in full with the calling sequences of the routines and appropriate differences from Netlib analogs.
The following conventions are used:
<interface> ::= <name of interface> '(' <arguments list>')' <arguments list> ::= <first argument> {<argument>}* <first argument> ::= < identifier > <argument> ::= <required argument>|<optional argument> <required argument> ::= ',' <identifier> <optional argument> ::= '[,' <identifier> ']' <name of interface> ::= <identifier>
where defined notions are separated from definitions by ::=, notion names are marked by angle brackets, terminals are given in quotes, and {…}* denotes repetition zero, one, or more times.
<first argument> and each <required argument> should be present in all calls of denoted interface, <optional argument> may be omitted. Comments to interface definitions are provided where necessary. Comment lines begin with character !.
Two interfaces with one name are presented when two variants of subroutine calls (separated by types of arguments) exist.