📄 note.c
字号:
/*
程序相关说明:
0. 这里的程序, 除了整序算法和显示函数测试过以后, 其他内容没有经过测试,\
只不过是根据感觉不会存在问题. 因为这些公式的算法简单.
1. FFT算法上面, 对Fortran语言上面实现比较简单, C语言实现比较困难的\
语句,做了一定的修改。主要有:
2^L --> LE
LE/2 --> LE1
2. 有一些太专业的术语没有办法翻译, 主要在数据处理中的那几个变量.
?3. 求电压有效值的循环界限与电压总的谐波畸变率是不一样的, 一个是从1开始,\
另一个是从2开始. // 确实如此.
>. 常数A还需要从另外一个程序来指定。
4. 为了保证运算的连续性, 对所除法中, 都有可能为0的除数都进行了判断.
5. 需要测试可以显示字体的大小.
6. 在文件中, 需保证所有的采集数据都是384000个的, 否则程序会自动地\
把后面的数据补充为最后一次读取的数据。
7. 对于不足256个点中的FFT计算方法可能会存在一定的问题,目前的\
的计算方法是在整序前补0的(不是在整序后的数组补零的)。
8. 求频率的时候,只用了任意一个文件进行频率相求。不知道是否正确。
9. 在Turbo C里面比较麻烦的是最大只有64K的空间,超过64K的用户\
空间会带来一些意外的问题。所以需要实时需要考虑用户空间的问题。\
这里也是某些计算方法和某些
10. 根据上面的提示,会对计算频率的流程图做一定的修改,使得变量\
达到最小的消耗。
a. 可能最多仅需要开辟128个字节的数组空间就足够了,\
其他的采用循环实现。
11. 由于对大量的double类型的数据进行累加,总共有3000个数据左右\
所以可能后来加法计算的时候,可能精度会降低一些,所以这里也\
限制了数据计算的准确性。
12. 在某些程序段, 为了节省编程的时间, 代价是程序在运行时候运算量的加大\
这些地方有:
a. 在计算闪变值的时候, 最后一次FFT运算只有184个点的FFT运算.
?13.在频率和闪变指标的计算中, 都只用了一相, 是否正确?
?14.在计算电压偏差的时候,那个常数A是否等于5,如果等于5,第一个电压偏差的\
值是为负数的。
?15.经过检查,在闪变指标计算中,最后一项误差很大,可能和不足256个点进行\
FFT运算采用的方法不当有关。
16. 由于此程序仅支持英文(如果需要支持中文, 需另外特殊处理), 所以某些\
信息说明方面不是很标准,可修改相关的提示。快速定位修改地方的方法有:
a. 对这几个程序文件,进行全文查找,一般情况下,这个字符串只有一处, \
修改即可。
17. 在显示坐标的地方, 在数值取值的地方不是很清楚, 只以一个假定的坐标拟数值。
?18.在图像显示的地方肯定是不满意的,所以目前只是非常大概的做了一个雏形。
>. 最后还需要检查有调试语句的地方。
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -