Commit graph

16 commits

Author SHA1 Message Date
Henry Weller
36b1c587a8 face: Add handling for duplicate vertices in sameVertices
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1821
2015-08-10 10:01:36 +01:00
Henry Weller
091a78d316 blockMesh: Correct multi-grading support for polyLine
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1809
2015-08-04 19:34:24 +01:00
Henry Weller
18ac24b2ca blockMesh: Improve multi-grading so that the divisions are independent of section ordering
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1809
2015-08-02 22:14:26 +01:00
Henry Weller
a8f61f210f blockMesh: added experimental fast-merge algorithm
The standard merge-algorithm is N^2 over the face-points and uses a
geometric proximity test for the merge.  These are both choices for
implementation simplicity and are rather inefficient for large meshes.
I have now implemented an experimental linear topological merge
algorithm which is VERY fast and effective for meshes of any size.
Currently it will merge internal faces on meshes of arbitrary complexity
but does not yet handle edge or face collapse needed for wedges and
other degenerate blocks.

The new fast-merge algorithm may be selected using the optional
"fastMerge" entry:

fastMerge yes;

and if not present the standard N^2 algorithm will be used.

Henry G. Weller
CFD Direct
2015-07-12 20:32:25 +01:00
Henry Weller
24a666a6c2 blockMesh: Improve block merge face correspondence test 2015-07-05 18:23:37 +01:00
Chris Greenshields
5ecb900eb4 Default expansionRatio to 1 for mesh extrusion 2015-05-18 13:18:03 +01:00
Henry
57b25f22b3 planeExtrusion.[HC]: Renamed from plane.[HC] to avoid name clash 2015-05-04 21:16:44 +01:00
Henry
c28730251c extrudeMesh: Add sector extrusion type and specialize wedge and plane
to create single layer extrusions with wedge and empty front and back
patches respectively.
2015-05-04 20:54:39 +01:00
Henry
3ccbc72aaa blockMeshMerge: Adjusted merge-tolerance
Resolves bug-report http://www.openfoam.org/mantisbt/view.php?id=1443
2015-03-05 18:57:18 +00:00
Henry
f58fd14271 Corrected capitalization of Doxygen documentation comments 2015-02-14 13:10:15 +00:00
Henry
c328c68638 gradingDescriptor: support SP compilation 2015-02-05 12:11:55 +00:00
Henry
076fde91b9 Update headers 2015-02-03 12:12:07 +00:00
Henry
86d7f7208a blockMesh: Add support for multi/sectional grading in a block
Consider a block describing a channel with two opposite walls.
Currently in order to grade the mesh towards the walls and have a
uniform region in the centre the channel would need to be spit into 3
blocks.  With the new multi/sectional grading this can be achieved in a
single block e.g.

blocks
(
    hex (0 1 2 3 4 5 6 7) (20 60 20)
    simpleGrading
    (
        1
        ((0.2 0.3 4) (0.6 0.4 1) (0.2 0.3 0.25))
        1
    )
);

In this example the block is divided uniformly in the x and z -directions
and split into three grading sections in the y-direction described by
three triples:  ((0.2 0.3 4) (0.6 0.4 1) (0.2 0.3 0.25)).  Each of the
grading sections is described by a triple consisting of the fraction of
the block, the fraction of the divisions and the grading ratio (size of
first division/size of last division).  Both the fraction of the block
and the fraction of the divisions are normalized automatically so they
can be specified scaled in anyway, e.g. as percentages:

blocks
(
    hex (0 1 2 3 4 5 6 7) (20 60 20)
    simpleGrading
    (
        1
        ((2 3 4) (6 4 1) (2 3 0.25))
        1
    )
);

and they need not sum to 1 or 100.

This is very new functionality and not well tested but backward
compatibility has been well tested so all existing blockMeshDicts should
parse correctly.
2015-02-03 12:01:55 +00:00
Henry
2a614865ff Added and verified support for 64bit labels
To compile with 64bit labels set

WM_LABEL_SIZE=64

in ~/OpenFOAM/dev/prefs.sh

source ~/.bashrc

then Allwmake in OpenFOAM-dev.

This will build into for example OpenFOAM-dev/platforms/linux64ClangDPInt64Opt

If WM_LABEL_SIZE is unset or set to 32:

WM_LABEL_SIZE=32

the build would be placed into OpenFOAM-dev/platforms/linux64ClangDPInt32Opt

Thus both 32bit and 64bit label builds can coexist without problem.
2014-12-31 19:02:52 +00:00
Henry
bc5134a55e New version of wmake supporting out-of-tree object and dependency files 2014-12-14 21:42:18 +00:00
Henry
446e5777f0 Add the OpenFOAM source tree 2014-12-10 22:40:10 +00:00