CN114154108A - 一种基于计算层次的嵌套公式计算方法 - Google Patents
一种基于计算层次的嵌套公式计算方法 Download PDFInfo
- Publication number
- CN114154108A CN114154108A CN202111326171.XA CN202111326171A CN114154108A CN 114154108 A CN114154108 A CN 114154108A CN 202111326171 A CN202111326171 A CN 202111326171A CN 114154108 A CN114154108 A CN 114154108A
- Authority
- CN
- China
- Prior art keywords
- calculation
- formula
- formulas
- factor
- nested
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Operations Research (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于计算层次的嵌套公式计算方法,包括以下步骤:在定义公式后,验证出公式间的引用关系,通过引用关系判断公式是否存在循环嵌套,以及计算出每个公式的计算层次,在进行计算时,将公式引用的公式都加入到待计算列表,然后按照计算层次的大小进行排序,最后按照计算层次由小到大依次进行计算。本发明解决了嵌套公式的实时计算问题,计算因子的数据变化能够直接体现到嵌套公式的计算结果中,保证了计算因子和计算结果的断面数据一致性,提高了实时计算的准确性。
Description
技术领域
本发明涉及实时监控系统,特别是一种基于计算层次的嵌套公式计算方法。
背景技术
随着实时监控系统的规模不断扩大,所接入和处理的数据日益增多,从而导致计算公式的定义和处理越来越复杂。如果按照传统的简单取数计算的方式,不管计算公式之间的相互关系,容易造成计算因子和计算结果的断面数据不符,影响计算实时性。
发明内容
发明目的:本发明的目的是提供一种基于计算层次的嵌套公式计算方法,从而在存在嵌套公式的情况下也可以满足计算的实时性,保证计算因子和计算结果的断面数据一致性。
技术方案:由于传统的简单取数计算方式,不涉及计算公式之间的相互关系,对于嵌套公式会导致计算结果的不准确,当一个计算因子数据变化后,如果计算周期为5秒,对于有3层嵌套的公式来说,这个计算因子的变化在第3个计算周期才能体现出来,导致有15秒的时间计算结果是不准确的。因此,本申请提出了一种基于计算层次的嵌套公式计算方法,分析公式的引用关系,确定每个公式的计算层次,根据引用关系,找到相关公式的集合,然后按照计算层次的顺序分别计算,计算因子的变化就能在当前计算周期直接体现到计算结果中,提高了实时计算的准确性和实时性。
本发明所述的一种基于计算层次的嵌套公式计算方法,包括以下步骤:
S1:定义公式,包括定义计算类型、起效时间、选择计算因子和计算结果点,定义公式表达式,然后进行保存,保存成功后转到步骤S2;
S2:验证公式的引用关系,如果一个公式的计算结果作为了其他公式的计算因子,那么就认为这个公式被对应的公式引用了,例如公式A=B+C,B=C+D,则公式B被公式A引用了,记录下这个引用关系,然后转到步骤S3;
S3:验证公式是否存在循环嵌套情况,将计算公式构造成有向图,有引用关系的作为有向图的边,通过深度优先遍历算法,判断是否存在环,如果存在环,提示修改,否则转到步骤S4;
S4:验证计算层次,计算因子未被任何公式引用的公式的计算层次为1,引用该公式的公式计算层次为2,依次类推,即,例如公式A=B+C,B=C+D,D=E+F,公式D计算层次为1,公式B的计算层次为2,公式A的计算层次为3;验证完成后转到步骤S5;
S5:按层次计算;满足计算条件的公式,将其引用的公式也加入到待计算公式列表中,将待计算公式列表按计算层次进行排序,然后按照计算层次由小到大的顺序分别进行计算。
所述步骤S1中的计算类型包括周期计算、触发计算、定时计算。
所述步骤S1中的配置完公式信息进行保存时,需校验公式定义的正确性,包括表达式的正确性、表达式与因子描述的一致性、计算条件设置的正确性。
所述步骤S5中对每个层次的公式的计算,在对其因子取数时,可以批量取数,提高效率,然后逐个计算相应的公式,最后将结果批量更新到计算结果点上。
一种计算机存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的一种基于计算层次的嵌套公式计算方法。
一种计算机设备,包括储存器、处理器及存储在存储器上并可再处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的一种基于计算层次的嵌套公式计算方法。
有益效果:与现有技术相比,本发明具有如下优点:
1、公式在计算前进行逻辑验证,确保计算的正常进行;
2、解决了嵌套公式计算实时性的问题,保证了计算结果与因子的实时一致性。
附图说明
图1为本发明的流程示意图。
具体实施方式
下面结合附图对本发明的技术方案作进一步说明。
如图1所示,一种基于计算层次的嵌套公式计算方法,包括以下步骤:
(1)定义公式,包括公式的计算类型,起效时间等,选择计算因子和计算结果点,定义公式表达式,然后进行保存;
其中,所述的计算类型,包括周期计算、触发计算、定时计算等计算条件的设置。
所述保存时,进行合理性校验,包括表达式的正确性,表达式与因子描述的一致性,计算条件设置的正确性等。
(2)验证公式之间的引用关系,如果公式A的结果作为了公式B的因子,则公式A被B引用了,一个公式可能被多个公式引用,记下引用关系为后续验证和计算做准备。
(3)验证公式是否存在嵌套循环,构造计算公式的有向图,引用关系作为有向图的边,通过深度优先遍历算法,判断有向图是否存在环,如果存在环需要进行提示,否则影响后续计算的正确进行。
(4)验证公式的计算层次,根据公式的引用关系可以确定计算层次,计算因子未被任何公式引用的公式的计算层次为1,引用该公式的公式计算层次为2,以此类推,计算出每个公式的计算层次。
(5)按层次计算,对于满足计算条件的公式,根据引用关系,也将它们引用的公式加入到待计算公式列表中,然后按照计算层次有小到大的顺序计算。例如公式A=B+C,B=C+D,D=E+F,当计算到公式A时,也将公式B和公式D加入到待计算列表,然后根据计算层次依次计算,先计算层次为1的公式D,然后计算层次为2的B,然后计算层次为3的公式A,这样,如果因子E发生了变化,通过层次计算,公式A便体现了E的变化。
其中,所述的在每个层次的计算时,可以将需要计算的因子的数据批量取到,然后逐个计算,最后将计算结果批量更新到计算结果点上,从而提高计算效率。
一种计算机存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的一种基于计算层次的嵌套公式计算方法。
一种计算机设备,包括储存器、处理器及存储在存储器上并可再处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的一种基于计算层次的嵌套公式计算方法。
Claims (6)
1.一种基于计算层次的嵌套公式计算方法,其特征在于,包括以下步骤:
S1:定义公式,包括定义计算类型、起效时间、选择计算因子和计算结果点,定义公式表达式,然后进行保存,保存成功后转到步骤S2;
S2:验证公式的引用关系,如果一个公式的计算结果作为了其他公式的计算因子,那么就认为这个公式被对应的公式引用了,记录下这个引用关系,然后转到步骤S3;
S3:验证公式是否存在循环嵌套情况,将计算公式构造成有向图,有引用关系的作为有向图的边,通过深度优先遍历算法,判断是否存在环,如果存在环,提示修改,否则转到步骤S4;
S4:验证计算层次,计算因子未被任何公式引用的公式的计算层次为1,引用该公式的公式计算层次为2,依次类推;验证完成后转到步骤S5;
S5:按层次计算;满足计算条件的公式,将其引用的公式也加入到待计算公式列表中,将待计算公式列表按计算层次进行排序,然后按照计算层次由小到大的顺序分别进行计算。
2.根据权利要求1所述的一种基于计算层次的嵌套公式计算方法,其特征在于,所述步骤S1中的计算类型包括周期计算、触发计算、定时计算。
3.根据权利要求1所述的一种基于计算层次的嵌套公式计算方法,其特征在于,所述步骤S1中的配置完公式信息进行保存时,需校验公式定义的正确性,包括表达式的正确性、表达式与因子描述的一致性、计算条件设置的正确性。
4.根据权利要求1所述的一种基于计算层次的嵌套公式计算方法,其特征在于,所述步骤S5中对每个层次的公式的计算,在对其因子进行取数时,可以批量取数,提高效率,然后逐个计算相应的公式,最后将结果批量更新到计算结果点上。
5.一种计算机存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-4中任一项所述的一种基于计算层次的嵌套公式计算方法。
6.一种计算机设备,包括储存器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-4中任一项所述的一种基于计算层次的嵌套公式计算方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111326171.XA CN114154108A (zh) | 2021-11-10 | 2021-11-10 | 一种基于计算层次的嵌套公式计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111326171.XA CN114154108A (zh) | 2021-11-10 | 2021-11-10 | 一种基于计算层次的嵌套公式计算方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114154108A true CN114154108A (zh) | 2022-03-08 |
Family
ID=80459909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111326171.XA Pending CN114154108A (zh) | 2021-11-10 | 2021-11-10 | 一种基于计算层次的嵌套公式计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114154108A (zh) |
-
2021
- 2021-11-10 CN CN202111326171.XA patent/CN114154108A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3209163B2 (ja) | 分類装置 | |
CN108932301B (zh) | 数据填充方法及装置 | |
CN112232495B (zh) | 预测模型的训练方法、装置、介质和计算设备 | |
CN112307084A (zh) | 远程抄表异常监测方法、燃气表系统及燃气云平台 | |
CN111310860A (zh) | 改进梯度提升决策树性能的方法及计算机可读存储介质 | |
CN112365033B (zh) | 一种风电功率区间预测方法、系统及存储介质 | |
CN114911788B (zh) | 一种数据插补方法、装置及存储介质 | |
CN116126843A (zh) | 一种数据质量评估方法、装置、电子设备和存储介质 | |
JP2005004658A (ja) | 変化点検出装置,変化点検出方法および変化点検出用プログラム | |
CN111832693B (zh) | 神经网络层运算、模型训练方法、装置及设备 | |
CN115934490A (zh) | 服务器性能预测模型训练方法、装置、设备及存储介质 | |
US20070219646A1 (en) | Device performance approximation | |
CN113537614A (zh) | 电网工程造价预测模型的构建方法、系统、设备及介质 | |
CN114154108A (zh) | 一种基于计算层次的嵌套公式计算方法 | |
CN111008119A (zh) | 一种硬盘预测模型的更新方法、装置、设备及介质 | |
Kretinsky et al. | Finite-memory near-optimal learning for Markov decision processes with long-run average reward | |
CN111104383B (zh) | 一种检测事件日志突发漂移变化的方法及装置 | |
US11830081B2 (en) | Automated return evaluation with anomoly detection | |
CN116975517B (zh) | 部分加权随机选取策略的稀疏恢复方法及系统 | |
US12061868B2 (en) | Automated calculation predictions with explanations | |
CN114861333B (zh) | 汽车可靠性浴盆曲线的参数获取方法、装置、设备及介质 | |
US20240195864A1 (en) | Correlations between workload characteristics and elapsed times | |
CN110308387B (zh) | 一种形式验证断言空泛性的测试和自动纠正方法、存储介质和终端 | |
CN118277269A (zh) | 基于Markov模型的测试用例生成、充分性判定方法及装置 | |
CN115687915A (zh) | 负荷功率检测模型训练方法及负荷功率检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |