You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mrql.apache.org by Apache Wiki <wi...@apache.org> on 2013/04/22 21:19:02 UTC
[Mrql Wiki] Update of "RMAT.mrql" by LeonidasFegaras
Dear Wiki user,
You have subscribed to a wiki page or wiki category on "Mrql Wiki" for change notification.
The "RMAT.mrql" page has been changed by LeonidasFegaras:
http://wiki.apache.org/mrql/RMAT.mrql
New page:
{{{
// Kronecker graph generator parameters:
a = 0.57;
b = 0.19;
c = 0.19;
d = 1-(a+b+c);
function randomEdge ( imin: int, imax: int, jmin: int, jmax: int ): (int,int) {
if (imin = imax and jmin = jmax)
then (imin,jmin)
else let n = random(1000)
in if (n as float <= 1000*a)
then randomEdge(imin,(imin+imax)/2,jmin,(jmin+jmax)/2)
else if (n as float <= 1000*(a+b))
then randomEdge((imin+imax)/2,imax,jmin,(jmin+jmax)/2)
else if (n as float <= 1000*(a+b+c))
then randomEdge(imin,(imin+imax)/2,(jmin+jmax)/2,jmax)
else randomEdge((imin+imax)/2,imax,(jmin+jmax)/2,jmax)
};
store "graph.bin"
from select distinct randomEdge(0,toInt(args[0]),0,toInt(args[0]))
from i in 1...(toLong(args[1]));
}}}