1个稳定版本
1.0.0 | 2023年1月18日 |
---|
#983 在 数学
73KB
1.5K SLoC
评估和操作多项式的底层函数。
示例
多项式 f(x, y) = 3 x y + x^2 的系数向量是
[0, 3, 0, 1, 0, 0]
。
使用 eval()
我们可以评估这个多项式
use nutils_poly;
let coeffs = [0, 3, 0, 1, 0, 0];
assert_eq!(nutils_poly::eval(&coeffs, &[1, 0], 2), Ok( 1)); // f(1, 0) = 1
assert_eq!(nutils_poly::eval(&coeffs, &[1, 1], 2), Ok( 4)); // f(1, 1) = 4
assert_eq!(nutils_poly::eval(&coeffs, &[2, 3], 2), Ok(22)); // f(2, 3) = 22
PartialDerivPlan::apply()
计算多项式对其中一个变量的偏导数的系数。多项式 f
对第一个变量 x
的偏导数是 ∂_x f(x, y) = 3 y + 2 x
(系数:[3, 2, 0]
)
use nutils_poly::PartialDerivPlan;
let coeffs = [0, 3, 0, 1, 0, 0];
let pd = PartialDerivPlan::new(
2, // number of variables
2, // degree
0, // variable to compute the partial derivative to
).unwrap();
assert_eq!(Vec::from_iter(pd.apply(coeffs)?), vec![3, 2, 0]);
# Ok::<_, nutils_poly::Error>(())
进一步阅读
参见crate文档以获取详细描述。
此crate是Nutils项目的一部分。
依赖关系
~1.5MB
~28K SLoC