use crate::core::{ChebyScalar, NodeKind};
pub fn integrate_weighted<T: ChebyScalar, const N: usize>(f: impl Fn(f64) -> T) -> T {
let xs = crate::core::nodes::nodes::<N>(NodeKind::Gauss);
let mut sum = T::zero();
for x in xs {
sum = sum + f(x);
}
sum * (core::f64::consts::PI / N as f64)
}