99 wget -nc https://paddle-org.bj.bcebos.com/paddlescience/datasets/AllenCahn/allen_cahn.mat -P ./dataset/
1010 # windows
1111 # curl https://paddle-org.bj.bcebos.com/paddlescience/datasets/AllenCahn/allen_cahn.mat --output ./dataset/antiderivative_unaligned_train.npz
12- python allen_cahn_piranet .py
12+ python allen_cahn_piratenet .py
1313 ```
1414
1515=== "模型评估命令"
1919 wget -nc https://paddle-org.bj.bcebos.com/paddlescience/datasets/AllenCahn/allen_cahn.mat -P ./dataset/
2020 # windows
2121 # curl https://paddle-org.bj.bcebos.com/paddlescience/datasets/AllenCahn/allen_cahn.mat --output ./dataset/antiderivative_unaligned_train.npz
22- python allen_cahn_piranet .py mode=eval EVAL.pretrained_model_path=https://paddle-org.bj.bcebos.com/paddlescience/models/AllenCahn/allen_cahn_piranet_pretrained .pdparams
22+ python allen_cahn_piratenet .py mode=eval EVAL.pretrained_model_path=https://paddle-org.bj.bcebos.com/paddlescience/models/AllenCahn/allen_cahn_piratenet_pretrained .pdparams
2323 ```
2424
2525=== "模型导出命令"
2626
2727 ``` sh
28- python allen_cahn_piranet .py mode=export
28+ python allen_cahn_piratenet .py mode=export
2929 ```
3030
3131=== "模型推理命令"
3535 wget -nc https://paddle-org.bj.bcebos.com/paddlescience/datasets/AllenCahn/allen_cahn.mat -P ./dataset/
3636 # windows
3737 # curl https://paddle-org.bj.bcebos.com/paddlescience/datasets/AllenCahn/allen_cahn.mat --output ./dataset/antiderivative_unaligned_train.npz
38- python allen_cahn_piranet .py mode=infer
38+ python allen_cahn_piratenet .py mode=infer
3939 ```
4040
4141| 预训练模型 | 指标 |
4242| :--| :--|
43- | [ allen_cahn_piranet_pretrained .pdparams] ( https://paddle-org.bj.bcebos.com/paddlescience/models/AllenCahn/allen_cahn_piranet_pretrained .pdparams ) | L2Rel.u: 8.32403e-06 |
43+ | [ allen_cahn_piratenet_pretrained .pdparams] ( https://paddle-org.bj.bcebos.com/paddlescience/models/AllenCahn/allen_cahn_piratenet_pretrained .pdparams ) | L2Rel.u: 8.32403e-06 |
4444
4545## 1. 背景简介
4646
8484### 3.1 模型构建
8585
8686在 Allen-Cahn 问题中,每一个已知的坐标点 $(t, x)$ 都有对应的待求解的未知量 $(u)$,
87- ,在这里使用 PiraNet 来表示 $(t, x)$ 到 $(u)$ 的映射函数 $f: \mathbb{R}^2 \to \mathbb{R}^1$ ,即:
87+ ,在这里使用 PirateNet 来表示 $(t, x)$ 到 $(u)$ 的映射函数 $f: \mathbb{R}^2 \to \mathbb{R}^1$ ,即:
8888
8989$$
9090u = f(t, x)
9191$$
9292
93- 上式中 $f$ 即为 PiraNet 模型本身,用 PaddleScience 代码表示如下
93+ 上式中 $f$ 即为 PirateNet 模型本身,用 PaddleScience 代码表示如下
9494
9595``` py linenums="63"
9696-- 8 < --
97- examples/ allen_cahn/ allen_cahn_piranet .py:63 :64
97+ examples/ allen_cahn/ allen_cahn_piratenet .py:63 :64
9898-- 8 < --
9999```
100100
101101为了在计算时,准确快速地访问具体变量的值,在这里指定网络模型的输入变量名是 ` ("t", "x") ` ,输出变量名是 ` ("u") ` ,这些命名与后续代码保持一致。
102102
103- 接着通过指定 PiraNet 的层数、神经元个数,就实例化出了一个拥有 3 个 PiraBlock,每个 PiraBlock 的隐层神经元个数为 256 的神经网络模型 ` model ` , 并且使用 ` tanh ` 作为激活函数。
103+ 接着通过指定 PirateNet 的层数、神经元个数,就实例化出了一个拥有 3 个 PiraBlock,每个 PiraBlock 的隐层神经元个数为 256 的神经网络模型 ` model ` , 并且使用 ` tanh ` 作为激活函数。
104104
105105``` yaml linenums="34"
106106--8<--
107- examples/allen_cahn/conf/allen_cahn_piranet .yaml:34:40
107+ examples/allen_cahn/conf/allen_cahn_piratenet .yaml:34:40
108108--8<--
109109```
110110
@@ -114,7 +114,7 @@ Allen-Cahn 微分方程可以用如下代码表示:
114114
115115``` py linenums="66"
116116-- 8 < --
117- examples/ allen_cahn/ allen_cahn_piranet .py:66 :67
117+ examples/ allen_cahn/ allen_cahn_piratenet .py:66 :67
118118-- 8 < --
119119```
120120
@@ -124,7 +124,7 @@ examples/allen_cahn/allen_cahn_piranet.py:66:67
124124
125125``` py linenums="69"
126126-- 8 < --
127- examples/ allen_cahn/ allen_cahn_piranet .py:69 :81
127+ examples/ allen_cahn/ allen_cahn_piratenet .py:69 :81
128128-- 8 < --
129129```
130130
@@ -136,7 +136,7 @@ examples/allen_cahn/allen_cahn_piranet.py:69:81
136136
137137``` py linenums="94"
138138-- 8 < --
139- examples/ allen_cahn/ allen_cahn_piranet .py:94 :110
139+ examples/ allen_cahn/ allen_cahn_piratenet .py:94 :110
140140-- 8 < --
141141```
142142
@@ -155,7 +155,7 @@ examples/allen_cahn/allen_cahn_piranet.py:94:110
155155
156156``` yaml linenums="41"
157157--8<--
158- examples/allen_cahn/conf/allen_cahn_piranet .yaml:41:42
158+ examples/allen_cahn/conf/allen_cahn_piratenet .yaml:41:42
159159--8<--
160160```
161161
@@ -165,15 +165,15 @@ examples/allen_cahn/conf/allen_cahn_piranet.yaml:41:42
165165
166166``` py linenums="112"
167167-- 8 < --
168- examples/ allen_cahn/ allen_cahn_piranet .py:112 :125
168+ examples/ allen_cahn/ allen_cahn_piratenet .py:112 :125
169169-- 8 < --
170170```
171171
172172在微分方程约束、初值约束构建完毕之后,以刚才的命名为关键字,封装到一个字典中,方便后续访问。
173173
174174``` py linenums="126"
175175-- 8 < --
176- examples/ allen_cahn/ allen_cahn_piranet .py:126 :130
176+ examples/ allen_cahn/ allen_cahn_piratenet .py:126 :130
177177-- 8 < --
178178```
179179
@@ -183,7 +183,7 @@ examples/allen_cahn/allen_cahn_piranet.py:126:130
183183
184184``` yaml linenums="50"
185185--8<--
186- examples/allen_cahn/conf/allen_cahn_piranet .yaml:50:63
186+ examples/allen_cahn/conf/allen_cahn_piratenet .yaml:50:63
187187--8<--
188188```
189189
@@ -193,7 +193,7 @@ examples/allen_cahn/conf/allen_cahn_piranet.yaml:50:63
193193
194194``` py linenums="132"
195195-- 8 < --
196- examples/ allen_cahn/ allen_cahn_piranet .py:132 :136
196+ examples/ allen_cahn/ allen_cahn_piratenet .py:132 :136
197197-- 8 < --
198198```
199199
@@ -203,7 +203,7 @@ examples/allen_cahn/allen_cahn_piranet.py:132:136
203203
204204``` py linenums="138"
205205-- 8 < --
206- examples/ allen_cahn/ allen_cahn_piranet .py:138 :156
206+ examples/ allen_cahn/ allen_cahn_piratenet .py:138 :156
207207-- 8 < --
208208```
209209
@@ -213,15 +213,15 @@ examples/allen_cahn/allen_cahn_piranet.py:138:156
213213
214214``` py linenums="158"
215215-- 8 < --
216- examples/ allen_cahn/ allen_cahn_piranet .py:158 :172
216+ examples/ allen_cahn/ allen_cahn_piratenet .py:158 :184
217217-- 8 < --
218218```
219219
220220## 4. 完整代码
221221
222- ``` py linenums="1" title="allen_cahn_piranet .py"
222+ ``` py linenums="1" title="allen_cahn_piratenet .py"
223223-- 8 < --
224- examples/ allen_cahn/ allen_cahn_piranet .py
224+ examples/ allen_cahn/ allen_cahn_piratenet .py
225225-- 8 < --
226226```
227227
@@ -230,7 +230,7 @@ examples/allen_cahn/allen_cahn_piranet.py
230230在计算域上均匀采样出 $201\times501$ 个点,其预测结果和解析解如下图所示。
231231
232232<figure markdown >
233- ![ allen_cahn_piranet .jpg] ( https://paddle-org.bj.bcebos.com/paddlescience/docs/AllenCahn/allen_cahn_piranet_ac .png ) { loading=lazy }
233+ ![ allen_cahn_piratenet .jpg] ( https://paddle-org.bj.bcebos.com/paddlescience/docs/AllenCahn/allen_cahn_piratenet_ac .png ) { loading=lazy }
234234 <figcaption > 左侧为 PaddleScience 预测结果,中间为解析解结果,右侧为两者的差值</figcaption >
235235</figure >
236236
0 commit comments