Issue with Limiting ADER-DG combined with Material Parameters
Maurizio's observations
-
If I use the linear kernerl for the "linear elastic part", the NCP term is called sometime with Q==0, so since one component contains the density it divide by 0 at a certain time and this destroy the solution. In this case if I simply add a check on Q, like if(max(|Q|)<1.e-13) return zero, then it seems to work fine. Also this is strange but maybe we have to better undestand exactly where the wrong call take place.
-
If I use parameters for the material and the linear kernel it seems to work fine.
-
If I use parameters for the material in combination with the limiter, godunov limiter-type, I get a completelly wrong (and unstable) solution, even if I simply add the parameters in the spec file but I don't really use them in the PDE system. In this case if I use musclhancock I simply does not get the solution due to an error in the first time step.
TODOs:
We currently do not know if it is a problem of the coupling or of the FV solvers.
-
Does the pure FV solver work correctly with parameters?Yes. It appears so. -
Does the nonlinear limiting ADER-DG solver work correctly with parameters? No, as shown below. An error appears at the interface of ADER-DG and FV cells in an experiment where a local recomputation is performed.
This might indicate that the DG->FV projectors are still wrong. Sometimes I wish someone wrote some proper unit tests ;-)Apparently, the error does not appear if the limiter domain is static. This would imply that projectors are correctbut something goes wrong in the recomputation.The recomputation algorithm was correct. The issue was in the
updateSolution
function where the backup of the previous solution did not take parameters into account.