Skip to content
Snippets Groups Projects
Commit 69146155 authored by Christophe Geuzaine's avatar Christophe Geuzaine
Browse files

Robert: ok, we'll try to be less self-deprecating :-)

-JF & Ch.
parent be862b91
Branches
Tags
No related merge requests found
...@@ -40,10 +40,10 @@ generator with built-in pre- and post-processing facilities</h1> ...@@ -40,10 +40,10 @@ generator with built-in pre- and post-processing facilities</h1>
<h2><a name="Description"></a>Description</h2> <h2><a name="Description"></a>Description</h2>
Gmsh is an automatic 3D finite element grid generator with a built-in Gmsh is a three-dimensional finite element grid generator with a
CAD engine and post-processor. Its design goal is to provide a simple build-in CAD engine and post-processor. Its design goal is to provide
meshing tool for academic problems with parametric input and advanced a fast, light and user-friendly meshing tool with parametric input and
visualization capabilities. advanced visualization capabilities.
<p> <p>
Gmsh is built around four modules: geometry, mesh, solver and Gmsh is built around four modules: geometry, mesh, solver and
post-processing. The specification of any input to these modules is post-processing. The specification of any input to these modules is
......
...@@ -334,10 +334,10 @@ integrate them into your own proprietary code). ...@@ -334,10 +334,10 @@ integrate them into your own proprietary code).
@cindex Introduction @cindex Introduction
@cindex Overview @cindex Overview
Gmsh is an automatic three-dimensional finite element mesh generator Gmsh is a three-dimensional finite element grid generator with a
with built-in pre- and post-processing facilities. Its design goal is to build-in CAD engine and post-processor. Its design goal is to provide
provide a simple meshing tool for academic problems with parametric a fast, light and user-friendly meshing tool with parametric input and
input and advanced visualization capabilities. advanced visualization capabilities.
Gmsh is built around four modules: geometry, mesh, solver and Gmsh is built around four modules: geometry, mesh, solver and
post-processing. All geometrical, mesh, solver and post-processing post-processing. All geometrical, mesh, solver and post-processing
...@@ -437,8 +437,8 @@ External solvers can be interfaced with Gmsh through Unix or TCP/IP ...@@ -437,8 +437,8 @@ External solvers can be interfaced with Gmsh through Unix or TCP/IP
sockets, which permits to launch external computations and to collect sockets, which permits to launch external computations and to collect
and process the results directly from within Gmsh's post-processing and process the results directly from within Gmsh's post-processing
module. The default solver interfaced with Gmsh is GetDP module. The default solver interfaced with Gmsh is GetDP
(@uref{http://www.geuz.org/getdp/}). Examples on how to interface (@uref{http://geuz.org/getdp/}). Examples on how to interface solvers
solvers written in C, C++, Perl and Python are available in the source written in C, C++, Perl and Python are available in the source
distribution (in the @file{utils/solvers/} directory). distribution (in the @file{utils/solvers/} directory).
@c ------------------------------------------------------------------------- @c -------------------------------------------------------------------------
...@@ -468,10 +468,7 @@ post-processing views through dynamically loadable plugins. ...@@ -468,10 +468,7 @@ post-processing views through dynamically loadable plugins.
@node What Gmsh is pretty good at, and what Gmsh is not so good at, Post-processing, Overview @node What Gmsh is pretty good at, and what Gmsh is not so good at, Post-processing, Overview
@section What Gmsh is pretty good at @dots{} @section What Gmsh is pretty good at @dots{}
Gmsh is a (relatively) small program, and was principally developed ``in Here is a tentative list of what Gmsh does best:
academia, to solve academic problems''@dots{} Nevertheless, over the
years, many people outside universities have found Gmsh useful in their
day-to-day jobs. Here is a tentative list of what Gmsh does best:
@itemize @bullet @itemize @bullet
@item @item
...@@ -484,12 +481,10 @@ parametrize these geometries. Gmsh's scripting language enables all ...@@ -484,12 +481,10 @@ parametrize these geometries. Gmsh's scripting language enables all
commands and command arguments to depend on previous calculations (see commands and command arguments to depend on previous calculations (see
@ref{Expressions}, and @ref{Geometry commands}); @ref{Expressions}, and @ref{Geometry commands});
@item @item
import complex models in industry-standard formats like STEP or IGES
(when Gmsh is built with OpenCascade support);
@item
generate 1D, 2D and 3D simplicial (i.e., using line segments, triangles generate 1D, 2D and 3D simplicial (i.e., using line segments, triangles
and tetrahedra) finite element meshes (see @ref{Mesh module}, and and tetrahedra) finite element meshes for CAD models in their native
@ref{Tutorial}); format (without translations) when linked with the appropriate CAD
kernel (see @ref{Mesh module});
@item @item
specify target element sizes accurately. Gmsh provides several specify target element sizes accurately. Gmsh provides several
mechanisms to control the size of the elements in the final mesh: mechanisms to control the size of the elements in the final mesh:
...@@ -502,12 +497,12 @@ and @ref{Mesh commands}); ...@@ -502,12 +497,12 @@ and @ref{Mesh commands});
interact with external solvers. Gmsh provides C, C++, Perl and Python interact with external solvers. Gmsh provides C, C++, Perl and Python
interfaces, and others can be easily added (@pxref{Solver module}); interfaces, and others can be easily added (@pxref{Solver module});
@item @item
visualize computational results in a great variety of ways. Gmsh can display visualize and export computational results in a great variety of
scalar, vector and tensor datasets, and can perform various operations on ways. Gmsh can display scalar, vector and tensor datasets, perform
the resulting post-processing views (@pxref{Post-processing module}); various operations on the resulting post-processing views
@item (@pxref{Post-processing module}), and export plots in many different
export plots in many different formats: vector PostScript or encapsulated formats: vector PostScript or encapsulated PostScript, LaTeX, PNG, JPEG,
PostScript, LaTeX, PNG, JPEG, @dots{} (@pxref{General options list}); @dots{} (@pxref{General options list});
@item @item
generate complex animations (see @ref{General tools}, and @ref{t8.geo}); generate complex animations (see @ref{General tools}, and @ref{t8.geo});
@item @item
...@@ -534,32 +529,35 @@ small but powerful GUI. ...@@ -534,32 +529,35 @@ small but powerful GUI.
@node and what Gmsh is not so good at, Bug reports, What Gmsh is pretty good at, Overview @node and what Gmsh is not so good at, Bug reports, What Gmsh is pretty good at, Overview
@section @dots{} and what Gmsh is not so good at @section @dots{} and what Gmsh is not so good at
Due to its historical background and limited developer manpower, Gmsh has As of version 2.4, here are some known weaknesses of Gmsh:
also some (a lot of?) weaknesses:
@itemize @bullet @itemize @bullet
@item @item
the BRep approach for describing geometries can become inconvenient for the BRep approach for describing geometries can become
complex models; inconvenient/inefficient for large models. For complex models, or if you
@item want to use a solid-modeler approach, you should link Gmsh with an
there is no support for Nurbs and only very limited support for trimmed external CAD kernel and import native files directly. (The binary
surfaces in Gmsh's scripting language (however you can import STEP or versions available on @uref{http://geuz.org/gmsh/} are linked with the
IGES models with such features when Gmsh is built with OpenCascade free CAD kernel OpenCASCADE, which enables native BREP import as well as
support); STEP and IGES import.)
@item @item
Gmsh is not a multi-bloc generator: all meshes produced by Gmsh are Gmsh is not a multi-bloc generator: all meshes produced by Gmsh are
conforming in the sense of finite element meshes; conforming in the sense of finite element meshes;
@item @item
Gmsh was designed to solve academic ``test cases'', not industrial-size Gmsh's user interface is only exposing a limited number of the available
problems. You may find that Gmsh is too slow for large problems (with features, and many aspects of the interface could be enhanced
thousands of geometric primitives, or millions of mesh/post-processing (especially manipulators).
elements). @item
Gmsh's scripting language is fairly limited, providing only very crude
loop controls and user-defined functions, with no local variables.
@item
there is no global ``undo'' capability. You will often need to edit a
text file to correct mistakes.
@end itemize @end itemize
If you have the skills and some free time, feel free to join the If you have the skills and some free time, feel free to join the
project! We gladly accept any code contributions (@pxref{Information for project: we gladly accept any code contributions (@pxref{Information for
developers}) to remedy the aforementioned (and all other) developers}) to remedy the aforementioned (and all other) shortcomings!
shortcomings...
@c ------------------------------------------------------------------------- @c -------------------------------------------------------------------------
@c Bug reports @c Bug reports
...@@ -613,7 +611,7 @@ next chapter (@pxref{Running Gmsh on your system}) to learn how to ...@@ -613,7 +611,7 @@ next chapter (@pxref{Running Gmsh on your system}) to learn how to
launch Gmsh on your system, then go experiment with the GUI and the launch Gmsh on your system, then go experiment with the GUI and the
tutorial files (@pxref{Tutorial}) provided in the distribution. tutorial files (@pxref{Tutorial}) provided in the distribution.
Screencasts that show how to use the GUI are available here: Screencasts that show how to use the GUI are available here:
@uref{http://www.geuz.org/gmsh/screencasts/}. @uref{http://geuz.org/gmsh/screencasts/}.
The aim of the reference manual is to explain everything you need to use The aim of the reference manual is to explain everything you need to use
Gmsh at the second level, i.e., using the built-in scripting language. Gmsh at the second level, i.e., using the built-in scripting language.
...@@ -1536,7 +1534,7 @@ evaluation: ...@@ -1536,7 +1534,7 @@ evaluation:
A built-in function is composed of an identifier followed by a pair of A built-in function is composed of an identifier followed by a pair of
parentheses containing an @var{expression-list} (the list of its parentheses containing an @var{expression-list} (the list of its
arguments)@footnote{For compatibility with GetDP arguments)@footnote{For compatibility with GetDP
(@uref{http://www.geuz.org/getdp/}), parentheses can be replaced by brackets (@uref{http://geuz.org/getdp/}), parentheses can be replaced by brackets
@code{[]}.}. Here is the list of the built-in functions currently @code{[]}.}. Here is the list of the built-in functions currently
implemented: implemented:
...@@ -4362,7 +4360,7 @@ the @file{tutorial} directory of the Gmsh distribution. ...@@ -4362,7 +4360,7 @@ the @file{tutorial} directory of the Gmsh distribution.
To learn how to run Gmsh on your computer, see @ref{Running Gmsh on your To learn how to run Gmsh on your computer, see @ref{Running Gmsh on your
system}. Screencasts that show how to use the GUI are available on system}. Screencasts that show how to use the GUI are available on
@uref{http://www.geuz.org/gmsh/screencasts/}. @uref{http://geuz.org/gmsh/screencasts/}.
@menu @menu
* t1.geo:: * t1.geo::
...@@ -4569,7 +4567,7 @@ questions}, for more information. ...@@ -4569,7 +4567,7 @@ questions}, for more information.
@section Getting the source @section Getting the source
Stable releases and nightly source snapshots are available from Stable releases and nightly source snapshots are available from
@uref{http://www.geuz.org/gmsh/src/}. @uref{http://geuz.org/gmsh/src/}.
If you have a subversion account on geuz.org you can also access the SVN If you have a subversion account on geuz.org you can also access the SVN
repository directly: repository directly:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment