The included solid mechanics solvers employ the finite volume method (not finite elements) to numerically approximate the displacements and stresses in solid bodies undergoing deformation.
The included solvers are suitable for small strain, small strain with large rotations, large strain, cohesive zones, plasticity, thermal- elasticity, visco-elasticity, gravity forces, fluid-structure interactions, multi-material analyses and contact stress analysis.
A number of custom boundary conditions with full non-orthogonal correction are including time-varying displacements and tractions, fixed rotations, and fixed displacements with zero shear stress.
A number of people have contributed to the development of the solvers, mainly within Alojz Ivankovic's research group. The main contributors are: Aleksandar Karac, Zeljko Tukovic, Hrvoje Jasak, Philip Cardiff, Declan Carolan, Michael Leonard and Valentine Kanyanta.
The solvers have been assembled and are maintained by Philip Cardiff, University College Dublin.
Have fun.
Disabled capabilities for compilation:
- solidInterface because of faMesh
- ggiInterpolation option in contact boundaries
- fixedRotation boundary condition because of RodriguesRotation
- finiteElement mesh motion in FSI solver
Original source came from here: http://www.cfd-online.com/Forums/openfoam-news-announcements-other/106881-solid-mechanics-solvers-added-openfoam-extend-4.html#post432903
Further modificiations made by Bruno Santos (wyldckat@github working at blueCAPE Lda):
- Moved solvers to their own folder.
- Simplified Allw* scripts, since this way we can use the multi-core building ability that OpenFOAM has got.
- Using "realpath" as a compatibility measure with compiling on Windows (blueCFD).
- Created branches for each one of the latest OpenFOAM git versions: OF23x OF22x OF21x OF20x
- Note: Have not tested any of the tutorials with all of these OpenFOAM versions.
-
Go to your user folder:
mkdir -p $FOAM_RUN cd $FOAM_RUN/..
-
Clone the repository and go into the cloned repository:
git clone https://github.com/wyldckat/solidMechanics.git cd solidMechanics
-
Checkout the repository respective to the version of OpenFOAM you are using:
-
OpenFOAM 2.3.x:
git checkout OF23x
-
OpenFOAM 2.2.x:
git checkout OF22x
-
OpenFOAM 2.1.x:
git checkout OF21x
-
OpenFOAM 2.0.x:
git checkout OF20x
- Build all of the libraries and utilities by running:
```
./Allwmake
```
- The tutorials are available at the folder
tutorials
.
-
Go to your user folder:
mkdir -p $FOAM_RUN cd $FOAM_RUN/..
-
Get the Zip file for the repository respective to the version of OpenFOAM you are using:
-
OpenFOAM 2.3.x:
wget https://github.com/wyldckat/solidMechanics/archive/OF23x.zip
-
OpenFOAM 2.2.x:
wget https://github.com/wyldckat/solidMechanics/archive/OF22x.zip
-
OpenFOAM 2.1.x:
wget https://github.com/wyldckat/solidMechanics/archive/OF21x.zip
-
OpenFOAM 2.0.x:
wget https://github.com/wyldckat/solidMechanics/archive/OF20x.zip
- Unzip the respective file and go into the respective folder, for example:
```
unzip OF23x.zip
cd solidMechanics-OF23x
```
- Build all of the libraries and utilities by running:
```
./Allwmake
```
- The tutorials are available at the folder
tutorials
.
The same as OpenFOAM(R), namely GNU GPL v3. For more information, see the file LICENSE.