10
0
mirror of https://gitlab.com/scemama/irpf90.git synced 2024-07-05 19:05:51 +02:00
This commit is contained in:
Anthony Scemama 2014-10-08 21:14:35 +02:00
parent 6b8ebfb81c
commit 13c983fd33
3 changed files with 43 additions and 51 deletions

49
README
View File

@ -1,49 +0,0 @@
======
IRPF90
======
Dependencies
------------
- GNU make (>= 3.81 recommended)
- Python > 2.3
- Any Fortran 90 compiler (Intel recommended)
Installing IRPF90
-----------------
${IRPF90_HOME} is the location of your irpf90 directory::
cd ${IRPF90_HOME}
make
cat << EOF >> ${HOME}/.bash_profile
export PYTHONPATH=${IRPF90_HOME}/src:${PYTHONPATH}
export PATH=${IRPF90_HOME}/bin:${PATH}
export MANPATH=${IRPF90_HOME}/man:${MANPATH}
EOF
. ${HOME}/.bash_profile
Using IRPF90
------------
In an empty directory, run::
irpf90 --init
This command creates a new Makefile suitable for most irpf90 projects.
Now you can start to program using irpf90.
Web Site
--------
http://irpf90.ups-tlse.fr
Author
------
| Anthony Scemama, LCPQ-IRSAMC, CNRS-Universite Paul Sabatier
| <scemama@irsamc.ups-tlse.fr>
| http://scemama.mooo.com

View File

@ -3,4 +3,43 @@ IRPF90
IRPF90 is a Fortran90 preprocessor written in Python for programming using the Implicit Reference to Parameters (IRP) method. It simplifies the development of large fortran codes in the field of scientific high performance computing.
web site: http://irpf90.ups-tlse.fr
Dependencies
------------
- GNU make (>= 3.81 recommended)
- Python > 2.3
- Any Fortran 90 compiler (Intel recommended)
Installing IRPF90
-----------------
``${IRPF90_HOME}`` is the location of your irpf90 directory::
``` bash
cd ${IRPF90_HOME}
make
cat << EOF >> ${HOME}/.bash_profile
export PYTHONPATH=${IRPF90_HOME}/src:${PYTHONPATH}
export PATH=${IRPF90_HOME}/bin:${PATH}
export MANPATH=${IRPF90_HOME}/man:${MANPATH}
EOF
. ${HOME}/.bash_profile
```
Using IRPF90
------------
In an empty directory, run::
irpf90 --init
This command creates a new Makefile suitable for most irpf90 projects.
Now you can start to program using irpf90.
Web Site
--------
http://irpf90.ups-tlse.fr

View File

@ -465,13 +465,15 @@ class Variable(object):
same_as = self.same_as
def check_openmp():
if not do_openmp:
result = [ "!$ nthreads = omp_get_num_threads()" ,
"!$ if (nthreads > 1) then" ,
"!$ print *, irp_here//': Error: Provider in an openMP section'" ,
"!$ stop 1",
"!$ endif" ]
else:
result = []
return result
return result
def build_alloc(name):
self = variables[name]