Commit Graph

172 Commits

Author SHA1 Message Date
1be5f699e5 decomposePar: Added 'copyZero' option
Using

decomposePar -copyZero

The mesh is decomposed as usual but the '0' directory is recursively copied to
the 'processor.*' directories rather than decomposing the fields.  This is a
convenient option to handle cases where the initial field files are generic and
can be used for serial or parallel running.  See for example the
incompressible/simpleFoam/motorBike tutorial case.
2017-03-08 11:48:06 +00:00
9e1e9011a5 decomposePar: Corrected construction of cloud for processors
Resolves bug-report http://bugs.openfoam.org/view.php?id=2239
2016-09-21 17:19:58 +01:00
58f905ff70 C++11: Replaced the C NULL with the safer C++11 nullptr
Requires gcc version 4.7 or higher
2016-08-05 17:19:38 +01:00
ef54ab7c59 decomposePar: Added support for decomposing "uniform" directories in multi-region cases
Resolves bug-report http://bugs.openfoam.org/view.php?id=2156
2016-07-20 16:41:45 +01:00
ab84d6941f Updated template formatting to C++11 2016-07-12 20:03:29 +01:00
1319df48d9 Rationalized Doxygen documentation of command-line options 2016-06-17 09:11:58 +01:00
ce0cd35185 Patches contributed by Mattijs Janssens:
splitMeshRegions: handle flipping of faces for surface fields

subsetMesh: subset dimensionedFields

decomposePar: use run-time selection of decomposition constraints. Used to
    keep cells on particular processors. See the decomposeParDict in

$FOAM_UTILITIES/parallel/decomposePar:
  - preserveBaffles: keep baffle faces on same processor
  - preserveFaceZones: keep faceZones owner and neighbour on same processor
  - preservePatches: keep owner and neighbour on same processor. Note: not
    suitable for cyclicAMI since these are not coupled on the patch level
  - singleProcessorFaceSets: keep complete faceSet on a single processor
  - refinementHistory: keep cells originating from a single cell on the
    same processor.

decomposePar: clean up decomposition of refinement data from snappyHexMesh

reconstructPar: reconstruct refinement data (refineHexMesh, snappyHexMesh)

reconstructParMesh: reconstruct refinement data (refineHexMesh, snappyHexMesh)

redistributePar:
  - corrected mapping surfaceFields
  - adding processor patches in order consistent with decomposePar

argList: check that slaves are running same version as master

fvMeshSubset: move to dynamicMesh library

fvMeshDistribute:
  - support for mapping dimensionedFields
  - corrected mapping of surfaceFields

parallel routines: allow parallel running on single processor

Field: support for
  - distributed mapping
  - mapping with flipping

mapDistribute: support for flipping

AMIInterpolation: avoid constructing localPoints
2016-05-15 16:36:48 +01:00
32762aa1f9 Change field loop index from "fieldI" to "fieldi" 2016-05-02 18:20:48 +01:00
81f31acbb3 Updated headers 2016-04-30 21:53:19 +01:00
3c053c2fe6 GeometricField: Renamed internalField() -> primitiveField() and dimensionedInternalField() -> internalField()
These new names are more consistent and logical because:

primitiveField():
primitiveFieldRef():
    Provides low-level access to the Field<Type> (primitive field)
    without dimension or mesh-consistency checking.  This should only be
    used in the low-level functions where dimensional consistency is
    ensured by careful programming and computational efficiency is
    paramount.

internalField():
internalFieldRef():
    Provides access to the DimensionedField<Type, GeoMesh> of values on
    the internal mesh-type for which the GeometricField is defined and
    supports dimension and checking and mesh-consistency checking.
2016-04-30 21:40:09 +01:00
450728ea84 Standardized cell, patch, face and processor loop index names 2016-04-25 12:00:53 +01:00
2d5ff31649 boundaryField() -> boundaryFieldRef() 2016-04-24 22:07:37 +01:00
cb65ba71d7 Made all template declarations consistent using 'class' rather than 'typename' 2016-03-22 15:02:55 +00:00
99a10ecea6 Boundary conditions: Added extrapolatedCalculatedFvPatchField
To be used instead of zeroGradientFvPatchField for temporary fields for
which zero-gradient extrapolation is use to evaluate the boundary field
but avoiding fields derived from temporary field using field algebra
inheriting the zeroGradient boundary condition by the reuse of the
temporary field storage.

zeroGradientFvPatchField should not be used as the default patch field
for any temporary fields and should be avoided for non-temporary fields
except where it is clearly appropriate;
extrapolatedCalculatedFvPatchField and calculatedFvPatchField are
generally more suitable defaults depending on the manner in which the
boundary values are specified or evaluated.

The entire OpenFOAM-dev code-base has been updated following the above
recommendations.

Henry G. Weller
CFD Direct
2016-02-20 22:44:37 +00:00
8b9698ad43 processorPolyPatch, processorCyclicPolyPatch: Rationalized the construction of the patch name
This change ensures that these patches are named consistently so that
they can be looked-up as required in e.g. patchMeanVelocityForce
2016-02-02 20:07:16 +00:00
56fa7c0906 Update code to use the simpler C++11 template syntax removing spaces between closing ">"s 2016-01-10 22:41:16 +00:00
4eba393fe1 Update code to use the simpler C++11 template syntax 2016-01-10 19:20:16 +00:00
e2ef006b91 applications: Update ...ErrorIn -> ...ErrorInFunction
Avoids the clutter and maintenance effort associated with providing the
function signature string.
2015-11-10 17:53:31 +00:00
0bf2543df6 utilities: Correct "End" statement to be consistent with all other applications 2015-02-12 22:14:02 +00:00
525a0b3e0f decomposePar: Do not register Lagrangian IOFields as the names may conflict with those of volFields
Required change to IOobjectList to support the optional no-registration specification
2015-02-12 21:59:17 +00:00
d01afadbc1 Name fields to avoid duplicate registration 2015-02-12 12:33:45 +00:00
c778346c96 Formatting: Rationalized the indentation of #include 2015-02-10 20:35:50 +00:00
9fb26d59d3 GIT: Repo update 2014-12-11 08:35:10 +00:00
9688b6ccdc BUG: decomposePar - updated to handle multiple processor cyclic patches - mantis 879 2014-02-21 16:18:00 +00:00
fbb3ddf2c4 Updated for release 2.3.0 2014-02-17 10:21:46 +00:00
6d5dd7e30d ENH: decomposePar: corrected comment in header 2014-01-28 10:42:46 +00:00
6bdc55c825 ENH: decomposePar: decompose sets 2013-11-27 16:04:15 +00:00
61966615ee ENH: decomposePar: decompose hexRef8 data (snappyHexMesh) 2013-10-08 14:57:22 +01:00
5ac31aabc8 ENH: FieldMapper: extend with unmapped checking flag 2013-09-12 15:37:53 +01:00
f9139aa031 ENH: decomposePar: added logic for preserving baffles 2013-08-07 11:03:01 +01:00
fd5cebcd47 ENH: decompositionMethod: move constraints into library 2013-08-02 17:41:47 +01:00
ba45a48caf ENH: decomposePar: decomposing cellSets, faceSets, pointSets 2013-06-14 12:46:32 +01:00
9ffb6c3f99 STYLE: processor*patch: unused argument 2013-05-22 17:26:05 +01:00
c4a4611b0f Merge remote-tracking branch 'origin/feature/procAgglom'
Conflicts:
	src/OpenFOAM/meshes/lduMesh/lduMesh.H
2013-05-02 14:44:59 +01:00
d7cadf4937 Merge remote-tracking branch 'origin/master' into feature/procAgglom
Conflicts:
	src/OpenFOAM/db/IOstreams/Pstreams/Pstream.H
	src/OpenFOAM/db/IOstreams/Pstreams/UPstream.C
	src/OpenFOAM/db/IOstreams/Pstreams/UPstream.H
	src/OpenFOAM/db/IOstreams/Pstreams/combineGatherScatter.C
	src/OpenFOAM/db/IOstreams/Pstreams/gatherScatter.C
	src/OpenFOAM/db/IOstreams/Pstreams/gatherScatterList.C
	src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/interfaceFields/processorGAMGInterfaceField/processorGAMGInterfaceField.C
	src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/interfaceFields/processorGAMGInterfaceField/processorGAMGInterfaceField.H
	src/OpenFOAM/matrices/lduMatrix/solvers/GAMG/interfaces/GAMGInterface/GAMGInterface.H
	src/finiteVolume/fvMesh/fvMesh.H
2013-04-23 09:41:15 +01:00
34ac08a931 ENH: Code updates following changed to IOobjectList 2013-04-08 15:33:02 +01:00
ea8d290191 ENH: communicators: initial version - extended Pstream API 2013-02-04 10:17:37 +00:00
b20b5d3706 ENH: decomposePar: corrected dictionaries 2013-01-09 14:52:51 +00:00
db89978ade Updated headers for Laurence and Andy 2012-12-17 11:42:00 +00:00
057eff0e59 ENH: update fvMeshDistribute and domainDecomposition to use new
coupledPolyPatch constructor
2012-12-11 17:07:12 +00:00
da17674f0f ENH: decomposePar,reconsturctPar: added -allRegions option 2012-09-26 12:08:43 +01:00
c1ef233e5d ENH: pointMesh: use MeshObject form 2012-08-31 12:57:17 +01:00
1f7d24e617 STYLE: decomposeParDict: added comment 2012-07-10 10:03:15 +01:00
96f8104ae5 ENH: decomposePar: cache decomposeers if running with multiple times. 2012-04-16 12:37:01 +01:00
25dafe92ea ENH: decomposePar: add -time option. 2012-04-16 11:36:13 +01:00
7e95308c6b ENH: decomposePar.C: add shortcircuit to avoid allocating point mappers 2011-12-21 16:16:54 +00:00
8558af2cdf COMP: 64bit label changes 2011-11-28 11:10:46 +00:00
c1ac184893 ENH: decomposePar: implemented keeping faceSet on single processor 2011-11-09 12:34:03 +00:00
ca4b8c347c ENH: polyMesh,meshSearch: default value on findCell, pointInCell 2011-11-08 17:03:54 +00:00
ee11f9c0e8 ENH: pointInCell, findCell: switchable in-cell algorithm 2011-10-28 11:33:30 +01:00