Commit Graph

990 Commits

Author SHA1 Message Date
240c714aab Merge branch 'master' into cvm
Conflicts:
	etc/settings.csh
	etc/settings.sh
	wmake/rules/General/CGAL
2010-04-09 10:13:42 +01:00
7783e806d8 BUG: Was not crossing into unnamed cellZone regions 2010-04-06 16:30:08 +01:00
3f2b57f0f3 BUG: Always do topological walking to correct cellZones. 2010-04-01 14:23:58 +01:00
d947aa9c9e Merge branch 'master' of /home/noisy3/OpenFOAM/OpenFOAM-dev 2010-03-30 21:54:08 +01:00
0b1fc8e0cd ENH: Changed behaviour of surfaces with zones.
- if allowFreeStanding = false it also disables faceZones on boundaries.
- can have surfaces with faceZone but no cellZone.
2010-03-30 21:50:40 +01:00
d8c1aa3afd BUG: nGrow of layer disabling not handled correctly.
Now also moved to within layer iteration loop.
2010-03-30 21:49:37 +01:00
c508b2fe17 STYLE: consistent capitalization of Private/Protected Member Functions in comments 2010-03-30 11:33:42 +02:00
d29c438657 STYLE: use url for FSF license instead of postal address, switch to GPL v3 2010-03-29 14:07:56 +02:00
89c7523c72 Merge branch 'master' into splitCyclic
Conflicts:
	src/OpenFOAM/meshes/polyMesh/polyPatches/basic/coupled/coupledPolyPatch.C
	src/OpenFOAM/meshes/polyMesh/polyPatches/constraint/cyclic/cyclicPolyPatch.C
	src/OpenFOAM/meshes/polyMesh/polyPatches/constraint/cyclic/cyclicPolyPatch.H
	src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C
	src/mesh/autoMesh/autoHexMesh/autoHexMeshDriver/autoLayerDriver.C
	src/parallel/decompose/scotchDecomp/scotchDecomp.C
	src/parallel/parMetisDecomp/parMetisDecomp.C
	src/sampling/sampledSurface/isoSurface/isoSurfaceCell.C
2010-03-25 13:54:12 +00:00
829c30733d COMP: Boost and CGAL environment.
Targeting all building and linking to CGAL and boost installed to
$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER.

Reverting to CGAL 3.5.1, waiting for 3.6.1 - problem in 3.6 with boost
1.42.0.

Removing MPFR_HOME variable, not needed as include and link is done
with the $WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER_ARCH
versions.
2010-03-24 13:33:29 +00:00
5342baa2a7 Merge branch 'master' into cvm
Conflicts:
	etc/settings.csh
	etc/settings.sh
2010-03-23 11:43:17 +00:00
5d93fbe16d ENH: Removed parmetis. Use ptscotch instead. 2010-03-22 16:48:48 +00:00
f5322b0bed STYLE: Corrected error message 2010-03-19 10:32:18 +00:00
dc06f24a0c ENH: Split src/parallel into decompse and reconstruct to remove cyclic build dependency 2010-03-18 12:23:01 +00:00
f1ab396a66 STYLE: remove all references to wallPoint::greatPoint.
Replaced with point::max wherever possible. Is VGREAT, not GREAT so be
careful with calculations.
2010-03-17 11:48:44 +00:00
49fb39e8f3 Merge commit 'origin/master' into splitCyclic
Conflicts:
	applications/utilities/parallelProcessing/decomposePar/decomposePar.C
	applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C
	applications/utilities/parallelProcessing/decomposePar/domainDecomposition.H
	applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C
	src/OpenFOAM/fields/pointPatchFields/constraint/processor/processorPointPatchField.C
	src/OpenFOAM/fields/pointPatchFields/pointPatchField/pointPatchField.C
	src/OpenFOAM/meshes/pointMesh/pointPatches/derived/coupled/coupledFacePointPatch.H
	src/OpenFOAM/meshes/polyMesh/globalMeshData/globalPoints.C
	src/OpenFOAM/meshes/polyMesh/polyPatches/basic/coupled/coupledPolyPatch.C
	src/OpenFOAM/meshes/polyMesh/polyPatches/basic/coupled/coupledPolyPatch.H
	src/OpenFOAM/meshes/polyMesh/polyPatches/constraint/processor/processorPolyPatch.C
2010-03-09 21:28:53 +00:00
5ece14ec6f BUG: finite volume did not work before. 2010-03-03 10:12:35 +00:00
12c6dc3cba ENH: conformalVoronoiMesh. Making collapse to edge and point respect
the fact that some points are on the boundary.

When there is more than one boundary point on the face, it is
arbitrarily picking one, which can distort the surface.  Need to give
information about which points are features and decide how to
arbitrate when multiple boundary or feature points are seeking to be
collapsed together.
2010-02-26 20:20:35 +00:00
fd41ce151f BUG: conformalVoronoiMesh. Possibility of two Delaunay vertices being
closer than SMALL when a pointFile is read (and perhaps other
situations).  When this is detected, deleting one or both of the points.

Also adding a check that both Delaunay vertices are internal before
looking at them in pointToBeRetained, otherwise there is a risk of a
seg-fault or undefined behaviour.
2010-02-26 19:11:09 +00:00
d739901701 ENH: conformalVoronoiMesh. Not filtering faces when writing mesh out
to a timestep.  Passing an instance to the writeMesh functions rather
than a bool.

Adding infrastructure to record and use the fact that some dual
vertices are on the surface, so when points are merged and faces are
collapsed, the boundary points are preferred.
2010-02-26 16:25:07 +00:00
378b557cd3 BUG: cellSizeFunction. Bad logic for triggering warning for bothSides
default whern surface does not support volumeType.

BUG: conformalVoronoiMesh.  Making test "totalHits >= hitLimit" rather than
"totalHits = hitLimit" to be strictly consistent and always trigger
the iteration termination message.
2010-02-26 16:11:30 +00:00
0eea2bab54 ENH: conformalVoronoiMesh. Reading surface conformation parameters
from dictionary and using from controls object.
2010-02-24 19:20:58 +00:00
c0ba0228e3 STYLE: conformalVoronoiMesh. Rearranging indentation and spacing. 2010-02-23 16:28:04 +00:00
2122b0854e ENH: conformalVoronoiMesh. Reading timeChecks Switch from dictionary. 2010-02-23 13:47:27 +00:00
6f6d5dd39e ENH/BUG: featureEdgeMesh/conformalVoronoiMesh.
No longer reading or writing edgeDirections - calculating them on
read.

Properly initialising data in featureEdgeMesh constructor.

Fixing use of extend for treeBoundBox.

Removing writeObj from featureEdgeMesh constructor - calling
explicitly from surfaceFeatureExtract.
2010-02-23 11:25:14 +00:00
08488007af COMP: CGAL and boost build and environment options. 2010-02-22 16:00:54 +00:00
e09a140a28 Merge branch 'master' into cvm
Conflicts:
	applications/utilities/surface/surfaceFeatureExtract/surfaceFeatureExtract.C
2010-02-22 13:59:07 +00:00
62637d8471 ENH: initial overhaul of volPointInterpolation.
- removed globalPointPatch*
- removed pointPatchInterpolate*
since all is now inside volPointInterpolation.
2010-02-17 14:01:44 +00:00
c91ffbdbe8 Merge branch 'master' into cvm
Conflicts:
	src/OpenFOAM/meshes/primitiveShapes/plane/plane.C
	src/edgeMesh/Make/options
2010-02-10 15:00:34 +00:00
8426ca1a8c Merge commit 'OpenCFD/master' into olesenm 2010-02-03 17:40:37 +01:00
36346ec1a2 ENH: Do a weighted balance before refinement and layer addition.
Have weight=7 on cells to be refined and balance. Then after refinement
there will be perfect balancing. Similar for layer addition.
2010-02-03 06:18:30 +00:00
a070321792 ENH: Add usage information for snappyHexMesh -overwrite option.
Make debug optional.

- minor wording changes in the messages
2010-02-02 15:39:45 +01:00
8b7f6666ca ENH: sets are now searched for.
Some tools now output sets at the pointsInstance (if relating to geometry),
some at the facesInstance (if relating to topology).
So when loading them we now search for them from current time down
to facesInstance. They cannot be beyond facesInstance.
Adapted Time::findInstance to take optional limiting instance. Adapted
topoSet to use this. Adapted all uses of IOobjectList on sets to do the
same.
2010-01-29 10:25:13 +00:00
46ad2e55d6 Merge branch 'master' into splitCyclic
Conflicts:
	applications/utilities/parallelProcessing/decomposePar/domainDecomposition.C
	applications/utilities/parallelProcessing/decomposePar/domainDecomposition.H
	applications/utilities/parallelProcessing/decomposePar/domainDecompositionMesh.C
	src/OpenFOAM/algorithms/MeshWave/FaceCellWave.C
	src/OpenFOAM/matrices/lduMatrix/lduAddressing/lduInterfaceFields/cyclicLduInterfaceField/cyclicLduInterfaceField.C
	src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.C
	src/OpenFOAM/meshes/polyMesh/globalMeshData/globalMeshData.H
	src/OpenFOAM/meshes/polyMesh/syncTools/dummyTransform.H
	src/OpenFOAM/meshes/polyMesh/syncTools/syncTools.C
	src/edgeMesh/edgeFormats/vtk/VTKedgeFormat.H
	src/mesh/blockMesh/curvedEdges/spline.H
	src/meshTools/PointEdgeWave/PointEdgeWave.C
	src/meshTools/sets/topoSets/faceSet.C
2010-01-26 17:11:18 +00:00
70116c0049 Handling cases where there are repeated eigenvalues for a face, i.e. a
square.  The subdeterminants in the eigenvector calculation in
tensor.C ran off the bottom of SMALL.  Handling by identifying the
longest edge as the collapseAxis.

Adding function to return the index of the longest edge for a face.
2010-01-20 18:54:56 +00:00
a67845421c Merge branch 'master' into cvm 2010-01-20 12:33:10 +00:00
75f14f7c05 Incorrect index on compaction 2010-01-18 18:02:48 +00:00
4d4276fd6d Adapted for new api of searchableSurface 2010-01-15 17:33:12 +00:00
c5a5079582 Changed printing 2010-01-15 17:21:42 +00:00
15d0becbb1 Changed field writing to have zeroGradient bc for ease of postprocessing 2010-01-15 17:20:42 +00:00
e1f953e19e Progressively limited face filtering based on value of filterCount. 2010-01-14 19:05:43 +00:00
ecab63cc58 Changing indexedCell to store an integer count of the number of times
a dual vertex has been limited.

Allowing the face filtering to continue after warning that mesh
quality cannot be satisfied based on a control Switch.  The filtering
terminates when the number of wrongFaces is less than or equal to the
intial number.

There is a possiblity that the filtering will never converge in this
mode (or in fact, any other).  For example, if a face is on the brink
of being "wrong" and a face motion on the other side of the cell moves
the cell centre enough to make it "wrong", then the limiting mechanism
won't be able to pick this up and stop it, unless limiting is applied
to all points of all cells that are connected to a point that is on a
wrong face.  This can be done if a vertex on a face has been limited
many (say > 4) times.
2010-01-14 13:32:51 +00:00
f847a7927e builds again 2010-01-14 12:13:01 +00:00
cf0c71789a Adding filter limit scalars to the Delaunay cells. After initial face
check, identifying faces that have bad quality, identifying the points
that support the faces, and 'limiting' them.

Wrong faces are also those that are attached to a cell with 1-3 faces.

At each iteration of filtering, the Delaunay cells are all reindexed.
Now a separate function.

Currently 'limiting' means: do not collapse any face that has any
vertex that has been limited at all and do not move a vertex to the
boundary during the surface smooth if it has been limited.  This is
the most agressive form of limiting and leaves faces in the mesh that
might be safely removed with an less aggressive filter.

Limiting of all points connected to a cell which has a limited
point could be used (comment out code).

Removed some redundant code from indexedCell.
2010-01-13 16:12:05 +00:00
6d4cb53c56 Allowing collapse to continue even with non-zero initial face quality
assessment.
2010-01-12 20:05:58 +00:00
0a65620cb8 Removing commented out owner and neighbour determination from
createFacesOwnerNeighbourAndPatches.  This commit is available for
reference in future.
2010-01-12 15:21:30 +00:00
4e98d8b99e Adding check of mesh after initial point merge (which gets rid of zero
area faces).  The intention is that if checkMesh returns a non zero
number of bad faces, then no amount of collapsing and backtracking can
satisfy the criteria (as long as the value of mergeClosenessCoeff is
appropriate - a more rigorous zero area face collapse may be
appropriate) and the mesher will halt (or at least not filter at
all). The mesh quality criteria and the surface conformation controls
can be altered and the internalDelaunayVertices read in to try again,
or more cell size resolution can be applied in areas where problems
are occuring.
2010-01-12 14:11:06 +00:00
9f9e97a97f Removing the experiment where faces that weren't not able to be
collapsed to a single edge had their vertices aligned and were just
not created.  This causes topolgical nonclosedness, and can cause
geometrical nonclosedness - not a good plan.

Fixed return logic error in smoothSurfaceDualFaces.

Not moving points for deferredCollapseFaces during collapseFace.
Gives the ability to make a a decision about the face at the polyMesh
level and only move the points then.
2010-01-12 11:29:29 +00:00
0552c4d2d9 Adding check for bow-tie faces (ABAB) in buildDualFace.
Adding function for extracting the owner and neighbour for a dual
face, and a bool on when to reverse.

Returning faceCollapseMode from collapseFace to allow decisions to be
made.

Adding removeUnusedCells function to get rid of cells with no faces.

Adding an early collapse to point option for faces that are 0.2 of the
maxCollapseFaceToPointSideLengthCoeff.

Adding a HashSet<labelPair... to record the faces that are to be
collapsed to edges.  Using owner and neighbour labels to index.  WIP
for all mentions.
2010-01-11 18:56:30 +00:00
1c267fb809 Logic errors:
Decisions to skip faces with an already indexed point was wrong, the
continue would be operating on the while loop, not the for loop over
the face, adding a bool to be used afterwards.

limitToQuadsOrTris logic would not work when it was false, it would
never operate regardless of the size of the face.
2010-01-10 11:46:30 +00:00