DOI: 10.5281/zenodo.17661588
title: Directional Elastic Properties and Numerical Homogenization of Metal Foams Manufactured from AlSi10Mg

description: README — Simulation Dataset for AlSi10Mg Foam Study

Study Overview

This dataset contains all simulation files used to analyze the elastic behavior of AlSi10Mg metal foam specimens.The simulations were performed on high-resolution X-ray microscopy (XRM) reconstructions of three representative foam samples (Specimen A, B, and C). The dataset includes preprocessing scripts, finite element model generation, and numerical homogenization results for full (1-part) and quarter (4-part) models, as well as pressure-loading simulations for selected subvolumes.

All geometry, displacement, and stiffness values correspond to the units used in the associated publication:





Lengths: mm




Stiffness values: MPa




Forces: N



The original XRM DICOM data and raw mechanical tests are not included here; the Zenodo record contains simulation data only.



Dataset Overview

The dataset is organized into three main components:





convergence_study — mesh-refinement and numerical convergence analysis




dolfinx_alex — the Docker/Apptainer environment and Python utilities required to reproduce the finite element simulations




pygalmesh — meshing pipeline, configuration files, and all simulation results (homogenization and pressure experiment)





Directory Structure and Content Description

1. convergence_study/

Contains a minimal example evaluating convergence of the numerical homogenization procedure.





data.txt — tabulated values showing error evolution with mesh density




plot_nu_cells.pdf — PDF convergence plot




script.py — Python script used to generate the convergence data





2. dolfinx_alex/

Environment definitions and shared Python simulation utilities.

Top-level files:





Dockerfile, apptainer.def — images for running DolfinX simulations




docker-compose.yml — container orchestration



shared/utils/alex/ — collection of simulation utilities:





Material models (linearelastic.py, hyperelastic.py, plasticity.py)




Pre- and post-processing routines




Image processing functions




Boundary conditions, homogenization workflows




__pycache__/ — precompiled Python files (can be ignored)



These scripts implement the complete simulation workflow used for homogenization and pressure-loading tests.



3. pygalmesh/

This is the core part of the dataset.It contains all geometry generation, meshing, and simulation output for the three specimens.

3.1 Environment files





Dockerfile, apptainer.def, docker-compose.yml



3.2 data/

Contains the full meshing and homogenization pipeline plus all simulation results.The main substructure is:







 



data/
    resources/
    scripts/
        002-Special-Issue-2025-minimal/
            <simulation scripts and outputs>



Inside this directory you will find:





Python scripts for segmentation, 3D reconstruction, slicing, mesh generation, and postprocessing




Shell scripts for submitting cluster jobs




JSON template files for meshing and simulation configuration




Simulation results for all Specimen A, B, C, each subdivided into:





1-part (full specimen)




4-part (quarter models)




pressure_experiment (pressure-based stiffness evaluation)




Multiple subvolumes (e.g., subvolume_x81_y90) representing localized analysis regions





3.3 Simulation Output (per subvolume)

Each subvolume directory contains:





Chom.json — homogenized stiffness tensor




E_moduli.json — directional Young’s moduli




G_moduli.json — shear moduli




linearelastic.py — simulation script for elastic analysis




linearelastic_graphs.txt — tabular extraction of force–displacement behavior




linearelastic_log.txt — solver log




volume.npy — voxelized structural domain




segmented_3D_volume.npy — full segmentation array (if present)




write_e33_to_mesh.h5 / .xdmf — spatial distribution of E₃₃ written to the mesh




vol.json — metadata describing the reconstructed volume




metadata.json — simulation metadata (geometry size, voxel resolution, timestamps, etc.)




config-*.json — configuration file specifying material parameters and boundary conditions




ebody.out.* — log file from the HPC job scheduler



Quarter-model (4-part) folders follow the same structure.

3.4 Pressure Experiment Simulation

For each specimen, under:







 



Specimen_X/pressure_experiment/JM-xx-yy-ad-{x|y}/



you will find:





linearelastic_pressure_test.py — pressure loading simulation




linearelastic_pressure_test_graphs.txt — pressure–deformation curves




linearelastic_pressure_test_log.txt — solver output




volume.npy — input geometry




segmented_3D_volume.npy — reconstructed segmentation (if present)




config-*.json, metadata.json — configuration and metadata



These simulations estimate out-of-plane stiffness via pressure loading.



Notes





All XRM, DICOM, and raw mechanical testing files are not included in this Zenodo record.




Every simulation dataset is self-contained and includes configuration, geometry, solver logs, and output tensors.




Subvolume labels (e.g., subvolume_x81_y90) encode the extraction coordinates inside the 3D reconstruction.




Mesh generation is performed using pygalmesh, and all simulations use DolfinX.