Translate if statement in code to math

Hey,
I have this piece of code that I'm trying understand what is going on. I usually use R, but had to look at a piece of code from matlab.
So can anyone tell me what this if statement does in math??
prob = exp(-dE / kT);
if dE <= 0 I I rand() <= prob;
spin(row, col) = - spin(row, col);
Cheers, Emil

Réponses (1)

OCDER
OCDER le 21 Sep 2017
Modifié(e) : OCDER le 21 Sep 2017
prob = exp(-dE / kT);
%define probability as prob = e^(-dE/kT), where dE and kT are some value
if dE <= 0 || rand() <= prob
%if dE <= 0, OR a uniformly distributed random number from 0 to 1 is <= prob
spin(row, col) = - spin(row, col);
%negate the sign of the value stored at (row, col) position of a matrix called spin
end
%end of the if statement

Catégories

Produits

Modifié(e) :

le 21 Sep 2017

Community Treasure Hunt

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

Start Hunting!

Translated by