PINN学习记录(1)

PINN学习记录(1)

安装Deepdxe

  1. 官方链接安装
    pip install deepxde
    直接在evns 环境下安装即可

  2. 在git hub 上下载zip,然后set.up
    链接:deepxde

  3. 注意:
    默认backend 是tensorflow_compact_v1
    我自己用pytorch ,所以需要更改
    C:\Users\admin\.deepxde下更改即可

学习例子

1、buegers equations

(完整代码)

(部分代码)

def pde(x, y):
    dy_x = dde.grad.jacobian(y, x, i=0, j=0)
    dy_t = dde.grad.jacobian(y, x, i=0, j=1)
    dy_xx = dde.grad.hessian(y, x, i=0, j=0)
    return dy_t + y * dy_x - 0.01 / np.pi * dy_xx

解释:
求一阶导func1:

dde.grad.jacobian()

求二阶导func2:

dde.grad.hessian()

自己对(i,j)不理解,看了具体的函数有一点明白
意思就是
d y d x = d [ Y ] d [ X ] = d [ y 1 , y 2 , . . . , y i ] d [ x 1 , x 2 , . . . , x j ] \frac{dy}{dx}=\frac{d[Y]}{d[X]}=\frac{d[y_1,y_2,...,y_i]}{d[x_1,x_2,...,x_j]} dxdy=d[X]d[Y]=d[x1,x2,...,xj]d[y1,y2,...,yi]
举例

u ( x , t ) ∂ u ( x , t ) ∂ x − ∂ u 2 ( x , t ) ∂ t 2 = 0 u(x,t)\frac{\partial {u(x,t)}}{\partial {x}}-\frac{\partial {u^2(x,t)}}{\partial {t^2}}=0 u(x,t)xu(x,t)t2u2(x,t)=0
那么 X = [ x 0 , x 1 ] = [ x , t ] X=[x_0,x_1]=[x,t] X=[x0,x1]=[x,t], Y = [ u 0 ] = [ u ] Y=[u_0]=[u] Y=[u0]=[u]
所以

  1. ∂ u ( x , t ) ∂ x = d u 0 d x 0 \frac{\partial {u(x,t)}}{\partial {x}}=\frac{du_0}{dx_0} xu(x,t)=dx0du0
dy_x = dde.grad.jacobian(u, x, i=0, j=0)
  1. ∂ u 2 ( x , t ) ∂ t 2 = d 2 u 0 d x 1 2 \frac{\partial {u^2(x,t)}}{\partial {t^2}}=\frac{d^2u_0}{dx_1^2} t2u2(x,t)=dx12d2u0
dy_x = dde.grad.hessian(u, x, i=0, j=1)
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值