2022.11.5 Commit

This commit is contained in:
p15806732 2022-11-05 00:38:59 +08:00
parent 55333ed2a8
commit 21e6464e0c
3 changed files with 39 additions and 22 deletions

View File

@ -1,22 +0,0 @@
# -*- coding: utf-8 -*-
'''
@ Copyright (c) 2022 by Zeyu Zhang, All Rights Reserved.
@ Author : Zeyu Zhang
@ Email : zhangzeyu_work@outlook.com
@ Date : 2022-10-25 09:30:27
@ LastEditTime : 2022-10-25 09:34:00
@ FilePath : /ZZY_CODE/Env_JAX/IDRL/Linear_TO/TO_Obj.py
@
@ Description :
@ Reference :
'''
import jax.numpy as jnp
from jax import jit
# @jit
def compliance(young, young_min, ke, xPhys_1D, edofMat, penal, disp):
ce = jnp.sum(jnp.matmul(disp[edofMat], ke) * disp[edofMat], 1)
ce = (young_min + xPhys_1D ** penal * (young - young_min)) * ce
obj = jnp.sum(ce)
return obj

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

39
README.md Normal file
View File

@ -0,0 +1,39 @@
<a name="BgE9p"></a>
# Topology Optimization via Neural Reparameterization and Automatic Differentiation
<a name="NEAnh"></a>
## Introduction
The rapid development of deep learning has brought new opportunities for the exploration of topology optimization methods. The combination of deep learning and topology optimization has become one of the hottest research fields at the moment. In this work, the neural network is directly used for topology optimization. The update of the design variables (pseudo-density) in the conventional topology optimization method is transformed into the update of the neural network's parameters, which is called **_Neural Reparameterization_**. The sensitivity analysis in the conventional topology optimization method is realized by the powerful **_Automatic Differentiation_** technology.
![TONR_Network.png](https://cdn.nlark.com/yuque/0/2022/png/2749792/1667579895206-092a68b8-95f2-43fa-9eb1-3c7fe8a44913.png#averageHue=%23190d05&clientId=ua5033e87-1d9a-4&crop=0&crop=0&crop=1&crop=1&from=ui&id=ub6e7ca67&margin=%5Bobject%20Object%5D&name=TONR_Network.png&originHeight=593&originWidth=1943&originalType=binary&ratio=1&rotation=0&showTitle=false&size=105186&status=done&style=none&taskId=u6fd64eb9-ae53-40ea-9587-2de67e727e4&title=)
<a name="JbNxX"></a>
## Codes
An educational code for structural topology optimization based on AuTONR.
<a name="OaAXH"></a>
## Running Requirement
- Python
- Jax
- Jaxlib
- Optax
- Flax
<a name="dUd1P"></a>
## Citation
**Please contact to ** [zhangzeyu_work@outlook.com](zhangzeyu_work@outlook.com)<br />**Disclaimer**: The author reserves all rights but does not guarantee that the code is free from errors. Furthermore, we shall not be liable in any event.
```markdown
@article{Zhang_TONRExploration_2021,
title = {{{TONR}}: {{An}} Exploration for a Novel Way Combining Neural Network with Topology Optimization},
shorttitle = {{{TONR}}},
author = {Zhang, Zeyu and Li, Yu and Zhou, Weien and Chen, Xiaoqian and Yao, Wen and Zhao, Yong},
year = {2021},
month = dec,
journal = {Computer Methods in Applied Mechanics and Engineering},
volume = {386},
pages = {114083},
issn = {00457825},
doi = {10.1016/j.cma.2021.114083},
langid = {english},
}
```