Deep Drawing and Cutting Simulations (DDACS) Dataset - Python interface
Project description
Deep Drawing and Cutting Simulations (DDACS) Dataset
A Python package for accessing and processing the Deep Drawing and Cutting Simulations (DDACS) Dataset. It includes a CLI for downloading datasets from DaRUS and a Python API for accessing simulation data with metadata.
Simulation with the tool geometries and various additional information like sheet metal thinning, stress and strain.
Table of Contents
Installation
pip install ddacs # Core
pip install "ddacs[torch]" # With PyTorch support
pip install "ddacs[examples]" # With visualization dependencies
Download Dataset
Download the dataset using the ddacs CLI:
# Download full dataset (requires ~1TB storage)
ddacs download
# Download small test set for quick demos (requires ~50GB storage)
ddacs download --small
# Show dataset info and available versions
ddacs info
Important: The full dataset is approximately 1TB in size. Ensure you have sufficient storage space. The download may take several hours depending on your internet connection.
Options:
| Flag | Description |
|---|---|
version |
Dataset version to download (default: 2.0) |
--small |
Download small test set for demos |
--out ./path |
Custom output directory (default: ./data) |
--no-extract |
Skip extraction of zip files |
--keep-zip |
Keep zip files after extraction |
-y, --yes |
Skip confirmation prompt |
Basic Usage
Core Usage
For basic dataset iteration:
import h5py
import numpy as np
from ddacs import iter_ddacs, count_available_simulations
# Count available simulations
count = count_available_simulations("./data")
print(f"Available simulations: {count}")
# Iterate over samples (skip_missing=True for partial downloads)
for i, (sim_id, metadata, h5_file_path) in enumerate(iter_ddacs("./data", skip_missing=True)):
print(f"Sample {i+1}: ID={sim_id}, Path={h5_file_path}")
# Access simulation data
with h5py.File(h5_file_path, "r") as f:
data = np.array(f["OP10"]["blank"]["node_displacement"])
print(f"Data shape: {data.shape}")
if i >= 2: # Show first 3 samples
break
PyTorch Usage
For PyTorch-compatible dataset with DataLoader support:
from ddacs.pytorch import DDACSDataset
from torch.utils.data import DataLoader
# Create dataset
dataset = DDACSDataset("./data")
dataloader = DataLoader(dataset, batch_size=4, shuffle=True)
# Use in training loop
for batch_idx, (sim_ids, metadata_batch, h5_paths) in enumerate(dataloader):
print(f"Batch {batch_idx}: {len(sim_ids)} samples")
# Your training code here
if batch_idx >= 2: # Show first 3 batches
break
See examples/dataset_demo.ipynb for a comprehensive tutorial including visualization and advanced usage patterns.
Citation
If you use this dataset or code in your research, please cite both the dataset and the paper:
@dataset{baum2025ddacs,
title={Deep Drawing and Cutting Simulations Dataset},
subtitle={FEM Simulations of a deep drawn and cut dual phase steel part},
author={Baum, Sebastian and Heinzelmann, Pascal},
year={2025},
version={2.0},
publisher={DaRUS},
doi={10.18419/DARUS-4801},
license={CC BY 4.0},
url={https://doi.org/10.18419/DARUS-4801}
}
@article{heinzelmann2025benchmark,
title={A Comprehensive Benchmark Dataset for Sheet Metal Forming: Advancing Machine Learning and Surrogate Modelling in Process Simulations},
author={Heinzelmann, Pascal and Baum, Sebastian and Riedmüller, Kim Rouven and Liewald, Mathias and Weyrich, Michael},
journal={MATEC Web of Conferences},
volume={408},
year={2025},
pages={01090},
doi={10.1051/matecconf/202540801090},
url={https://www.matec-conferences.org/articles/matecconf/abs/2025/02/matecconf_iddrg2025_01090/matecconf_iddrg2025_01090.html}
}
Development
git clone https://github.com/BaumSebastian/DDACS.git
cd DDACS
pip install -e ".[dev]"
pre-commit install # Setup code formatting hooks
pytest # Run tests
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ddacs-2.0.2.tar.gz.
File metadata
- Download URL: ddacs-2.0.2.tar.gz
- Upload date:
- Size: 28.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
120a1a50ebfacf211aabaa69da1e620a60402c774f8911bb4526f63134ac88e5
|
|
| MD5 |
d4ef42f482dff0c4a505b1b5bf0e3b1d
|
|
| BLAKE2b-256 |
72471501a4edcb5d033cd8fe1360f208820c40bda2023ba95fec54d66a4b9edf
|
File details
Details for the file ddacs-2.0.2-py3-none-any.whl.
File metadata
- Download URL: ddacs-2.0.2-py3-none-any.whl
- Upload date:
- Size: 20.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ebca4ab2b301da667a7dff799c4c1ca26d171f8ff413b91ce515e424f21ef402
|
|
| MD5 |
4fa460e1cb27781352e408ff06d6f5f3
|
|
| BLAKE2b-256 |
7994637a40aff3b23e5fe6a311d181de5bb4b529a0eaaa19f4aae2e75f69171b
|