General concepts

All C, C++ and fortran source files are compiled and embedded in libaster.so. This shared library also defines Python modules: aster, aster_core, aster_fonctions and libaster which defines Python bindings to the C++ objects (using pybind11). The C++ objects may be extended with pure Python methods.

The import of the libaster module initializes all other Python modules. The user does not directly import libaster but the code_aster package.

The initialization of the memory manager (Jeveux) should be explicit done. The closure of the memory manager is automatically done when there is no more reference to libaster.

Some Python objects are created during the initialization and are callable by C/C++ functions (see code_aster.Supervis for details).

Note

Please read carefully the Recommendations / howto.