library(PerMallows) #elkészíti a kappa növekedési vektorait m=1,2,..., N-re novgyors=function(N){ novgyors=rep(0,N) kappasor=rep(0,N*2) dim(kappasor)=c(2,N) kappasor[1,1]=1 for (m in 2:N){ kappasor[2,1:(m-1)]=kappasor[1,1:(m-1)] v=runif.permutation(n = 1, m)[1] kappasor[2,v]=1 if (vkappasor[1,(m-1)]) } novgyors } novgyors2=function(x){ u=sapply(c(1:length(x)),function(i){rank(x[1:i])[i]}) N=length(u) novgyors2=rep(0,N) kappasor=rep(0,N*2) dim(kappasor)=c(2,N) kappasor[1,1]=1 for (m in 2:N){ kappasor[2,1:(m-1)]=kappasor[1,1:(m-1)] v=u[m] kappasor[2,v]=1 if (vkappasor[1,(m-1)]) } novgyors2 } print(date()) kidob3=sapply(c(1:200), function(i){novgyors(100)}) print(date()) no_cores=detectCores()-1 cl=makeCluster(no_cores) clusterExport(cl, "novgyors") clusterExport(cl, "runif.permutation") print(date()) proba_N_20000_n_1000=parSapply(cl,c(1:1000),function(i){nov(20000)}) print(date()) stopCluster(cl)