Merge branch 'develop' of develop.openfoam.com:Development/OpenFOAM-plus into develop

This commit is contained in:
mattijs
2017-06-14 12:29:06 +01:00
11 changed files with 1278 additions and 1260 deletions

View File

@ -92,14 +92,14 @@ int main()
std::cout<< "max = " << pTraits<label>::max << nl;
std::cout<< "umax = " << pTraits<uLabel>::max << nl;
std::cout<< "max_2 = " << pTraits<label>::max/2 << " == "
<< (1 << (sizeof(label)*8-2)) << nl;
std::cout<< "max_2 = " << pTraits<label>::max/2 << " <=> "
<< (1L << (sizeof(label)*8-2)) << nl;
std::cout<< "max_4 = " << pTraits<label>::max/4 << " == "
<< (1 << (sizeof(label)*8-3)) << nl;
std::cout<< "max_4 = " << pTraits<label>::max/4 << " <=> "
<< (1L << (sizeof(label)*8-3)) << nl;
std::cout<< "max_8 = " << pTraits<label>::max/8 << " == "
<< (1 << (sizeof(label)*8-4)) << nl;
std::cout<< "max_8 = " << pTraits<label>::max/8 << " <=> "
<< (1L << (sizeof(label)*8-4)) << nl;
Info<< "End\n" << endl;

View File

@ -292,7 +292,7 @@ int main(int argc, char *argv[])
<< mesh.boundaryMesh()[0].name() << ")"
<< endl;
}
meshSubsetHelper myMesh(mesh, meshSubsetHelper::ZONE, cellZoneName);
meshSubsetHelper meshRef(mesh, meshSubsetHelper::ZONE, cellZoneName);
//
// Open new ensight case file, initialize header etc.
@ -306,7 +306,7 @@ int main(int argc, char *argv[])
// Construct the Ensight mesh
ensightMesh ensMesh(myMesh.mesh(), writeOpts);
ensightMesh ensMesh(meshRef.mesh(), writeOpts);
if (Pstream::master())
{
@ -375,7 +375,7 @@ int main(int argc, char *argv[])
polyMesh::readUpdateState meshState = mesh.readUpdate();
if (meshState != polyMesh::UNCHANGED)
{
myMesh.correct();
meshRef.correct();
ensMesh.expire();
ensMesh.correct();
}
@ -430,7 +430,7 @@ int main(int argc, char *argv[])
volScalarField vf(fieldObject, mesh);
wrote = ensightOutput::writeField<scalar>
(
myMesh.interpolate(vf),
meshRef.interpolate(vf),
ensMesh,
os,
nodeValues
@ -446,7 +446,7 @@ int main(int argc, char *argv[])
volVectorField vf(fieldObject, mesh);
wrote = ensightOutput::writeField<vector>
(
myMesh.interpolate(vf),
meshRef.interpolate(vf),
ensMesh,
os,
nodeValues
@ -462,7 +462,7 @@ int main(int argc, char *argv[])
volSphericalTensorField vf(fieldObject, mesh);
wrote = ensightOutput::writeField<sphericalTensor>
(
myMesh.interpolate(vf),
meshRef.interpolate(vf),
ensMesh,
os,
nodeValues
@ -478,7 +478,7 @@ int main(int argc, char *argv[])
volSymmTensorField vf(fieldObject, mesh);
wrote = ensightOutput::writeField<symmTensor>
(
myMesh.interpolate(vf),
meshRef.interpolate(vf),
ensMesh,
os,
nodeValues
@ -494,7 +494,7 @@ int main(int argc, char *argv[])
volTensorField vf(fieldObject, mesh);
wrote = ensightOutput::writeField<tensor>
(
myMesh.interpolate(vf),
meshRef.interpolate(vf),
ensMesh,
os,
nodeValues
@ -519,7 +519,7 @@ int main(int argc, char *argv[])
);
wrote = ensightOutput::writeField<scalar>
(
myMesh.interpolate<scalar>(df),
meshRef.interpolate<scalar>(df),
ensMesh,
os,
nodeValues
@ -543,7 +543,7 @@ int main(int argc, char *argv[])
);
wrote = ensightOutput::writeField<vector>
(
myMesh.interpolate<vector>(df),
meshRef.interpolate<vector>(df),
ensMesh,
os,
nodeValues
@ -567,7 +567,7 @@ int main(int argc, char *argv[])
);
wrote = ensightOutput::writeField<sphericalTensor>
(
myMesh.interpolate<sphericalTensor>(df),
meshRef.interpolate<sphericalTensor>(df),
ensMesh,
os,
nodeValues
@ -591,7 +591,7 @@ int main(int argc, char *argv[])
);
wrote = ensightOutput::writeField<symmTensor>
(
myMesh.interpolate<symmTensor>(df),
meshRef.interpolate<symmTensor>(df),
ensMesh,
os,
nodeValues
@ -615,7 +615,7 @@ int main(int argc, char *argv[])
);
wrote = ensightOutput::writeField<tensor>
(
myMesh.interpolate<tensor>(df),
meshRef.interpolate<tensor>(df),
ensMesh,
os,
nodeValues

View File

@ -296,7 +296,7 @@ int main(int argc, char *argv[])
mkDir(fvPath);
// Mesh wrapper: does subsetting
meshSubsetHelper myMesh(mesh, meshSubsetHelper::SET, cellSetName);
meshSubsetHelper meshRef(mesh, meshSubsetHelper::SET, cellSetName);
forAll(timeDirs, timeI)
{
@ -308,8 +308,8 @@ int main(int argc, char *argv[])
// Check for new polyMesh/ and update mesh, fvMeshSubset and cell
// decomposition.
polyMesh::readUpdateState meshState = myMesh.readUpdate();
const fvMesh& mesh = myMesh.mesh();
polyMesh::readUpdateState meshState = meshRef.readUpdate();
const fvMesh& mesh = meshRef.mesh();
// TotalNumFaceNodes
int32_t nFaceNodes = 0;
@ -333,23 +333,23 @@ int main(int argc, char *argv[])
// Construct the vol fields (on the original mesh if subsetted)
PtrList<const volScalarField> vsf;
readFields(myMesh, myMesh.baseMesh(), objects, selectedFields, vsf);
readFields(meshRef, meshRef.baseMesh(), objects, selectedFields, vsf);
print(" volScalarFields :", Info, vsf);
PtrList<const volVectorField> vvf;
readFields(myMesh, myMesh.baseMesh(), objects, selectedFields, vvf);
readFields(meshRef, meshRef.baseMesh(), objects, selectedFields, vvf);
print(" volVectorFields :", Info, vvf);
PtrList<const volSphericalTensorField> vSpheretf;
readFields(myMesh, myMesh.baseMesh(), objects, selectedFields, vSpheretf);
print(" volSphericalTensorFields :", Info, vSpheretf);
PtrList<const volSphericalTensorField> vSphf;
readFields(meshRef, meshRef.baseMesh(), objects, selectedFields, vSphf);
print(" volSphericalTensorFields :", Info, vSphf);
PtrList<const volSymmTensorField> vSymmtf;
readFields(myMesh, myMesh.baseMesh(), objects, selectedFields, vSymmtf);
print(" volSymmTensorFields :", Info, vSymmtf);
PtrList<const volSymmTensorField> vSymf;
readFields(meshRef, meshRef.baseMesh(), objects, selectedFields, vSymf);
print(" volSymmTensorFields :", Info, vSymf);
PtrList<const volTensorField> vtf;
readFields(myMesh, myMesh.baseMesh(), objects, selectedFields, vtf);
readFields(meshRef, meshRef.baseMesh(), objects, selectedFields, vtf);
print(" volTensorFields :", Info, vtf);
@ -365,8 +365,8 @@ int main(int argc, char *argv[])
PtrList<const pointScalarField> psf;
PtrList<const pointVectorField> pvf;
//PtrList<const pointSphericalTensorField> pSpheretf;
//PtrList<const pointSymmTensorField> pSymmtf;
//PtrList<const pointSphericalTensorField> pSphf;
//PtrList<const pointSymmTensorField> pSymf;
//PtrList<const pointTensorField> ptf;
@ -402,8 +402,8 @@ int main(int argc, char *argv[])
readFields
(
myMesh,
pointMesh::New(myMesh.baseMesh()),
meshRef,
pointMesh::New(meshRef.baseMesh()),
objects,
selectedFields,
psf
@ -412,8 +412,8 @@ int main(int argc, char *argv[])
readFields
(
myMesh,
pointMesh::New(myMesh.baseMesh()),
meshRef,
pointMesh::New(meshRef.baseMesh()),
objects,
selectedFields,
pvf
@ -422,28 +422,28 @@ int main(int argc, char *argv[])
//readFields
//(
// myMesh,
// pointMesh::New(myMesh.baseMesh()),
// meshRef,
// pointMesh::New(meshRef.baseMesh()),
// objects,
// selectedFields,
// pSpheretf
// pSphf
//);
//print(" pointSphericalTensorFields :", Info, pSpheretf);
//print(" pointSphericalTensorFields :", Info, pSphf);
//
//readFields
//(
// myMesh,
// pointMesh::New(myMesh.baseMesh()),
// meshRef,
// pointMesh::New(meshRef.baseMesh()),
// objects,
// selectedFields,
// pSymmtf
// pSymf
//);
//print(" pointSymmTensorFields :", Info, pSymmtf);
//print(" pointSymmTensorFields :", Info, pSymf);
//
//readFields
//(
// myMesh,
// pointMesh::New(myMesh.baseMesh()),
// meshRef,
// pointMesh::New(meshRef.baseMesh()),
// objects,
// selectedFields,
// ptf
@ -495,14 +495,14 @@ int main(int argc, char *argv[])
tecplotWriter::getTecplotNames
(
vSpheretf,
vSphf,
tecplotWriter::CELL_CENTERED,
varNames,
varLocation
);
tecplotWriter::getTecplotNames
(
vSpheretf,
vSphf,
tecplotWriter::CELL_CENTERED,
cellVarNames,
cellVarLocation
@ -510,14 +510,14 @@ int main(int argc, char *argv[])
tecplotWriter::getTecplotNames
(
vSymmtf,
vSymf,
tecplotWriter::CELL_CENTERED,
varNames,
varLocation
);
tecplotWriter::getTecplotNames
(
vSymmtf,
vSymf,
tecplotWriter::CELL_CENTERED,
cellVarNames,
cellVarLocation
@ -607,8 +607,8 @@ int main(int argc, char *argv[])
// Write all fields
writer.writeFields(vsf);
writer.writeFields(vvf);
writer.writeFields(vSpheretf);
writer.writeFields(vSymmtf);
writer.writeFields(vSphf);
writer.writeFields(vSymf);
writer.writeFields(vtf);
writer.writeFields(psf);
@ -689,8 +689,8 @@ int main(int argc, char *argv[])
// Write all fields
writer.writeFields(vsf);
writer.writeFields(vvf);
writer.writeFields(vSpheretf);
writer.writeFields(vSymmtf);
writer.writeFields(vSphf);
writer.writeFields(vSymf);
writer.writeFields(vtf);
writer.writeFields(psf);
@ -784,24 +784,24 @@ int main(int argc, char *argv[])
)
);
}
forAll(vSpheretf, i)
forAll(vSphf, i)
{
writer.writeField
(
writer.getFaceField
(
linearInterpolate(vSpheretf[i])(),
linearInterpolate(vSphf[i])(),
faceLabels
)
);
}
forAll(vSymmtf, i)
forAll(vSymf, i)
{
writer.writeField
(
writer.getFaceField
(
linearInterpolate(vSymmtf[i])(),
linearInterpolate(vSymf[i])(),
faceLabels
)
);
@ -837,7 +837,7 @@ int main(int argc, char *argv[])
fileName patchFileName;
if (myMesh.useSubMesh())
if (meshRef.useSubMesh())
{
patchFileName =
fvPath/"boundaryMesh"/cellSetName
@ -930,26 +930,26 @@ int main(int argc, char *argv[])
)
);
}
forAll(vSpheretf, i)
forAll(vSphf, i)
{
writer.writeField
(
writer.getPatchField
(
nearCellValue,
vSpheretf[i],
vSphf[i],
patchID
)
);
}
forAll(vSymmtf, i)
forAll(vSymf, i)
{
writer.writeField
(
writer.getPatchField
(
nearCellValue,
vSymmtf[i],
vSymf[i],
patchID
)
);
@ -1010,7 +1010,7 @@ int main(int argc, char *argv[])
fileName patchFileName;
if (myMesh.useSubMesh())
if (meshRef.useSubMesh())
{
patchFileName =
fvPath/"faceZoneMesh"/cellSetName
@ -1094,24 +1094,24 @@ int main(int argc, char *argv[])
)
);
}
forAll(vSpheretf, i)
forAll(vSphf, i)
{
writer.writeField
(
writer.getFaceField
(
linearInterpolate(vSpheretf[i])(),
linearInterpolate(vSphf[i])(),
pp
)
);
}
forAll(vSymmtf, i)
forAll(vSymf, i)
{
writer.writeField
(
writer.getFaceField
(
linearInterpolate(vSymmtf[i])(),
linearInterpolate(vSymf[i])(),
pp
)
);

View File

@ -5,7 +5,7 @@
# \\ / O peration |
# \\ / A nd | Copyright (C) 2017 OpenCFD Ltd.
# \\/ M anipulation |
#-------------------------------------------------------------------------------
#------------------------------------------------------------------------------
# License
# This file is part of OpenFOAM.
#
@ -50,6 +50,7 @@ USAGE
exit 1
}
unset outFile
searchDirs="$FOAM_APPBIN $FOAM_USER_APPBIN"
while [ "$#" -gt 0 ]
do
@ -73,16 +74,16 @@ do
shift
done
[ -z $outFile ] && usage
[ -n "$outFile" ] || usage
\rm -f $outFile
touch $outFile
writeFilterFunction()
{
cat<<WRITEFILTER >> $1
unset -f _filter_opts
_filter_opts()
cat<< WRITEFILTER >> $1
unset -f _of_filter_opts 2>/dev/null
_of_filter_opts()
{
local allOpts=\$1
local applied=\$2
@ -136,17 +137,27 @@ commonOptions()
}
# Generate header
cat << HEADER > $outFile
#----------------------------------*-sh-*--------------------------------------
# Bash completions for OpenFOAM applications
HEADER
writeFilterFunction $outFile
for dir in ${searchDirs}
do
echo "Processing directory $dir"
echo "Processing directory $dir" 1>&2
apps=($(\ls $dir))
for appName in "${apps[@]}"; do
# Sort with ignore-case
apps=($(\ls $dir | sort -f))
for appName in "${apps[@]}"
do
[ -f "$dir/$appName" -a -x "$dir/$appName" ] || continue
appHelp=$($appName -help)
echo "Processing $appName"
echo "Processing $appName" 1>&2
# Options with args
optsWithArgs=($(awk '/^ {0,4}-[a-z]/ && /</ {print $1}' <<< "$appHelp"))
@ -155,8 +166,8 @@ do
opts=($(awk '/^ {0,4}-[a-z]/ && !/</ {print $1}' <<< "$appHelp"))
cat<<WRITECOMPLETION >> $outFile
unset -f _${appName}
_${appName}()
unset -f _of_${appName} 2>/dev/null
_of_${appName}()
{
local cur="\${COMP_WORDS[COMP_CWORD]}"
local prev="\${COMP_WORDS[COMP_CWORD-1]}"
@ -174,8 +185,8 @@ $(commonOptions ${optsWithArgs[@]})
COMPREPLY=(\$(compgen -f -- \${cur}))
else
# Catch-all - present all remaining options
opts=\$(_filter_opts "\${opts}" "\${COMP_LINE}")
optsWithArgs=\$(_filter_opts "\${optsWithArgs}" "\${COMP_LINE}")
opts=\$(_of_filter_opts "\${opts}" "\${COMP_LINE}")
optsWithArgs=\$(_of_filter_opts "\${optsWithArgs}" "\${COMP_LINE}")
COMPREPLY=(\$(compgen -W "\${opts} \${optsWithArgs}" -- \${cur}))
fi
;;
@ -183,13 +194,17 @@ $(commonOptions ${optsWithArgs[@]})
return 0
}
complete -o nospace -F _${appName} $appName
complete -o nospace -F _of_${appName} $appName
WRITECOMPLETION
done
done
unset searchDirs writeFilterFunction commonOptions
# Generate footer
cat << FOOTER >> $outFile
#------------------------------------------------------------------------------
FOOTER
#------------------------------------------------------------------------------

View File

@ -170,7 +170,12 @@ export PATH LD_LIBRARY_PATH MANPATH
# ~~~~~~~~~~~~~~~~~~~~~~~~~~
_foamEtc config.sh/settings
_foamEtc config.sh/aliases
_foamEtc config.sh/bashcompletion
# Bash completions
if command -v complete > /dev/null 2>&1
then
_foamEtc config.sh/bashcompletion
fi
# Source user setup files for optional packages

File diff suppressed because it is too large Load Diff

View File

@ -169,7 +169,7 @@ then
fi
unset -f _foamParaviewEval
unset -f _foamParaviewEval 2> /dev/null
unset cleaned cmake cmake_version pvName pvMajor pvLibDir pvPython
unset ParaView_MAJOR

View File

@ -33,9 +33,8 @@ namespace Foam
defineTypeNameAndDebug(HashTableCore, 0);
}
// Approximately labelMax/4
const Foam::label Foam::HashTableCore::maxTableSize(1 << (sizeof(label)*8-3));
const Foam::label Foam::HashTableCore::maxTableSize(1L << (sizeof(label)*8-3));
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
@ -59,7 +58,7 @@ Foam::label Foam::HashTableCore::canonicalSize(const label requested_size)
// - The upper limit (approx. labelMax/4) must be a power of two,
// need not be extremely large for hashing.
uLabel powerOfTwo = 8; // lower-limit
uLabel powerOfTwo = 8u; // lower-limit
const uLabel size = requested_size;
if (size <= powerOfTwo)

View File

@ -35,7 +35,7 @@ defineTypeNameAndDebug(StaticHashTableCore, 0);
// Approximately labelMax/4
static const Foam::label maxTableSize(1 << (sizeof(Foam::label)*8-3));
static const Foam::label maxTableSize(1L << (sizeof(Foam::label)*8-3));
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
@ -59,7 +59,7 @@ Foam::label Foam::StaticHashTableCore::canonicalSize(const label requested_size)
// - The upper limit (approx. labelMax/4) must be a power of two,
// need not be extremely large for hashing.
uLabel powerOfTwo = 8; // lower-limit
uLabel powerOfTwo = 8u; // lower-limit
const uLabel size = requested_size;
if (size <= powerOfTwo)

View File

@ -114,11 +114,6 @@ bool Foam::functionObjects::ensightWrite::read(const dictionary& dict)
dict.lookupOrDefault<Switch>("noPatches", false)
);
writeOpts_.deprecatedOrder
(
dict.lookupOrDefault<Switch>("deprecatedOrder", false)
);
if (dict.found("patches"))
{
wordReList lst(dict.lookup("patches"));

View File

@ -65,8 +65,7 @@ Description
noPatches | Suppress writing patches | no | false
patches | Select patches to write | no |
faceZones | Select faceZones to write | no |
deprecatedOrder | Old ordering of volume cells | no | false
consecutive | Consecutive output numbering | no | false
consecutive | Consecutive output numbering | no | false
\endtable
Note that if the \c patches entry is an empty list, this will select all