Welcome to CNEM’s page !!!

About the CNEM distribution (last release : 2014-05-04)

To get the CNEM package go to : https://ff-m2p.cnrs.fr/projects/cnem/ and download “cnem.zip”

This package contains an implementation of the constrained natural element method in 2d and 3d, facilities for assembling matrices and at last tutorials. CNEM package is open source and liceneced under GNU Lesser General Public License.


This implementation is platform independent and is written in c++, we supply also python and Matlab wrappers.

At the present time two main functionalities are interfaced, the stabilized nodal integration, and scattered data interpolation. For 3d, the library is parallelized (shared memory).

The package contains three directories:

  • src : containing the c++ source files
  • matlab : containing the matlab wrapper and tutorials in 2d and 3d
  • python : containing the python wrapper and tutorials in 2d and 3d

Authors : amran.illoul(at)ensam.eu , philippe.lorong(at)ensam.eu


The cenm library is parallelized using TBB(open source library, gpl v2 licence, http://www.threadingbuildingblocks.org/ ). After downloading and installing this library, you should add the TBB binary path “<your tbb instal dir>/bin/<your arch>” to:

  • PATH environment variable, for ms windows os
  • ld_library_path environement variable, for linux os
  • dyld_library_path environement variable, for mac os