Skip to content

Tolosa-lib

Presentation

The Tolosa computational software is developed around the Tolosa-lib library to numerically solve PDE on unstructured meshes in a CPU MPI parallel environment. It is used to derive numerical resolution of some models in other repertories using the git submodule feature.

Every Tolosa model is developped around Tolosa-lib. This library contains a set of tools, structures, and variables to ease the development of numerically resolved models. Therefore, Tolosa-lib is not a model.

Note

Still, a set of simple examples have been developped around this library and can be read and run. See Run a Tolosa-lib example.

Tolosa-lib manages a number of features:

  • A Mesh structure type(msh) and routines to:
    • load 2D unstructured meshes in gmsh format (triangle, quadrangle, or mixed).
    • or generate structured meshes in an unstructured view.
    • generate mesh partitionning to use MPI for parallel computation using the Scotch library.
    • generate all MPI subdomain local connectivities, including the boundaries with periodic possibility, with special attention on spatial and temporal localities to maximize computational efficiency when performing loops on the 3 basic geometrical elements of a mesh: the nodes, the cells and the edges.
  • A Structure type(cli) to manage arguments such passing a default value, loading them in a text file, or overriding the same arguments at the command line interface (example: ./exe -nx 1000 -ny 100 -ts 1.).
  • A Structure type(yaml_file) to read and write YAML files in order to read complex configuration files.
  • A Stucture type(vec2d) for vectors and a structure type(tens2d) for tensors in order to enhance numerical implementation facilities and lisibility.
  • A Structure type(timer) to track the computational times in routines.
  • Passing a mesh according to the structure type(msh) and some fields associated, some structures to write genetically:
    • type(VTK_file) for VTK format in ASCII or binary format.
    • type(Tecplot_file) Tecplot format in ASCII or binary format.
Back to top