How abdallahsoliman00/numxx works
NumXX is a header-only C++17 numerical-array library inspired by NumPy. A typical user creates an NArray, applies element-wise or aggregate operations, and consumes the resulting arrays or values. The graph preserves documented capabilities including slicing, matrix/vector operations, functional math, random generation, FFT, and file handling. Some subsystem links reflect README capabilities and tree paths; unsampled implementation details are not expanded into inferred call chains.
Main entry points: NArray.hpp NArray · ArrayCreation.hpp Array creation · Matrix.hpp Matrix · Random.hpp Random generation
Components 17
Array model
- Array creation
NumXX/Core/ArrayCreation.hpp - NArray
NumXX/Containers/NArray.hpp - Shape
NumXX/Containers/Shape.hpp - Matrix
NumXX/Containers/Matrix.hpp
Numerical operations
- Element-wise ops
NumXX/Core/MathOps.hpp - Math functions
NumXX/Core/Functions.hpp - Array aggregates
NumXX/Core/Misc.hpp - Vector operations
NumXX/Core/VecOps.hpp - Linear algebra
NumXX/Linalg.hpp - Complex numbers
NumXX/Core/Complex.hpp
Numerical extensions
- Random generation
NumXX/Random.hpp - Fourier transforms
NumXX/FFT.hpp - File handling
NumXX/Core/FileHandling.hpp
I/O and display
- Array formatting
NumXX/Utils/StringOps.hpp - Matrix kernels
NumXX/Utils/VecOps.hpp
Other components
- C++ client
- Public API
NumXX/NumXX.hpp
Connections 20
- C++ client → Public API: includes
- Public API → Array creation: exposes
- C++ client → Array creation: creates arrays
- Array creation → NArray: constructs
- NArray → Shape: tracks dimensions
- C++ client → NArray: slices and reshapes
- C++ client → Element-wise ops: applies operations
- C++ client → Math functions: calls functions
- C++ client → Array aggregates: reduces arrays
- C++ client → Matrix: uses matrices
- Matrix → Matrix kernels: calls matmul
- NArray → Matrix kernels: calls transpose
- C++ client → Linear algebra: uses linear algebra
- C++ client → Random generation: generates samples
- Random generation → Array creation: allocates arrays
- C++ client → Fourier transforms: transforms signals
- Fourier transforms → NArray: reads and returns arrays
- C++ client → File handling: reads and writes
- C++ client → Array formatting: formats arrays
- C++ client → Complex numbers: uses complex values