Skip to content

Commit

Permalink
Merge pull request #1 from Crazy-Rich-Meghan/gismo_master
Browse files Browse the repository at this point in the history
Tweak README, add to sidebar
  • Loading branch information
uekerman authored Jan 25, 2025
2 parents 537d60f + 78d8ad4 commit 9cb06f4
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 22 deletions.
8 changes: 8 additions & 0 deletions _data/sidebars/docs_sidebar.yml
Original file line number Diff line number Diff line change
Expand Up @@ -396,6 +396,14 @@ entries:
- title: Overview
url: /adapter-fenics.html
output: web, pdf

- title: G+Smo
output: web, pdf
subfolderitems:

- title: Overview
url: /adapter-gismo.html
output: web, pdf

- title: Nutils
output: web, pdf
Expand Down
38 changes: 17 additions & 21 deletions pages/docs/adapters/adapter-gismo.md
Original file line number Diff line number Diff line change
@@ -1,43 +1,39 @@
---
title: The G+Smo adapter
permalink: adapter-gismo.html
keywords: adapter, G+Smo, Isogeometric Analysis
keywords: adapter, G+Smo, Isogeometric Analysis, IGA
summary: "The G+Smo adapter can be used to couple G+Smo to CFD solvers for FSI applications or even to couple G+Smo to itself for advanced structural simulations."
---

## What is G+Smo?

G+Smo (pronounced gismo or gizmo) is a C++ library for isogeometric analysis (IGA). Geometry plus simulation modules aims at the seamless integration of Computer-aided Design (CAD) and Finite Element Analysis (FEA).

## Aim of the adapter

## Install G+Smo
The G+Smo adapter is a submodule of the G+Smo library, relies on the core functionality of the main library. To get started, you need to install G+Smo on your system first.
The G#Smo adapter provides a collection of examples demonstrating the use of G+Smo solvers adapted for preCICE. A particular focus lies on the IGA functionality of G#Smo.

## Install G+Smo and the adapter

This adapter provides a collection of examples demonstrating the use of a G+Smo solver adapted for preCICE.
The [G+Smo adapter](https://github.com/gismo/gsPreCICE) is a submodule of the [G+Smo library](https://github.com/gismo/gismo) and relies on the core functionality of the main library. The adapter is automatically cloned into the main library if configured.

Clone G+Smo and build a specific solver:

### Clone the Adapter
After downloading [G+Smo](https://github.com/gismo/gismo), clone the G+Smo adapter submodule:

```
cd gismo/build
cmake .. -DGISMO_OPTIONAL="<Other submodules>;gsPreCICE"
```bash
git clone https://github.com/gismo/gismo.git
cd gismo
mkdir build & cd build
cmake .. -DGISMO_OPTIONAL="<Other submodules>;gsPreCICE"
make <solver_name>
```
_Note:_ For example, `<Other submodules>` can be [`gsElasticity`](https://github.com/gismo/gsElasticity), [`gsKLShell`](https://github.com/gismo/gsKLShell) and [`gsStructuralAnalysis`](https://github.com/gismo/gsStructuralAnalysis). See these submodules for extra information.
Depending on the solver, different submodules need to be added.

### Build and install a tutorial
TODO: It would be nice to add a table here with what solvers are available, which additional submodules they require, and which tutorials can use the solver.

To build and install a tutorial with `<tutorial name>`, run the following:
`<Other submodules>` can be [`gsElasticity`](https://github.com/gismo/gsElasticity), [`gsKLShell`](https://github.com/gismo/gsKLShell) and [`gsStructuralAnalysis`](https://github.com/gismo/gsStructuralAnalysis). See these submodules for extra information.

```
make <tutorial name> -j <number of threads>
```
Finally, make the solver discoverable, e.g. by installation:

Make the tutorial systemwide discoverable:
```
make install <tutorial name>
make install <solver_name>
```



2 changes: 1 addition & 1 deletion pages/docs/adapters/adapter-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ Wherever meaningful (license, maturity of the project, no other home), we host t
| [FASTEST](https://www.fnb.tu-darmstadt.de/forschung_fnb/software_fnb/software_fnb.en.jsp) | [TU Darmstadt FNB](https://www.fnb.tu-darmstadt.de/) | None | Fluid-Structure-Acoustics interaction | |
| [FEAP](http://projects.ce.berkeley.edu/feap/) | [TU Darmstadt FNB](https://www.fnb.tu-darmstadt.de/) | None | Structure part in FSI | |
| [FEniCS-X](https://fenicsproject.org/) | [Benjamin Rodenberg, TUM](https://www.in.tum.de/i05/personen/personen/benjamin-rodenberg/) | [code](https://github.com/precice/fenicsx-adapter) | Structure part in CHT, FSI, any FEM | looking for maintainers! |
| [G+Smo](https://gismo.github.io/) | [TU Delft Numerical Analysis](https://www.tudelft.nl/en/eemcs/the-faculty/departments/applied-mathematics/numerical-analysis/) |[code](https://github.com/gismo/gsPreCICE) | Structure part in CHT; Structure part in FSI ||
| [G+Smo](https://gismo.github.io/) | [TU Delft Numerical Analysis](https://www.tudelft.nl/en/eemcs/the-faculty/departments/applied-mathematics/numerical-analysis/) |[code](https://github.com/gismo/gsPreCICE) | Structure part in CHT and FSI ||
| [ISSM](https://issm.jpl.nasa.gov/) | [Daniel Abele](https://github.com/dabele), [DLR Software Technology](https://www.dlr.de/sc/) | [code](https://git.rwth-aachen.de/terrabyte-dnn2sim/issm-precice) | Ice sheet model | |
| [LS-DYNA](http://www.lstc.com/products/ls-dyna) | [LKR](https://www.ait.ac.at/lkr) | [code example](https://github.com/precice/lsdyna-adapter) | Continuous metal casting process ||
| [MBDyn](https://www.mbdyn.org/) | [TU Delft Wind Energy](https://www.tudelft.nl/en/ae/organisation/departments/flow-physics-and-technology/wind-energy) | [code](https://github.com/precice/mbdyn-adapter) | Structure part in FSI ||
Expand Down

0 comments on commit 9cb06f4

Please sign in to comment.