Required software

SectionBuilder is a preprocessor for Dymore and it uses a freely available, cross-platform, compilers, graphical user interface, and graphical packages only. The following tools are necessary to help install and execute the code.

  1. SectionBuilder is developed under code::blocks, an open source, cross platform, free C/C++ Integrated Development Environment (IDE). Please download and install code::blocks (current version: 17.12), and associate extension “.cbp” with execution of code::blocks. Add the following environment variable in your “PATH”: “C:\Program Files (x86)\CodeBlocks\MinGW\bin;”. For linux users, a make file is also available.
  2. Results from SectionBuilder are archived in the HDF5 format, a standard binary data format. Please download and install this library to compile and run SectionBuilder. For windows users, the required HDF5 files are provided with the source code of SectionBuilder for convenience.
  3. SectionBuilder parallel capabilities use OPEN-MP and MPI. OPEN-MP is pre-installed on most platforms. To use MPI, please download and install the library. For windows users, an outdated version of MPICH library is provided with the source code of SectionBuilder for convenience.
  4. SectionBuilder is interfaced with MUMPS. If you want to use that capability, please download and install the library. For windows users, a outdated but working set of libraries are provided with the source code of SectionBuilder for convenience. Notice that MUMPS is necessary for the modal reduction code, Herting.
  5. SectionBuilder plotting capabilities use gnuplot (current version: 5.2.6), a portable command-line driven graphing utility for Linux, OS/2, MS Windows, OSX, VMS, and many other platforms. Please download and install gnuplot, and associate extension “.plt” with execution of gnuplot.
  6. SectionBuilder graphical post-processor uses the Graphical User Interface provided by WxWidgets (current version: 3.1.2). This is the only tricky step.
    • Please download WxWidgets.
    • Detailed information on how to compile this package is provided here. This is long: each compilation take about 20 minutes on my Intel i5 computer using a single thread, but is uneventful.
      1. Let c:\wxWidgets-3.1.2 be the directory where wxWidgets 3.1.2 was installed.
      2. Rename this directory as c:\wxWidgets.
      3. Open a window command tool and enter “cd c:\wxWidgets\build\msw”.
      4. Clean the release source. Enter “mingw32-make -f makefile.gcc SHARED=1 UNICODE=1 BUILD=release clean”.
      5. Compile the release library. Enter “mingw32-make -f makefile.gcc SHARED=1 UNICODE=1 BUILD=release”
      6. Clean the debug source. Enter “mingw32-make -f makefile.gcc SHARED=1 UNICODE=1 BUILD=debug clean”.
      7. Compile the debug library. Enter “mingw32-make -f makefile.gcc SHARED=1 UNICODE=1 BUILD=debug”
    • Add the following environment variable in your “PATH”: “C:\wxWidgets\lib\gcc_dll;”.
    • Two- and three-dimensional graphics capabilities use OpenGL, the Industry's Foundation for High Performance Graphics. This software is pre installed on most platforms.
  7. SectionBuilder input files are written in an hyper-marked type language. The syntax of the input can be highlighted automatically by using Notepad++, a free source code editor and Notepad replacement that supports several languages. This software is convenient to use, but is not required. Running in the MS Windows environment, its use is governed by GPL License.
    • Download Notepad++ (Current version: 7.6.4).
    • Put the attachment, userDefineLang_Dymore.xml, in directory C:\Users\%UserName%\AppData\Roaming\Notepad++\
    • To edit a SectionBuilder input file, file.seb, right click on the file and choose “Edit with Notepad++”.
    • SectionBuilder input file syntax should be highlighted beautifully. If not, open “language” in the menu bar and choose “Dymore” in the bottom of pull-down menu.

Directory structure

A typical installation of the code is part of the Dymore software and it features several sub-directories. This part of the manual refers to the SectionBuilder portion only.

The following file types are used for input files.

The following file types are used as output files.