Closed edaub closed 4 years ago
Based on a brief exchange with David Ham, Firedrake supports some variant of what I want to do but the issue is that interpolating between different meshes seems to not be supported. I would need to dig through the PyOP2 code to figure out what changes might need to be made and how much work it would be. Closing this until I have a better idea how much of a difference it makes given the other approximations made.
At the moment, the interpolation matrix does a projection to map the sensor data point to the FEM mesh points. This is correct for piecewise linear elements (1st order continuous Galerkin or Lagrange finite elements), but is not correct for the general case. To be truly correct, this should be an interpolation rather than a projection, but interpolation requires knowledge of the FEM basis functions and depends on more complex workings under the hood to calculate this correctly. Projection is easier to compute in the general case, and thus for the initial work on this I simply implemented projection to get the library working.
However, given that other approximations are made throughout the computation, it is unclear if this makes a significant difference and needs to be studied in more depth to determine how much error this introduces to the computation.