avila_math/
lib.rs

1/// Avila Math - Mathematical Kernel for Avila Ecosystem
2///
3/// This library provides core mathematical primitives used across the Avila platform:
4/// - Vectors (2D, 3D, 4D)
5/// - Matrices (3×3, 4×4)
6/// - Quaternions (3D and dual quaternions)
7/// - Tensors (generalized N-dimensional arrays)
8/// - 4D geometry (tesseracts, 24-cell, rotations)
9///
10/// # Features
11///
12/// - **Pure Rust** implementation
13/// - **Zero-copy** operations where possible
14/// - **Type-safe** APIs
15/// - **SIMD-friendly** data layouts
16/// - **Game engine** and **scientific computing** ready
17///
18/// # Examples
19///
20/// ```rust
21/// use avila_math::geometry::Quat3D;
22///
23/// // Create a quaternion from components
24/// let q = Quat3D::new(1.0, 0.0, 0.0, 0.0);
25///
26/// // Normalize it
27/// let normalized = q.normalize();
28/// assert!((normalized.norm() - 1.0).abs() < 1e-10);
29/// ```
30pub mod geometry;
31
32/// Módulo de Tensores - Estruturas tensoriais generalizadas e operações
33///
34/// Este módulo implementa tensores de ordem arbitrária (0-4) com operações
35/// para álgebra linear, machine learning e processamento de dados multidimensionais.
36pub mod tensor;
37
38/// Módulo de Processamento de Sinais
39///
40/// FFT (1D-4D), análise espectral, janelas e filtros.
41pub mod signal;
42
43/// Módulo de Álgebra Linear Avançada
44///
45/// SVD, eigenvalues, QR, LU decompositions e resolução de sistemas lineares.
46pub mod linalg;
47
48/// Módulo de Cálculo Diferencial 4D
49///
50/// Operadores diferenciais (gradiente, divergência, Laplaciano) e campos vetoriais.
51pub mod calculus;
52
53/// Módulo de Interpolação 4D
54///
55/// Curvas de Bézier, splines cúbicas, interpolação linear/bilinear/trilinear.
56pub mod interpolation;
57
58/// Módulo de Diferenciação Automática
59///
60/// Sistema tape-based para backpropagation e treino de redes neurais.
61pub mod autograd;
62
63/// Módulo de Filtros Adaptativos
64///
65/// Filtro de Kalman, Wiener e Transformada Z para sistemas discretos.
66pub mod filters;
67
68/// Bindings Python (PyO3)
69#[cfg(feature = "python")]
70pub mod python;
71
72// Re-export commonly used types
73pub use autograd::{Tape, Variable};
74pub use filters::{KalmanFilter, WienerFilter};
75pub use geometry::{DualQuat, Matrix4, Quat3D, SO4Rotation, Vector2, Vector3, Vector4, AABB};
76pub use tensor::{Tensor, Tensor4D};