Program feconv

Table of Contents

1. Description

Program feconv converts finite element (FE) mesh files between several formats; it can also transform the FE type of the mesh and/or perform a bandwidth optimization. Some conversion capabilities are also present for mesh fields. Please, visit the EXAMPLES section, in the help invoked by feconv -h, to know more details.

2. License

«Copyright 2012 Iban Constenla, Victor Sande, Francisco Pena»

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

3. Installation

To install this program, you must have previously installed make in your system and a Fortran 2003 compiler. At the present time, only the GNU Fortran compiler, gfortran, and the Intel Fortran compiler, ifort, are supported.

Go to http://sourceforge.net/projects/feconv/ and download the package feconv_<date>.tar.gz, where <date> is the date of the release.

Open a terminal in Linux or Mac OS X, or a Command Window in Windows, go to the installation folder and type:

        make -f Makefile.<compiler>.<os>
    

where <compiler> can be "gfortran" or "ifort" and <os> can be "linux" or "windows" (for Mac OS X, "linux" is the valid option).

4. Usage

To know the specific conversion tools available in the version you have installed, please visit the EXAMPLES section in the help invoked by feconv -h.

5. Testing

This code has been tested in the following platforms:

6. Formats

Here we describe the supported file formats:

7. How to contribute

If you plan to add you own format <fmt> to this converter, these are the steps you must fulfill:

  1. create the folder source/<fmt> to store your source files;
  2. save the module source/<fmt>/module_<fmt>.f90; this module must contain one or both of the following procedures:
  3. the interface of the previous procedures must comply with the interface of the equivalent procedures in the rest of formats (see source/module_feconv.f90 for examples). In particular, the procedures must return or receive the variables included in the MFM format;
  4. include a call to your load and save procedures in the sections !read mesh and !save mesh, respectively, located in the module source/module_feconv.f90;
  5. modify source/main.f90 the FORMATS section in the help shown calling feconv -h;
  6. add the folder source/<fmt> to each file stored in the folder configure/, in the section <sources>;
  7. using creamake, re-create the Makefile for every compiler and OS;
  8. include an explanation of your format in the section Formats of the file doc/index.xhtml;
  9. and do no forget to report to fran(dot)pena(at)usc(dot)es your changes!