It looks like that will probably work, although type
is used to specify the name of the mako macro used in the BC kernel. To avoid having to make a new macro you could just modify an existing BC otherwise you can just copy pyfr/solvers/navstokes/kernels/bcs/no-slp-isot-wall.mako
to pyfr/solvers/navstokes/kernels/bcs/no-slp-Tproilewall.mako
. That should do it.
To answer your question on how to modify pyfr on a Linux system, the best way is to probably follow something along these lines.
Prequesites:
These are not exhaustive but the major ones are:
- git fork of pyfr
- python version 3.x, x>=7 seems to work fine for me.
- MPI (it is a reasonable idea to compile this your self. Personally I use UCX and then OpenMPI compiled with UCX aware.)
Steps
- Make a python virtual environment:
$ python3.8 -m venv pyfr_venv && cd pyfr_venv
- Activate the venv:
$ . ./bin/activate
- Install some requirements for pyfr:
$ pip install mpi4py h5py
(for some reason I find you have to explicitly do these ones). - Install pyfr for the dependencies and then uninstall:
$ pip install pyfr && pip uninstall pyfr
- Clone you pyfr fork:
$ git clone <some git repo> && cd PyFR
- Install pyfr from the local version you just cloned:
$ pip install -e .
That should do it, although I haven’t tested it exactly. Once you’ve done that you’ll be in a directory called /pyfr_venv/PyFR
, inside of which is all the src for pyfr.
Let me know how you get on.