Re: [dev] [sbase][PATCH] Add factor(1)

From: FRIGN <dev_AT_frign.de>
Date: Fri, 26 Feb 2016 09:42:03 +0100

On Fri, 26 Feb 2016 09:18:20 +0100
Anselm R Garbe <garbeam_AT_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 <dev_AT_frign.de>
Received on Fri Feb 26 2016 - 09:42:03 CET

This archive was generated by hypermail 2.3.0 : Fri Feb 26 2016 - 09:48:16 CET