SMVGEAR solver slows down VDIFF and HADV

Hi all,

I’m trying to use SMVGEAR solver. The executable runs normally and the outputs have no significant differences with outputs using ROS3 solver. However, the run time is much longer than that using ROS3 solver. I understand that the CHEM process would be much slower, but the VDIFF and HADV processes are also much slower. How can the chemical solver influence VDIFF and HADV as they are split?

ROS3 time
SMVGEAR time

That is very curious. Is this behavior reproducible? Make sure that you are using consistent optimization levels and other compiler flags for such a test.

The SMVGEAR solver is rarely used in CMAQ because it is so slow. That may be due to issues with our implementation rather than limitations inherent in the algorithm itself. If you can track down why it slows down VDIFF and the rest of the model so much – and even better, if you can provide a fix – that would be a great contribution to the user community!

I’ve encountered the problem. The severity appears to depend on the chemical mechanism and model domain. The northern hemispheric domain with cb6 mechanisms showed the greatest severity while the severity was less perhaps zero for the California domain with saprc07t mechanisms.

I can only guess on the cause. The SMVGear simultaneously solves for concentrations in blocks of grid cells. Perhaps, the method combined with SMVGEAR’s low absolute error tolerance (1.0e-9 ppm) produces random noise in the main concentration array that slow down the advection and diffusion routines. Note that increasing absolute tolerance (1.0e-7 ppm) reduces the problem but also reduces agreement with the Rosenbrock solver.