BUG: GAMG: processorAgglomerator crashes. Fixes #2281.

Problem was extending the storage, copying the
original contents.
This commit is contained in:
mattijs 2021-11-29 13:45:53 +00:00
parent 2880a54373
commit 6abbcb3eac
4 changed files with 34 additions and 10 deletions

View File

@ -99,13 +99,12 @@ void Foam::globalIndex::gather
allFld.resize_nocopy(off.last());
// Assign my local data - respect offset information
// so that we can request 0 entries to be copied
// so that we can request 0 entries to be copied.
// Also handle the case where we have a slice of the full
// list.
SubList<Type> localSlot(allFld, off[1]-off[0], off[0]);
if (!localSlot.empty())
{
localSlot = fld;
}
SubList<Type>(allFld, off[1]-off[0], off[0]) =
SubList<Type>(fld, off[1]-off[0]);
if
(

View File

@ -5,6 +5,28 @@ cd "${0%/*}" || exit # Run from this directory
./Allrun.pre
runApplication $(getApplication)
runApplication decomposePar
#- Run without processorAgglomerator
runParallel $(getApplication)
#- Run with processorAgglomerator
foamDictionary -entry solvers.p.processorAgglomerator -set 'masterCoarsest' system/fvSolution
runParallel -s masterCoarsest $(getApplication)
#- Run with processorAgglomerator
foamDictionary -entry solvers.p.processorAgglomerator -set 'procFaces' system/fvSolution
foamDictionary -entry solvers.p.nAgglomeratingCells -set 100 system/fvSolution
runParallel -s procFaces $(getApplication)
foamDictionary -entry solvers.p.nAgglomeratingCells -remove system/fvSolution
#- Run with processorAgglomerator
foamDictionary -entry solvers.p.processorAgglomerator -set 'eager' system/fvSolution
runParallel -s eager $(getApplication)
#- Run with processorAgglomerator
foamDictionary -entry solvers.p.processorAgglomerator -set 'manual' system/fvSolution
foamDictionary -entry solvers.p.processorAgglomeration -set '((9 ((0 1 2 3)(4 5 6))))' system/fvSolution
runParallel -s manual $(getApplication)
#------------------------------------------------------------------------------

View File

@ -5,8 +5,6 @@ cd "${0%/*}" || exit # Run from this directory
./Allrun.pre
runApplication decomposePar
runParallel $(getApplication)
runApplication $(getApplication)
#------------------------------------------------------------------------------

View File

@ -14,6 +14,11 @@ FoamFile
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
DebugSwitches
{
GAMGAgglomeration 1;
}
application rhoSimpleFoam;
startFrom startTime;