RGB is a Java-based application that performs essential linear algebra operations. Initially developed as a command-line tool for the Linear Algebra and Geometry course at Institut Teknologi Bandung, it now includes a graphical user interface (GUI) for enhanced user experience. RGB supports operations like solving linear systems, performing regression and interpolation, matrix transformations, and more.
- Java 21 or later
- Gradle 8.8 or later (if building from source)
You can now run the application in two modes: via Command-Line Interface (CLI) or Graphical User Interface (GUI).
- Download the JAR file from the releases page.
- Open a terminal and navigate to the directory containing the downloaded JAR.
- Run the following command to start the application in CLI mode:
java -jar Algeo01-23002.jar -cli
Alternatively, if you have cloned the repository and want to run it using Gradle:
./gradlew run --args="-cli"
- Follow the same steps as above to download the JAR file.
- To run the application in GUI mode, use the following command:
java -jar Algeo01-23002.jar
Or, if using Gradle:
./gradlew run
Here's a Features section you can add to your README:
- Solve systems of linear equations using Gaussian elimination, Gauss-Jordan elimination, Cramer's rule, and matrix inversion methods.
- Perform operations such as matrix multiplication, transposition, finding the determinant, and calculating the inverse of matrices.
- Supports both Multiple Linear Regression and Quadratic Regression for data analysis.
- Polynomial interpolation and Bicubic Spline Interpolation for estimating values between data points.
- An intuitive GUI for easier interaction with the library, allowing users to perform operations without needing to use the command line.
- A fully-featured CLI for power users who prefer or need to interact with the application through terminal commands.
- Resize images using Bicubic Spline Interpolation, improving image quality and scaling.
- Handles invalid inputs and matrix dimension mismatches gracefully with detailed error messages.
- This release (v1.0) includes the first iteration of the GUI, which is fully functional for most features.
- Matrix operations involving larger matrices may still be slower than desired.
- Bicubic Spline Interpolation and image resizing functionality have been added.