🚀 MATLAB File Reader/Writer v0.1.1-beta Released - Full MATLAB Complex Format Support! #1
kolkov
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
TL;DR: Pure Go library for reading AND writing MATLAB
.matfiles is now fully compatible with MATLAB/Octave for complex numbers! No CGo, no external C dependencies.🎯 What is This Project?
MATLAB File Reader/Writer is a pure Go library that allows you to read and write MATLAB
.matfiles without any CGo dependencies or external C libraries. It's part of the SciGoLib ecosystem - a collection of scientific computing libraries for Go.🌟 Why Use This Library?
🔥 Key Advantages
🎉 What's New in v0.1.1-beta
✨ Major Fix: Proper MATLAB v7.3 Complex Number Format
The Problem: In v0.1.0-beta, complex numbers were stored using a flat workaround structure due to HDF5 library limitations. Files were readable but not fully compatible with MATLAB/Octave.
The Solution: We updated to the HDF5 library's development branch which now supports nested datasets and group attributes. Complex numbers now use the proper MATLAB v7.3 format!
Before (v0.1.0-beta):
❌ Not recognized as complex by MATLAB/Octave
After (v0.1.1-beta):
✅ Fully compatible with MATLAB/Octave!
🛠️ Technical Improvements
HDF5 Dependency Updated
CreateGroup()now returns(*GroupWriter, error)Race Detector Fix
-ldflags '-linkmode=external'for external linkingQuality Improvements
💻 Quick Start Example
Writing Complex Numbers to MATLAB
Verify in MATLAB/Octave
It just works! 🎉
🔬 Use Cases for Scientific Computing
1. Data Exchange Between Go and MATLAB
Perfect for teams using both Go (backend, data processing) and MATLAB (analysis, visualization):
2. Scientific Data Pipeline
Build data processing pipelines in Go while maintaining MATLAB compatibility:
3. MATLAB-Free Environments
Run scientific computing workflows in environments where MATLAB isn't available:
4. Cross-Platform Data Science Tools
Build data science tools in Go that work with MATLAB files:
📊 Project Status
What Works ✅
Known Limitations⚠️
Quality Metrics 📈
🗺️ Roadmap
v0.2.0 (3-4 weeks)
v0.3.0+ (Q1 2025)
v1.0.0 (2026)
🤝 How You Can Help
We're actively looking for contributors! Here are ways you can help:
🐛 Testing
💻 Development
📚 Documentation
💬 Community
🔗 Links
📦 Installation
Requirements:
🎓 Technical Background
Why Pure Go?
Problem with existing solutions:
Our approach:
Architecture
Clean separation between:
🙏 Acknowledgments
This project wouldn't be possible without:
📝 License
MIT License - Free for commercial and open-source use
🔮 Vision
Our vision is to make Go a first-class citizen for scientific computing. MATLAB file support is just the beginning. The SciGoLib ecosystem aims to provide:
.matfilesJoin us in building the scientific computing ecosystem for Go!
📢 Spread the Word
If you find this project useful, please:
💬 Questions?
Happy coding! 🚀
Released: 2025-11-03
Go version: 1.25+
Status: Beta (API may change)
Keywords for search: Go MATLAB, golang mat files, pure Go HDF5, MATLAB file reader Go, scientific computing Go, data exchange MATLAB Go, cross-platform MATLAB, Go scientific libraries, SciGoLib, no CGo MATLAB
Beta Was this translation helpful? Give feedback.
All reactions