Validation tests
Distributed load
These tests are implemented in benchs/dload
directory.
They consist in loading a clamped volumic beam with a distributed load (uniform or triangular). Results are then compared with analytical solutions from beam theory.
4 cases are available:
basic uniform load:
dload_beam_dist.py
uniform load using the syntax of nodal distribution:
dload_beam_dist_field.py
triangular load with zero value on clamped side:
dload_beam_triangular_1.py
triangular load with zero value on free side:
dload_beam_triangular_2.py
Geometry
As shown in figure Figure Fig. 2, the initial geometry defined in .inp
files is a parallelepiped with x, y, z dimensions 20 x 1 x 3 mm. It is clamped on face x=0 and the load is applied on face z=3 mm.
It is then refined to degree 2 with 32, 4 and 4 elements in x, y and z directions.
Uniform load
This case in defined in file dload_beam_dist.py
. In input file beam-dist.inp
, distributed load is defined via the command :
*Dload
I1.EltPAtch1, U40, 1000.
It defines a uniform normal load with value of 1000 per unit of surface on face 4.
The analytical solution for this problem with beam theory gives the following formula for the maximal deflexion :
- Here :
b = 3
h = 1
E = 210000
L = 20
q0 = 1000
To validate the test, the displacement in z direction for the interpolating control point located at coordinates (20, 0, 0) must be equal to the analytical solution with a tolerance of 2%.
Uniform load set with a nodal distribution
This case is the same as the previous test. The only difference is that the load is defined through a nodal distribution.
In the input file beam-dist-field.inp
, the nodal distribution is defined as :
*DISTRIBUTION, NAME=presField, LOCATION=NODE
3, 1000.0
4, 1000.0
7, 1000.0
8, 1000.0
Indices 3, 4, 7, 8 correspond to the control points defining the surface located et z = 3 on the geometry before refinement. The nodal distribution sets a value of 1000 for all these points, wich will result as a uniform distribution.
Loading is then defined as :
*Dload
I1.EltPAtch1, U44, presField
It defines a load from a nodal distribution name presField on the face number 4 of the elements contained in the set I1.EltPAtch1.
To validate the test, the displacement in z direction for the interpolating control point located at coordinates (20, 0, 0) must be equal to the analytical solution with a tolerance of 2%.
Triangular load with zero value on clamped side
This case is defined in file dload_beam_triangular_1.py
. The distributed load varies linaerly through the length of the beam as shown if figure Fig. 3. The nodal distribution is set in file beam-triangle-1.inp
:
*DISTRIBUTION, NAME=presField, LOCATION=NODE
3, 0.0
4, 0.0
7, 1000.
8, 1000.
And the load is set with :
*Dload
I1.EltPAtch1, U44, presField
An analytical solution with beam theory exists for the maximal deflexion. It reads :
To validate the test, the displacement in z direction for the interpolating control point located at coordinates (20, 0, 0) must be equal to the analytical solution with a tolerance of 2%.
Triangular load with zero value on free side
This case is defined in file dload_beam_triangular_2.py
. The distributed load varies linaerly through the length of the beam as shown if figure Fig. 4. The nodal distribution is set in file beam-triangle-2.inp
:
*DISTRIBUTION, NAME=presField, LOCATION=NODE
3, 1000.
4, 1000.
7, 0.0
8, 0.0
*Dload
I1.EltPAtch1, U44, presField
An analytical solution with beam theory exists for the maximal deflexion. It reads :
To validate the test, the displacement in z direction for the interpolating control point located at coordinates (20, 0, 0) must be equal to the analytical solution with a tolerance of 2%.