{
computeSynchronesChunk = function(indices)
{
+ if (verbose)
+ cat(paste("--- Compute synchrones for ",length(indices)," lines\n", sep=""))
ref_series = getRefSeries(indices)
#get medoids indices for this chunk of series
for (i in seq_len(nrow(ref_series)))
m <- synchronicity::boost.mutex()
indices_workers = .spreadIndices(seq_len(nb_ref_curves), nb_series_per_chunk)
- for (inds in indices_workers)
- {
- if (verbose)
- cat(paste("--- Compute synchrones for ",length(inds)," lines\n", sep=""))
+ ignored <-
if (parll)
- ignored <- parallel::mcparallel(computeSynchronesChunk(inds))
+ {
+ parallel::mclapply(indices_workers, computeSynchronesChunk,
+ mc.cores=ncores_clust, mc.allow.recursive=FALSE)
+ }
else
- computeSynchronesChunk(inds)
- }
- if (parll)
- parallel::mccollect()
+ lapply(indices_workers, computeSynchronesChunk)
mat_syncs = matrix(nrow=K, ncol=ncol(medoids))
vec_count = rep(NA, K)
if (parll)
m <- synchronicity::boost.mutex()
- for (i in 1:(n-1))
- {
+ ignored <-
if (parll)
- ignored <- parallel::mcparallel(computeDistancesLineI(i))
+ {
+ parallel::mclapply(seq_len(n-1), computeDistancesLineI,
+ mc.cores=ncores_clust, mc.allow.recursive=FALSE)
+ }
else
- computeDistancesLineI(i)
- }
+ lapply(seq_len(n-1), computeDistancesLineI)
Xwer_dist[n,n] = 0.
- if (parll)
- parallel::mccollect()
-
mat_dists = matrix(nrow=n, ncol=n)
#TODO: avoid this loop?
for (i in 1:n)