openfoam controller #2

  • By alesstimec
  • Latest version (#2)
  • precise
  • Stable
  • Edge

Description

The OpenFOAM (Open Field Operation and Manipulation) CFD Toolbox is a free, open source CFD software package developed by OpenCFD Ltd at ESI Group and distributed by the OpenFOAM Foundation. It has a large user base across most areas of engineering and science, from both commercial and academic organisations. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions, turbulence and heat transfer, to solid dynamics and electromagnetics. It includes tools for meshing, and for pre- and post-processing. Almost everything runs in parallel as standard, enabling users to take full advantage of computer hardware at their disposal.
By being open, OpenFOAM offers users complete freedom to customise and extend its existing functionality, either by themselves or through support from OpenCFD. It follows a highly modular code design in which collections of functionality (e.g. numerical methods, meshing, physical models, etc.) are each compiled into their own shared library. OpenFOAM includes over 80 solver applications that simulate specific problems in engineering mechanics and over 170 utility applications that perform pre- and post-processing tasks, e.g. meshing, data visualisation, etc.
The user sets a case according to the usual file structure and organization of OpenFOAM cases. The decomposeParDict dictionary that provides case decomposition information must be located in the case/system directory. Its correct settings of equal distribution to all listed cores are automatically written by the charm. Solver information are read from the main controlDict dictionary, also located in the case/system directory. The charm executes the necessary applications in a correct order, including pre-processing, case decomposition, solver run, and case reconstruction. The post-processing can then be performed by user with a paraFoam application.


Overview

The OpenFOAM (Open Field Operation and Manipulation) CFD Toolbox is a free, open source CFD software package developed by OpenCFD Ltd at ESI Group and distributed by the OpenFOAM Foundation. It has a large user base across most areas of engineering and science, from both commercial and academic organisations. OpenFOAM has an extensive range of features to solve anything from complex fluid flows involving chemical reactions, turbulence and heat transfer, to solid dynamics and electromagnetics. It includes tools for meshing, and for pre- and post-processing. Almost everything runs in parallel as standard, enabling users to take full advantage of computer hardware at their disposal.
By being open, OpenFOAM offers users complete freedom to customise and extend its existing functionality, either by themselves or through support from OpenCFD. It follows a highly modular code design in which collections of functionality (e.g. numerical methods, meshing, physical models, etc.) are each compiled into their own shared library. OpenFOAM includes over 80 solver applications that simulate specific problems in engineering mechanics and over 170 utility applications that perform pre- and post-processing tasks, e.g. meshing, data visualisation, etc.
The user sets a case according to the usual file structure and organization of OpenFOAM cases. The decomposeParDict dictionary that provides case decomposition information must be located in the case/system directory. Its correct settings of equal distribution to all listed cores are automatically written by the charm. Solver information are read from the main controlDict dictionary, also located in the case/system directory. The charm executes the necessary applications in a correct order, including pre-processing, case decomposition, solver run, and case reconstruction. The post-processing can then be performed by user with a paraFoam application.

This service provides a web ui for the openfoam, enabling users to submit jobs via a web browser. The case folder should be compressed (.zip) and submitted and when finished the processed case folder is compressed and made available for download.

Usage

For a basic deploy of the openfoam run
juju deploy --to openfoam
where "to" is an optional parameter, which defines to which machine the openfoam service should be deployed.

To deploy a web ui version of the openfoam, which enables submission of jobs via a web browser run
juju deploy openfoam-controller
and if you previously deployd the openfoam service add relation between the two services:
juju add-relation openfoam-controller openfoam.

Please note that the opefoam-controller service installs openfoam in addition to the web ui, which means that the machine, where the openfoam-controller is installed will also be used to process jobs.

To submit a job to your deployed services navigate to
http:///openfoam/cgi-bin/upload.pl
and submit a zip file of the job folder (containing the OpenFOAM case definition). Upon job completion, the web page will display a download link, which will contain the job folder, hopefully, with results.

Scale out Usage

To deploy additional units of openfoam run
juju add-unit --to openfoam
where "to" is an optional parameter, which defines to which machine the openfoam service should be deployed.

Peer relations between openfoam units are automatically established and all available units are automatically used to process submitted jobs.

Known Limitations and Issues

Openfoam Charm Contact Information

Configuration

network-device
(string) Specify the network device to be used for communication
eth0
mpi-parameters
(string) Additional mpi parameters.