ENH: sampleDict: regularise option
[OpenFOAM-2.0.x.git] / applications / utilities / postProcessing / sampling / sample / sampleDict
blobdcefd3b7fcc18bad5ba397e037ca602cff294ab5
1 /*--------------------------------*- C++ -*----------------------------------*\
2 | =========                 |                                                 |
3 | \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
4 |  \\    /   O peration     | Version:  2.0.0                                 |
5 |   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
6 |    \\/     M anipulation  |                                                 |
7 \*---------------------------------------------------------------------------*/
8 FoamFile
10     version     2.0;
11     format      ascii;
12     class       dictionary;
13     object      sampleDict;
15 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
17 // Set output format : choice of
18 //      xmgr
19 //      jplot
20 //      gnuplot
21 //      raw
22 //      vtk
23 //      csv
24 setFormat raw;
26 // Surface output format. Choice of
27 //      null        : suppress output
28 //      ensight     : Ensight Gold format, one field per case file
29 //      foamFile    : separate points, faces and values file
30 //      dx          : DX scalar or vector format
31 //      vtk         : VTK ascii format
32 //      raw         : x y z value format for use with e.g. gnuplot 'splot'.
34 // Note:
35 // other formats such as obj, stl, etc can also be written (by proxy)
36 // but without any values!
37 surfaceFormat vtk;
39 // optionally define extra controls for the output formats
40 formatOptions
42     ensight
43     {
44         format  ascii;
45     }
48 // interpolationScheme. choice of
49 //      cell          : use cell-centre value only; constant over cells (default)
50 //      cellPoint     : use cell-centre and vertex values
51 //      cellPointFace : use cell-centre, vertex and face values.
52 //      pointMVC      : use point values only (Mean Value Coordinates)
53 //      cellPatchConstrained : use cell-centre except on boundary faces where
54 //        it uses the boundary value. For use with e.g. patchCloudSet.
55 // 1] vertex values determined from neighbouring cell-centre values
56 // 2] face values determined using the current face interpolation scheme
57 //    for the field (linear, gamma, etc.)
58 interpolationScheme cellPoint;
60 // Fields to sample.
61 fields
63     p
64     U
67 // Set sampling definition: choice of
68 //      uniform             evenly distributed points on line
69 //      face                one point per face intersection
70 //      midPoint            one point per cell, inbetween two face intersections
71 //      midPointAndFace     combination of face and midPoint
73 //      polyLine            specified points, not nessecary on line, uses
74 //                          tracking
75 //      cloud               specified points, uses findCell
76 //      triSurfaceMeshPointSet  points of triSurface
78 // axis: how to write point coordinate. Choice of
79 // - x/y/z: x/y/z coordinate only
80 // - xyz: three columns
81 //  (probably does not make sense for anything but raw)
82 // - distance: distance from start of sampling line (if uses line) or
83 //             distance from first specified sampling point
85 // type specific:
86 //      uniform, face, midPoint, midPointAndFace : start and end coordinate
87 //      uniform: extra number of sampling points
88 //      polyLine, cloud: list of coordinates
89 //      patchCloud: list of coordinates and set of patches to look for nearest
90 sets
92     lineX1
93     {
94         type        uniform;
95         axis        distance;
97         //- cavity. Slightly perturbed so not to align with face or edge.
98         start       (0.0201 0.05101 0.00501);
99         end         (0.0601 0.05101 0.00501);
100         nPoints     10;
101     }
103     lineX2
104     {
105         type        face;
106         axis        x;
108         //- cavity
109         start       (0.0001 0.0525 0.00501);
110         end         (0.0999 0.0525 0.00501);
111     }
113     somePoints
114     {
115         type    cloud;
116         axis    xyz;
117         points  ((0.049 0.049 0.00501)(0.051 0.049 0.00501));
118     }
120     somePatchPoints
121     {
122         // Sample nearest points on selected patches. Looks only up to
123         // maxDistance away. Any sampling point not found will get value
124         // pTraits<Type>::max (usually VGREAT)
125         // Use with interpolations:
126         // - cell (cell value)
127         // - cellPatchConstrained (boundary value)
128         // - cellPoint (interpolated boundary value)
129         type        patchCloud;
130         axis        xyz;
131         points      ((0.049 0.099 0.005)(0.051 0.054 0.005));
132         maxDistance 0.1;    // maximum distance to search
133         patches     (".*Wall.*");
134     }
138 // Surface sampling definition
140 // 1] patches are not triangulated by default
141 // 2] planes are always triangulated
142 // 3] iso-surfaces are always triangulated
143 surfaces
145     constantPlane
146     {
147         type            plane;    // always triangulated
148         basePoint       (0.0501 0.0501 0.005);
149         normalVector    (0.1 0.1 1);
151         //- Optional: restrict to a particular zone
152         // zone        zone1;
153     }
155     interpolatedPlane
156     {
157         type            plane;    // always triangulated
158         // make plane relative to the coordinateSystem (Cartesian)
159         coordinateSystem
160         {
161             origin      (0.0501 0.0501 0.005);
162         }
163         basePoint       (0 0 0);
164         normalVector    (0.1 0.1 1);
165         interpolate     true;
166     }
168     walls_constant
169     {
170         type            patch;
171         patches         ( ".*Wall.*" );
172         // Optional: whether to leave as faces (=default) or triangulate
173         // triangulate     false;
174     }
176     walls_interpolated
177     {
178         type            patch;
179         patches         ( ".*Wall.*" );
180         interpolate     true;
181         // Optional: whether to leave as faces (=default) or triangulate
182         // triangulate     false;
183     }
185     nearWalls_interpolated
186     {
187         // Sample cell values off patch. Does not need to be the near-wall
188         // cell, can be arbitrarily far away.
189         type            patchInternalField;
190         patches         ( ".*Wall.*" );
191         distance        0.0001;
192         interpolate     true;
193         // Optional: whether to leave as faces (=default) or triangulate
194         // triangulate     false;
195     }
197     interpolatedIso
198     {
199         // Iso surface for interpolated values only
200         type            isoSurface;    // always triangulated
201         isoField        rho;
202         isoValue        0.5;
203         interpolate     true;
205         //zone            ABC;          // Optional: zone only
206         //exposedPatchName fixedWalls;  // Optional: zone only
208         // regularise      false;    // Optional: do not simplify
209         // mergeTol        1e-10;    // Optional: fraction of mesh bounding box
210                                      // to merge points (default=1e-6)
211     }
212     constantIso
213     {
214         // Iso surface for constant values.
215         // Triangles guaranteed not to cross cells.
216         type            isoSurfaceCell;    // always triangulated
217         isoField        rho;
218         isoValue        0.5;
219         interpolate     false;
220         regularise      false;              // do not simplify
221         // mergeTol        1e-10;    // Optional: fraction of mesh bounding box
222                                      // to merge points (default=1e-6)
223     }
225     triangleCut
226     {
227         // Cutingplane using iso surface
228         type            cuttingPlane;
229         planeType       pointAndNormal;
230         pointAndNormalDict
231         {
232             basePoint       (0.4 0 0.4);
233             normalVector    (1 0.2 0.2);
234         }
235         interpolate     true;
237         //zone            ABC;          // Optional: zone only
238         //exposedPatchName fixedWalls;  // Optional: zone only
240         // regularise      false;    // Optional: do not simplify
241         // mergeTol        1e-10;    // Optional: fraction of mesh bounding box
242                                      // to merge points (default=1e-6)
243     }
245     distance
246     {
247         // Isosurface from signed/unsigned distance to surface
248         type            distanceSurface;
249         signed          true;
251         // Definition of surface
252         surfaceType     triSurfaceMesh;
253         surfaceName     integrationPlane.stl;
254         // Distance to surface
255         distance        0.0;
257         interpolate     false;
258         //regularise      false;      // Optional: do not simplify
259         // mergeTol        1e-10;    // Optional: fraction of mesh bounding box
260                                      // to merge points (default=1e-6)
261     }
263     triSurfaceSampling
264     {
265         // Sampling on triSurface
266         type        sampledTriSurfaceMesh;
267         surface     integrationPlane.stl;
268         source      boundaryFaces;  // sample cells or boundaryFaces
269         interpolate true;
270     }
274 // *********************************************************************** //