48 errorDrivenRefinement,
60 Foam::errorDrivenRefinement::errorDrivenRefinement
69 refinementEngine_(topoChanger().
mesh(),
true),
70 errorField_(dict.
lookup(
"errorField"))
85 const Time& runTime = topoChanger().mesh().
time();
91 Info<<
"errorDrivenRefinement::changeTopology() : triggering topo"
92 <<
" change since found errorField "
93 << errorField_ <<
endl;
102 Info<<
"errorDrivenRefinement::changeTopology() : no topo"
103 <<
" change request from me since no errorField "
104 << errorField_ <<
endl;
118 Info<<
"errorDrivenRefinement::setRefinement(polyTopoChange& ref)"
128 Info<<
"Looking up vector field with name " << errorField_ <<
endl;
141 Info<<
"Writing magResError" <<
endl;
144 Info<<
"min:" << min <<
" max:" << max <<
" avg:" << avg <<
endl;
153 refinementEngine_.getSplitFaces()
162 const labelList& candidates = refPattern.unsplitFaces();
166 labelList removedFaces(refinementEngine_.removeSplitFaces(candidates, ref));
176 label faceI = removedFaces[i];
178 markedCell[mesh.
faceOwner()[faceI]] =
true;
189 label newRefCellI = 0;
191 forAll(refCells, refCellI)
193 label cellI = refCells[refCellI].cellNo();
195 if (!markedCell[cellI] && (newRefCellI != refCellI))
197 refCells[newRefCellI++] = refCells[refCellI];
203 Info<<
"errorDrivenRefinement : shrinking refCells from "
205 <<
" to " << newRefCellI <<
endl;
213 cellCuts cuts(mesh, cellWalker, refCells);
216 refinementEngine_.setRefinement(cuts, ref);
235 Info<<
"errorDrivenRefinement::modifyMotionPoints(*pointField&)" <<
endl;
245 Info<<
"errorDrivenRefinement::updateMesh"
246 <<
"(const mapPolyMesh& morphMap)" <<
endl;
248 refinementEngine_.updateMesh(morphMap);
261 <<
" type " <<
type()