PSD-BPA 数据格式说明 / Explaining PSD-BPA data format

Date:

Author:


PSD-BPA 软件仅在其《潮流手册》的「输出格式说明」段简要解释了浮点数的样式(且不完整),这里对其使用的文本数据文件中的数据格式给出补充说明。

PSD-BPA only has the float data format demonstrated (briefly) in its power flow manual, this post gives the necessary supplements to the data format used in its text data files.

1. 域的格式

以下使用「域」表示文本数据文件中作为整体表示一个数据的最小区段,如交流节点数据卡(B)的第 15~18 列是一个域,表示节点基准电压(单位:kV)。本文旨在对域的格式给出详细说明。

域的格式形如「X0[.0]」。

第一个字符表示数据类型,可以是以下字母:

  • A – 字符串;
  • F – 小数;
  • I – 整数。

当字面量均为空格符时,作为字符串的域应解读为空数据,作为小数的域应解读为 0.0,作为整数的域应按说明解读。

第二个字符表示域的长度,按所占用的字节数计算,因此需注意数据文件的编码格式。(实际上仅使用 GB2312/GBK 格式,偶有少量字符属 GB18030。)在当前的定义中,不存在长度达到 10 的域。

当数据类型为小数(F)时,有两个附加字符,第三个字符为小数点,第四个字符为数字(表示隐藏小数位数)。当字面量有小数点时,总是以字面量解读;当字面量(记作 $f$)无小数点时,使用隐藏小数位数(记作 $n$)计算 $f * 10^{-n}$ 作为实际值。

注 1:对于作为小数的域,当字面量有小数点时,小数点前(或后)的数字等于零的可省略字符「0」。如,「0.1」可写作「.1」,「1.0」可写作「1.」。

注 2:对于作为小数的域,当字面量无小数点时,末尾的零有重要作用。如,对于格式为「F4.3」的域,「12」、「012」、「0012」均表示小数「0.012」,「120」表示小数「0.120」。

注 3:域的字面量的对齐方式不影响解读(即首尾的空格符可直接忽略)。

2. 注释卡

以小数点或空格符开头的行(不管是控制卡还是数据卡)是注释行,不参与各项计算。

但在实际应用中,部分注释行中的信息具有拓扑上的意义(但仍不参与计算)。

3. 扩展域

PSD-BPA 软件所定义的卡基本只使用最多 80 列,仅个别卡(BM、BZ、DC、TS+、STAB OUT、OBV 卡)存在突破第 80 列的域。但在实际应用中,经常存在自定义的域(主要位于第 80 列之后)用于补充设备数据,且不同系统对扩展域的定义是不兼容的。


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.