use super::*;
use crate::error::{MLError, Result};
use scirs2_core::ndarray::{Array1, Array2, Array3, Array4, ArrayView1, Axis};
use scirs2_core::random::prelude::*;
use scirs2_core::random::ChaCha20Rng;
use scirs2_core::random::{Rng, SeedableRng};
use scirs2_core::Complex64;
use std::f64::consts::PI;