Commit Graph

21 Commits

Author SHA1 Message Date
7792501a01 RELEASE: Updated headers for v2206 2022-06-24 15:41:02 +01:00
a2014242cf RELEASE: Updated headers for v2112 2021-12-20 14:18:01 +00:00
29acee5a50 TUT: use new blockMesh support (faces, transforms) 2021-07-28 13:14:44 +02:00
e3796745ed CONFIG: Updated headers to v2106
Minor clean-up
2021-06-28 09:14:42 +01:00
3a858ac682 TUT: mesh: clean up tutorials 2021-06-08 20:14:09 +00:00
ec81436cce TUT: generalize (parameterize) blockMeshDict for half-cylinder geometries
- profit from some of the recent modifications to parser expansion

TUT: adjust some #eval statements for less clutter
2021-05-19 17:33:25 +02:00
79e353b84e RELEASE: Updated version to v2012 2020-12-23 10:01:39 +01:00
121c69ef2e TUT: use new 'arc' specification in several tutorials
- in most cases this eliminates manually calculation of circumferential
  points.

TUT: improve parameterization of sphere blockMeshDict

- allow separate parameterization of radius, ratio of inner to outer,
  and the number of divisions in x/y/z and radial directions
2020-10-05 15:45:39 +02:00
538d749220 REL: Updated headers to version v2006 2020-06-29 17:27:54 +01:00
ae2ab06312 REL: Release preparations 2019-12-23 09:49:23 +00:00
98467036b3 STYLE: regularize quoting and exit on failed 'cd' 2019-11-13 13:19:16 +01:00
ec7e3c88e4 ENH: test for WM_PROJECT_DIR being set/unset in scripts 2019-11-06 09:18:51 +01:00
02914539f7 TUT: consistent use of scale in blockMeshDict 2019-10-01 09:33:38 +02:00
be44dcaf1f RELEASE: Version clean-up for release 2019-06-25 11:51:19 +01:00
9231534efa STYLE: Updating version to v1812 2018-12-19 18:07:52 +00:00
db8ba80ae4 TUT: update old keywords 2018-12-14 11:20:31 +01:00
d530bc254a STYLE: code cleanup searchableSurface (issue #929)
- improve doxygen entries for searchable surfaces.

- support selection of searchable surfaces with shorter names.
  Eg,
      type   box | cylinder | ...;
  vs  type   searchableBox | searchableCylinder | ...;
2018-07-06 11:03:28 +02:00
6e35bcda70 ENH: Updated config for release v1806 2018-06-28 12:56:00 +01:00
c792a9d7df TUT: script cleanup, provide cleanCase0 for commonly used operation 2017-10-12 19:20:56 +02:00
28e37bbec9 STYLE: Consistency updates 2016-12-16 14:36:48 +00:00
009203188f blockMesh: New experimental support for projecting block face point to geometric surfaces
For example, to mesh a sphere with a single block the geometry is defined in the
blockMeshDict as a searchableSurface:

    geometry
    {
        sphere
        {
            type searchableSphere;
            centre (0 0 0);
            radius 1;
        }
    }

The vertices, block topology and curved edges are defined in the usual
way, for example

    v 0.5773502;
    mv -0.5773502;

    a 0.7071067;
    ma -0.7071067;

    vertices
    (
        ($mv $mv $mv)
        ( $v $mv $mv)
        ( $v  $v $mv)
        ($mv  $v $mv)
        ($mv $mv  $v)
        ( $v $mv  $v)
        ( $v  $v  $v)
        ($mv  $v  $v)
    );

    blocks
    (
        hex (0 1 2 3 4 5 6 7) (10 10 10) simpleGrading (1 1 1)
    );

    edges
    (
        arc 0 1 (0 $ma $ma)
        arc 2 3 (0 $a $ma)
        arc 6 7 (0 $a $a)
        arc 4 5 (0 $ma $a)

        arc 0 3 ($ma 0 $ma)
        arc 1 2 ($a 0 $ma)
        arc 5 6 ($a 0 $a)
        arc 4 7 ($ma 0 $a)

        arc 0 4 ($ma $ma 0)
        arc 1 5 ($a $ma 0)
        arc 2 6 ($a $a 0)
        arc 3 7 ($ma $a 0)
    );

which will produce a mesh in which the block edges conform to the sphere
but the faces of the block lie somewhere between the original cube and
the spherical surface which is a consequence of the edge-based
transfinite interpolation.

Now the projection of the block faces to the geometry specified above
can also be specified:

    faces
    (
        project (0 4 7 3) sphere
        project (2 6 5 1) sphere
        project (1 5 4 0) sphere
        project (3 7 6 2) sphere
        project (0 3 2 1) sphere
        project (4 5 6 7) sphere
    );

which produces a mesh that actually conforms to the sphere.

See OpenFOAM-dev/tutorials/mesh/blockMesh/sphere

This functionality is experimental and will undergo further development
and generalization in the future to support more complex surfaces,
feature edge specification and extraction etc.  Please get involved if
you would like to see blockMesh become a more flexible block-structured
mesher.

Henry G. Weller, CFD Direct.
2016-10-13 15:05:24 +01:00