本栏目将对《AFSim 2.9中文参考手册》进行持续更新,欢迎关注交流!
对本书全文和AFSIM其它资料感兴趣的伙伴,可联系作者领取~
全部内容索引请看 ⬇️⬇️⬇️
《AFSim 2.9中文参考手册》-CSDN博客编辑https://blog.csdn.net/henggesim/article/details/145566384
AFSIM配套视频教程请看 ⬇️⬇️⬇️afsim2.9官方培训视频教程https://space.bilibili.com/3546837967440641https://space.bilibili.com/3546837967440641
processor <name> WSF_WEAPON_FUSE
Platform Part Commands ...
processor Commands ...
WSF_SCRIPT_PROCESSOR Commands ...
update_interval ...
fine_update_interval ...
time_of_flight_to_arm ...
// Detonation Based On Time, Altitude or Speed
maximum_time_of_flight ...
detonate_below_height_agl ...
detonate_below_height_msl ...
detonate_above_height_agl ...
detonate_above_height_msl ...
detonate_below_speed ...
detonate_below_mach ...
detonate_on_mach_decreasing_to ...
// Detonation Based on Target Proximity
gross_proximity_range ...
hit_proximity_range ...
use_current_target
do_not_use_current_target
exclusive_target_name ...
fuse_function_range ...
coast_time_on_loss_of_target ...
detonate_on_loss_of_target
proximity_cancel_on_loss_of_target
proximity_all_on_loss_of_target
excluded_category ...
air_to_ground_mode
on_intercept ...
// Script Interface
on_initialize ... end_on_initialize
on_initialize2 ... end_on_initialize2
on_update ... end_on_update
script_variables ... end_script_variables
script ... end_script
.. Other Script Commands ...
script void on_weapon_detonation()
... <script> ...
end_script
end_processo
WSF_WEAPON_FUSE 是嵌入在平台内的处理器,用于控制飞行中的 WSF_EXPLICIT_WEAPON 的武装、引爆和终止。终止可能基于飞行时间、平均海平面(MSL)高度、地面以上(AGL)高度、与其他平台的接近程度,或显式的外部引爆命令。由于计算与其他平台的近距离引爆可能会非常耗费计算资源,因此一个重要的考虑因素是是否考虑模拟中的所有平台,还是仅考虑指定的特定平台。通常,空对空交战是针对特定目标进行的,要么该目标受损,要么没有目标受损。空对地交战可能希望仅攻击单一目标,但临近的附带损害通常是一个现实问题。在这种情况下,用户必须通过输入指定是否考虑附带损害。
WSF_AIR_TARGET_FUSE 和 WSF_GROUND_TARGET_FUSE 是此处理器的特殊实现,专为特定类别的目标配置。应在适当时使用它们。
- update_interval <time-value>
- gross_update_interval <time-value>: 当不在任何感兴趣的平台附近时,保险处理器的更新间隔。(当接近目标平台时,更新间隔可能会在内部暂时减少。)
默认值: 1.0 秒
- fine_update_interval <time-value>
保险处理器在被认为接近感兴趣的平台时的更新间隔。此值必须小于 update_interval,用于增加接近目标时的分辨率和精度。适当的值取决于武器的接近速度。粗略指南是,在武器穿越其致命半径的时间内应经过一个 fine_update_interval。
默认值: 0.05 秒
- time_of_flight_to_arm <time-value>
在指定的飞行时间过去之前不考虑引爆。此值相对于武器首次离开“轨道”或“发射台”的时间。这将允许在武器武装引爆之前进行安全的发射分离。如果在武器武装之前通过各种方式命令引爆,武器将从模拟中移除,对任何平台没有破坏性影响。
默认值: 0 秒(武器将立即武装)
基于时间、高度或速度的引爆
- maximum_time_of_flight <time-value>
当指定的飞行时间过去时自动引爆。此值相对于武器首次离开“轨道”或“发射台”的时间。这将防止未命中接近目标的武器永远飞行。
默认值: 1.0E+10 秒(基本上是永远)
- detonate_below_height_agl <length-value> / detonate_below_height_msl <length-value>
当武器下降并低于指定的 AGL 或 MSL 高度时引爆。
默认值: 下降高度不是标准
- detonate_above_height_agl <length-value> / detonate_above_height_msl <length-value>
当武器上升并高于指定的 AGL 或 MSL 高度时引爆。
默认值: 上升高度不是标准
- detonate_below_speed <speed-value> / detonate_below_mach <Mach-number>
当武器下降且速度降低时,如果速度或马赫数低于指定值则引爆。
默认值: 0 m/s(最低速度/马赫数不是标准)
- detonate_on_mach_decreasing_to <Mach-number>
当武器加速时,存储峰值马赫数。在燃料耗尽后,当减速时,如果马赫数低于指定值则引爆。引爆仅在达到大于指定值的峰值马赫数后触发。
默认值: 0 m/s(最低速度/马赫数不是标准)
基于目标接近的引爆
- gross_proximity_range <length-value>
必须指定此值以进行武器-目标接近检查。此输入指定武器被认为接近目标的最小分离距离。在武器处于目标的此范围内时,将使用更精细的时间步长(参见 fine_update_interval)以提高拦截确定的准确性。
注意: 合理的值是武器平均速度的 2 到 3 倍。
- hit_proximity_range <length-value>
如果启用了接近检查(gross_proximity_range 非零)且指定了 do_not_use_current_target,则表示在武器和目标的最近接近点之间的最大范围内将触发引爆。如果武器和目标在其最近接近点未通过此距离,则平台将继续而不引爆。
默认值: 100 米
- use_current_target / exclusive_target_name <target-name>
如果非零,则在此指定的待机范围内,最近接近点(PCA)计算将提前终止(保险动作)。默认值为零,这会导致在 PCA 处进行保险。使用 PkTable 时建议使用一些小的待机,因为未修改的 PCA 保险几乎总是会导致 PCA 处的方位角和仰角值大于 90 度。
- do_not_use_current_target
如果启用了接近检查(gross_proximity_range 非零),则指定将对哪些平台进行接近检查。选项分别是:
-
- 针对平台的当前目标。
- 针对指定的目标。
- 针对任何不是发射器或未被 excluded_category 排除的平台。
在前两种情况下,当武器和目标达到其最近接近点时将发生引爆。在最后一种情况下,当潜在目标和武器达到小于 hit_proximity_range 的最近接近点时将发生引爆。
默认值: use_current_target
注意: do_not_use_current_target 可能非常耗费计算资源。谨慎使用。
- coast_time_on_loss_of_target <time-value>
如果启用了 use_current_target 或 exclusive_target_name,并且现有目标丢失,则每个输入指定要执行的操作。选项分别是:
-
- 在引爆前漂移指定时间(以允许目标重新获取)。
- 立即引爆。
- 停止考虑任何接近检查(恢复到时间、高度和速度检查)。
- 开始考虑所有平台的接近。参见 do_not_use_current_target。
默认值: coast_time_on_loss_of_target 2 秒
- excluded_category <category-name>
仅在考虑所有平台的接近时使用。此输入将排除属于 <category-name> 的所有平台。可以多次指定此命令以排除多个类别。
- air_to_ground_mode
此标志将通过指定目标类型(当前目标或指定的 exclusive_target_name)的高度来提高 AGL 限制的拦截值。这是为了允许武器尽可能接近目标的重心引爆,而不因地面目标的垂直高度而人为增加偏差距离。
- on_intercept [ detonate halt ]
此设置允许武器平台在保险计算出拦截条件后冻结并留在模拟中。通常,平台将在拦截时引爆并删除。如果设置为“halt”,则运动将在拦截位置冻结,并且保险控制的交战对象将被中断。将由脚本或其他机制来终止(Terminate())交战,然后将武器平台从模拟中移除。
默认值: detonate
脚本接口
WSF_WEAPON_FUSE 利用通用脚本接口和 WSF_SCRIPT_PROCESSOR 的功能,以及以下内容:
script void on_weapon_detonation() … <script> … end_script
当保险即将引爆但在评估武器杀伤力之前执行此脚本。武器交战对象(可通过 PLATFORM.WeaponEngagement() 获得)已填充引爆原因和位置。