Comment Comment by mtantaoui for ]-inf, inf[ integrals, you can use Gauss Hermite method, just keep in mind to multiply your function with exp(x^2). use integrate::{ gauss_quadrature::hermite::gauss_hermite_rule, }; use statrs::distribution::{Continuous, Normal}; fn dnorm(x: f64) -> f64 { Normal::new(0.0, 1.0).unwrap().pdf(x)* x.powi(2).exp() } fn main() { let n: usize = 170; let result = gauss_hermite_rule(dnorm, n); println!("Result: {:?}", result); } I got Result: 1.0000000183827922. parent mtantaoui 2 years ago