DOI: 10.5281/zenodo.15342370
title: CNNs_for_mechanical_property_prediction_of_composites_dataset

description: Dataset for the ECAI 2025 Paper - Explainable Prediction of the Mechanical Properties of Composites with CNNs

 

Filename and contents:



composite_images.zip  :  collection of 2D black-and-white 500 x 500 pixel images of the composite microstructures (as .tif files)

composite_image_coordinates.zip  :  collection of csv files containing the coordinates for the microstructure images

model_generation_and_FE_simulations.py  :  python code to be inputted into Abaqus FE Software to create FE models (.inp files) and subsequently FE simulation job files (.odb files) to perform FE analysis

extract_force_displacement_from_models.py  :   python code to be inputted into Abaqus FE software to extract force-displacement data from the .odb simulation files

extract_E_and_YS_from_force_displacement.py  :  python code to be run on computer to conver force-displacement data into Youngs Modulus and Yield Strength 

composite_mechanical_properties.csv   :   csv file containing the Youngs Modulus and Yield Strength for all models, obtained from FE simulations. This is used for AI models

load_images_function.py  :  python function to help load the .tif image files into desired python notebook for AI models. This is a supplementary file    


How to reproduce data (Mechanical properties generation):  



unzip 'composite_images.zip' and 'composite_image_coordinates.zip' into a folder locally

open 'model_generation_and_FE_simulations.py' and add the location of the images and coordinates directory (from step 1) into the code. The comments on the very top of this python file point to the necessary lines to be edited to specify the path name

Run the modified 'model_generation_and_FE_simulations.py' inside Abaqus FE software

open 'extract_force_displacement_from_models.py' and add the location of the '.odb' files into the code. The comments on the very top of this python file point to the necessary lines to be edited to specify the path name

Run the modified 'extract_force_displacement_from_models.py' inside Abaqus FE software

open 'extract_E_and_YS_from_force_displacement.py' and add the location of the .csv files containing the force-displacement data outputted by Abaqus from step 5.  Also add the path name for the .csv file that you want to store the mechanical properties in. The comments on the very top of this python file point to the necessary lines to be edited to specify the path names

Run 'extract_E_and_YS_from_force_displacement.py ' as a python script. The final mechanical properties will be outputted. The attached 'composite_mechanical_properties.csv' can be used for sanity check


 

How to reproduce CNNs and XAI results:



Split the data from 'composite_mechanical_properties.csv' into a train-test-validation split. For the paper, an 85-10-5 split was used.

if needed, use the 'load_images_function.py' to load the images into the file (e.g. jupyter notebook) you want to perform the AI analysis on

for the customised CNNs (10 epochs) - follow the architecture shown in the paper to recreate the CNN models on TensorFlow 2.13.0 to predict the Youngs Modulus and Yield Strength