FEATURE: Porting fixes and GGI bug fix. Author: Hrvoje Jasak. Merge: Hrvoje Jasak.
This commit is contained in:
commit
8178326462
10 changed files with 43 additions and 18 deletions
2
ThirdParty/AllMake.stage2
vendored
2
ThirdParty/AllMake.stage2
vendored
|
@ -102,7 +102,7 @@ then
|
|||
[ ! -z "$WM_THIRD_PARTY_USE_OPENMPI_188" ] && {
|
||||
echo "Building openmpi 1.8.8"
|
||||
( rpm_make -p openmpi-1.8.8 -s openmpi-1.8.8.spec -u http://www.open-mpi.org/software/ompi/v1.8/downloads/openmpi-1.8.8.tar.gz \
|
||||
-f --define '_configureAdditionalArgs "$WM_THIRD_PARTY_USE_OPENMPI_165_ConfigureAdditionalArgs"')
|
||||
-f --define '_configureAdditionalArgs "$WM_THIRD_PARTY_USE_OPENMPI_188_ConfigureAdditionalArgs"')
|
||||
}
|
||||
else
|
||||
echo "Using system installed OpenMPI"
|
||||
|
|
|
@ -45,6 +45,7 @@ int main(int argc, char *argv[])
|
|||
|
||||
// Add option to write empty sets
|
||||
argList::validOptions.insert("writeEmptySets", "");
|
||||
argList::validOptions.insert("liveObjectsOnly", "");
|
||||
|
||||
# include "setRootCase.H"
|
||||
# include "createTime.H"
|
||||
|
@ -52,6 +53,7 @@ int main(int argc, char *argv[])
|
|||
Info<< "Time = " << runTime.timeName() << endl;
|
||||
|
||||
bool writeEmptySets = args.optionFound("writeEmptySets");
|
||||
bool liveObjectsOnly = args.optionFound("liveObjectsOnly");
|
||||
|
||||
// Determine the processor count directly
|
||||
label nProcs = 0;
|
||||
|
@ -128,10 +130,18 @@ int main(int argc, char *argv[])
|
|||
{
|
||||
const labelList& addr = procMeshes.pointProcAddressing()[procI];
|
||||
|
||||
const label nProcPoints = procMeshes.meshes()[procI].nPoints();
|
||||
|
||||
labelHashSet procSet;
|
||||
|
||||
forAll (addr, pointI)
|
||||
{
|
||||
// Skip list when nPoints is reached
|
||||
if (liveObjectsOnly && pointI >= nProcPoints)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
if (set.found(addr[pointI]))
|
||||
{
|
||||
procSet.insert(pointI);
|
||||
|
@ -143,14 +153,14 @@ int main(int argc, char *argv[])
|
|||
// Set created, write it
|
||||
Info<< "Writing point set " << set.name()
|
||||
<< " on processor " << procI << endl;
|
||||
pointSet cs
|
||||
pointSet ps
|
||||
(
|
||||
procMeshes.meshes()[procI],
|
||||
set.name(),
|
||||
procSet,
|
||||
IOobject::NO_WRITE
|
||||
);
|
||||
cs.write();
|
||||
ps.write();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -172,10 +182,18 @@ int main(int argc, char *argv[])
|
|||
{
|
||||
const labelList& addr = procMeshes.faceProcAddressing()[procI];
|
||||
|
||||
const label nProcFaces = procMeshes.meshes()[procI].nFaces();
|
||||
|
||||
labelHashSet procSet;
|
||||
|
||||
forAll (addr, faceI)
|
||||
{
|
||||
// Skip list when nPoints is reached
|
||||
if (liveObjectsOnly && faceI >= nProcFaces)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
// Note faceProcAddressing peculiarity:
|
||||
// change of sign and offset. HJ, 7/Mar/2011
|
||||
if (set.found(mag(addr[faceI]) - 1))
|
||||
|
@ -189,14 +207,14 @@ int main(int argc, char *argv[])
|
|||
// Set created, write it
|
||||
Info<< "Writing face set " << set.name()
|
||||
<< " on processor " << procI << endl;
|
||||
faceSet cs
|
||||
faceSet fs
|
||||
(
|
||||
procMeshes.meshes()[procI],
|
||||
set.name(),
|
||||
procSet,
|
||||
IOobject::NO_WRITE
|
||||
);
|
||||
cs.write();
|
||||
fs.write();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -218,6 +236,8 @@ int main(int argc, char *argv[])
|
|||
{
|
||||
const labelList& addr = procMeshes.cellProcAddressing()[procI];
|
||||
|
||||
// There are no retired cells: no special handling required
|
||||
|
||||
labelHashSet procSet;
|
||||
|
||||
forAll (addr, cellI)
|
||||
|
|
|
@ -157,7 +157,7 @@ Version: 1.11.4-1 (or above)
|
|||
URL : http://downloads.sourceforge.net/gnuwin32/wget-1.11.4-1-bin.zip, http://downloads.sourceforge.net/gnuwin32/wget-1.11.4-1-dep.zip, http://downloads.sourceforge.net/gnuwin32/wget-1.11.4-1-doc.zip
|
||||
For : Automatically downloading files from internet (eg. for use in automated build scripts)
|
||||
|
||||
git clone --branch nameClashesForWinPort git://git.code.sf.net/u/dominikchrist/foam-extend-3.1-dc foam-extend-3.1-win
|
||||
git clone --branch nextRelease git://git.code.sf.net/p/openfoam-extend/foam-extend-3.1
|
||||
|
||||
|
||||
4. EXAMPLE OUTPUT FROM SOUCING etc/bashrc.mingw
|
||||
|
@ -199,14 +199,14 @@ Checking versions of installed system tools (based on PATH) ...
|
|||
Bison: /bin/bison.exe [bison (GNU Bison) 2.4.2]
|
||||
CMake: /c/Programs/cmake-3.2.3-win32-x86/bin/cmake.exe [cmake version 3.2.3]
|
||||
Flex: /bin/flex.exe [flex 2.5.35]
|
||||
G++: /c/Programs/x86_64-4.8.2-release-win32-seh-rt_v3-rev3/mingw64/bin/g++.exe [g++.exe (x86_64-win32-seh-rev3, Built by MinGW-W64 project) 4.8.2]
|
||||
GCC: /c/Programs/x86_64-4.8.2-release-win32-seh-rt_v3-rev3/mingw64/bin/gcc.exe [gcc.exe (x86_64-win32-seh-rev3, Built by MinGW-W64 project) 4.8.2]
|
||||
G++: /c/Programs/mingw64/bin/g++.exe [g++.exe (x86_64-win32-seh-rev3, Built by MinGW-W64 project) 4.8.2]
|
||||
GCC: /c/Programs/mingw64/bin/gcc.exe [gcc.exe (x86_64-win32-seh-rev3, Built by MinGW-W64 project) 4.8.2]
|
||||
GMake: /c/Programs/strawberry-perl-5.20.2.1-64bit/c/bin/gmake.exe [GNU Make 4.0.90]
|
||||
Git: /c/Programs/Git/cmd/git.exe [git version 1.9.5.msysgit.1]
|
||||
Java: /c/ProgramData/Oracle/Java/javapath/java.exe [java version "1.8.0_45"]
|
||||
M4: /bin/m4.exe [m4 (GNU M4) 1.4.16]
|
||||
Make: /bin/make.exe [GNU Make 3.81]
|
||||
MinGW-w64: /c/Programs/x86_64-4.8.2-release-win32-seh-rt_v3-rev3/mingw64
|
||||
MinGW-w64: /c/Programs/mingw64
|
||||
OpenMPI: /c/Programs/OpenMPI_v1.6.1-x64/bin/mpirun.exe [mpirun.exe (OpenRTE) 1.6.1]
|
||||
PEexports: /c/Programs/strawberry-perl-5.20.2.1-64bit/c/bin/pexports.exe [PExports 0.44 Copyright 1998, Anders Norlander]
|
||||
ParaView: /c/Programs/ParaView-4.3.1
|
||||
|
|
|
@ -153,7 +153,7 @@ if ( ! $?WM_PRECISION_OPTION ) setenv WM_PRECISION_OPTION DP
|
|||
|
||||
# WM_COMPILE_OPTION = Opt | Debug | Prof
|
||||
if ( ! $?WM_COMPILE_OPTION ) setenv WM_COMPILE_OPTION Opt
|
||||
setenv WM_COMPILE_OPTION Opt
|
||||
#setenv WM_COMPILE_OPTION Opt
|
||||
#setenv WM_COMPILE_OPTION Debug
|
||||
|
||||
# WM_MPLIB = SYSTEMOPENMPI | OPENMPI | MPICH | MPICH-GM | HPMPI | GAMMA | MPI | QSMPI | MVAPICH2
|
||||
|
|
|
@ -203,7 +203,7 @@ setenv WM_THIRD_PARTY_USE_CMAKE_322 1
|
|||
#
|
||||
# For AllMake.stage2
|
||||
setenv WM_THIRD_PARTY_USE_OPENMPI_188 1
|
||||
setenv WM_THIRD_PARTY_USE_OPENMPI_188_ConfigureAdditionalArgs '--enable-mpi-cxx --with-verbs=/usr --with-verbs-libdir=/usr/lib64'
|
||||
#setenv WM_THIRD_PARTY_USE_OPENMPI_188_ConfigureAdditionalArgs '--enable-mpi-cxx --with-verbs=/usr --with-verbs-libdir=/usr/lib64'
|
||||
#setenv WM_THIRD_PARTY_USE_OPENMPI_165 1
|
||||
#setenv WM_THIRD_PARTY_USE_OPENMPI_165_ConfigureAdditionalArgs '--enable-mpi-cxx --with-openib=/usr --with-openib-libdir=/usr/lib64'
|
||||
#setenv WM_THIRD_PARTY_USE_OPENMPI_15 1
|
||||
|
|
|
@ -213,7 +213,7 @@ export WM_THIRD_PARTY_USE_CMAKE_322=1
|
|||
#
|
||||
# For AllMake.stage2
|
||||
export WM_THIRD_PARTY_USE_OPENMPI_188=1
|
||||
export WM_THIRD_PARTY_USE_OPENMPI_188_ConfigureAdditionalArgs='--enable-mpi-cxx --with-openib=/usr --with-openib-libdir=/usr/lib64'
|
||||
#export WM_THIRD_PARTY_USE_OPENMPI_188_ConfigureAdditionalArgs='--enable-mpi-cxx --with-openib=/usr --with-openib-libdir=/usr/lib64'
|
||||
#export WM_THIRD_PARTY_USE_OPENMPI_165=1
|
||||
#export WM_THIRD_PARTY_USE_OPENMPI_165_ConfigureAdditionalArgs='--enable-mpi-cxx --with-openib=/usr --with-openib-libdir=/usr/lib64'
|
||||
#export WM_THIRD_PARTY_USE_OPENMPI_15=1
|
||||
|
|
|
@ -145,8 +145,11 @@ void GGIInterpolation<MasterPatch, SlavePatch>::maskedBridge
|
|||
{
|
||||
// Gone beyond my index: my face is not present in the mask
|
||||
// Go one back and check for next uncovered face
|
||||
if (maskAddrI > 0)
|
||||
{
|
||||
maskAddrI--;
|
||||
}
|
||||
|
||||
maskAddrI--;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -61,7 +61,7 @@ cellSet::cellSet
|
|||
:
|
||||
topoSet(mesh, typeName, name, r, w)
|
||||
{
|
||||
// Make sure set within valid range
|
||||
// Make sure set within valid range: there are no retired cells
|
||||
check(mesh.nCells());
|
||||
}
|
||||
|
||||
|
|
|
@ -63,7 +63,8 @@ faceSet::faceSet
|
|||
:
|
||||
topoSet(mesh, typeName, name, r, w)
|
||||
{
|
||||
check(mesh.nFaces());
|
||||
// Sets can also contain retired faces. HJ, 17/Aug/2015
|
||||
check(mesh.allFaces().size());
|
||||
}
|
||||
|
||||
|
||||
|
@ -228,7 +229,7 @@ void faceSet::sync(const polyMesh& mesh)
|
|||
|
||||
label faceSet::maxSize(const polyMesh& mesh) const
|
||||
{
|
||||
return mesh.nFaces();
|
||||
return mesh.allFaces().size();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -62,7 +62,8 @@ pointSet::pointSet
|
|||
:
|
||||
topoSet(mesh, typeName, name, r, w)
|
||||
{
|
||||
check(mesh.nPoints());
|
||||
// Sets can contain retired points. HJ, 17/Aug/2015
|
||||
check(mesh.allPoints().size());
|
||||
}
|
||||
|
||||
|
||||
|
@ -147,7 +148,7 @@ void pointSet::sync(const polyMesh& mesh)
|
|||
|
||||
label pointSet::maxSize(const polyMesh& mesh) const
|
||||
{
|
||||
return mesh.nPoints();
|
||||
return mesh.allPoints().size();
|
||||
}
|
||||
|
||||
|
||||
|
|
Reference in a new issue