Azzera filtri
Azzera filtri

Error when using distributive property

1 visualizzazione (ultimi 30 giorni)
D G
D G il 26 Lug 2011
Hello!
The function below compares the output of two functions which run the same calculation. However, in one function the calculation's multiplications are distributed. It should output a matrix of 1s. However, it doesn't!
What's up with that?
function errorTest()
compute(1:100) == distributed(1:100)
function out = compute(a)
out = 10.1 * (a - 1);
end
function out = distributed(a)
out = 10.1 * a - 10.1;
end
end
Thanks!

Risposta accettata

Oleg Komarov
Oleg Komarov il 26 Lug 2011
The propagation of floating approximations is different:
idx = abs(compute(1:100) - distributed(1:100)) > 2*eps
nnz(idx)
How many values over 2eps?
  4 Commenti
D G
D G il 26 Lug 2011
I guess I had that backwards. If you remove the 2*, a lot of the answers are still different.
Oleg Komarov
Oleg Komarov il 26 Lug 2011
Cannot really help you more than that, I don't have experience with distributed server.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by