Geophysical Inversion and Modelling Library v1.5.4
Loading...
Searching...
No Matches
meshgenerators.h
1/******************************************************************************
2 * Copyright (C) 2008-2024 by the GIMLi development team *
3 * Carsten Rücker carsten@resistivity.net *
4 * *
5 * Licensed under the Apache License, Version 2.0 (the "License"); *
6 * you may not use this file except in compliance with the License. *
7 * You may obtain a copy of the License at *
8 * *
9 * http://www.apache.org/licenses/LICENSE-2.0 *
10 * *
11 * Unless required by applicable law or agreed to in writing, software *
12 * distributed under the License is distributed on an "AS IS" BASIS, *
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *
14 * See the License for the specific language governing permissions and *
15 * limitations under the License. *
16 * *
17 ******************************************************************************/
18
19#ifndef GIMLI_MESHGENERATORS__H
20#define GIMLI_MESHGENERATORS__H
21
22#include "gimli.h"
23
24namespace GIMLI{
25
27DLLEXPORT Mesh createGrid(const RVector & x, int marker=0);
28
30DLLEXPORT Mesh createGrid(const RVector & x, const RVector & y, int marker=0,
31 bool worldBoundaryMarker=false);
32
34DLLEXPORT Mesh createGrid(const RVector & x, const RVector & y, const RVector & z,
35 int marker=0, bool worldBoundaryMarker=false);
36
38DLLEXPORT Mesh createMesh1D(const RVector & x);
39
42DLLEXPORT Mesh createMesh1D(Index nCells, Index nProperties=1);
43
45DLLEXPORT Mesh createMesh1DBlock(Index nLayers, Index nProperties=1);
46
48DLLEXPORT Mesh createMesh2D(const RVector & x, const RVector & y, int markerType=0);
49
56DLLEXPORT Mesh createMesh2D(const Mesh & mesh, const RVector & y,
57 int frontMarker=0, int backMarker=0,
58 int leftMarker=0, int rightMarker=0,
59 bool adjustBack=false);
60
62DLLEXPORT Mesh createMesh2D(Index xDim, Index yDim, int markerType=0);
63
65DLLEXPORT Mesh createMesh3D(const RVector & x, const RVector & y, const RVector & z, int markerType=0);
66
71DLLEXPORT Mesh createMesh3D(const Mesh & mesh, const RVector & z, int topMarker=0, int bottomMarker=0);
72
74DLLEXPORT Mesh createMesh3D(Index xDim, Index yDim, Index zDim, int markerType=0);
75
76
78DLLEXPORT bool addTriangleBoundary(Mesh & mesh,
79 double xBoundary, double yBoundary, int cellMarker,
80 bool save=false);
81
82//
83// /*! Shortcut */
84// DLLEXPORT Mesh createMesh3D(const Mesh & mesh, const RVector & z);
85
86
87
88} // namespace GIMLI
89
90#endif // GIMLI_MESHGENERATORS__H
Definition mesh.h:128
GIMLi main namespace for the Geophyiscal Inversion and Modelling Library.
Definition baseentity.h:24
RVector y(const R3Vector &rv)
Definition pos.cpp:114
Mesh createMesh2D(Index xDim, Index yDim, int markerType)
Definition meshgenerators.cpp:85
RVector x(const R3Vector &rv)
Definition pos.cpp:107
bool addTriangleBoundary(Mesh &mesh, double xBoundary, double yBoundary, int cellMarker, bool save)
Definition meshgenerators.cpp:253
RVector z(const R3Vector &rv)
Definition pos.cpp:120
Mesh createMesh1D(Index nCells, Index nClones)
Definition meshgenerators.cpp:49
Mesh createGrid(const RVector &x, int marker)
Definition meshgenerators.cpp:26
Mesh createMesh3D(Index xDim, Index yDim, Index zDim, int markerType)
Definition meshgenerators.cpp:102
Mesh createMesh1DBlock(Index nLayers, Index nProperties)
Definition meshgenerators.cpp:69