https://onlinelibrary.wiley.com/doi/abs ... wilm.10366
In the WLD/DLW/LDW article and my C++ 2018 book we used the ADEB&C (Barakat Clark) version. This is a fast and accurate method even for NX = NY = 100, NT = 300 (e.g. T = 1, K = 60 it gives P = 1.732 in about .98 seconds on an old laptop. 35% of the computation is due to the specific form of the volatility function).
As a test, we took the original Saul’yev ADE method and it is 3 times faster than ADEB&C and also accurate. We take a novel FDM to solve the 1st
order hyperbolic PDE at A = A_max. In the past many solvers (Asian, Cheyette) choked because of incorrect understanding of upwinding. ADI is overkill in these cases as well as using similarity reduction techniques, possibly.
On a 2-core +hyperthreading (4 threads, essentially) we ran 8 calls of the solver using C++11 futures and the speedup was approximately 2.7. On bigger machines we can run even more instances.
We wish to use this model to generate training data for ML applications. But we don’t want to wait for 10 days for it to finish. More like [4,10] hours by choosing a good algorithm, C++11 futures and “lots” of processors.