Curved Cantilever Beam: curvedCantilever
Prepared by Ivan Batistić
Tutorial Aims
- Demonstrate how to perform a solid-only analysis in
solids4foam; - Examine solver performance under conditions in which the shear-locking phenomena can occur.
Case Overview
The curved cantilever beam is fixed on the left side, and the right side has prescribed horizontal traction, as shown in Fig 1. The prescribed horizontal traction is \(200\) Pa. The beam's inner radius is set to \(a= 0.31\) m and the beam's outer radius to \(b = 0.33\) m. The Young's modulus is \(E= 100\) Pa and the Poisson's ratio is \(\nu = 0.3\). Gravitation effects are neglected, and there are no body forces. The problem is solved as static, using one loading increment.
![Figure 1: Problem geometry [1]](/tutorials/more-tutorials/solid-mechanics/linearElasticity/images/curvedCantilever-geometry.png)
Figure 1: Problem geometry [1]
Expected results
-
Stress is dependent on the angular coordinate \(\theta\);
-
The analytical solution for the stress field is [1]:
where $a$ is beam inner radius, $b$ is beam outer radius and $P$ is applied shear force.
The analytical solution is generated alongside solution fields using the curvedCantileverAnalyticalSolution function object located in the system/controlDict, where one needs to input geometry and material data:
functions
{
analyticalSolution
{
type curvedCantileverAnalyticalSolution;
// Inner beam radius
rInner 0.31;
// Outer beam radius
rOuter 0.33;
// Applied shear force (in N/m)
force 4;
// Young's modulus
E 100;
// Poisson's ratio
nu 0.3;
}
}
The function object writes the analytical stress tensor field analyticalStress in the time directories.
Figures 2 and 3 show \(\sigma_{xx}\), \(\sigma_{xy}\) and \(\sigma_{yy}\) stress distributions along the line \(\theta=45^{\circ}\) for computational meshes consisting of \(100\times100\) and \(200\times50\) cells. One can see that with mesh refinement, numerical results converge to analytical ones. The data for plots presented in Figures 2 and 3 is extracted using the sampleDict located in the system directory.

Figure 2: Stress distribution for mesh consisting of 100x10 cells

Figure 3: Stress distribution for mesh consisting of 200x50 cells
Running the Case
The tutorial case is located at solids4foam/tutorials/solids/linearElasticity/curvedCantilever. The case can be run using the included Allrun script, i.e. > ./Allrun. In this case, the Allrun script compiles the tutorial-local library in the src directory, creates the mesh using blockMesh (> ./blockMesh), runs the solids4foam solver (> ./solids4Foam), and then runs the > ./sample utility. Optionally, if gnuplot is installed, the stress distribution is plotted in the sigmaAtTheta45deg.png file.
The coupled version of this case, which uses thecoupledUnsLinearGeometryLinearElastic, can currently only be run usingsolids4foam built on foam-extend. To modify the case to run with the segregatedlinearGeometryTotalDisplacement solid model, follow the instructions intutorials/solids/linearElasticity/narrowTmember/README.md file.
References
[1] Sadd MH. Elasticity: Theory, Applications, and Numerics. Elsevier 2009.