代码来验证靶区可以从初始容量与给定的升温速率来实现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代码来验证靶区可以从初始容量与给定的升温速率来实现相关的知识,希望对你有一定的参考价值。

规划问题。

我有一个起始体积(以MW)和我需要在指定的时间量以达到目标体积(MW)。理想的解决方案是产生点之间的直线所需的速率来计算。但是,我们可以从起始速度到目标速度使用指定的升温速率只能走:

  1. 率1 - 从任何起始体积的弯头1卷MW /分钟
  2. 弯头第1卷 - 在这一点上卷
  3. 率2 - MW / min,从弯头卷1至卷弯头2
  4. 弯头第2卷 - 在这一点上卷
  5. 率3 - MW /从弯头卷2分钟到目标卷

因此,作为一个例子,我可能有以下几点:

  1. 速率1 = 10MW /分钟。
  2. 肘卷1 = 100MW
  3. 速率2 = 5MW /分钟
  4. 肘卷2 = 105MW
  5. 速率3 = 35MW /分钟

Exzample rates

这意味着我可以在100MW之前的任何音量启动,并获得100MW @ 10MW /分钟。那么我可以去105MW @ 5MW /分钟。然后我可以实现任何体积的35MW / min的速率大于105MW以上。

因此,如果开始卷是75MW和目标卷是800MW用30分钟的时间差,这可以实现:

  1. 从750MW目标体积开始我能到105MW在19.9分钟:体积,δ= 800MW - 105MW = 695MW时间采取= 695MW / 35(MW /分钟)= 19.9分钟
  2. 我可以从105MW至100MW在1分钟内体积,δ= 105MW - 100MW = 5MW时间采取= 5MW / 5(MW /分钟)= 1分钟
  3. 我可以从100MW到75MW在分钟:体积,δ= 100MW - 75MW = 25MW时间采取= 25MW / 10(MW /分钟)= 2.5分钟
  4. 在总= 19.9mins + 1分钟+ 2.5mins = 23.4mins拍摄时间
  5. 由于23.4mins <30分钟,那么这是可能的

我可以编程上面的步骤来验证以上,但找我可能缺少一个有效的方法。

我在C#编码这一问题的方法如下:

  1. 获取起点和目标卷。
  2. 如果肘关节第2卷> =起始体积和弯头卷2 <=目标体积,然后通过肘第2卷传递: 通过率3,得到T1计算目标和肘体积之间的体积增量2.鸿沟 计算弯头体积1和max(起始体积,肘体积2)之间的体积增量。除以速率2给T2。
  3. 如果肘关节第1卷> =起始体积和弯头卷1 <=目标体积,然后通过弯头1传递: 通过速率1计算开始和肘体积1.鸿沟之间的体积增量,得到T3。

总和T1,T2和T3,并验证是小于起点和目标音量之间的时间。

我相信这是工作,但想看看是否有更好的解决方案在那里。

答案

如果我看到它从你的解释,你已经给了以下数据:

  • 靶区
  • 弯头2卷
  • 率3
  • 总时间达到目​​标体积

为了明确这一点,我会按照我在你的榜样形象创造的符号。

image

  • 你知道Y3(靶区)
  • 你知道Y2(弯头第2卷)
  • 你知道M3(速度3)
  • 你知道X3(总时间)

这就是所有你需要知道的找出来,如果X2 <X3。如果是这样,可以达到在给定的时间内目标卷。

以来

随着=(詹姆斯 - O)/(KSA - CCSA)

<=>

随着(KSA - CCSA)=(詹姆斯 - O)

<=>

(KSA - CCSA)=(詹姆斯 - O)/用

你只需要知道,如果

(詹姆斯 - O)/具有> 0

因为那样的话

(X3 - ×2)> 0

所以,你只需要检查,如果

(目标体积 - 肘卷2)通过率3分割为大于零。

以上是关于代码来验证靶区可以从初始容量与给定的升温速率来实现的主要内容,如果未能解决你的问题,请参考以下文章

从源代码来理解ArrayList和LinkedList差别

如何将 List<T> 初始化为给定大小(而不是容量)?

C++ 向量初始容量

NATS_11:集群构建与验证

BLE入门 20 蓝牙5速率分析

xgboost参数调优