aboutsummaryrefslogtreecommitdiff
path: root/science/py-PyFR
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2018-09-21 07:11:11 +0000
committerYuri Victorovich <yuri@FreeBSD.org>2018-09-21 07:11:11 +0000
commit73f08980a896eeab8dfd1e13bbb14ff7df5c291a (patch)
treeacf17371e40eaed95e9eb425c1eed6a667d65855 /science/py-PyFR
parent2feaae21306134fec03259bb936433b99c0983d7 (diff)
downloadports-73f08980a896eeab8dfd1e13bbb14ff7df5c291a.tar.gz
ports-73f08980a896eeab8dfd1e13bbb14ff7df5c291a.zip
Notes
Diffstat (limited to 'science/py-PyFR')
-rw-r--r--science/py-PyFR/Makefile41
-rw-r--r--science/py-PyFR/distinfo3
-rw-r--r--science/py-PyFR/pkg-descr20
3 files changed, 64 insertions, 0 deletions
diff --git a/science/py-PyFR/Makefile b/science/py-PyFR/Makefile
new file mode 100644
index 000000000000..466603d42492
--- /dev/null
+++ b/science/py-PyFR/Makefile
@@ -0,0 +1,41 @@
+# $FreeBSD$
+
+PORTNAME= PyFR
+DISTVERSION= 1.7.6
+CATEGORIES= science python
+MASTER_SITES= http://www.pyfr.org/download/
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Framework for solving advection-diffusion type problems
+
+LICENSE= BSD3CLAUSE
+xLICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}appdirs>=1.4.0:devel/py-appdirs@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}gimmik>=2.0:math/py-gimmik@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}h5py>=2.6:science/py-h5py@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}mako>=1.0.0:textproc/py-mako@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}mpi4py>=2.0:net/py-mpi4py@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytools>=2016.2.1:devel/py-pytools@${PY_FLAVOR} \
+ clblas>0:math/clblas \
+ ${NUMPY}
+
+USES= python:3.3+ shebangfix zip
+SHEBANG_FILES= setup.py pyfr/__main__.py
+USE_PYTHON= distutils concurrent autoplist
+NO_ARCH= yes
+
+OPTIONS_MULTI= MP
+OPTIONS_MULTI_MP= OPENCL OPENMP # CUDA isn't supported on FreeBSD
+OPTIONS_DEFAULT= ${OPTIONS_MULTI_MP}
+MP_DESC= Parallelization backend to install
+
+OPENCL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pyopencl>0:devel/py-pyopencl@${PY_FLAVOR}
+OPENMP_RUN_DEPENDS= openmp>0:devel/openmp
+
+post-install: # workaround: https://groups.google.com/forum/#!topic/pyfrmailinglist/RNi_LcizGBo
+ @${RM} ${STAGEDIR}${PREFIX}/__main__.py
+ @${REINPLACE_CMD} 's|^${PREFIX}/__main__\.py||' ${_PYTHONPKGLIST}
+
+.include <bsd.port.mk>
diff --git a/science/py-PyFR/distinfo b/science/py-PyFR/distinfo
new file mode 100644
index 000000000000..34481a4d37c3
--- /dev/null
+++ b/science/py-PyFR/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1537511875
+SHA256 (PyFR-1.7.6.zip) = a21a7127d8e6f0a6d705ed2fd6a8681e7d00e31065fc54cf06a2dd20b049d6dd
+SIZE (PyFR-1.7.6.zip) = 823578
diff --git a/science/py-PyFR/pkg-descr b/science/py-PyFR/pkg-descr
new file mode 100644
index 000000000000..e851ff3eee74
--- /dev/null
+++ b/science/py-PyFR/pkg-descr
@@ -0,0 +1,20 @@
+PyFR is an open-source Python based framework for solving advection-diffusion
+type problems on streaming architectures using the Flux Reconstruction approach
+of Huynh. The framework is designed to solve a range of governing systems on
+mixed unstructured grids containing various element types. It is also designed
+to target a range of hardware platforms via use of an in-built domain specific
+language derived from the Mako templating engine. The current release has the
+following capabilities:
+* Governing Equations - Euler, Navier Stokes
+* Dimensionality - 2D, 3D
+* Element Types - Triangles, Quadrilaterals, Hexahedra, Prisms, Tetrahedra,
+ Pyramids
+* Platforms - CPU Clusters, Nvidia GPU Clusters, AMD GPU Clusters, Intel Xeon
+ Phi Clusters
+* Spatial Discretisation - High-Order Flux Reconstruction
+* Temporal Discretisation - Explicit and Implicit (via Dual Time-Stepping)
+* Precision - Single, Double
+* Mesh Files Imported - Gmsh (.msh), CGNS (.cgns)
+* Solution Files Exported - Unstructured VTK (.vtu, .pvtu)
+
+WWW: http://www.pyfr.org/