Work in progress: Primary variables on GPU
This is a very incomplete attempt at the moment. To get the DUNE vectors with GPU decorators, those classes have in essence been copied over to the repo and then been modified to fit on a GPU. They are in a different namespace than Dune as well.
Be aware that due to Dune having a different license than OPM (GPL 2 + exception vs GPL 3) it is not at all straightforward to move code from Dune to OPM. It is best avoided. A better solution is to make the necessary additions in a dune fork instead. That also makes it much easier to get them into upstream Dune, even if that might not be something that is likely to happen it is a much better situation.
So the FieldVector stuff is not meant to be merged, but I needed a proof-of-concept to see what changes were needed, also for further work porting more to the GPU. So far the changes to it hasn't been that substantial, and can probably be made as a PR to Dune. However, no never knows with the GPU compilers, and suddenly we see that it needs a rewrite to fit on a GPU, and then I would be in favour of having it in OPM I think.
All that to say: Don't merge this, and I don't intend to mess up the licensing.