Deep learning of free boundary and Stefan problems论文阅读复现

Deep learning of free boundary and Stefan problems论文阅读复现

  • 摘要
  • 1. 一维一相Stefan问题
    • 1.1 Direct Stefan problem
    • 1.2 Inverse Type I
    • 1.3 Inverse Type II
  • 2. 一维二相Stefan问题
    • 2.1 Direct Stefan problem
    • 2.2 Inverse Type I
    • 2.3 Inverse Type II
  • 3. 二维一相Stefan问题
  • 参考

摘要

在这项工作中,作者提出了一个基于物理信息神经网络的多网络模型,来解决一类一般的正和逆自由边界问题,称为Stefan问题。具体地说,用两个深度神经网络来近似未知解以及任何移动边界。作者提供了三个案例研究(一维一相Stefan问题,一维二相Stefan问题,二维一相Stefan问题),每个案例分别研究了正问题和两个逆问题,相关代码可以在https://github.com/PredictiveIntelligenceLab/DeepStefan获得。

复现代码环境:

conda create -n tensorflow1x python=3.6
conda activate tensorflow1x
pip install tensorflow==1.15.5 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install seaborn -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install scipy -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple

1. 一维一相Stefan问题

在这里插入图片描述

  1. Direct Stefan problem: 已知 u 0 , g ( t ) , s 0 , h 1 ( t ) , h 2 ( t ) u_0, g(t), s_0, h_1(t), h_2(t) u0,g(t),s0,h1(t),h2(t) ,求解 u ( x , t ) : Ω → R . u(x,t):\Omega \rightarrow \mathbb{R}. u(x,t):ΩR.
  2. Inverse Type I: 希望找到满足方程(3.1),(3.2),(3.5),(3.6)的温度分布 u ( x , t ) u(x,t) u(x,t) ,也希望当移动边界 s ( t ) s(t) s(t)已知时重构 Dirichlet 和 Neumann 边界条件。
  3. Inverse Type II: 给出域 Ω \Omega Ω 中的一些温度测量值,试图找到满足方程 (3.1),(3.4),(3.5) 的温度解 u ( x , t ) u(x,t) u(x,t),并确定移动边界 s(t) 的未知位置。

在这里插入图片描述

1.1 Direct Stefan problem

方程 (3.1)-(3.6) 中已知变量由 (3.7)-(3.8) 表示,(3.9) 和 (3.10) 分别是该问题的精确解和移动边界的解。
在这里插入图片描述
文章作者使用两个独立的神经网络近似潜在的 u ( x , t ) u(x,t) u(x,t) s ( t ) s(t) s(t),训练40000epoch,一个epoch从初始条件 x = 0 , x=0, x=0, 边界条件 t = 0 , t=0, t=0, 和内部 Ω ∈ Ω ∗ = [ 0 , 1 ] × [ 0 , 1 ] \Omega \in \Omega^*=[0,1]\times[0,1] ΩΩ=[0,1]×[0,1] 中各随机选择一个batch_size(128)数据点进行训练,没有用到真解。由于 s ( t ) s(t) s(t) 在我们的问题设置中是未知的,所以我们不能简单地在 ( 0 , s ( t ) × ( 0 , t ) (0,s(t)\times(0,t) (0,s(t)×(0,t) 中进行采样点。处理这一技术问题的一种方法是对整个计算域 Ω ∗ \Omega^* Ω 中的配置点进行采样,这是先验已知的,但然后通过将预测解 u θ ( x , t ) u_{\theta}(x,t) uθ(x,t) 限制在域 ( 0 , s β ( t ) × ( 0 , t ) (0,s_{\beta}(t)\times(0,t) (0,sβ(t)×(0,t) 来关注物理解。损失函数如下:
在这里插入图片描述
论文中实验结果:
在这里插入图片描述
复现的实验结果:
请添加图片描述
请添加图片描述
The u(x,t) relative L 2 L_2 L2-error is 4.64e-04.
The s(t) relative L 2 L_2 L2-error is 3.32e-04.

1.2 Inverse Type I

这种类型的逆问题也叫移动边界设计问题,这里的目标是找到满足方程 (3.1)-(3.6) 的解,并在给定自由边界 s ( t ) s(t) s(t) 信息的情况下恢复狄利克雷和诺伊曼边界条件 ( 3.18 ) (3.18) (3.18)
在这里插入图片描述
在这里插入图片描述
论文中实验结果:
在这里插入图片描述
复现实验结果:
请添加图片描述
请添加图片描述

The u(x,t) relative L 2 L_2 L2-error is 2.48e-03.
The u θ u_{\theta} uθ(0,t) relative L 2 L_2 L2-error is 3.32e-03.
The ∂ u θ ∂ x \frac{\partial u_{\theta}}{\partial x} xuθ(0,t) relative L 2 L_2 L2-error is 5.39e-03.

1.3 Inverse Type II

给定少量测试点 { u ( x d a t a j , t d a t a j ) } j = 1 M \{u(x_{data}^j, t_{data}^j)\}_{j=1}^M {u(xdataj,tdataj)}j=1M,我们想得到在域 Ω \Omega Ω 上符合热方程(3.1)的 u ( x , t ) u(x,t) u(x,t),以及未知边界符合(3.4)-(3.6)的 s ( t ) s(t) s(t),这样不需要任何初始或边界条件,这是接近许多现实的应用,这样的信息可能难以获得。为了解决这个问题,依然用两个神经网络 u θ ( x , t ) , s β ( t ) u_{\theta}(x,t),s_{\beta}(t) uθ(x,t),sβ(t) 近似 u ( x , t ) , s ( t ) u(x,t),s(t) u(x,t),s(t)。损失函数如下所示:

在这里插入图片描述
论文中实验结果:
在这里插入图片描述
复现实验结果:

在这里插入图片描述
在这里插入图片描述
The u(x,t) relative L 2 L_2 L2-error is 2.83e-03.
The s(t) relative L 2 L_2 L2-error is 4.11e-04.

2. 一维二相Stefan问题

2.1 Direct Stefan problem

复现实验结果:
在这里插入图片描述
在这里插入图片描述

The u(x,t) relative L 2 L_2 L2-error is 6.35e-04.
The s(t) relative L 2 L_2 L2-error is 2.78e-04.

2.2 Inverse Type I

复现实验结果:
在这里插入图片描述在这里插入图片描述
The u(x,t) relative L 2 L_2 L2-error is 2.71e-03.
The s(t) relative L 2 L_2 L2-error is 1.06e-03.

2.3 Inverse Type II

复现实验结果:
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
The u(x,t) relative L 2 L_2 L2-error is 1.71e-03.
The s(t) relative L 2 L_2 L2-error is 2.94e-04.

3. 二维一相Stefan问题

参考

[1] Deep learning of free boundary and Stefan problems
[2] https://github.com/PredictiveIntelligenceLab/DeepStefan

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/98942.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构 | (四) Queue

队列 :只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出 FIFO(First In First Out) 入队列:进行插入操作的一端称为 队尾( Tail/Rear ) 出队列:进行删除操…

iOS App上架全流程及相关处理

iOS app上架总体流程: 一、IOS上架整个流程 1、申请开发者账号 2、创建APP ID及申请证书 3、itunes connect 创建APP 4、打包 上传APP 5、提交APP,上线成功 1、申请开发者账号 苹果开发者账号主要分为三种:个人账号、公司账号、企业账…

深度学习基础知识 register_buffer 与 register_parameter用法分析

深度学习基础知识 register_buffer 与 register_parameter用法分析 1、问题引入2、register_parameter()2.1 作用2.2 用法 3、register_buffer()3.1 作用3.2 用法 1、问题引入 思考问题:定义的weight与bias是否会被保存到网络的参数中,可否在优化器的作用…

《深入理解计算机系统》(2):虚拟内存

虚拟内存是一种对主存的抽象概念。 (1)将主存看作一个存储在磁盘上的地址空间的高速缓存,在主存中只保存活动区域,并根据需要在磁盘和主存之间来回传送数据,通过这种方式高效地使用内存 (2)为每…

GitHub要求开启2FA,否则不让用了。

背景 其实大概在一个多月前,在 GitHub 网页端以及邮箱里都被提示:要求开启 2FA ,即双因子认证;但是当时由于拖延症和侥幸心理作祟,直接忽略了相关信息,毕竟“又不是不能用”。。 只到今天发现 GitHub 直接…

Linux软硬链接和动静态库

本文已收录至《Linux知识与编程》专栏! 作者:ARMCSKGT 演示环境:CentOS 7 软硬链接和动静态库 前言正文软硬链接原理使用 文件时间动静态库库介绍静态库静态库制作静态库的使用关于静态链接 动态库动态库制作动态库的使用关于动态链接 补充 最…

Java练习题-用冒泡排序法实现数组排序

✅作者简介:CSDN内容合伙人、阿里云专家博主、51CTO专家博主、新星计划第三季python赛道Top1🏆 📃个人主页:hacker707的csdn博客 🔥系列专栏:Java练习题 💬个人格言:不断的翻越一座又…

Computer Architecture Subtitle:Engineering And Technology

原文链接:https://www.cs.umd.edu/~meesh/411/CA-online/index.html

基于Springboot实现疫情网课管理系统项目【项目源码+论文说明】

基于Springboot实现疫情网课管理系统演示 摘要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势;对于疫情网课管理系统当然也不能排除在外,随着网络技术的不断成熟,带动了疫情…

Windows11 安全中心页面不可用问题(无法打开病毒和威胁防护)解决方案汇总(图文介绍版)

本文目录 Windows版本与报错信息问题详细图片: 解决方案:方案一、管理员权限(若你确定你的电脑只有你一个账户,则此教程无效,若你也不清楚,请阅读后再做打算)方案二、修改注册表(常用方案)方案三、进入开发…

leetcode:2427. 公因子的数目(python3解法)

难度:简单 给你两个正整数 a 和 b ,返回 a 和 b 的 公 因子的数目。 如果 x 可以同时整除 a 和 b ,则认为 x 是 a 和 b 的一个 公因子 。 示例 1: 输入:a 12, b 6 输出:4 解释:12 和 6 的公因…

Meta分析的流程及方法

Meta分析是针对某一科研问题,根据明确的搜索策略、选择筛选文献标准、采用严格的评价方法,对来源不同的研究成果进行收集、合并及定量统计分析的方法,最早出现于“循证医学”,现已广泛应用于农林生态,资源环境等方面。…

linux日志审计常用命令

文章目录 cut参数指定范围命令 awk参数内置变量命令 wc参数命令 uniq参数命令 sort参数命令 head参数 cut 参数 选项含义-b仅显示行中指定直接范围的内容-c仅显示行中指定范围的字符-d指定分割符, 默认为“TAB”制表符-f显示指定字段的内容-n与“-b”连用&#xf…

Prometheus普罗米修斯

什么是Prometheus 官网:Overview | Prometheus 是一个开源的系统监控和警报工具,多数Prometheus组件是Go语言写的 为用户提供可视化仪表板、警报、告警等功能,以帮助用户快速定位和解决问题 现在已经成为一个独立于企业级的开源项目和一个…

供水管网监测系统

随着城市人口的不断增长和经济的快速发展,供水管网的安全和可靠性变得尤为重要。在过去,供水管网的监测往往是依靠人工巡查,这种方式不仅费时费力,而且容易出现疏漏和盲区。然而,随着科技的进步,供水管网监…

大数据集群(Hadoop生态)安装部署

目录 1. 简介 2. 前置要求 3. Hadoop集群角色 4. 角色和节点分配 5. 调整虚拟机内存 6. Zookeeper集群部署 7. Hadoop集群部署 7.1 下载Hadoop安装包、解压、配置软链接 7.2 修改配置文件:hadoop-env.sh 7.3 修改配置文件:core-site…

Vue3目录结构与Yarn.lock 的版本锁定

Vue目录结构与Yarn.lock 的版本锁定 一、Vue3.0目录结构图总览 举个例子看vue的目录,一开始不知道该目录是什么意思目录里各个文件包里安放有什么,程序员在哪里操作该如何操作。 下图目录看Vue新项目 VS Code 打开文件包后出现一列目录 二、目录结构 1…

宝塔面板二次元透明主题美化模板

看惯了宝塔面板默认风格模板,我们可以试试自己美化修改,我的站长站知道一款非常漂亮的宝塔面板二次元透明主题美化模板,美不美大家看下图,分享给大家。 下载:飞猫盘|文件加速传输工具|云盘&…

Vulnhub系列靶机-The Planets Earth

文章目录 Vulnhub系列靶机-The Planets: Earth1. 信息收集1.1 主机扫描1.2 端口扫描1.3 目录爆破 2. 漏洞探测2.1 XOR解密2.2 解码 3. 漏洞利用3.1 反弹Shell 4. 权限提升4.1 NC文件传输 Netcat(nc)文件传输 Vulnhub系列靶机-The Planets: Earth 1. 信息…