|
|
|
# BoSSS
|
|
|
|
|
|
|
|
BoSSS (Bounded Support Spectral Solver) is a flexible framework for the development, evaluation and application of numerical discretization schemes based on the Discontinuous Galerkin (DG) method.
|
|
|
|
|
|
|
|
## Aim and focus of the BoSSS code
|
|
|
|
Its development has been initiated at the Chair of Fluid Dynamics in 2008 in order to establish a general foundation for the development of higher order discretizations for challenging physical problems. Over the years, BoSSS developed into a fully-featured library for discontinuous Galerkin methods, including facilities for workflow management and the rapid prototyping discretization of partial differential equations.
|
|
|
|
|
|
|
|
## Getting Started
|
|
|
|
See our installation instructions for Windows, Linux and Mac in the [BoSSS handbook](https://github.com/FDYdarmstadt/BoSSS/releases/latest).
|
|
|
|
|
|
|
|
## Quickstart guides and Tutorials
|
|
|
|
See in our [BoSSS handbook](https://github.com/FDYdarmstadt/BoSSS/releases/latest).
|
|
|
|
|
|
|
|
## Workflow
|
|
|
|
The workflow of this repository is build arround one core principle: the master branch must be healthy. To achieve this, [merge trains](https://docs.gitlab.com/ee/ci/merge_request_pipelines/pipelines_for_merged_results/merge_trains/)
|
|
|
|
and continuous testing are combined, utilizing a protected master branch. From the user's perspective this boils down to: Instead of pushing your code into the repository you share your work by submitting a Merge Request.
|
|
|
|
View the [CI/CD Documentation](https://docs.gitlab.com/ee/ci/introduction/index.html#how-gitlab-cicd-works)
|
|
|
|
for more detail.
|
|
|
|
|
|
|
|
### How to work with Gitlab
|
|
|
|
Before all, [clone the repository](https://help.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository).
|
|
|
|
Working with GitLab is straight forward:
|
|
|
|
1. Get the newest code:
|
|
|
|
```bash
|
|
|
|
git pull origin master
|
|
|
|
```
|
|
|
|
|
|
|
|
2. Create a new branch to work on:
|
|
|
|
```bash
|
|
|
|
git branch WorkBranch
|
|
|
|
git checkout WorkBranch
|
|
|
|
```
|
|
|
|
oder
|
|
|
|
```bash
|
|
|
|
git checkout -b WorkBranch
|
|
|
|
```
|
|
|
|
|
|
|
|
3. Work on your code
|
|
|
|
|
|
|
|
4. Add your work to git:
|
|
|
|
```bash
|
|
|
|
git add -A
|
|
|
|
```
|
|
|
|
|
|
|
|
5. Commit your work and choose a commit message that shortly describes your work:
|
|
|
|
```bash
|
|
|
|
git commit -m "short descriptive message"
|
|
|
|
```
|
|
|
|
|
|
|
|
6. Share your work. Since the master branch is proteced, you have to push into a different branch. You can choose any name you deem suitable – as long as it is not already in use.
|
|
|
|
```bash
|
|
|
|
git push ArbitraryBranchName
|
|
|
|
```
|
|
|
|
|
|
|
|
7. Create a Merge Request: Navigate to MergeRequests in the GitLab Project menu to create a request to merge `ArbitraryBranchName` into master branch. After your code has been successfully tested select `Add to Merge Train` to finalize your merge.
|
|
|
|
|
|
|
|
That's it.
|
|
|
|
|
|
|
|
8. If the Merge Request fails: Remove Merge Conflicts and/or fix faulty code. Move to step 3.
|
|
|
|
|
|
|
|
For detailed information visit [GitLab Documentation](https://docs.gitlab.com/ee/user/index.html).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Note for publication
|
|
|
|
If you are using BoSSS for one of your publications, we kindly ask you to cite one of our own publications, which corresponds most to your work. See in the appendix of the BoSSS handbook a list of our publications.
|
|
|
|
|
|
|
|
## License
|
|
|
|
This project is licensed under the [Apache License](http://www.apache.org/licenses/LICENSE-2.0).
|
|
|
|
|
|
|
|
For more information, see [license](https://github.com/FDYdarmstadt/BoSSS/blob/master/LICENSE.md).
|
|
|
|
|
|
|
|
BoSSS greatfully relies on multiple [Third-Party Software packages](https://github.com/FDYdarmstadt/BoSSS/blob/master/doc/licenses/Overview.md), with different licenses. |
|
|
|
\ No newline at end of file |