SedSAT3 is developed in the open. The full source code is available on GitHub, and contributions, bug reports, and feature requests are welcome.
Repositories
- Main application: github.com/ArashMassoudieh/SedSat3
- User’s Manual: github.com/ArashMassoudieh/SedSat-User-s-Manual
The main repository includes a Utilities submodule, so be sure to
initialize submodules when cloning (see below).
Technology
SedSAT3 is written in modern C++ (C++17) using the Qt 6 framework for its interface and charting. Numerical and statistical routines are built on established scientific libraries.
- Language / framework: C++17, Qt 6 (Qt Charts, QCustomPlot, QXlsx)
- Math / stats: GSL, Armadillo, LAPACK, BLAS, OpenMP
- Build systems: CMake and qmake
Building from source
Clone the repository
git clone --recurse-submodules https://github.com/ArashMassoudieh/SedSat3.git
cd SedSat3
If you already cloned without submodules, run:
git submodule update --init --recursive
Windows (Visual Studio 2022 + vcpkg)
- Install Visual Studio 2022 with the “Desktop development with C++” workload.
- Install Qt 6 and the Qt Visual Studio Tools extension.
- Use vcpkg to install the required dependencies (GSL, Armadillo, LAPACK/BLAS).
- Open the project and build in the
Releaseconfiguration.
Linux (Ubuntu / Debian)
Install the dependencies, then configure and build with CMake:
sudo apt-get update
sudo apt-get install build-essential cmake \
qt6-base-dev libqt6charts6-dev \
libgsl-dev libarmadillo-dev liblapack-dev libblas-dev libomp-dev
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --parallel
To produce a Debian package (.deb), the repository includes a build
script that configures, compiles, and packages the application in one step:
./createdeb.sh
The resulting .deb file will be placed in the build/ directory.
API documentation
Doxygen-generated API documentation is produced automatically from the source code and hosted on the project’s GitHub Pages site.
License
SedSAT3 is released as open-source software. Please refer to the
LICENSE file in the repository for the exact terms.
How to contribute
- Report bugs or request features through the GitHub issue tracker.
- Submit improvements via pull requests.
- Help improve the documentation in the manual repository.