The Julia Phasta Branch
Overview
The goal of this project is to port PHASTA from a combination of C, C++, and Fortran over to Julia.
Status
The project is presently in the initial phase of planning and proof of concept. Ben Matthews has reworked his F90 version of PHASTA to build as a shared library with just enough Julia to replace main.cc and at least partial bindings for PhastaIO.
The source is presently available on the Viz nodes in
/users/matthb2/phasta-jl/
Once the project has been formalized more, it will be pushed to GitHub.
Compiling
To build with the GNU toolchain:
cmake CC=gcc CXX=g++ FC=gfortran -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS="-fPIC" -DCMAKE_CXX_FLAGS="-fPIC" -DCMAKE_Fortran_FLAGS="-fPIC" ../phasta
Depending on the hardware you're running on, using -fpic instead of -fPIC may result in smaller and faster code... or it may result in linker errors (http://stackoverflow.com/questions/3544035/what-is-the-difference-between-fpic-and-fpic-gcc-parameters).
Bugs and Things to do
- Finish IO bindings to output files.
- Generate test environment.