Commit Graph

990 Commits

Author SHA1 Message Date
472fa0674a Update headers 2016-02-02 20:09:58 +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
d7ac243dfc Merge remote-tracking branch 'origin/develop' into feature-shared-file 2016-01-25 16:36:42 +00:00
9e3ce4ec7f Merge branch 'master' of develop.openfoam.com:Development/OpenFOAM-plus into feature-shared-file
Conflicts:
	applications/utilities/mesh/advanced/refinementLevel/refinementLevel.C
	applications/utilities/mesh/generation/foamyMesh/conformalVoronoiMesh/initialPointsMethod/pointFile/pointFile.C
	applications/utilities/miscellaneous/foamHelp/helpTypes/helpBoundary/helpBoundary.C
	applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamUpdateInfo.C
	applications/utilities/postProcessing/graphics/PV4Readers/PV4FoamReader/vtkPV4Foam/vtkPV4FoamUpdateInfo.C
	applications/utilities/postProcessing/turbulence/createTurbulenceFields/createTurbulenceFields.C
	applications/utilities/postProcessing/velocityField/Co/Co.C
	applications/utilities/postProcessing/velocityField/Pe/Pe.C
	applications/utilities/preProcessing/applyBoundaryLayer/applyBoundaryLayer.C
	applications/utilities/preProcessing/changeDictionary/changeDictionary.C
	applications/utilities/preProcessing/setFields/setFields.C
	applications/utilities/surface/surfaceMeshConvert/surfaceMeshConvert.C
	applications/utilities/surface/surfaceMeshExport/surfaceMeshExport.C
	applications/utilities/surface/surfaceMeshImport/surfaceMeshImport.C
	applications/utilities/surface/surfaceRedistributePar/surfaceRedistributePar.C
	src/OpenFOAM/db/IOobject/IOobject.C
	src/OpenFOAM/db/IOobjects/CompactIOList/CompactIOList.C
	src/OpenFOAM/db/IOobjects/IOField/IOField.C
	src/OpenFOAM/db/IOobjects/IOList/IOList.C
	src/OpenFOAM/db/IOobjects/IOPtrList/IOPtrList.C
	src/OpenFOAM/db/IOobjects/IOdictionary/IOdictionary.C
	src/OpenFOAM/db/Time/findInstance.C
	src/OpenFOAM/db/regIOobject/regIOobject.C
	src/OpenFOAM/db/regIOobject/regIOobjectI.H
	src/OpenFOAM/db/regIOobject/regIOobjectRead.C
	src/OpenFOAM/db/regIOobject/regIOobjectWrite.C
	src/OpenFOAM/meshes/polyMesh/mapPolyMesh/mapDistribute/IOmapDistribute.C
	src/OpenFOAM/meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C
	src/OpenFOAM/meshes/polyMesh/zones/ZoneMesh/ZoneMesh.C
	src/dynamicMesh/fvMeshDistribute/IOmapDistributePolyMesh.C
	src/dynamicMesh/motionSolver/componentDisplacement/componentDisplacementMotionSolver.C
	src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/hexRef8Data.C
	src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8/refinementHistory.C
	src/dynamicMesh/polyTopoChange/polyTopoChanger/polyTopoChanger.C
	src/edgeMesh/edgeMeshFormats/edgeMesh/edgeMeshFormat.C
	src/edgeMesh/extendedEdgeMesh/extendedEdgeMeshFormats/extendedEdgeMeshFormat/extendedEdgeMeshFormat.C
	src/edgeMesh/extendedEdgeMesh/extendedFeatureEdgeMesh/extendedFeatureEdgeMesh.C
	src/fvMotionSolver/fvMotionSolvers/displacement/interpolation/displacementInterpolationMotionSolver.C
	src/fvMotionSolver/pointPatchFields/derived/uniformInterpolatedDisplacement/uniformInterpolatedDisplacementPointPatchVectorField.C
	src/lagrangian/basic/Cloud/CloudIO.C
	src/meshTools/sets/cellSources/fieldToCell/fieldToCell.C
	src/postProcessing/foamCalcFunctions/basic/addSubtract/addSubtract.C
	src/postProcessing/functionObjects/field/fieldCoordinateSystemTransform/fieldCoordinateSystemTransformTemplates.C
	src/postProcessing/functionObjects/field/readFields/readFieldsTemplates.C
	src/thermophysicalModels/radiation/radiationModels/fvDOM/radiativeIntensityRay/radiativeIntensityRay.C
	src/triSurface/triSurface/surfacePatch/surfacePatchIOList.C
2016-01-25 16:29:04 +00:00
e424059208 ENH: glboal file handling: initial commit
Moved file path handling to regIOobject and made it type specific so
now every object can have its own rules. Examples:
- faceZones are now processor local (and don't search up anymore)
- timeStampMaster is now no longer hardcoded inside IOdictionary
  (e.g. uniformDimensionedFields support it as well)
- the distributedTriSurfaceMesh is properly processor-local; no need
  for fileModificationChecking manipulation.
2016-01-25 13:03:15 +00:00
e00acab949 BUG: autoHexMesh: merging faceZones with layers added
- was merging all boundary points originating from the same point
- which caused merging of multiple extruded points (since all originating
  from the same point)
- there is no more addressing available from addPatchCell layer so
  instead do a geometric merge
- additional bug: calculating weights if faceZone on processor patch
2016-01-25 10:06:16 +00:00
5779e4fd16 Info -> InfoInFunction and updated comments 2016-01-20 16:21:37 +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
d3d6d819bb BUG: autoHexMesh: gap refinement ignores refinementRegion itself
It was ignoring the initial selection of cells inside/outside the refinement
region and instead looking at all surface-intersection regardless. Fixes #51.
2016-01-06 16:52:34 +00:00
76c0096cb6 STYLE: Updated error messages to use new FatalErrorInFunction 2015-12-22 17:00:59 +00:00
17617d87da Merge branch 'feature-copyright' into 'develop'
ENH: copyright: make consistent with OpenFOAM-history



See merge request !29
2015-12-19 14:25:48 +00:00
8864223aed ENH: copyright: make consistent with OpenFOAM-history 2015-12-19 14:22:30 +00:00
1beb9b7acb BUG: autoHexMesh: allocation of zones. Base on cell zoning, not on surface 2015-12-17 12:16:34 +00:00
0347bc5ae2 ENH: autoHexMesh: check for both locationInMesh and locationsInMesh. 2015-12-17 09:35:13 +00:00
4a8abe78f5 Merge branch 'feature_shm_zoning' into develop
Conflicts:
	src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/refinementParameters/refinementParameters.C
	src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinement.H
	src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinementBaffles.C
2015-12-15 20:10:10 +00:00
97f58f1ea3 ENH: snappyHexMesh: fix behaviour of allowFreeStandingZoneBaffles
See comment in $FOAM_UTILITIES snappyHexMeshDict
2015-12-15 17:36:45 +00:00
f44d211fd3 ENH: autoHexMesh: check for both locationInMesh and locationsInMesh.
Fixes #31
2015-12-11 12:35:40 +00:00
ff56809375 ENH: autoHexMesh: allow location-in-mesh to be made into a cellZone
Normally the location-in-mesh is equivalent to a cellZone -1. This can
now be overridden by a surface-specified cellZone as before.
2015-12-10 11:50:42 +00:00
0ab048e076 COMP: autoHexMesh: fix pow(int, int) ambiguity 2015-12-10 11:25:53 +00:00
8400a1c19f ENH: Updated notImplemented(...)->NotImplemented messages 2015-12-08 22:56:15 +00:00
fb871828a5 fvPatchFields, fvsPatchFields, pointPatchFields: specifically declare namespace of functions
It is better to declare the namespace of each function in the C file
rather than "open" the namespace as this may lead to inconsistencies
between the declaration in the H files and definition in the C file.
2015-12-08 22:29:05 +00:00
af0001531c ENH: autoHexMesh: rewrite of zone allocation 2015-12-08 18:44:24 +00:00
eafd5a3850 ENH: Updated Info, Warning and Error messages 2015-12-08 11:15:39 +00:00
3f55f752fc GIT: Resolve conflict with upstream merge from Foundation 2015-12-07 17:07:20 +00:00
e5993002e9 snappyHexMesh layerParameters: Increased maxIters to 20
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1918
Patch provided by Richard Jones

maxIters could be made an option input if 20 is not sufficient for
difficult cases.
2015-11-26 20:24:26 +00:00
8317038ac9 Merge branch 'feature-sampledSurfaces' into 'develop'
Feature sampled surfaces

Bounds handling for sampledSurfaces only (so not for streamlines)

See merge request !13
2015-11-26 12:55:09 +00:00
cee6887d68 ENH: sampledSurfaces: added 'bounds' option
- bounds option (see $FOAM_UTILITIES/postProcessing/sampling/sample/sampleDict)
- fixes memory error http://www.openfoam.org/mantisbt/view.php?id=1487
- cleans up iso surface normal orientation
2015-11-26 10:41:34 +00:00
0483f8c445 Merge branch 'develop' of develop.openfoam.com:Development/OpenFOAM-dev-OpenCFD into develop 2015-11-24 12:52:17 +00:00
fca33d213e ENH: bezier: added bezier curves in blockMesh edges 2015-11-24 12:52:01 +00:00
346b31d9e9 snappyHexMesh layerParameters: Increased maxIters to 20
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1918
Patch provided by Richard Jones

maxIters could be made an option input if 20 is not sufficient for
difficult cases.
2015-11-23 16:48:05 +00:00
c7642d0cab meshRefinementBaffles: Correct faceZone orientation
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1479
Patches provided by Bruno Santos based on the work of Mattijs Janssens
2015-11-21 21:35:00 +00:00
8f5997bb6a ENH: displacementMotionSolver: additional hierarchy
- shm: have displacementMotionSolver as alternative mesh shrinker
  (instead of medialAxis).
- updated iglooWithFridges tutorial to use displacementLaplacian
- selectable interpolation from cells to points in the motion solvers
  using the 'interpolation' keyword:
    interpolation volPointInterpolation;    // default
    or
    interpolation patchCorrected (lowerWall upperWall);
- wrapped up mesh shrinkers (see above) for use as a displacementMotionSolver
  (i.e. the opposite of the displacementMotionSolver mesh shrinker)
2015-11-19 09:35:20 +00:00
d27756fe39 ENH: autoHexMesh: write baffled mesh to separate time when debugging 2015-11-18 17:24:28 +00:00
251839df0d ENH: offsetSurface: new extrusion model to extrude inbetween two surfaces 2015-11-24 13:46:48 +00:00
f3787e5722 ENH: offsetSurface: new extrusion model to extrude inbetween two surfaces 2015-11-24 13:46:48 +00:00
c4d5f65a10 Completed update ...ErrorIn -> ...ErrorInFunction
Avoids the clutter and maintenance effort associated with providing the
function signature string.
2015-11-11 09:03:39 +00:00
e8003b3967 Revert "meshRefinementBaffles: Correct faceZone orientation"
This reverts commit 3ba163b559.
2015-11-08 22:20:11 +00:00
3ba163b559 meshRefinementBaffles: Correct faceZone orientation
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1479
Patches provided by Bruno Santos based on the work of Mattijs Janssens
2015-11-04 11:53:54 +00:00
42fb1b9e8e Updated notImplemented -> NotImplemented
The new NotImplemented macro uses __PRETTY_FUNCTION__ for GNU compatible
compilers otherwise __func__ to provide the function name string.
2015-11-01 10:26:37 +00:00
d5d062cbfe STYLE: autoHexMesh: remove unused code 2015-10-28 15:05:13 +00:00
ec76bca024 ENH: snappyHexMesh: improvements to gap detection:
- shoot rays to nearest point on surface and two perpendicular rays
  (instead of always shooting in the 3 coordinate directions)

- avoid bleeding through the surface intersection
2015-10-28 15:02:17 +00:00
3f2d5983ad ENH: snappyHexMesh: shoot gap-detection rays perpendicular to the surface 2015-10-28 13:35:52 +00:00
afa6bd5056 ENH: snappyHexMesh: added to automatic gap-refinement capabilities
1. multi-ray shooting. It now shoots rays in all the 3 coordinate directions
from the cell centre. Before it would shoot just a single ray from the
nearest point on the surface, going through the cell centre.

There is a cost overhead in that now it shoots 6 rays (+-x, +-y, +-z)
instead of just 1.

2. bleeding of refinement. It marks the cells inside a gap and walks out
the gap-size to neighbouring cells (which are just outside the gap). This
should make for a smoother refinement pattern.
2015-10-28 13:34:51 +00:00
9dd6a5b003 ENH: snappyHexMesh: add automatic gap-level detection and refinement 2015-10-28 13:28:32 +00:00
df010ec6c0 Merge branch 'feature-snappyHexMesh' of develop.openfoam.com:Development/OpenFOAM-dev-OpenCFD into feature-snappyHexMesh 2015-10-26 14:38:19 +00:00
2de68a9ae7 BUG: snappyHexMesh: minThickness > 1 caused truncation of layers
The start of the layer addition loop does a synchronisation of the wanted
displacement. This also does a truncation of the displacement if it is <
minThickness. At the first iteration the displacement was initialised to
vector::one which might trigger the truncation logic (and then disable
extrusion altogether). Instead we now initialise the displacement to
vector::GREAT before entering the synchronisation.
2015-10-26 14:37:17 +00:00
57547918a6 GIT: Resolve merge conflict 2015-10-15 17:14:13 +01:00
4d1159e685 ENH: snappyHexMesh: various improvements. See below or the default snappyHexMeshDict.
Refinement:
-----------
// Optionally avoid patch merging - keeps hexahedral cells
// (to be used with automatic refinement/unrefinement)
//mergePatchFaces off;

// Optional multiple locationsInMesh with corresponding optional cellZone
// (automatically generates faceZones inbetween)
locationsInMesh
(
    ((-0.09 -0.039 -0.049)  bottomAir)  // cellZone bottomAir
    ((-0.09 0.009 -0.049)   topAir)     // cellZone topAir
);

// Optional faceType and patchType specification for these faceZones
faceZoneControls
{
    bottomAir_to_topAir
    {
        faceType baffle;
    }
}

/ Optional checking of 'bleeding' of mesh through a specifying a locations
// outside the mesh
locationsOutsideMesh ((0 0 0)(12.3 101.17 3.98));

// Improved refinement: refine all cells with all (or all but one) sides refined

// Improved refinement: refine all cells with opposing faces with different
// refinement level. These cells can happen on multiply curved surfaces.
// Default on, can be switched off with
//interfaceRefine false;

Snapping
--------
// Optional smoothing of points at refinement interfaces. This will reduce
// the non-orthogonality at refinement interfaces.
//nSmoothInternal $nSmoothPatch;

Layering
--------

// Layers can be added to patches or to any side of a faceZone.
// (Any faceZone internally gets represented as two patches)

// The angle to merge patch faces can be set independently of the
// featureAngle. This is especially useful for large feature angles
// Default is the same as the featureAngle.
//mergePatchFacesAngle 45;

// Optional mesh shrinking type 'displacementMotionSolver'. It uses any
// displacementMotionSolver, e.g. displacementSBRStress
// (default is the medial-axis algorithm, 'displacementMedialAxis')
//meshShrinker displacementMotionSolver;
2015-10-14 14:49:37 +01:00
7b7967de76 ENH: snappyHexMesh: various improvements. See below or the default snappyHexMeshDict.
Refinement:
-----------
// Optionally avoid patch merging - keeps hexahedral cells
// (to be used with automatic refinement/unrefinement)
//mergePatchFaces off;

// Optional multiple locationsInMesh with corresponding optional cellZone
// (automatically generates faceZones inbetween)
locationsInMesh
(
    ((-0.09 -0.039 -0.049)  bottomAir)  // cellZone bottomAir
    ((-0.09 0.009 -0.049)   topAir)     // cellZone topAir
);

// Optional faceType and patchType specification for these faceZones
faceZoneControls
{
    bottomAir_to_topAir
    {
        faceType baffle;
    }
}

/ Optional checking of 'bleeding' of mesh through a specifying a locations
// outside the mesh
locationsOutsideMesh ((0 0 0)(12.3 101.17 3.98));

// Improved refinement: refine all cells with all (or all but one) sides refined

// Improved refinement: refine all cells with opposing faces with different
// refinement level. These cells can happen on multiply curved surfaces.
// Default on, can be switched off with
//interfaceRefine false;

Snapping
--------
// Optional smoothing of points at refinement interfaces. This will reduce
// the non-orthogonality at refinement interfaces.
//nSmoothInternal $nSmoothPatch;

Layering
--------

// Layers can be added to patches or to any side of a faceZone.
// (Any faceZone internally gets represented as two patches)

// The angle to merge patch faces can be set independently of the
// featureAngle. This is especially useful for large feature angles
// Default is the same as the featureAngle.
//mergePatchFacesAngle 45;

// Optional mesh shrinking type 'displacementMotionSolver'. It uses any
// displacementMotionSolver, e.g. displacementSBRStress
// (default is the medial-axis algorithm, 'displacementMedialAxis')
//meshShrinker displacementMotionSolver;
2015-10-14 14:49:37 +01:00