Skip to content
Snippets Groups Projects
Commit 139c2271 authored by mattijs's avatar mattijs
Browse files

ENH: renumberMesh: make frontwidth calculation an option

parent 016dac0e
No related merge requests found
EXE_INC = \
-DFULLDEBUG -g -O0 \
/* -DFULLDEBUG -g -O0 */ \
-I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/dynamicMesh/lnInclude \
-I$(LIB_SRC)/finiteVolume/lnInclude \
......
......@@ -108,6 +108,7 @@ label getBand(const labelList& owner, const labelList& neighbour)
// Calculate band of matrix
void getBand
(
const bool calculateIntersect,
const label nCells,
const labelList& owner,
const labelList& neighbour,
......@@ -129,17 +130,22 @@ void getBand
cellBandwidth[nei] = max(cellBandwidth[nei], diff);
}
forAll(nIntersect, cellI)
bandwidth = max(cellBandwidth);
profile = sum(1.0*cellBandwidth);
sumSqrIntersect = 0.0;
if (calculateIntersect)
{
for (label colI = cellI-cellBandwidth[cellI]; colI <= cellI; colI++)
forAll(nIntersect, cellI)
{
nIntersect[colI]++;
for (label colI = cellI-cellBandwidth[cellI]; colI <= cellI; colI++)
{
nIntersect[colI] += 1.0;
}
}
}
bandwidth = max(cellBandwidth);
profile = sum(cellBandwidth);
sumSqrIntersect = sum(Foam::sqr(nIntersect));
sumSqrIntersect = sum(Foam::sqr(nIntersect));
}
}
......@@ -565,6 +571,11 @@ int main(int argc, char *argv[])
"dict",
"renumber according to system/renumberMeshDict"
);
argList::addBoolOption
(
"frontWidth",
"calculate the rms of the frontwidth"
);
# include "setRootCase.H"
# include "createTime.H"
......@@ -582,7 +593,7 @@ int main(int argc, char *argv[])
const word oldInstance = mesh.pointsInstance();
const bool readDict = args.optionFound("dict");
const bool doFrontWidth = args.optionFound("frontWidth");
const bool overwrite = args.optionFound("overwrite");
label band;
......@@ -590,6 +601,7 @@ int main(int argc, char *argv[])
scalar sumSqrIntersect;
getBand
(
doFrontWidth,
mesh.nCells(),
mesh.faceOwner(),
mesh.faceNeighbour(),
......@@ -1028,6 +1040,7 @@ int main(int argc, char *argv[])
scalar sumSqrIntersect;
getBand
(
doFrontWidth,
mesh.nCells(),
mesh.faceOwner(),
mesh.faceNeighbour(),
......
......@@ -41,6 +41,7 @@ method CuthillMcKee;
//method manual;
//method random;
//method spring;
//method boundaryFirst;
//CuthillMcKeeCoeffs
//{
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment