Skip to content
Snippets Groups Projects
Commit e77c5a40 authored by Klaus Böhnlein's avatar Klaus Böhnlein
Browse files

Add Changelog and update Readme

parent ca83341c
No related branches found
No related tags found
No related merge requests found
# Dune-microstructure changes
## Master
- The problem Setup is now simplified: Instead of having a .parset-File for parameters as well as a .py-File for the material (indicator functions etc.)
there now is only a single python module file containing both. Therefore the folders 'inputs' and 'materials' have been removed and replaced by the folder 'experiments'
The new Syntax for calling the microstructure solver:
'${MODULEPATH}/build-cmake/src/Cell-Problem ${experimentPath} experiment.py'
- The modul now features two unit tests: 'parametrizedlaminatetest' is used to compare against analytical results of a parametrized laminate geometry presented in
[Böhnlein,Neukamm,Padilla-Garza,Sander - A homogenized bending theory for prestrained plates]. 'orthotropicrotationtest' tests the rotation of material coordinate
frames with orthotropic material phases.
\ No newline at end of file
Preparing the Sources
=========================
Additional to the software mentioned in README you'll need the
following programs installed on your system:
cmake >= 3.1
Getting started
---------------
If these preliminaries are met, you should run
dunecontrol all
which will find all installed dune modules as well as all dune modules
(not installed) which sources reside in a subdirectory of the current
directory. Note that if dune is not installed properly you will either
have to add the directory where the dunecontrol script resides (probably
./dune-common/bin) to your path or specify the relative path of the script.
Most probably you'll have to provide additional information to dunecontrol
(e. g. compilers, configure options) and/or make options.
The most convenient way is to use options files in this case. The files
define four variables:
CMAKE_FLAGS flags passed to cmake (during configure)
An example options file might look like this:
#use this options to configure and make if no other options are given
CMAKE_FLAGS=" \
-DCMAKE_CXX_COMPILER=g++-5 \
-DCMAKE_CXX_FLAGS='-Wall -pedantic' \
-DCMAKE_INSTALL_PREFIX=/install/path" #Force g++-5 and set compiler flags
If you save this information into example.opts you can pass the opts file to
dunecontrol via the --opts option, e. g.
dunecontrol --opts=example.opts all
More info
---------
See
dunecontrol --help
for further options.
The full build system is described in the dune-common/doc/buildsystem (Git version) or under share/doc/dune-common/buildsystem if you installed DUNE!
# The Dune-microstructure module
## Scope of the module
The dune-microstructure module provides a computational suite for problems with a prestrained microstructure.
## Articles that feature the module
* [Böhnlein,Neukamm,Padilla-Garza,Sander - A homogenized bending theory for prestrained plates] https://link.springer.com/article/10.1007/s00332-022-09869-8
## Syntax
The new Syntax for calling the microstructure solver:
'${MODULEPATH}/build-cmake/src/Cell-Problem ${experimentPath} experiment.py'
## Building dune-functions
### Dependencies
Dune-Microstructure depends on the dune [core modules][core]
as well as a few extra modules. All of them are available using git:
* https://gitlab.dune-project.org/core/dune-common
* https://gitlab.dune-project.org/core/dune-geometry
* https://gitlab.dune-project.org/core/dune-grid
* https://gitlab.dune-project.org/core/dune-istl
* https://gitlab.dune-project.org/core/dune-localfunctions
* https://gitlab.dune-project.org/staging/dune-typetree
* https://gitlab.dune-project.org/core/dune-localfunctions.git
* https://gitlab.dune-project.org/staging/dune-uggrid
* https://gitlab.dune-project.org/fufem/dune-fufem.git
* https://git.imp.fu-berlin.de/agnumpde/dune-solvers.git
* https://gitlab.mn.tu-dresden.de/iwr/dune-gmsh4.git
It is advised to checkout the current 'release' branch of these modules.
### Building the module
Dune-microstructure integrates into the cmake-based dune build system.
Hence it can be build (like any other module) using the `dunecontrol` script
provided by the core modules. For details on how to use this build system
and how to specify build options have a look at the documentation in the
dune-common module.
[core]: https://dune-project.org/groups/core
[dune docs]: https://dune-project.org/doxygen
[doxygen]: http://www.stack.nl/~dimitri/doxygen/
Preparing the Sources
=========================
Additional to the software mentioned in README you'll need the
following programs installed on your system:
cmake >= 3.1
Getting started
---------------
If these preliminaries are met, you should run
dunecontrol all
which will find all installed dune modules as well as all dune modules
(not installed) which sources reside in a subdirectory of the current
directory. Note that if dune is not installed properly you will either
have to add the directory where the dunecontrol script resides (probably
./dune-common/bin) to your path or specify the relative path of the script.
Most probably you'll have to provide additional information to dunecontrol
(e. g. compilers, configure options) and/or make options.
The most convenient way is to use options files in this case. The files
define four variables:
CMAKE_FLAGS flags passed to cmake (during configure)
An example options file might look like this:
#use this options to configure and make if no other options are given
CMAKE_FLAGS=" \
-DCMAKE_CXX_COMPILER=g++-5 \
-DCMAKE_CXX_FLAGS='-Wall -pedantic' \
-DCMAKE_INSTALL_PREFIX=/install/path" #Force g++-5 and set compiler flags
If you save this information into example.opts you can pass the opts file to
dunecontrol via the --opts option, e. g.
dunecontrol --opts=example.opts all
More info
---------
See
dunecontrol --help
for further options.
The full build system is described in the dune-common/doc/buildsystem (Git version) or under share/doc/dune-common/buildsystem if you installed DUNE!
......@@ -11,7 +11,7 @@ git clone https://gitlab.dune-project.org/fufem/dune-fufem.git --branch releases
git clone https://git.imp.fu-berlin.de/agnumpde/dune-matrix-vector.git --branch releases/2.9
git clone https://git.imp.fu-berlin.de/agnumpde/dune-solvers.git --branch releases/2.9
#git clone git@gitlab.mn.tu-dresden.de:ag-sander/dune/dune-elasticity.git --branch releases/2.9
git clone git@gitlab.mn.tu-dresden.de:osander/dune-gfe.git
# git clone git@gitlab.mn.tu-dresden.de:osander/dune-gfe.git
git clone https://gitlab.mn.tu-dresden.de/iwr/dune-gmsh4.git
git clone https://gitlab.mn.tu-dresden.de/s7603593/dune-microstructure.git
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment