Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/freb97/gaussian-elimination-calculator
Gaussian elimination calculator for solving systems of linear equations with multiple unknown variables, written in java.
https://github.com/freb97/gaussian-elimination-calculator
gauss-elimination gauss-jordan-elimination java javafx maven
Last synced: 10 days ago
JSON representation
Gaussian elimination calculator for solving systems of linear equations with multiple unknown variables, written in java.
- Host: GitHub
- URL: https://github.com/freb97/gaussian-elimination-calculator
- Owner: freb97
- License: mit
- Created: 2021-10-31T17:59:48.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-04-07T16:25:47.000Z (over 1 year ago)
- Last Synced: 2023-10-17T08:39:34.990Z (about 1 year ago)
- Topics: gauss-elimination, gauss-jordan-elimination, java, javafx, maven
- Language: Java
- Homepage:
- Size: 468 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Gaussian Elimination Calculator
A calculator for the gaussian elimination algorithm to solve
systems of linear equations with multiple unknown variables,
written in Java.This project is intended for education purposes. For understanding
the maths behind it, the calculator has a built-in calculation path
step trace, and an easy-to-use GUI. Note that the calculator will
only change a given matrix to the reduced row echelon form, from
which the solution vector can be read.This calculator currently only works with uniquely solvable matrices.
The core of the algorithm is located in the
[GaussianElimination.java](https://github.com/freb97/gaussian-elimination-calculator/blob/main/src/main/java/io/bussmann/gauss/math/GaussianElimination.java)
file, with the matrix data being held in an instance of the
[GaussMatrix.java](https://github.com/freb97/gaussian-elimination-calculator/blob/main/src/main/java/io/bussmann/gauss/types/GaussMatrix.java)
class.![Calculator program UI](https://raw.githubusercontent.com/freb97/gaussian-elimination-calculator/main/src/main/resources/io/bussmann/gauss/img/program.png)
## Getting started
### Dependencies
* [Apache Maven](https://maven.apache.org/)
* Java Platform ([OpenJDK 17](https://jdk.java.net/17/))### Installation
1. Download and install [dependencies](#Dependencies)
2. Navigate to the project root directory
3. Build the application jar file with maven:```bash
$ mvn install
```The jar file and build information is then written to the
newly created directory ```targets```.### Usage
To run the application, use the maven exec command:
```bash
$ mvn exec:exec
```If you don't want to use the same VM as maven, you can pass
the ```.jar``` file to the locally installed java runtime:```bash
$ java -jar ./target/gauss-1.1-jar-with-dependencies.jar
```### Documentation
To generate the JavaDoc HTML documentation files, run the maven
javadoc command:```bash
$ mvn javadoc:javadoc
```The generated files are accessible in the directory ```target/site/apidocs```.
### Tests
To run only the unit tests, run the maven test command:
```bash
$ mvn test
```The generated test resulsts are accesible in the directory ```target/surefire-reports```.