Data and code associated with our accepted CMAME 2022 paper: IH-GAN: A Conditional Generative Model for Implicit Surface-Based Inverse Design of Cellular Structures.
Also see our paper and poster at ICML 2022 Workshop on Machine Learning in Computational Design here.
This code is licensed under the MIT license. Feel free to use all or portions for your research or related projects so long as you provide the following citation information:
Wang, J., Chen, W. W., Da, D., Fuge, M., & Rai, R. (2022). IH-GAN: A conditional generative model for implicit surface-based inverse design of cellular structures. Computer Methods in Applied Mechanics and Engineering, 396, 115060.
@article{wang2022ih,
title={IH-GAN: A conditional generative model for implicit surface-based inverse design of cellular structures},
author={Wang, Jun and Chen, Wei Wayne and Da, Daicong and Fuge, Mark and Rai, Rahul},
journal={Computer Methods in Applied Mechanics and Engineering},
volume={396},
pages={115060},
year={2022},
publisher={Elsevier}
}
The dataset can be found in the folder data/
. It involves the shape parameters and the effective material properties of ~900 unit cells. Please check the paper for detailed information on the dataset.
- Run Matlab code
top3d_sdf_E_nu_dis.m
andtop3d_sdf_E_rho_nu_cmp.m
in folderTO_opt/
to obtain the optimal material property distribution for the target deformation and compliance minimization problems.
-
Create a conda environment called
ihgan
:conda env create -f environment.yml
-
Train the IH-GAN model and generate unit cell shapes based on the optimal material properties:
python gen_shape.py train
The trained model will be saved in the folder
trained_model/
.The generated unit cell shape parameters will be saved at
opt/dvar_synth.npy
andopt/dvar_synth.mat
. -
The unit cell shape parameters will then define the geomtries of a unit cell array, which can be assembled to form an optimized metamaterial system.