Prepared by Ivan Batistić
solids4foam
;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]
Stress is dependent on the angular coordinate \(\theta\);
The analytical solution for the stress field is [1]:
The analytical solution is generated alongside solution fields using the 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;
}
}
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
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
consists of creating the mesh using blockMesh
(> ./blockMesh
) followed by running the solids4foam
solver (> ./solids4Foam
) and > ./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.
[1] Sadd MH. Elasticity: Theory, Applications, and Numerics. Elsevier 2009.