-
Notifications
You must be signed in to change notification settings - Fork 0
OC支持与控制
借助[OC]开放式电脑可以读取加速器的信息,也可以操纵加速器。只需要在加速器的一面墙上放置一个加速器电脑端口,并将电脑连接至端口即可实现交互。所有可用命令都是组件命令;下面的函数添加 component.qmd_accelerator.
前缀后即可使用。以下是可用命令及说明。
- isComplete()
返回布尔值。加速器是否完整。
- isAcceleratorOn()
返回布尔值。加速器是否处于开启状态。
- getNumberOfRfCavity()
返回整型。加速器中射频腔的数量。
- getNumberOfDipole()
返回整型。加速器中双极磁铁的数量。
- getNumberOfQuadrupole()
返回整型。加速器中四极磁铁的数量。
- getTemperature()
返回整型。加速器的温度。
- getHeatBufferInfo()
返回表格(热量存储(单位:H) heat_stored
,热量空间(单位:H) heat_capacity
)。热量缓存的信息。
- getCoolingInfo()
返回表格(冷却剂种类 cooling_fluid
,加速器冷却(单位:H/t) cooling
,最大冷却剂输入 max_coolant_in
,最大冷却剂输出 max_coolant_out
。冷却的信息。
- getHeatingInfo()
返回表格(加速器组件产热 internal_heating
,环境产热 external_heating
,最大环境产热 max_external_heating
,环境温度 ambient_temperature
)。产热的信息。
- getSizeInfo()
返回表格(X 轴长度 x_length
,Y 轴长度 y_length
,Z 轴长度 z_length
,整体体积 volume
,表面积 surface_area
)。加速器尺寸的信息。
- getBeamInfo()
返回表格(束流长度 beam_length
,束流半径 beam_radius
)。加速器中束流的信息。
- getEnergyInfo()
返回表格(所需能量(单位:RF/t) energy_required
,能量存储(单位:RF) energy_stored
,能量空间(单位:RF) energy_capacity
,能量效率 energy_efficiency
)。加速器能量的信息。
- getStats()
返回表格(加速电压(单位:kV) accelerating_voltage
,双极磁铁强度 dipole_strength
,四极磁铁强度 quadrupole_strength
,最小输入粒子能量 input_particle_min_energy
)。加速器的各项统计。
- hasParticle()
返回布尔值。加速器中是否有粒子。
- getInputParticleInfo()
返回表格(粒子名称 type
,粒子数量(单位:pu/t) amount
,粒子能量(单位:keV) energy
,粒子聚焦 focus
)。输入粒子堆(Particle Stack)的参数。
- getOutputParticleInfo()
返回表格(粒子名称 type
,粒子数量(单位:pu/t) amount
,粒子能量(单位:keV) energy
,粒子聚焦 focus
)。输出粒子堆的参数。
- getSynchrotronParticleInfo()
返回表格(粒子名称 type
,粒子数量(单位:pu/t) amount
,粒子能量(单位:keV) energy
,粒子聚焦 focus
)。同步端口粒子堆的参数。
- getParticleInfo()
返回表格(粒子名称 type
,质量 mass
,能量 energy
,电荷 charge
,自旋 spin
,是否与电磁力相互作用 interacts_with_em
,是否与弱力相互作用 interacts_with_weak
,是否与强力相互作用 interacts_with_strong
)。加速器中粒子的信息。
- hasIonSource()
返回布尔值。加速器是否包含离子源(方块)。
- getIonSourceInfo()
返回表格(源名称 source_item
,产出粒子种类 particle_type
,产出粒子数量(单位:pu/t) amount
,产出粒子初始能量 energy
,产出粒子初始聚焦 focus
)。离子源的信息。
- setEnergyPercetage(整型丨能量百分点
energyPercentage
)
返回整型。将输出粒子能量变为最大能量与此百分比的乘积(操纵减速器时,输出的会是本百分比与一的差,例如15%变为85%)。范围为 [5,100] 或 0,设为 0 时将彻底关闭加速器。操纵束流转向器时仅会打开/关闭结构。
- getEnergyPercetage()
返回整型。能量百分点的设定。
- setComputerControlled(布尔值丨打开/关闭电脑控制模式
computerControlled
)
返回布尔值。打开/关闭电脑控制模式。处于此模式下时,加速器控制器的状态不受红石信号影响。
- isComputerControlled()
返回布尔值。是否处于电脑控制模式下。
- isBeamPort(整型丨x 值,整型丨y 值,整型丨z 值)
返回布尔值。位于 (x,y,z) 的方块是否为束流端口。
- swichBeamPort(整型丨x 值,整型丨y 值,整型丨z 值)
返回布尔值。将位于 (x,y,z) 的束流端口切换为红石设定下的模式(此模式可通过手持多功能工具按住Shift右击束流端口选择;束流端口会在收到红石信号时变为此模式)。也会切换无效束流端口的模式;只会在该方块不是束流端口时返回 false
。
- getBeamPortMode(整型丨x 值,整型丨y 值,整型丨z 值)
返回字符串。位于 (x,y,z) 的束流端口的模式,invalid
代表无效,input
代表输入,output
代表输出,disabled
代表禁用。
- getBeamPortSwitchMode(整型丨x 值,整型丨y 值,整型丨z 值)
返回字符串。位于 (x,y,z) 的束流端口红石设定下的模式,invalid
代表无效,input
代表输入,output
代表输出。