Welcome to Nelson’s Official Website
🚀 Free Scientific Software for Engineers & Scientists
Nelson is a powerful, open-source numerical computational language, developed to provide a comprehensive and intuitive environment for engineers, scientists, and students. With over 1,200 built-in functions, Nelson supports a wide range of tasks, from basic algebra to advanced numerical simulations.
Originally inspired by languages like MATLAB© and GNU Octave, Nelson offers users a lightweight yet feature-rich experience. It is designed to be easy to learn and use, with an emphasis on performance and flexibility.
Key Features:
- Flexible and modular system for custom data types
- Supports data type overloading
- Extensive support for scientific computations
📸 Screenshots
- See Nelson in Action: Screenshots
- Graphical Capabilities: Plotting & Graphics
🚀 Detailed Features
Nelson offers a wide range of powerful features for scientific computing and engineering:
Core Capabilities
- Advanced Data Structures: Cell arrays, structs, dictionaries, tables, and linear systems
- Internal Data Types: Flexible and extensible type system
- Overloading: Customizable operator and function behavior
- Modularity: Organize and extend functionality
- External Modules: Integrate third-party libraries
Scientific Computing
- 2D and 3D Plotting: High-level plot commands for data visualization
- Fast Fourier Transformation: Efficient frequency domain analysis
- Control Systems: Tools for system modeling and analysis
- SLICOT Integration: Advanced control theory algorithms
Programming & Development
- Interactive Code Editor: User-friendly development environment
- Build C/C++ On-the-Fly: Seamless integration with compiled languages
- C MEX API Support: Compatibility with existing MEX files
- Nelson Engine API: C API compatible with MEX Engine
- Foreign Function Interface (FFI): Call functions from shared libraries
High-Performance Computing
- Parallel Computing Module: Leverage multi-core processors
- Message Passing Interface (MPI): Distributed computing support
Data Handling & Interoperability
- HDF5 I/O: High-level functions for HDF5 file format
- MAT-File I/O: Read and write MATLAB® compatible files
- JSON Support: Parse and generate JSON data
- Python Integration: Call Python from Nelson
User Interface & Graphics
- UI Controls: Create interactive user interfaces
- QML Engine: Design modern UIs with QML
Connectivity & Web
- COM Interface: Interact with COM objects (Windows)
- RESTful Web Services: Create and consume web APIs
- Cloud Computing☁️: Harness cloud resources for computation
Miscellaneous
- Audio Processing: Work with audio signals and files
- Unicode Support: Handle international character sets
- Validator Functions: Ensure data integrity
- Interprocess Communication (IPC): Facilitate process interaction
📦 Download Nelson
Choose your platform and get started with Nelson today!
Download the latest version for Windows
📖 Documentation & Support
- Explore the Online Documentation for in-depth guides.
- Have questions or facing issues? Submit an Issue
🧑💻 Contribute to Nelson
Want to be part of the community? Contribute to the development of Nelson by following our Development Guide.
🛠️ Supported Platforms
Nelson is tested and supported on a wide range of platforms. Download options and continuous integration (CI) status are listed below:
Operating System | Architecture | CI | Binaries |
---|---|---|---|
Windows 10, 11 | x86-64, i686 | ✓ | ✓ |
macOS Sequoia | ARM64 | ✓ | |
macOS Sonoma | ARM64 | ✓ | |
macOS Ventura | x86-64 (64-bit) | ✓ | |
Ubuntu 24.04 | x86-64 | ✓ | ✓ (Snap) |
Ubuntu 22.04 | x86-64 | ✓ | ✓ (Snap) |
Ubuntu 20.04 | x86-64 | ✓ | ✓ (Snap) |
Fedora 40 | x86-64 | ✓ | ✓ (Snap) |
ArchLinux | x86-64 | ✓ | ✓ (Snap) |
Raspbian | ARM v8 (64-bit) |
Note: The continued support of some platforms may depend on community contributions.