• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

cmake/H03-May-2022-6,6075,826

deploy/H03-May-2022-225135

doc/H03-May-2022-6,6884,863

docker/H02-Dec-2021-4,0623,420

examples/H03-May-2022-9,8305,814

extensions/H03-May-2022-91,13164,781

external/H03-May-2022-446,568308,812

filedata/H02-Dec-2021-28,92428,584

optional/H03-May-2022-226103

plugins/H02-Dec-2021-13,7828,792

src/H03-May-2022-115,61668,575

unittests/H03-May-2022-6,3964,428

.gitignoreH A D02-Dec-2021479 3528

.gitlab-ci.ymlH A D02-Dec-202114.1 KiB239218

CTestConfig.cmakeH A D02-Dec-2021693 1816

MakefileH A D02-Dec-20211.1 KiB4628

README.mdH A D02-Dec-202110.1 KiB247163

changelogH A D02-Dec-20212.9 KiB8376

README.md

1```
2     GGGGGGGGG      GGGG      GGGGGGGGG  GGGGGG   GGGGGG  GGGGGGGGGG
3    GGGG            GGGG     GGGG        GGGGGG  GGGGGG  GGGG   GGGG
4   GGGG         GGGGGGGGGGGG GGGGGGGGG   G GGGG  G GGGG GGGG    GGGG
5   GGGG GGGGGG GGGGGGGGGGGGG GGGGGGGGGG GG GGGG GG GGGG GGGG   GGGGG
6  GGGGG  GGGGG GGGGGGGGGGGG  GGGGGGGGG  GG GGGGGG GGGG  GGGG   GGGG
7  GGGG   GGGG      GGGG           GGGG  GG  GGGG  GGGG  GGGG   GGGG
8   GGGGGGGGGG      GGGG     GGGGGGGGG  GG   GGG   GGGG  GGGGGGGGGG
9
10======================================================================
11=====             Geometry plus Simulation modules               =====
12=====                     version 21.12 Alpha                    =====
13=====                   https://github.com/gismo                 =====
14======================================================================
15```
16
17# Continuous Integration status
18| **System** | **Status** | **More information** |
19|------------|------------|----------------------|
20| [CDash](https://cdash-ci.inria.fr/index.php?project=Gismo) | [![cdash](https://img.shields.io/website?down_color=lightgrey&down_message=offline&label=CDash&up_color=green&up_message=up&url=https%3A%2F%2Fcdash-ci.inria.fr%2Findex.php%3Fproject%3DGismo)](https://cdash-ci.inria.fr/index.php?project=Gismo) | Report results from all builds |
21| [Appveyor](https://ci.appveyor.com/project/gismo/gismo)  | [![Appveyor status](https://ci.appveyor.com/api/projects/status/abps59xbt1gjwci1/branch/stable?svg=true)](https://cdash-ci.inria.fr/index.php?project=Gismo&filtercount=1&field1=site&compare1=63&value1=[appVeyor]) | Windows MSVC 14.0 |
22| [Circle CI](https://circleci.com/gh/gismo/gismo) | [![Circle CI](https://circleci.com/gh/gismo/gismo.svg?style=svg)](https://cdash-ci.inria.fr/index.php?project=Gismo&filtercount=1&field1=site&compare1=63&value1=[cci]) | macOS XCode9, C++98 <br> macOS XCode10, C++11 <br> macOS XCode11, C++14 <br> macOS XCode12, C++17 |
23| [Codeship](https://app.codeship.com/projects/123289)  | [![Codeship Status](https://app.codeship.com/projects/2aa19360-8998-0133-39fd-66416d65b267/status?branch=stable)](https://cdash-ci.inria.fr/index.php?project=Gismo&filtercount=1&field1=site&compare1=63&value1=[codeship]) | |
24| [GitLab](https://gitlab.com/gismo-ci/gismo/-/pipelines)    | [![pipeline status](https://gitlab.com/gismo-ci/gismo/badges/gitlab_ci/pipeline.svg)](https://cdash-ci.inria.fr/index.php?project=Gismo&filtercount=1&field1=site&compare1=63&value1=[gitlab-ci]) | Linux GCC6, C++98 <br> Linux GCC7, C++11 <br> Linux GCC8, C++14 <br> Linux GCC9, C++17 <br> Linux GCC10, C++20 <br> Linux Clang7, C++98 <br> Linux Clang8, C++11 <br> Linux Clang9, C++14 <br> Linux Clang10, C++17 <br> Linux Clang11, C++20] |
25| [Travis](https://travis-ci.org/gismo/gismo/branches) | [![Travis Status](https://travis-ci.org/gismo/gismo.svg?branch=stable)](https://cdash-ci.inria.fr/index.php?project=Gismo&filtercount=1&field1=site&compare1=63&value1=[travis]) | macOS XCode9 C++98 <br> macOS XCode10, C++11 <br> macOS XCode11, C++14 <br> Linux GCC, C++98 |
26| [GitHub Actions](https://github.com/gismo/gismo/actions) | [![Build Status](https://github.com/gismo/gismo/workflows/gismo/badge.svg?branch=stable)](https://cdash-ci.inria.fr/index.php?project=Gismo&filtercount=1&field1=site&compare1=63&value1=[actions]) | Latest Linux/MacOS/Windows |
27| [Jenkins](https://ci.inria.fr/gismo/job/gismo/job/gismo/job/stable) | [![Build Status](https://ci.inria.fr/gismo/buildStatus/icon?job=gismo%2Fgismo%2Fstable)](https://cdash-ci.inria.fr/index.php?project=Gismo&filtercount=1&field1=site&compare1=63&value1=[jenkins]) |VMs for Linux/MacOS/Windows |
28| GCC Farm | [Status](https://cdash-ci.inria.fr/index.php?project=Gismo&filtercount=1&field1=site&compare1=63&value1=[gccfarm]) | Builders from the GCC Farm   |
29| [OBS](https://build.opensuse.org/package/show/home:filiatra/gismo) | [binaries](https://software.opensuse.org/download/package?project=home:filiatra&package=gismo)  | Upstream package builds for many Linux distributions |
30| [Launchpad](https://code.launchpad.net/~g+smo/+recipe/g+smo-daily) |[binaries](https://launchpad.net/~g+smo/+archive/ubuntu/upstream/+packages)  | Upstream package builds for Ubuntu distributions |
31
32
33This README file contains brief information. More details are found in
34the [Wiki pages](https://github.com/gismo/gismo/wiki).
35
36The latest revision of the code can be obtained using git (via https):
37
38```git clone https://github.com/gismo/gismo.git```
39
40or using subversion:
41
42```svn co https://github.com/gismo/gismo/trunk gismo```
43
44or as a tar.gz or zip file:
45
46* https://github.com/gismo/gismo/archive/stable.tar.gz
47* https://github.com/gismo/gismo/archive/stable.zip
48
49# Prerequisites
50
51* Operating systems:
52  - MS Windows
53  - Linux
54  - macOS
55
56* Configuration: [CMake 2.8.12](https://cmake.org) or newer.
57
58* Compilers tested include recent versions of
59  - [AMD Optimizing C/C++ Compiler](https://developer.amd.com/amd-aocc/)
60  - [AppleClang](https://developer.apple.com/documentation/xcode/) see [here](https://mac.r-project.org/openmp/) for OpenMP support
61  - [Clang](https://clang.llvm.org)
62  - [GNU GCC](https://gcc.gnu.org)
63  - [Intel C++ compiler](https://software.intel.com/content/www/us/en/develop/tools/compilers/c-compilers.html)
64  - [Mingw64](http://mingw-w64.org/)
65  - [MS Visual Studio C++](https://visualstudio.microsoft.com)
66  - [PGI C/C++](https://www.pgroup.com/index.htm) only with `GISMO_WITH_OPENMP=OFF`
67
68* Compilers known to not work
69  - [Oracle Developer Studio](https://www.oracle.com/application-development/technologies/developerstudio.html) fails to compile Eigen
70  - [IBM XLC C/C++](https://www.ibm.com/products/xl-cpp-linux-compiler-power) fails to compile Eigen
71
72* Recommended:
73   - [Doxygen](https://www.doxygen.org) for generating documentation.
74   - [Paraview](https://www.paraview.org) for visualization.
75
76# Compilation
77
78The compilation requires configuration using [CMake](https://cmake.org)
79at a new, empty folder (in-source builds are disabled).
80
81* On **Linux/macOS**: A Unix makefile exists in the root source
82  folder. Running `make` creates a sub folder named `build` and
83  executes CMake and compilation inside that folder. Alternatively,
84  choose your own build folder and execute CMake pointing to the
85  sources.
86
87* On **MS Windows**: MS Visual Studio has [built-in CMake
88  support](https://docs.microsoft.com/en-us/cpp/build/cmake-projects-in-visual-studio)
89  since version 2015. Alternatively, you can run the `cmake-gui` tool
90  (from an environment that is configured with your compiler) to
91  generate makefiles (or Visual Studio project files). Then execute
92  the make tool to launch compilation. Alternatively, use the
93  QtCreator GUI and open the CMakeLists.txt file on the root folder to
94  create a QtCreator project.
95
96After successful compilation a dynamic library is created in `./lib` and
97executable example programs are output at the `./bin` subdirectory of
98the build folder.
99
100Additionally, if [Doxygen](https://www.doxygen.org) is available on
101the system one can execute (eg. on Linux):
102
103```make doc```
104
105to obtain the Doxygen documentation in HTML format. The main doxygen
106page is at `./doc/html/index.html`.
107
108More information at https://github.com/gismo/gismo/wiki
109
110# Configuration Options
111
112The available options are displayed at CMake configuration.  Short
113description and default setting follows:
114
115* CMAKE_BUILD_TYPE        *Release*
116
117  Available values are the standard CMake build configurations: Debug,
118Release, RelWithDebInfo, MinSizeRel.
119
120* GISMO_COEFF_TYPE        *double*
121
122  The arithmetic type to be used for all computations. Available options
123include double, long double, float.
124
125* GISMO_EXTRA_INSTANCE    *not set*
126
127  If set to one or more of the options available for GISMO_COEFF_TYPE
128  the G+Smo library is compiled with extra arithmetic types enabled.
129
130* GISMO_EXTRA_DEBUG       *OFF*
131
132  If set to ON additional debugging tools are enabled during
133compilation. These include checked iterators for GCC and MSVC
134compilers and call stack back-trace printout when a runtime exception
135occurs.
136
137* GISMO_BUILD_LIB         *ON*
138
139  If enabled a dynamic library is created using GISMO_COEFF_TYPE
140arithmetic. A target for a static library named gismo_static is also
141created but not compiled by default.
142
143* GISMO_BUILD_EXAMPLES    *ON*
144
145  If enabled the programs in the examples folder are compiled, and
146executables are created in build-folder/bin.
147
148* GISMO_BUILD_UNITTESTS   *OFF*
149
150  If enabled the tests in the unittests folder are compiled, and an
151executable is created in build-folder/bin.
152
153* GISMO_BUILD_AXL         *OFF*
154
155  If enabled the plugin for Axel modeler is compiled (requires Axel).
156
157* GISMO_WITH_PSOLID       *OFF*
158
159  If enabled the extensions using functionalities of Parasolid geometric
160kernel are compiled (requires Parasolid).
161
162* GISMO_WITH_ONURBS       *OFF*
163
164  If enabled the extension for reading and writing of Rhinoceros' 3DM is
165compiled.
166
167* CMAKE_INSTALL_PREFIX   (system dependent)
168
169  The location for installation of the library, e.g. /usr/local on some
170Linux systems.
171
172
173# Directory structure
174
175
176The source tree consists of the following sub-folders:
177
178* **src**
179
180Contains all source files. Code is partitioned into modules. Currently
181eleven modules are present as sub-folders:
182
183   - **gsCore**
184   - **gsMatrix**
185   - **gsNurbs**
186   - **gsHSplines**
187   - **gsModeling**
188   - **gsAssembler**
189   - **gsSolver**
190   - **gsPde**
191   - **gsTensor**
192   - **gsIO**
193   - **gsUtils**
194
195* **examples**
196
197  Examples of usage, small programs and tutorials.
198
199* **unittests**
200
201  Unittests for some parts of the codebase.
202
203* **filedata**
204
205  Data files in the XML format the G+Smo can read and write.
206
207* **extensions**
208
209  Optional additional features that can be compiled along G+Smo.
210
211* **plugins**
212
213   The plugins for:
214
215   - Axel modeler
216   - Rhinoceros' 3DM
217
218* **cmake**
219
220  Cmake configuration files.
221
222* **doc**
223
224  Files related to doxygen documentation.
225
226# Contact and support
227
228* Wiki pages:
229
230  https://github.com/gismo/gismo/wiki
231
232* Bug reports:
233
234  https://github.com/gismo/gismo/issues
235
236
237# People
238
239Coordinator and maintainer: Angelos Mantzaflaris
240
241See full list in [our wiki pages](https://github.com/gismo/gismo/wiki/About--G-Smo)
242
243# OS-license
244
245The G+Smo library is distributed under the Mozilla Public License v2.0.  (see [LICENSE.txt](https://github.com/gismo/gismo/blob/stable/LICENSE.txt)).
246
247