hypercan

Implementation of 'HyperCAN: Hypernetwork-driven deep parameterized constitutive models for metamaterials'

https://github.com/li-zhengz/hypercan

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 8 DOI reference(s) in README
  • Academic publication links
    Links to: scholar.google, sciencedirect.com, zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.1%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Implementation of 'HyperCAN: Hypernetwork-driven deep parameterized constitutive models for metamaterials'

Basic Info
Statistics
  • Stars: 2
  • Watchers: 1
  • Forks: 1
  • Open Issues: 0
  • Releases: 1
Created over 1 year ago · Last pushed over 1 year ago
Metadata Files
Readme License Citation

README.md

HyperCAN: Hypernetwork-driven deep parameterized constitutive models for metamaterials

Static Badge Static Badge

Li Zheng1, Dennis M. Kochmann1, and Siddhant Kumar2
1ETH Zurich, 2TU Delft

$~$

Introduction

We introduce HyperCAN, a machine learning framework that utilizes hypernetworks to construct adaptable constitutive artificial neural networks for a wide range of beam-based metamaterials under finite deformations. For a detailed explortion of our approach and its applications, please refer to our publication HyperCAN: Hypernetwork-driven deep parameterized constitutive models for metamaterials.

Installation

Dependencies

The framework was developed and tested on Python 3.10.4 using CUDA 12.0. You can install the required dependencies by running: bash pip install -r requirements.txt

Setup

To conduct similar studies as those presented in the publication, start by cloning this repository via

git clone https://github.com/li-zhengz/HyperCAN.git Next, download the data and model checkpoints provided in the ETHZ Research Collection. Unzip the dataset in the dataset folder and the pre-trained model in the model_checkpoint.zip, as shown below. You can also build your own dataset for the given FEM simulationd data by running python loadData.py. . ├── data │ ├── dataset │ │ ├── 6000_train_dataset.pt │ │ ├── 6000_test_truss_dataset.pt │ │ ├── 6000_test_load_dataset.pt │ │ └── 6000_test_load_truss_dataset.pt │ ├── FEM_data (optional) │ │ ├── train │ │ │ └── [...] │ │ ├── test_truss │ │ │ └── [...] │ │ ├── test_load │ │ │ └── [...] │ │ └── test_load_truss │ │ └── [...] ├── model_checkpoint │ ├── icnn_checkpoint.pth │ └── graph_checkpoint.pth

Training

Once you have the tranining data ready, use the following command to start the training process. The training parameters are specified in the config.yaml file. python python main.py

Evaluation

To evaluate the model, run validation.py to obtain the coefficient of determination ($R^2$ score) and the normalized root mean square error (NRMSE) metrics for the trained model across different datasets.

Citation

If this code is useful for your research, please cite our publication.

bibtex @article{ZHENG2024, title = {HyperCAN: Hypernetwork-driven deep parameterized constitutive models for metamaterials}, journal = {Extreme Mechanics Letters}, pages = {102243}, year = {2024}, issn = {2352-4316}, url = {https://www.sciencedirect.com/science/article/pii/S2352431624001238}, author = {Li Zheng and Dennis M. Kochmann and Siddhant Kumar}, }

Author

This code is developed and maintained by Li Zheng.

For further information or inquiries, feel free to contact li.zheng@mavt.ethz.ch.

Owner

  • Login: li-zhengz
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If this code is useful for your research, please cite it as below."
authors:
  - family-names: Zheng
    given-names: Li
    orcid: https://orcid.org/1234-5678-9101-1121
title: "HyperCAN"
version: 1.0.0
doi: 10.5281/zenodo.13947082
url: "https://github.com/li-zhengz/HyperCAN"
date-released: 2024-10-17

GitHub Events

Total
  • Release event: 2
  • Watch event: 2
  • Push event: 2
  • Fork event: 1
  • Create event: 3
Last Year
  • Release event: 2
  • Watch event: 2
  • Push event: 2
  • Fork event: 1
  • Create event: 3

Dependencies

requirements.txt pypi
  • PyYAML ==6.0
  • matplotlib ==3.8.0
  • numpy ==1.24.4
  • pandas ==2.1.1
  • scipy ==1.11.3
  • torch ==2.0.1