推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

基于Python的网页版物理实验快速建设技术

更新时间:2019-12-29 20:54:45 大小:2M 上传用户:songhuahua查看TA发布的资源 标签:python 下载积分:1分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

如何使用科学计算软件自动与数据库进行交互,实现网页版实验结果的快速输出,共享实验结果并应用于教学工作是大学物理实验领域核心和热点的关注问题。一直探索使用Matlab解决上述问题,但是其Complier二十几万的商业使用费用,使得科学计算函数与数据库通讯和基于Java的网页开发方案有始无终。然而,Python多领域大规模的函数包、基于网页开发的免费、公开、快捷的框架设计快速、有效并轻量级地解决了上述问题。本文在介绍Python科学计算语言,比较Matlab、Python进行网页版实验的技术框架的基础上,完成实验数据的数据读取、科学计算函数库的使用、网页版实验结果的生成,并以光学物理实验劈尖的等厚干涉条纹实验为例完成网页版物理实验的建设。通过本文可以帮助具备Matlab基础的科学实验者,快速实现物理实验的网页版输出。


部分文件列表

文件名 大小
基于Python的网页版物理实验快速建设技术.pdf 2M

部分页面预览

(完整内容请下载后查看)
29  
5
Vol.29 No.5  
Oct.2016  
第
卷
第
期
大
学
物
理
实
验
PHYSICAL EXPERIMENT OF COLLEGE  
2016  
10  
月
年
: 1007-2934( 2016) 05-0114-04  
文章编号  
Python  
基于  
的网页版物理实验快速建设技术  
, ,  
宫薇薇 祝继常 韩 煦  
(
,
中国铁道科学研究院 运输及经济研究所 北京  
100081)  
:
, ,  
如何使用科学计算软件自动与数据库进行交互 实现网页版实验结果的快速输出 共享实  
摘
要
。
验结果并应用于教学工作是大学物理实验领域核心和热点的关注问题 一直探索使用  
Matlab  
解决上述  
,
问题 但是其  
Complier  
,
Java  
二十几万的商业使用费用 使得科学计算函数与数据库通讯和基于  
的网页开  
多领域大规模的函数包 基于网页开发的免费 公开 快捷的框架设计快  
Python Matlab、Python  
。
发方案有始无终 然而  
,Python  
、
、
、
、
。
,
速 有效并轻量级地解决了上述问题 本文在介绍  
科学计算语言 比较  
进行网页  
, 、 、  
版实验的技术框架的基础上 完成实验数据的数据读取 科学计算函数库的使用 网页版实验结果的生  
, 。  
成 并以光学物理实验劈尖的等厚干涉条纹实验为例完成网页版物理实验的建设 通过本文可以帮助  
Matlab  
,
基础的科学实验者 快速实现物理实验的网页版输出  
。
具备  
:
词 实验数据  
; Python;  
关
键
网页生成  
: A  
文献标志码  
: O 4-39  
DOI: 10.14139/j.cnki.cn22-1228.2016.005.029  
中图分类号  
Python  
Guido van Rossum  
20  
90  
世纪 年  
由
于
, ,  
代编写 是一种面向对象的解释型语言 功能强  
、 、  
大 简单易学 完全免费  
。2014  
,
年 已经成为美国  
大学计算机科学系入门课程最受欢迎的编程语  
[1]  
, YouTube、Dropbox、  
被著名的 美国银行等诸  
言
。
多网站所使用 适合每个人甚至是青少年学习和  
。
,Python  
,
使用 首先  
级地完成各种高级任务 例如 语言要写  
,Java 100 Python  
具有丰富的扩展库 能够轻量  
1 000  
可能只  
其次 在科学计算领域 拥有数据快  
,
C
,
行 而  
行代码  
只需要写  
[2]  
20  
。
,
,
要
行
Numpy、Pandas,  
数值计算库  
Scipy,  
符号运  
速处理  
1
图
编程环境安装  
Sympy  
,
扩展库 图表输出库  
Matplotlib,Web  
算库  
Ftplib、Httplib、Urllib,Web  
Bokeh、  
图表库  
集成库  
Matlab、Python  
本文在比较  
进行网页版实验  
[3]  
Mpld  
。
, ,  
最 后 其 安 装 十 分 简 单 推 荐  
,
的技术框架的基础上 以光学物理实验劈尖的等  
Anaconda3,  
直接从其官网下载相应的版本进行安  
,
厚干涉条纹实验为例 完成实验数据的数据读取  
、
,
装即可 不需要配置任何环境变量  
。
Matlab  
与 相  
、
科学计算函数库的使用 网页版实验结果的生成  
。
Python  
,
科学计算库基本能够覆盖其函数 而且  
比
[4]  
SMOP  
Matlab  
Python  
与 之间的  
可以使用  
进行  
代码转化 安装开发环境  
harm  
1
技术构架比较  
。
Anaconda, PyC-  
并使用  
Anaconda Python. exe  
开发工具进行编译器  
Matlab  
矩阵计算和多领域的算法库是  
科学  
(
的调用 图  
1) ,  
即可进行网页版物理实验的快速  
,
计算软件的核心 它所提供的大量函数库为科研  
。
搭建  
,
工作者进行专业领域实验提供了巨大的方便 但  
: 2016-05-20  
收稿日期  
:
基金项目 中国铁道科学研究院基金  
( 2014YJ099) 、( 2015YJ080)  
Python  
115  
基于  
的网页版物理实验快速建设技术  
, ,  
是如果与数据库交互 实现网页版的结果推送 需  
《Matlab  
以
》 7.2  
可视化大学物流实验 中的 劈  
[5]  
。
要实验设计者掌握较多的计算机技能 两者的开  
尖的等厚干涉条纹实验 为例进 行 网 页 形 式  
python 。 ,  
实验的编写 首先引入需要使用的库 变  
2
发框架差别如图 所示  
,Matlab  
无法直接与数据  
,
,
:
库或者网页直接通讯 需要借助第三方语言 以  
Java Matlab Complier Java  
通讯然后  
量赋值的代码如下  
,
importnumpy as np  
为例 通过  
与
JSP Html  
书写  
, Da-  
代码生成相应的网页 与  
import math  
通过  
tabase  
Java。  
importmatplotlib.pyplot as plt,mpld3  
数据库的通讯也需要通过  
=
lamb np.array( [750* 1e-9,540* 1e-9,440  
* 1e-9])  
=
n
1.5  
=
k
10  
=
dx  
0.002  
=
xm  
k * dx  
2
Matlab  
开发技术框架  
图
=
x
np.linspace( 0,xm,10)  
[0]  
Matlab  
: 、  
方案存在两个问题 其一 第三方语言  
=
theta  
lamb /2 /n /dx  
Java  
,
对于 非 计 算 机 专 业 人 士 很 难 入 门 其 二  
、
=
e np.zeros( 10,np.float)  
Matlab JDK Comlier  
和
。 ,  
的费用较高 然而 这两个  
np.multiply( x,math.tan( theta) ,e)  
Python  
=
问题都可以通过基于  
的开发框架有效地  
的自身扩展包即可完成  
Numpy /Pandas/Scipy  
pi  
如果使用  
open  
3.1416  
(
解决 图  
3) , Python  
通过  
excel  
,
存储和读入 只需引入  
xlrd  
,
所有 的 功 能 通 过  
替 代  
,MySQLDB  
库进行与数据库  
,
,
函数进行打开 具体使用数据参  
库 然后用  
[6]  
Matlab  
矩阵科学计算  
。
看文献  
,Matplotlib  
。
进行输出结果的展示 最重要  
的通讯  
importxlrd  
Html  
,
代码 通过调用  
=
data xlrd.open_workbook( '  
的一点是不需要书写任何的  
')  
文件名  
Mpld3  
Matplotlib  
数据结果转化为网页形  
直接将  
。
式进行输出  
3
科学计算函数库的使用  
,
数据引入后 需要进行数据的处理  
,Matlab  
所
,
使用的函数 可以在  
Numpy、Pandas、Scipy、Sympy  
[7]  
,
中进行查找 也可以通过  
smop  
库进行代码的直  
。
接转化 劈尖的等厚干涉条纹实验实验的转换对  
:
应的代码如下  
defgete( lamb) :  
3
Python  
开发技术框架  
图
=
c
2* n* e /lamb  
=
e1 np.zeros( 10,np.float)  
fori in range( 0,10,1) :  
2
实验数据的读取  
= +  
e1[i] math.cos( pi * ( c[i] 0.5) )  
=
e1[i] e1[i]* e1[i]  
,
实验数据的读入是物理实验建立的第一步  
return e1  
=
,
在数据量较小的情况是 可以采用直接为变量赋  
M3  
np.zeros( ( 3,10) ,np.float)  
。
,
cx  
值的方式 如果输入的数据量超大 可以使用  
_Oracle、MySQLDB Oracle Mysql  
数据库  
=
i1  
gete( lamb[0])  
读取  
方式 但是由于数据库处理对计算机技能要求较  
Excel xlrd  
函数  
或者  
=
M
np.zeros( ( 3,10) ,np.float)  
。
=
M[0,: ] i1  
,
,
高 推荐采用  
进行数据存储 通过  
=
fig  
plt.figure( )  
, ,  
进行读取 可以吸取上述两种方式的优点 易于存  
=
fig.add_subplot( 221)  
、
储 方便修改  
。
ax  

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单
  • 21下载积分 打赏60.00元   3天前

    用户:gsy幸运

  • 21下载积分 打赏70.00元   3天前

    用户:铁蛋锅

  • 21下载积分 打赏65.00元   3天前

    用户:xzxbybd

  • 21下载积分 打赏60.00元   3天前

    用户:jh0355

  • 21下载积分 打赏60.00元   3天前

    用户:w178191520

  • 21下载积分 打赏20.00元   3天前

    用户:jh03551

  • 21下载积分 打赏20.00元   3天前

    用户:sun2152

  • 21下载积分 打赏20.00元   3天前

    用户:kk1957135547

  • 21下载积分 打赏25.00元   3天前

    用户:w1966891335

  • 21下载积分 打赏20.00元   3天前

    用户:xuzhen1

  • 21下载积分 打赏15.00元   3天前

    用户:x15580286248

  • 21下载积分 打赏25.00元   3天前

    用户:pcb

  • 21下载积分 打赏20.00元   3天前

    用户:bhacker

  • 21下载积分 打赏15.00元   3天前

    用户:liqiang9090

  • 21下载积分 打赏25.00元   3天前

    用户:有理想666

  • 21下载积分 打赏15.00元   3天前

    用户:godbox

  • 21下载积分 打赏15.00元   3天前

    用户:aetek

  • 21下载积分 打赏5.00元   3天前

    用户:mulanhk

  • 21下载积分 打赏5.00元   3天前

    用户:JuneLin61

推荐下载