1 Star 3 Fork 1

kzj18 / 针对反应堆燃耗问题的原生APP和网页APP开发

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

针对燃耗问题的网页APP和原生APP开发

一、项目简介

本项目针对燃耗计算问题分别基于python-streamlit框架和python-kivy框架开发了网页APP和原生APP。本项目的宗旨是本项目是为不同平台、不同使用需求的用户带来便捷的、个性化的反应堆燃耗计算服务。本项目的架构如下图所示。

二、项目成果

本项目完成了网页APP在服务器、Heroku的部署,部署方法及实例平台详见后文。

本项目构建了原生APP,并发布了Windows、Linux(Ubuntu)、MacOS、Android及iOS版本,下载可以访问这里

三、实例介绍

  • 实例1

    实例1是一个定通量燃耗的实例,其各参数如下。

    参数
    中子通量 ${10}^{14}{cm}^{-2}\cdot{s}^{-1}$
    燃耗步长 10天
    ${}^{238}U$含量 980千克每吨
    ${}^{235}U$含量 19千克每吨
    ${}^{234}U$含量 1千克每吨

    计算结果如下图所示。

  • 实例2

    实例2是一个定功率燃耗的实例,其各参数如下。

    参数
    比功率 300兆瓦每吨
    燃耗步长 1天
    ${}^{238}U$含量 980千克每吨
    ${}^{235}U$含量 19千克每吨
    ${}^{234}U$含量 1千克每吨

    计算结果如下图所示。

四、网页APP

4.1.服务器部署方法

  1. 安装Docker,可以参考菜鸟教程

  2. 通过wget命令下载本项目的Docker镜像,在终端中输入

wget https://cloud.tsinghua.edu.cn/seafhttp/files/a773a06b-f63b-4d86-a091-35814ab0648d/principles_of_nuclear_engineering_web_app_v0.1.tar
  1. 导入Docker镜像,在终端中输入
sudo docker load < principles_of_nuclear_engineering_web_app_v0.1.tar
  1. 由Docker镜像创建Docker容器并运行,完成部署,在终端中输入
sudo docker run -d -p 8501:8501 principles_of_nuclear_engineering_web_app:v0.1

其中,-d使Docker容器在后台运行,-p 8501:8501将容器的8501端口暴露在外网。

  1. 查看Docker容器,在终端中输入
sudo docker ps -a
  1. 若要停止网页APP,停止Docker容器,在终端中输入
sudo docker stop <CONTAINER ID>
  1. 若要重启网页APP,重启Docker容器,在终端中输入
sudo docker restart <CONTAINER ID>

4.2.利用Heroku进行部署

部署过程参考博客《还在嫌弃作业不够秀?快来试试streamlit+heroku 搭建自己的炫酷app叭》,相关仓库已经制作好,点击链接访问,访问可能需要一些其他方法。

  • 利用本方法部署的的网页APP可以点击链接访问,访问需要一些其他方法。

4.3.界面及操作说明

网页APP的界面主要由标题及燃耗链信息区、主配置区、副配置区和结果展示区四部分组成。

4.3.1.默认模式

默认模式下的界面如下图所示。

  • 标题及燃耗链信息区

    用户可以在这里看到实时使用的燃耗链参数,以确认所使用的计算参数复合预期。

  • 主配置区

    用户可以在此处调整燃耗步长大小以及内燃耗步长的精度,选择需要展示的核素。

    用户可以在此处配置燃料的初始成分,本项目的默认模式只开放了${}^{234}U$、${}^{235}U$和${}^{238}U$三种核素的成分配置,其他核素在默认模式下的初始成分为0。

  • 副配置区

    用户可以在此处选择开启或关闭专家模式、调整计算模式、输入相应计算模式需要用户提供的中子通量大小或比功率大小。

    由于调整展示参数的功能区不常用且占地较大,因此将其放入副配置区。

  • 结果展示区

    用户可以在此选择计算方法并查看计算结果,在图片处右键点击并选择“另存为”即可保存图片,右键点击图片下方的超链接并另存为csv文件即可保存计算结果(数值解)。

4.3.2.专家模式

专家模式下的界面如下图所示。

  • 标题及燃耗链信息区

    相比默认模式,专家模式在本区域为用户提供了下载默认模式燃耗链配置文件的超链接,用户可以参考该配置文件创建、修改并上传自己的燃耗链文件,从而实现自定义燃耗链计算。更多可供参考的配置文件可访问这里

  • 主配置区

    相比默认模式,专家模式在本区域开放了所有核素的初始成分配置。

五、原生APP

5.1.界面及操作说明

原生APP有三个界面,分别是主界面、基础配置界面和绘图配置界面。

5.1.1. 主界面

主界面如下图所示。

主界面上保留了设置运行模式、比功率或中子通量、燃耗步长、运行时间、开启数值方法或解析方法计算的按钮、U235的含量以及绘图区。主界面保留的控件都是对结果影响较大的因素。在主界面上摁下“展示结果”的按钮即可查看计算结果。

5.1.2. 基础配置界面

基础配置界面如下图所示。

基础配置界面则放置了设置内步长精度、234U、235U和238U的控件。

5.1.3. 绘图配置界面

绘图配置界面如下图所示。

绘图配置界面则是设置不同核素成分是否在绘图区展示以及他们对应的曲线的缩放比例。

MIT License Copyright (c) 2021 kzj18 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

本项目针对燃耗计算问题分别基于python-streamlit框架和python-kivy框架开发了网页APP和原生APP。本项目的宗旨是本项目是为不同平台、不同使用需求的用户带来便捷的、个性化的反应堆燃耗计算服务。 展开 收起
Python 等 3 种语言
MIT
取消

发行版 (1)

全部

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/kzj18/principles_of_-nuclear_-engineering.git
git@gitee.com:kzj18/principles_of_-nuclear_-engineering.git
kzj18
principles_of_-nuclear_-engineering
针对反应堆燃耗问题的原生APP和网页APP开发
master

搜索帮助