44 void Foam::mapDistribute::transform::operator()
52 void Foam::mapDistribute::transform::operator()
59 void Foam::mapDistribute::transform::operator()
66 void Foam::mapDistribute::transform::operator()
74 void Foam::mapDistribute::transform::operator()
82 void Foam::mapDistribute::transform::operator()
89 void Foam::mapDistribute::transform::operator()
96 void Foam::mapDistribute::transform::operator()
104 void Foam::mapDistribute::transform::operator()
112 void Foam::mapDistribute::transform::operator()
119 void Foam::mapDistribute::transform::operator()
126 void Foam::mapDistribute::transform::operator()
137 forAll(transformElements_, trafoI)
139 if (transformElements_[trafoI].size() > 0)
141 os <<
"transform " << trafoI <<
':' <<
endl
142 <<
" start : " << transformStart_[trafoI] <<
endl
143 <<
" size : " << transformElements_[trafoI].size() <<
endl;
160 transformElements_(map.transformElements_),
161 transformStart_(map.transformStart_)
175 const label constructSize,
178 const bool subHasFlip,
179 const bool constructHasFlip
186 std::move(constructMap),
195 const label constructSize,
200 const bool subHasFlip,
201 const bool constructHasFlip
208 std::move(constructMap),
212 transformElements_(std::move(transformElements)),
213 transformStart_(std::move(transformStart))
279 calcCompactAddressing
287 forAll(transformedElements, i)
290 label proci = globalTransforms.
processor(elem);
293 label index = globalTransforms.
index(elem);
294 label nCompact = compactMap[proci].size();
295 compactMap[proci].insert(index, nCompact);
318 forAll(transformedElements, i)
322 nPerTransform[trafoI]++;
325 transformStart_.
setSize(nTrafo);
326 transformElements_.setSize(nTrafo);
327 forAll(transformStart_, trafoI)
329 transformStart_[trafoI] = constructSize_;
330 constructSize_ += nPerTransform[trafoI];
331 transformElements_[trafoI].
setSize(nPerTransform[trafoI]);
337 transformedIndices.
setSize(transformedElements.size());
338 forAll(transformedElements, i)
341 label proci = globalTransforms.
processor(elem);
342 label index = globalTransforms.
index(elem);
350 : compactMap[proci][index]
353 label&
n = nPerTransform[trafoI];
355 transformElements_[trafoI][
n] = rawElemI;
357 transformedIndices[i] = transformStart_[trafoI]+
n;
384 calcCompactAddressing
392 forAll(transformedElements, celli)
398 label proci = globalTransforms.
processor(elems[i]);
401 label index = globalTransforms.
index(elems[i]);
402 label nCompact = compactMap[proci].size();
403 compactMap[proci].insert(index, nCompact);
427 forAll(transformedElements, celli)
434 nPerTransform[trafoI]++;
438 transformStart_.
setSize(nTrafo);
439 transformElements_.setSize(nTrafo);
440 forAll(transformStart_, trafoI)
442 transformStart_[trafoI] = constructSize_;
443 constructSize_ += nPerTransform[trafoI];
444 transformElements_[trafoI].
setSize(nPerTransform[trafoI]);
450 transformedIndices.
setSize(transformedElements.size());
451 forAll(transformedElements, celli)
454 transformedIndices[celli].
setSize(elems.size());
458 label proci = globalTransforms.
processor(elems[i]);
459 label index = globalTransforms.
index(elems[i]);
467 : compactMap[proci][index]
470 label&
n = nPerTransform[trafoI];
472 transformElements_[trafoI][
n] = rawElemI;
474 transformedIndices[celli][i] = transformStart_[trafoI]+
n;
489 const bool subHasFlip,
490 const bool constructHasFlip
513 return findLower(transformStart_, index+1);
525 transformElements_.transfer(rhs.transformElements_);
526 transformStart_.transfer(rhs.transformStart_);
540 transformElements_ = rhs.transformElements_;
541 transformStart_ = rhs.transformStart_;
562 >> map.transformElements_ >> map.transformStart_;
572 os << static_cast<const mapDistributeBase&>(map) <<
token::NL
574 << map.transformStart_;