Skip to content

Commit a1b7427

Browse files
update euler_beam doc
1 parent eee3ebc commit a1b7427

File tree

1 file changed

+25
-25
lines changed

1 file changed

+25
-25
lines changed

docs/zh/examples/euler_beam.md

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626

2727
| 预训练模型 | 指标 |
2828
|:--| :--|
29-
| [euler_beam_pretrained.pdparams](https://paddle-org.bj.bcebos.com/paddlescience/models/euler_beam/euler_beam_pretrained.pdparams) | loss(L2Rel_Metric): 0.00000<br>L2Rel.u(L2Rel_Metric): 0.00080 |
29+
| [euler_beam_pretrained.pdparams](https://paddle-org.bj.bcebos.com/paddlescience/models/euler_beam/euler_beam_pretrained.pdparams) | loss(L2Rel_Metric): 0.00000<br>L2Rel.u(L2Rel_Metric): 0.00058 |
3030

3131
## 1. 问题定义
3232

@@ -70,17 +70,17 @@ $$
7070

7171
上式中 $f$ 即为 MLP 模型本身,用 PaddleScience 代码表示如下
7272

73-
``` py linenums="36"
73+
``` py linenums="24"
7474
--8<--
75-
examples/euler_beam/euler_beam.py:36:37
75+
examples/euler_beam/euler_beam.py:24:25
7676
--8<--
7777
```
7878

7979
其中,用于初始化模型的参数通过配置文件进行配置:
8080

81-
``` yaml linenums="34"
81+
``` yaml linenums="38"
8282
--8<--
83-
examples/euler_beam/conf/euler_beam.yaml:34:38
83+
examples/euler_beam/conf/euler_beam.yaml:38:43
8484
--8<--
8585
```
8686

@@ -90,9 +90,9 @@ examples/euler_beam/conf/euler_beam.yaml:34:38
9090

9191
Euler Beam 的方程构建可以直接使用 PaddleScience 内置的 `Biharmonic`,指定该类的参数 `dim` 为 1,`q` 为 -1,`D` 为1。
9292

93-
``` py linenums="42"
93+
``` py linenums="30"
9494
--8<--
95-
examples/euler_beam/euler_beam.py:42:43
95+
examples/euler_beam/euler_beam.py:30:31
9696
--8<--
9797
```
9898

@@ -101,9 +101,9 @@ examples/euler_beam/euler_beam.py:42:43
101101
本文中 Euler Beam 问题作用在以 (0.0, 1.0) 的一维区域上,
102102
因此可以直接使用 PaddleScience 内置的空间几何 `Interval` 作为计算域。
103103

104-
``` py linenums="39"
104+
``` py linenums="27"
105105
--8<--
106-
examples/euler_beam/euler_beam.py:39:40
106+
examples/euler_beam/euler_beam.py:27:28
107107
--8<--
108108
```
109109

@@ -113,59 +113,59 @@ examples/euler_beam/euler_beam.py:39:40
113113

114114
在定义约束之前,需要给每一种约束指定采样点个数,表示每一种约束在其对应计算域内采样数据的数量,以及通用的采样配置。
115115

116-
``` yaml linenums="49"
116+
``` yaml linenums="45"
117117
--8<--
118-
examples/euler_beam/conf/euler_beam.yaml:49:50
118+
examples/euler_beam/conf/euler_beam.yaml:45:55
119119
--8<--
120120
```
121121

122122
#### 2.4.1 内部点约束
123123

124124
以作用在内部点上的 `InteriorConstraint` 为例,代码如下:
125125

126-
``` py linenums="51"
126+
``` py linenums="33"
127127
--8<--
128-
examples/euler_beam/euler_beam.py:51:59
128+
examples/euler_beam/euler_beam.py:33:47
129129
--8<--
130130
```
131131

132132
#### 2.4.2 边界约束
133133

134134
同理,我们还需要构建边界的约束。但与构建 `InteriorConstraint` 约束不同的是,由于作用区域是边界,因此我们使用 `BoundaryConstraint` 类,代码如下:
135135

136-
``` py linenums="60"
136+
``` py linenums="48"
137137
--8<--
138-
examples/euler_beam/euler_beam.py:60:73
138+
examples/euler_beam/euler_beam.py:48:61
139139
--8<--
140140
```
141141

142142
### 2.5 超参数设定
143143

144144
接下来我们需要在配置文件中指定训练轮数,此处我们按实验经验,使用一万轮训练轮数,评估间隔为一千轮。
145145

146-
``` yaml linenums="41"
146+
``` yaml linenums="45"
147147
--8<--
148-
examples/euler_beam/conf/euler_beam.yaml:41:52
148+
examples/euler_beam/conf/euler_beam.yaml:45:51
149149
--8<--
150150
```
151151

152152
### 2.6 优化器构建
153153

154154
训练过程会调用优化器来更新模型参数,此处选择较为常用的 `Adam` 优化器。
155155

156-
``` py linenums="80"
156+
``` py linenums="68"
157157
--8<--
158-
examples/euler_beam/euler_beam.py:80:81
158+
examples/euler_beam/euler_beam.py:68:69
159159
--8<--
160160
```
161161

162162
### 2.7 评估器构建
163163

164164
在训练过程中通常会按一定轮数间隔,用验证集(测试集)评估当前模型的训练情况,因此使用 `ppsci.validate.GeometryValidator` 构建评估器。
165165

166-
``` py linenums="89"
166+
``` py linenums="77"
167167
--8<--
168-
examples/euler_beam/euler_beam.py:89:102
168+
examples/euler_beam/euler_beam.py:77:90
169169
--8<--
170170
```
171171

@@ -175,19 +175,19 @@ examples/euler_beam/euler_beam.py:89:102
175175

176176
本文中的输出数据是一个曲线图,因此我们只需要将评估的输出数据保存成 **png** 文件即可。代码如下:
177177

178-
``` py linenums="104"
178+
``` py linenums="92"
179179
--8<--
180-
examples/euler_beam/euler_beam.py:104:114
180+
examples/euler_beam/euler_beam.py:92:105
181181
--8<--
182182
```
183183

184184
### 2.9 模型训练、评估与可视化
185185

186186
完成上述设置之后,只需要将上述实例化的对象按顺序传递给 `ppsci.solver.Solver`,然后启动训练、评估、可视化。
187187

188-
``` py linenums="117"
188+
``` py linenums="107"
189189
--8<--
190-
examples/euler_beam/euler_beam.py:117:141
190+
examples/euler_beam/euler_beam.py:107:132
191191
--8<--
192192
```
193193

0 commit comments

Comments
 (0)