You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

技术问询:从二维数组[[x1,y1],[x2,y2],[x3,y3]]求解最大/最小值(车辆加减速分析)

从车辆时间-速度数组分析最大加/减速度

首先明确数组定义:假设输入的二维数组[[x1,y1],[x2,y2],[x3,y3]]中,x为时间戳(单位:s),y为对应时刻的车辆速度(单位:m/s)——这是车辆动力学分析的常见数据格式。

核心分析步骤

  • 计算相邻时段的加速度:加速度公式为 a = (v₂ - v₁) / (t₂ - t₁),遍历数组得到每一段的加速度值:
    • 第一段加速度:a₁ = (y2 - y1) / (x2 - x1)
    • 第二段加速度:a₂ = (y3 - y2) / (x3 - x2)
  • 提取最值对应加/减速度:
    • 最大加速度:取a₁、a₂中的最大值,直接反映车辆的最大加速能力
    • 最大减速度:取a₁、a₂中的最小值(通常为负数,绝对值越大,车辆减速能力越强)

示例实现(Python)

# 输入示例:[[时间1,速度1],[时间2,速度2],[时间3,速度3]]
vehicle_data = [[1, 0], [3, 10], [6, 4]]

accelerations = []
# 遍历计算每段加速度
for i in range(len(vehicle_data) - 1):
    t1, v1 = vehicle_data[i]
    t2, v2 = vehicle_data[i+1]
    delta_t = t2 - t1
    delta_v = v2 - v1
    # 避免时间差为0的异常情况
    if delta_t != 0:
        accelerations.append(delta_v / delta_t)

# 输出结果
max_acc = max(accelerations)
max_decel = abs(min(accelerations))
print(f"最大加速度:{max_acc} m/s²")
print(f"最大减速度:{max_decel} m/s²")

运行输出:

最大加速度:5.0 m/s²
最大减速度:2.0 m/s²

关键注意点

  • 若数组中x、y代表其他物理量(如位移-时间),需重新推导加速度计算逻辑
  • 必须保证时间戳严格递增,否则会出现时间差为0的计算异常

内容的提问来源于stack exchange,提问作者The Red Devil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 09:25:25