Archive for the 'mesh generation' Category

18th International Meshing Roundtable; oct 2009

In 1992, Sandia National Laboratories started the Meshing Roundtable as a small meeting of like-minded companies and organizations striving to establish a common focus for research and development in the field of mesh and grid generation. Sandia National Laboratories continues to organize the International Meshing Roundtable, which has become recognized as an international focal point annually attended by researchers and developers from dozens of countries around the world.

The International Meshing Roundtable continues to focus on bringing together researchers and developers from academia, national labs and industry in a stimulating, open environment to share technical information related to mesh generation and general pre-processing techniques. This year’s roundtable will be held in Salt Lake City, Utah, USA.

7th Symposium on Trends in Unstructured Mesh Generation; 2009

MeshTrends VII

7th Symposium on Trends in Unstructured Mesh Generation

July 16-19, 2009 Columbus, Ohio

Symposium Schedulenew

The list of speakers and titles is now availble here (pdf).

The Symposium on Trends in Unstructured Mesh Generation brings together a wide variety of disciplines for the exchange of technical information related to unstructured mesh generation. It is a symposium traditionally held in conjunction with the national and international computational mechanics congresses. The following is a list of previous MeshTrends symposia:

MeshTrends I 1997 Joint ASME/ASCE/SES Summer Meeting Northwestern University
MeshTrends II 1999 5th US National Congress on Computational Mechanics University of Colorado, Boulder
MeshTrends III 2001 6th US National Congress on Computational Mechanics Dearborn, Michigan
MeshTrends IV 2003 7th US National Congress on Computational Mechanics Albuquerque, New Mexico
MeshTrends V 2006 7th World Congress on Computational Mechanics Los Angeles, California
MeshTrends VI 2007 9th US National Congress on Computational Mechanics San Francisco, California

Scope of Symposium

Automatic unstructured mesh generation continues to be a vital technology in computational field simulations. As computing technology continues to advance and modeling requirements become more precise, automatic mesh generation techniques must rise to fulfill ever-increasing and diverse expectations. This symposium is a forum for exploring and synthesizing many of technologies needed to develop a computational grid suitable for simulation.

All abstracts related to geometry and mesh generation for computational simulation are welcome. In this symposium we are soliciting, in particular, advancements and trends from academics and industry in the following areas:

  • Hexahedral mesh generation: including theoretical foundations and new algorithms for automatic all-hex methods.
  • Meshing tools and applications: including commercial meshing tools and their application to current problems in industry.
  • Multiphysics meshing issues: including tools and methods for managing meshing and geometry for mutiscale, mutliphysics applications.
  • Infrastructure and tools for meshing: including APIs and tools for managing and interfacing meshing tools.
  • Adaptive meshing tools and applications: including tools and methods for adaptively modifying mesh and geometry based on run-time results or optimization parameters.
  • Meshing and geometry for geophysics applications: including geometry and meshing technologies for subsurface modeling and simulation.
  • Meshing and geometry for biomedical applications: including geometry and meshing technologies for biomedical applications.
  • Geometry repair and improvement for mesh generation: including tools and methods for characterizing dirty geometry and improvement techniques for mesh generation.

Abstract Submission

Abstracts are required for the conference and will be included in the conference proceedings. A one-page abstract must be submitted electronically through the USNCCM10 website. The deadline for abstracts was Feb 28, 2009.

Once you enter the abstract submission webpage at you will be asked to create a login and password. Note the number of the Trends in Unstructured Mesh Generation Symposium is 2.18.2. You will need to use that number in your abstract file name to ensure your abstract is submitted to the correct symposium (see below for more information).

The following information regarding abstract submission also appears on the abstract submission webpage.

Abstract Submission Information and Related Policies (Please read carefully)

  1. Each paid registrant at USNCCM-10 will be limited to one presentation. Please identify the presenting author in your abstract by underlining the last name.
  2. Participants may be the author of multiple abstracts. However, he/she will be limited to being the presenting author on only one abstract.
  3. Please submit a one-page abstract using the format shown here. Your submission must be in a pdf format to be submitted.
  4. Your filename should contain the last names of the authors as they appear in the title, followed by the number of your selected minisymposium. Example: Ghosh Joseph 2.18.2.pdf
    (Note the Trends in Unstructured Mesh Generation Symposium is number 2.18.2)
  5. The following specifications should be followed in the abstract pdf.
    • Each abstract should be limited to 1-page. The file size should be limited to 1 MB.
    • Recommended font: Times Roman;
    • Title font size: 14 Boldface; Abstract font size: 12;
    • Line spacing: single space; Number of References: maximum of 2.
  6. Important: Save your logon and password; you may use them again when registering to attend the Congress in Spring 2009.

Once submitted, your abstract will be reviewed by the organizers of your selected mini-symposium. You will receive an email notification that the abstract has been received. We anticipate that notification of your abstract acceptance or rejection will be made 30 days after the close of abstract submission as published on the conference web site.

Paper Submission

As part of this symposium, full papers will be solicited from the accepted presentations for inclusion in a peer-reviewed special journal edition of Engineering With Computers. Publication solicitation will be based on the interest of the participating authors and the technical merit of the presentation. Invitations for paper submissions will be made following the USNCCM.

Important Dates

Abstract submission opened on USNCCM web site October 20, 2008
Deadline for receipt of one-page abstracts February 28, 2009
Notification of abstract acceptance March 15, 2009
Deadline for early registration May 1, 2009
USNCCM X technical program July 16-19 2009

Symposium Organizers

Steven J. Owen, Ph.D.
Computational Modeling Sciences Department
Sandia National Laboratories
Albuquerque, New Mexico, U.S.A.
Phone: (505) 284-6599

Mark S. Shephard, Ph.D.
Director, Scientific Computation Research Center
Rensselaer Polytechnic Institute
Troy New York, U.S.A.
Phone: (518) 276-6795
Fax: (518) 276-4886

Matthew L. Staten
Carnegie Mellon University and
Sandia National Laboratories

Additional Information

Additional information on the conference can be found at:

Mesh Generation & Grid Generation on the Web

Mesh Generation & Grid Generation on the Web

The aim of this document is to provide information on mesh and grid generation: people working in the field, research groups, books and conferences. It is maintained by Robert Schneiders.

Mesh generation is an interdisciplinary area, and people from different departments are working on it: Mathematicians, computer scientists, engineers from many disciplines. Despite the fact that surprisingly many people are active in the field, often there are few contacts between researchers. The aim of this page is to improve communication between research groups and to help people to get an overview of the field.

The page is organized as follows:

<!– –>

    People and research groups: Info on meshing research at universities, companies, government labs etc.

    List of people: A directory of people working on mesh generation.

    Latest news: What’s up in mesh generation.

    Software: A list of programs, both public domain and commercial.

    Conferences: Information on conferences, summerschools, short courses etc.

    Literature: Books, reviews, online sources and course materials.

    Open positions: Career opportunities for people with background in mesh generation.

    Information on related topics: Pages with information on CFD, scientific computing, computational geometry and other fields related to mesh generation.

<!– –> Service for frequent readers: You can find all entries, sorted by time of insertion, here (there is also an archive page). <!– Click here to see the latest updates (there is also an archive page). –>

Research on mesh generation is abundant, and I don’t claim to give a complete overview. In order make this page a useful service for the mesh generation community, I need help from other people. So if you are interested in getting put on the list, or if you have any comments or hints on other sources of information on mesh generation in the net, please send me an email (

A valuable source of information is the Meshing Research Corner, a comprehensive database with literature on mesh generation. It is maintained by Steve Owen.

ParaView is an application framework as well as a turn-key application; Modeling software OpenFOAM and ParaView ; mesh processing: generation, manipulation, conversion

ParaView is an open source, multi-platform data analysis and visualization application. It has a client-server architecture to facilitate remote visualization of datasets

It is an application built on top of the Visualization Tool Kit (VTK) libraries.

The ParaView code base is designed in such a way that all of its components can be reused to quickly develop vertical applications. This flexibility allows ParaView developers to quickly develop applications.

Input/Output and File Format

  • Supports a variety of file formats including: VTK (new and legacy, all types including parallel, ascii and binary, can read and written).
  • Various polygonal file formats including STL and BYU (by default, read only, other VTK writers can be added by writing XML description).
  • Many other file formats are supported. See ParaView Readers and ParaView Writers for a full list.

CMake is a family of tools designed to build, test and package software. CMake is used to control the software compilation process using simple platform and compiler independent configuration files. CMake generates native makefiles and workspaces that can be used in the compiler environment of your choice. ParaView utilizes CMake for the software compilation process.


ParaView is used as the visualization platform for the Modeling software OpenFOAM (Open Field Operation and Manipulation).It is primarily a C++ toolbox for the customisation and extension of numerical solvers for continuum mechanics problems, including computational fluid dynamics (CFD). It comes with a growing collection of pre-written solvers applicable to a wide range of problems.

First major general-purpose CFD package to use polyhedral cells. This functionality is a natural consequence of the hierarchical description of simulation objects.

OpenFOAM compares favourably with the capabilities of most leading general-purpose commercial closed-source CFD packages. It relies on the user’s choice of third party pre- and post-processing utilities, and ships with:

  • a plugin (paraFoam) for visualisation of solution data and meshes in ParaView.
  • a wide range of mesh converters allowing import from a number of leading commercial packages
  • an automatic hexahedral mesher to mesh engineering configurations

OpenFOAM was conceived as a continuum mechanics platform but is ideal for building multi-physics simulations.

OpenCFD develop OpenFOAM in the Linux/UNIX operating system because: we believe it is the best platform for this kind of high end simulation code development and operation; Linux is efficient, robust, reliable and flexible and undergoes rapid development and improvement; Linux is open source, like OpenFOAM; Linux is very effective for parallel operation on Beowulf clusters.

OpenFOAM is open source software so people can freely compile it on any operating system they choose. Most OpenFOAM users are running Linux, so this site offers the download of binaries for selected Linux systems.

As the present time we are unaware of any binary distributions for Windows or MacOSX. However, ports to these operating systems have been the subject of debate on the OpenFOAM discussion site, which may provide the best source of information on the matter.

OpenFOAM uses finite volume numerics to solve systems of partial differential equations ascribed on any 3D unstructured mesh of polyhedral cells.

Mesh generation

OpenFOAM applications handle unstructured meshes of mixed polyhedra with any number of faces: hexahedra, tetrahedra, degenerate cells, basically anything.

Mesh generation is made simple by the fact that a cell is simply represented as a list of faces and a face as a list of vertices: this makes mesh handling very easy even for complex meshes with, say, embedded refinement or complex shapes near the boundary.

OpenFOAM is supplied with the following mesh generator tools that run in parallel.

Mesh generation tools

blockMesh A multi-block mesh generator
extrude2DMesh Takes 2D mesh (all faces 2 points only, no front and back faces) and creates a 3D mesh by extruding with specified thickness
extrudeMesh Extrude mesh from existing patch (by default outwards facing normals; optional flips faces) or from patch read from file
snappyHexMesh Automatic split hex mesher. Refines and snaps to surface

The main mesh generators cover two extremes: snappyHexMesh, that can mesh to complex CAD surfaces; blockMesh a simple file-driven block mesh generator.

Mesh manipulation

OpenFOAM is supplied with several utilties that perform mesh checking and manipulation. The full list of utilties is given below

Mesh manipulation

attachMesh Attach topologically detached mesh using prescribed mesh modifiers
autoPatch Divides external faces into patches based on (user supplied) feature angle
cellSet Selects a cell set through a dictionary
checkMesh Checks validity of a mesh
createBaffles Makes internal faces into boundary faces. Does not duplicate points, unlike mergeOrSplitBaffles
createPatch Utility to create patches out of selected boundary faces. Faces come either from existing patches or from a faceSet
deformedGeom Deforms a polyMesh using a displacement field U and a scaling factor supplied as an argument
faceSet Selects a face set through a dictionary
flattenMesh Flattens the front and back planes of a 2D cartesian mesh
insideCells Picks up cells with cell centre ’inside’ of surface. Requires surface to be closed and singly connected
mergeMeshes Merge two meshes
mergeOrSplitBaffles Detects faces that share points (baffles). Either merge them or duplicate the points
mirrorMesh Mirrors a mesh around a given plane
moveDynamicMesh Mesh motion and topological mesh changes utility
moveEngineMesh Solver for moving meshes for engine calculations.
moveMesh Solver for moving meshes
objToVTK Read obj line (not surface!) file and convert into vtk
pointSet Selects a point set through a dictionary
refineMesh Utility to refine cells in multiple directions
renumberMesh Renumbers the cell list in order to reduce the bandwidth, reading and renumbering all fields from all the time directories
rotateMesh Rotates the mesh and fields from the direcion n1   \special {t4ht= to the direction n2   \special {t4ht=
setSet Manipulate a cell/face/point set interactively
setsToZones Add pointZones/faceZones/cellZones to the mesh from similar named pointSets/faceSets/cellSets
splitMesh Splits mesh by making internal faces external. Uses attachDetach
splitMeshRegions Splits mesh into multiple regions
stitchMesh ’Stitches’ a mesh
subsetMesh Selects a section of mesh based on a cellSet
transformPoints Transforms the mesh points in the polyMesh directory according to the translate, rotate and scale options
zipUpMesh Reads in a mesh with hanging vertices and zips up the cells to guarantee that all polyhedral cells of valid shape are closed

Mesh motion

OpenFOAM adopts a novel approach to mesh motion by defining it in terms of the boundary motion which is extremely robust.

The solver need only define the the motion of the boundary and everything else will be done automatically. The open architecture of OpenFOAM solver codes allows quick and efficient implementation: mesh motion can be based on any solution variable, either local or integrated and by dynamically adjusted during the run.

Mesh motion is also transparently integrated with top-level models: the model writer does not see the additional complexity, which is conveniently packaged within the discretisation operators.

For examples of automated mesh motion in OpenFOAM, see Solutions

Mesh conversion

OpenFOAM accepts meshes generated by any of the major mesh generators and CAD systems. Listed below are converter utlities for the major commercial mesh generators. Note that it is also possible to import the meshes from most general purpose mesh generators since they will export in a format read by one of the converters.

Mesh converters

ansysToFoam Converts an ANSYS input mesh file, exported from I-DEAS, to OPENFOAM®format
cfx4ToFoam Converts a CFX 4 mesh to OPENFOAM®format
fluent3DMeshToFoam Converts a Fluent mesh to OPENFOAM®format
fluentMeshToFoam Converts a Fluent mesh to OPENFOAM®format including multiple region and region boundary handling
foamMeshToFluent Writes out the OPENFOAM®mesh in Fluent mesh format
foamToStarMesh Reads an OPENFOAM®mesh and writes a PROSTAR (v4) bnd/cel/vrt format
gambitToFoam Converts a GAMBIT mesh to OPENFOAM®format
gmshToFoam Reads .msh file as written by Gmsh
ideasUnvToFoam I-Deas unv format mesh conversion
kivaToFoam Converts a KIVA grid to OPENFOAM®format
mshToFoam Converts .msh file generated by the Adventure system
netgenNeutralToFoam Converts neutral file format as written by Netgen v4.4
plot3dToFoam Plot3d mesh (ascii/formatted format) converter
polyDualMesh Calculate the dual of a polyMesh. Adheres to all the feature and patch edges
sammToFoam Converts a STAR-CD SAMM mesh to OPENFOAM®format
star4ToFoam Converts a STAR-CD (v4) PROSTAR mesh into OPENFOAM®format
starToFoam Converts a STAR-CD PROSTAR mesh into OPENFOAM®format
tetgenToFoam Converts .ele and .node and .face files, written by tetgen
writeMeshObj For mesh debugging: writes mesh as three separate OBJ files which can be viewed with e.g. javaview

FEM, finite element method, PDE, partial differential equation;mathematica
This package allows to solve second order elliptic differential equations in two variables:

div(a*grad u) – b*u = f in the domain domain u = gD Dirichlet boundary conditions on first part of boundary a*du/dn = gN Neumann condition on the other part of the boundary

If the functions a, b f, gD and gN are given, then a numerical approximation is computed, using the method of finite elements. To generate meshes the programm EasyMesh can be used.


The upcoming release of Mathematica (2005) establishes the next level of sophistication in scientific function and data visualization. All the plotting functions have been rewritten to incorporate state-of-the-art algorithms in numeric and algebraic analysis, mesh generation, and computational geometry. Arbitrary-precision function evaluation, region, mesh overlays, piecewise functions, and singularities handling are just part of the new functionality. All of this makes Mathematica a unique system for function and data visualization with features not found in any other algebraic computational system. In this presentation we will give a general description and present several examples of the new capabilities.

mesh generation, literate programming, matlab; mathematica; persson

This Mathematica notebook is an effort to transcribe the MATLAB code of a 2-D mesh generation algorithm as described explicitly in Persson and Strang’s paper [1]. The goal is to make the algorithm executable in Mathematica so that its users can also experiment with the algorithm.

Since the algorithm was expressed very clearly from their original paper [1] including the MATLAB code, which is a perfect example of literate programming in MATLAB, it is pretty easy to translate the MATLAB code « literally » into Mathematica. Such translation is virtually always possible in either direction even without human interference. And such a Rosetta Stone kind of translation might be useful if one species of people coding in either MATLAB or Mathematica were to disappear, future generations would still be able to rediscover one programming language by reading its interpretation in the other one.

However, it is so tempting to present the literate programming capability of Mathematica by following its general principles; that is, (a) documentation mingles with code and both get pretty-printed; (b) shuffle code pieces for human readability. I decided to transcribe the code manually.

The original MATLAB code was documented as 8 steps (sections) in sequential order, which is easy to follow because the ideas behind the code were explained beforehand in early parts of the paper. So it is recommended that you read part 1 and 2 of the original paper. Instead of following the MATLAB code literally in 8 steps, this notebook breaks the code pieces apart and examines each of them separately.


Blog Stats

  • 220 821 hits


Flickr Photos

avril 2019
« Oct