#多项式 #逼近 #切比雪夫 #资源受限 #嵌入式

无std microcheby

使用切比雪夫多项式进行单变量函数逼近。适合嵌入式设备且与no_std兼容。

2个版本

0.1.1 2024年7月30日
0.1.0 2024年7月30日

#457 in 数学

Download history 213/week @ 2024-07-27 9/week @ 2024-08-03

222 每月下载量

MIT 协议

205KB
420

microcheby

Crates.io Docs.rs

microcheby是一个使用切比雪夫多项式来计算和评估单变量函数多项式逼近的Rust库。代码与no_std兼容,不依赖于alloc,并针对资源受限环境进行优化,在这种环境中每个时钟周期都很宝贵。优化包括

  • Clenshaw递归用于评估逼近。
  • 用于评估低阶逼近的高效无循环函数。
  • 如果范围恰好是[-1, 1],则更高效的无循环评估。
  • 无除法的逼近评估。

安装

将以下行添加到您的Cargo.toml文件中

microcheby = "0.1"

在no_std环境中使用microcheby

microcheby = { version = "0.1", default-features = false }

用法

请参阅crate文档

切比雪夫逼近

行为良好的函数可以用所谓的切比雪夫多项式的加权无穷级数表示。这种和称为切比雪夫展开。如果目标函数足够平滑,展开的系数(权重)通常会迅速收敛到零,只需要前几项就能得到一个好的逼近。对于具有n项的截断展开,逼近误差的估计由系数n+1的幅度给出。

以下是一些图表,展示了随着展开项数的增加,逼近如何收敛到目标函数。对于更平滑的目标函数,收敛通常更快。

无运行时依赖

功能