On Fri, 26 Feb 2016 09:18:20 +0100 Anselm R Garbe <garb...@gmail.com> wrote:
Hey Anselm, I agree with you, but sadly with numerical algorithms, the case is a different (it's my area of work). > Of course the discussion about numeric algorithms is a bit different, > though still a simple implementation should not imply bad performance. > If you believe so, then someone must have misguided you quite a bit. Implementing an Euler-iteration for first order separable ODE's is the simplest way you can go, however, it comes at a high cost. Using a sophisticated Runge-Kutta-Fehlerberg-iteration is a whole other story and you end up with much much better results in less time. I like to see it like that: Gnome's constraints are given by its own complexity and it attempts to be faster by gaming these constraints and looking for "loopholes". dwm just removes these constraints for the most part by reducing complexity. The constraints of Numerical algorithms are given by the rules imposed by the axiom system of mathematics and everything that builds on top of it. Sadly, this system does not guarantee that the best solution is also the shortest to write down, and actually in almost all cases, you end up with very complicated stuff to get things done. One counter-example is QR-Algorithms (Householder-, Givens-rotation, ...). It is very nice to work with those and allows you to solve a system of linear equations easily: Say A is the real matrix we're looking at. We get the QR-decomposition: A = QR. So now, we look at a system of linear equations Ax = y. Then we can do the following: Ax = y (=) QRx = y (=) Rx = Q^(-1)y = Q^Ty Q^Ty is easy to calculate, Rx = z := Q^Ty is simple. Problem solved! :D Oh, and the QR-decomposition never fails on you. Cheers FRIGN -- FRIGN <d...@frign.de>