Structure

This framework contains the following folders and files:

user-material-models/
├── docs/
├── example-models/
├── output/
└── user-material/
    ├── gpu_error.cpp
    ├── gpu_error.h
    ├── interface.cpp
    ├── interface.h
    ├── kernel_mat_XXXX.cu
    ├── kernel_mat_XXXX.h
    ├── mat_user_defines.h
    ├── mat_user_functions.h
    ├── mat_user_structs_cpu.h
    ├── mat_user_structs_gpu.h
    ├── mat_user.h
    ├── mat_XXXX.cpp
    ├── mat_XXXX.h
    ├── user-material.vcxproj.filters
    └── user-material.vcxproj
├── user-material.sln
├── CMakeLists.txt
└── Makefile
  • The docs directory is where this documentation is located.

  • The example-models directory contains example models that can be used to test the provided user material models.

  • The output directory serves as the destination for the compiled DLL / shared object file if compilation is successful.

  • The user-material directory contains C++ and CUDA code.

  • The user-material.sln file is a Visual Studio 2022 solution file. It contains the compilation and execution configurations for the framework.

  • The CMakeLists.txt provides a set of rules for building the user material project using Cmake

  • The Makefile provides a set of rules for building the user material project under Linux. It contains the compilation and execution configurations for the framework.