Implement PML on GPUs
Description
Add buffers for different PML arrays. Implement kernels for applying the PML boundary and for updating the convolutions. Change the logic such that the batchified code path is taken for PML.
Also make PML work with plane wave or constant boundaries on GPU. Implement an extra kernel to copy the data using a map to the right location in the batches.
Enable some Maxwell tests on GPUs.
News snippet
Implement PML for Maxwell's equations on GPUs
Checklist
-
I have checked that my code follows the Octopus coding standards -
I have added tests for all the new features added in this request.