skip to navigation
skip to content

fortran-magic 0.7

An extension for IPython that help to use Fortran in your interactive session.

Fortran magic

.. image::
:alt: Latest PyPI version

.. image::
:alt: Number of PyPI downloads

Compile and import symbols from a cell with Fortran code, using f2py.

The contents of the cell are written to a `.f90` file in the
directory `IPYTHONDIR/fortran` using a filename with the hash of the
code. This file is then compiled. The resulting module
is imported and all of its symbols are injected into the user's

:author: Martín Gaitán <>
:documentation: see `this notebook`__

__ documentation_
.. _documentation:


You can install or upgrade via pip

pip install -U fortran-magic

Basic usage

Once it's installed, you can load it with ``%load_ext fortranmagic``.
Then put your Fortran code in a cell started with the cell magic ``%%fortran``. For example::

In[2]: %load_ext fortranmagic

In[3]: %%fortran

subroutine f1(x, y, z)
real, intent(in) :: x,y
real, intent(out) :: z

z = sin(x+y)

end subroutine f1

Every symbol is automatically imported. So the subroutine `f1` is already available in your python session as a function::

In[4]: f1(1.0, 2.1415)
Out[4]: 9.26574066397734e-05

See the documentation_ for further details.


0.7 / 2016-03-13

- Fix cross compatibility with older NumPy and Python 3.

Thanks to `Elliott Sales de Andrade`_ for this contribution

.. _Elliott Sales de Andrade:

0.6 / 2015-12-02

- Decode text before printing
- Call f2py module instead of binary (numpy >=1.10 is mandatory)
- Check if f2py command failed

Thanks to `Juan Luis Cano Rodríguez`_ for this contribution

.. _Juan Luis Cano Rodriguez:

0.5 / 2015-01-21

- Call f2py via subprocess. It fixes problems finding fortran compilers under Windows. (Thanks to `David Powell`_ )

.. _David Powell:

0.4.3 / 2013-12-09

- Fix two python3.2+ incompatibilities (Thanks `Ramon Crehuet`_ for the report)

.. _Ramon Crehuet:

0.4.2 / 2013-10-08

- Implement the ``--extra`` option (Thanks to `Denis Vasilyev`_ for the help)
- Include ``%%fortran``'s args in the hashing, so the same cell are
recompiled with the same code but different arguments

.. _Denis Vasilyev:

0.3 / 2013-10-03

- Added ``%fortran_config`` to set and persist default arguments
for ``%%fortran``
- Improve documentation

0.2.1 / 2013-09-24

- Packaged and registered in pypi
- Starting a version's changelog

0.2 / 2013-09-19

- Fortran highlighting in a ``%%fortran`` cell
- Works (or it should) in any platform (linux/windows/osx)
and with py3 (thanks to `Bradley Froehle`_)
- Many f2py's arguments exposed as magic arguments
- Verbosity handling
- Improved documentation

.. _Bradley Froehle:

0.1 / 2013-09-08

- First public release  
File Type Py Version Uploaded on Size
fortran-magic-0.7.tar.gz (md5) Source 2016-03-13 6KB
fortran_magic-0.7-py3-none-any.whl (md5) Python Wheel 3.4 2016-03-13 9KB