The lovely client/server version of Ezfio
Dependency
You can use pip to install zezfio
and all the Python Dependencies and
pip install zezfio
Or you can use conda to install the Python Dependencies (+ ZMQ)
conda install -c https://conda.anaconda.org/tapplencourt jinja2 pyzmq irpy
PS: You can replace the name of the package by the tar.gz
precedingly downloaded from the anaconda cloud
Boilerplate
Generate the config file
./zezfio_legacy2json <legacy_config> > <json_config>
Generate and Compile the fortran file
- Honda is the best electric (and fortran) generator around!
./zezfio_honda <json_config> > <file.f90>
- Compile the library (just don't forget to include f77_zmq.h)
- Link it with your
main
fortran file
Run Forrest, Run!
Python server (Paris is the best city in the world regard too waiter)
./zezfio_paris <address> <json_config> <db_path>
Fortran
export EZFIO_ADDRESS=<address>
- Exec your main as usual
Code architecture
+---------------------+
| {{ variable.name }} |
+---------------------+
| Value of variable | +-----------------+
| in Python format | |
+---------------------+ |
+ |
| |
v v
+-----------------------+ +----------------------------------------+
| {{ variable.name }}_c | | {{ another_variable.name }}_dimension |
+-----------------------+ +----------------------------------------+
| Value of variable | | Dimension of another variable in |
| in C format | | Python format (ie [ao_num]) |
+-----------------------+ +----------------------------------------+
+
|
v
+--------------------------+
| {{ variable.name }}_csze |
+--------------------------+
| Number of bytes in the |
| C format variable |
+--------------------------+