C++_CALLS_F90
C++ Main Program Calls FORTRAN90 Subroutines


C++_CALLS_F90 is a directory of C++ programs which illustrates how a C++ main program can call a FORTRAN90 subroutine.

For this example, the KRONROD package is used. Note that the KRONROD library is available in C++ and in FORTRAN90, so this example is not created out of necessity (the C++ main program could have simply called the C++ version of KRONROD). Instead, it is intended as an example of how to do this when you have to (you don't have a C++ version of the routines you want to use.)

When calling a FORTRAN90 routine from a C++ function, there are some simple things that may be enough to guarantee success.

Licensing:

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

Languages:

C++_CALLS_F90 is available in a C version and a C++ version and a MATLAB version.

Related Data and Programs:

C_CALLS_F90, C programs which call a FORTRAN90 subroutine.

C++_CALLS_C, C++ programs which call a C function.

C++_CALLS_F77, C++ programs which call a FORTRAN77 subroutine.

F90_CALLS_C++, FORTRAN90 programs which call a C++ function.

KRONROD, a C++ library which can compute a Gauss and Gauss-Kronrod pair of quadrature rules of arbitrary order, by Robert Piessens, Maria Branders.

KRONROD, a FORTRAN90 library which can compute a Gauss and Gauss-Kronrod pair of quadrature rules of arbitrary order, by Robert Piessens, Maria Branders.

MIXED, C++ programs which call a function written in another programming language.

Reference:

Source Code:

KRONROD is the FORTRAN90 source code for the KRONROD library. It should be essentially unchanged from the standard version.

KRONROD_test is the C++ source code for the main program. Some changes have been made from the standard version in order to adjust for the fact that we are calling a FORTRAN77 subroutine.

Examples and Tests:

You can go up one level to the C++ source codes.


Last revised on 08 December 2010.