parametric-nn-models

Physics-Informed Neural Network, Finite Element Method enhanced neural network, and FEM data-based neural network

https://github.com/ganeshshivalingappa/parametric-nn-models

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 6 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.7%) to scientific vocabulary

Keywords

continuum-mechanics deep-learning docker dockerfiles fenics finite-element-methods physics-informed-neural-networks python pytorch singularity singularity-container surrogate-models
Last synced: 6 months ago · JSON representation ·

Repository

Physics-Informed Neural Network, Finite Element Method enhanced neural network, and FEM data-based neural network

Basic Info
  • Host: GitHub
  • Owner: GaneshShivalingappa
  • License: gpl-3.0
  • Language: Python
  • Default Branch: main
  • Homepage: https://doi.org/10.58286/29583
  • Size: 177 KB
Statistics
  • Stars: 18
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 2
Topics
continuum-mechanics deep-learning docker dockerfiles fenics finite-element-methods physics-informed-neural-networks python pytorch singularity singularity-container surrogate-models
Created about 2 years ago · Last pushed 12 months ago
Metadata Files
Readme License Citation

README.md

DOI DOI

Introduction

In this project, we conducted a comparative analysis between the Physics Informed Neural Network (PINN) and the Finite Element Method enhanced neural network (FEM-NN), along with a FEM data-based neural network (FEM-Data-NN) models in the context of material parameter identification. These models can be used as surrogate models for material parameter identification by solving inverse problems. For this study, we considered a 1D bar fixed at one end and applied traction at the free end. Within this framework, we systematically evaluated and compared the performance of PINN, FEM-NN, and the FEM-Data-NN. The results were benchmarked against the analytical solution, and conducted a comprehensive training time analysis to provide insight into the computational efficiency of these methods.

How it works

In this project we have performed two analysis.

  1. Performance Analysis
  2. Training Time Analysis

The container can be built by running the follwing command in the terminal. singularity build --fakeroot --force parametric_nn.sif app/Singularity/container_production.def

1. Performance Analysis

We are comparing the displacement predicted from all three methods with the analytical solution. In addition, the relative error is calculated and plotted for each method. The plots for each method can be recreated in your local environment after creating the container by running the following command.

Parametric PINN singularity run --app Parametric_PINN parametric_nn.sif

Parametric FEM-NN singularity run --app Parametric_FEM-NN parametric_nn.sif

Parametric FEM-data based model singularity run --app Parametric_FEM-Data parametric_nn.sif

The training loss for all methods can be plotted using the following command. singularity run --app training_loss parametric_nn.sif

2. Training Time Analysis

We conducted training time analysis in two scenarios. In the first scenario, we kept the number of nodes constant by varying the number of samples, and in the second scenario, it is vice versa. The command to run the code to create the plot is given below.

Number of nodes varying while keeping the number of samples constant. singularity run --app training_time_node parametric_nn.sif

Number of samples varying while keeping the number of nodes constant. singularity run --app training_time_sample parametric_nn.sif

Owner

  • Name: Ganesh Shivalingappa
  • Login: GaneshShivalingappa
  • Kind: user
  • Location: Braunschweig, Germany
  • Company: TU Braunschweig

Citation (CITATION.cff)

cff-version: 1.0.1
message: "If you use this software, please cite it using these metadata."
type: software
license: GPL-3.0-or-later
authors:
  - family-names: Shivalingappa
    given-names: Ganesh
    orcid: https://orcid.org/0009-0002-9194-2046
  - family-names: Anton
    given-names: David
    orcid: https://orcid.org/0000-0002-0888-0220
  - family-names: Wessels
    given-names: Henning
    orcid: https://orcid.org/0000-0002-2542-1130
title: Parametric Neural Network models
version: 1.0.0
url: https://github.com/GaneshShivalingappa/Parametric-NN-Models.git
repository-code: https://github.com/GaneshShivalingappa/Parametric-NN-Models.git
references:
  - type: software
    title: PyTorch
    version: 1.9.0
    url: https://pytorch.org

  - type: software
    title: NumPy
    version: 1.24.2
    url: https://numpy.org
    doi: 10.1038/s41586-020-2649-2
  
  - type: software
    title: Matplotlib
    version: 3.7.0
    url: https://matplotlib.org
    doi: 10.1109/MCSE.2007.55

  - type: software
    title: DOLFINx
    version: 0.7.0
    url: https://fenicsproject.org/
    doi: 10.5281/zenodo.10447666

GitHub Events

Total
  • Watch event: 10
  • Push event: 1
Last Year
  • Watch event: 10
  • Push event: 1

Dependencies

.devcontainer/Dockerfile docker
  • dolfinx/dolfinx stable build
dev-requirements.txt pypi
  • black ==23.1.0 development
  • isort ==5.12.0 development
  • mypy ==1.0.1 development
  • pytest ==7.2.2 development
requirements_docker.txt pypi
  • matplotlib ==3.7.0
  • meshio ==5.3.4
  • numpy ==1.24.2
  • pandas ==2.0.1
  • shapely ==2.0.1