一个北航实验报告小工具,全是垃圾代码,没什么好看的。
(如果你也写了脚本 欢迎fork和pr~)
- 添加了1071。
- 1021和Matlab兼容
- 重构1021_1。
- 重构1051_1部分,考虑自动舍入。
- 打印和计算分离
- 模块化,重复代码写个库。
Q:为什么保留位数和书本不同?
A:我大部分数据都多打印了一些位数,请自行按照“四舍六入五取偶”来得到数据(因为我懒)。
Q:如果我用你的脚本报告扣分了怎么办?
A:本人对脚本产生的任何后果概不负责。
按照书本P165输入所有数据后就可以按照书本顺序计算出所有值。
python3 main.py < Test.txt
和课本上的数据对照即可。
我没做XD。
电路图略。
python3 main.py < Test.txt
(其实没有正确答案
跟第二个一模一样的,不额外写了。
垃圾仪器,要气死我了.jpg
Octave(别问我为什么)
如果一定要Matlab,请考虑用适当的积分函数替换cal_area.m中的quadv函数。
如果要输入你的数据,应该保证以下四个文件和main.m同一目录。
- 环境温度对应的阻值R0(单位千欧)。
- 冰的温度T1,一般为-21℃。
- 水的质量m(单位克)。
- 杯子质量m1(单位克)。
- 搅拌棒质量m2(单位克)。
- 冰的质量M(单位克)。
最终输入应该为一个6x1的矩阵。
分别对应降温、溶解、升温曲线的数据,要求两列,第一列为时间t,第二列为对应的阻值R(单位千欧),说白了就是实验原始数据。
目前只有两个可控变量
- precision 对应面积相等要求的精度
- step 对应搜索面积相等点时候的区间长度
推荐 precision ≈ 10*step。
最终会输出对应的修正图像,L和K以及T2'和T3'。
- 由于采用折线拟合,实际上计算会有很大的误差。
- K采用解微分方程后线性回归求得,可能跟以往处理不同。
- 代码非常非常垃圾。
本脚本采用的是《电热法测量热功当量实验的新探究》(蔡 晨,李朝荣,李英姿,王 选)中提到新处理方法,如果你没有测K请不要使用。
依旧是Octave。
- 室温对应的阻值。(单位千欧)
- 水杯质量。(单位克)
- 水质量。(单位克)
- 电压
最终输入应该是一个4x1的矩阵。
分别对应测k的时候数据和加热时的数据,要求两列,第一列为时间t,第二列为温度对应的阻值R。
- 系数K
- 热功当量J
- 相关系数r
- J不确定度u(J)
emmmm,还算轻松的一个实验。
octave
R文件输入为四列,分别为对应的铜丝长度(厘米),正测电阻阻值(欧姆),反测电阻阻值(欧姆)以及使用的R1和R2值(欧姆)。
D文件输入为一列,为D的测量值和游标卡尺实际零点(毫米)。
最后一行的数据应该是游标卡尺的实际零点(实验室垃圾卡尺零点经常不在0)。
const文件输入只有一行一列,为标准阻值Rn的值(欧姆)。
- 正测反测的平均值Raver
- 每次得到的Rx
- b的值
- 电阻率tho
- b的不确定度
- D的a类、b类不确定度以及合成后的不确定度u_D
- tho的相对不确定度和不确定度
其实没什么特别注意的,修约依旧是自己看呗。
python3
python3 main.py
然后按照提示输入测得的数据即可。
其中S表示灵敏度。
唉,垃圾1091,不多说了。
python3
直接
python3 main.py
根据提示完成即可。
- 标准值为632.8nm,但是书上并未要求计算两个误差。
- 相对误差在5%以内都可以接受(大概?)。
octave
为一个10行2列的矩阵,第一列为第11-20环直径左边的位置,第二列为第11-20环直径右边的位置。
反正做的人也不多,这里从略了。
- 没有标准值。
还行,赞美于老师。
其他几个实验都没有复杂的数据处理,略了。
Octave.
应该为一个3x1的矩阵,依次为f1,f2,t。
应该为一个10x2的矩阵,第一列为第1~10个读数,第二列为第11~20个读数。
- 声速
- 不确定度计算
- 相对误差
- 处理的时候默认你是连续测得20个数据,和书上有一定区别。
- 这个实验精度比较高,一般相对误差应该是小于1%。
啊,徐老师讲的真好。
matlab
(octave对角度变换没有函数支持,懒得自己写)
输入为一个nx8的矩阵,分别是a1,b1,a2,b2的度和分值。
- 平均值
- 顶角A
- a类b类不确定度
- 合成不确定度
以上所有输出有度分秒和度两种形式。
matlab
(octave对角度变换没有函数支持,懒得自己写)
输入为一个nx8的矩阵,分别是a1,b1,a2,b2的度和分值。
注意这个矩阵是测量最小偏向角的数据。
把第二个实验的数据粘过来改名为Adata即可,这里要用第二个实验的数据的原因见课本。
- 折射率
- 最小偏向角的a类,b类,合成不确定度
- 折射率的合成不确定度**(计算的时候没有取对数)**
- convert函数其实还存在一定bug,懒得改了。
- 第三个实验要用到第二个实验的数据。