From 2cdca71f0a8e7c176c5588d7e938486dcf1e104f Mon Sep 17 00:00:00 2001 From: Bausager Date: Thu, 18 Jun 2026 13:37:48 +0200 Subject: [PATCH] Update README.md --- README.md | 38 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 7b0a609..68b3493 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,37 @@ -# panic +# PANIC -Portable Algorithms and Numerics In C++ \ No newline at end of file +**Portable Algorithms and Numerics In C++** + +PANIC is a from-scratch C++ foundation for numerical and scientific computing. The goal is not to compete with mature, highly optimized libraries. The goal is to build readable, portable, dependency-light implementations of the core pieces needed for experiments, learning, embedded systems, and scientific code. + +PANIC is intentionally written from first principles. Math functions, vector operations, matrix operations, tensor structures, neural-network components, and future simulation tools are implemented directly instead of being wrapped around large external dependencies. + +## Goals + +* Write clear numerical code that can be understood and modified. +* Keep the core portable and dependency-light. +* Provide optional parallel implementations where useful. +* Build toward embedded and microcontroller-friendly use. +* Support scientific computing experiments from a common foundation. + +## Planned modules + +* `panic::math` - scalar math, vector operations, matrix operations, tensor operations +* `panic::tensor` - tensor, matrix, and vector data structures +* `panic::random` - random number generation and sampling utilities +* `panic::neural_network` - neural-network layers, activations, losses, and training utilities +* `panic::interpolation` - interpolation of systems + +## Philosophy + +PANIC exists because sometimes the point is not to use the most convenient tool. Sometimes the point is to understand the tool by rebuilding it. + +This project favors clarity, portability, and experimentation over peak performance. + +## Status + +Early development. Interfaces, file structure, and module names may change frequently. + +## License + +Private for now. A license will be chosen before public release.