Thin Shell Meshing
Meshing a thin Shell
1. Introduction
In Finite Element Analysis the first thing important is discretizing the given structure. This part is called preprocessing. The information needed for Finite Element Analysis is the coordinates and nodal connectivity of the elements when a structure is discretized. This nodal connectivity and coordinates are used for further analysis. When FEA is done in MATLAB, mostly preprocessing is done, using others preprocessors and the nodal connectivity’s and nodal coordinates are given as input to the MATLAB code. Doing this is an extra effort. It will be nice if we discretize the structure in the MATLAB itself and get the nodal connectivity’s and nodal coordinates. The present code can be used to discretize a thin cylindrical shell for FEA.
2. Meshing a thin shell
The present code can be used to discretize thin shells with 4 noded elements. Thin cylindrical shells, spherical shells and conical shells can be discretized/ meshed. First the meshing of the shell is demonstrated for every the cylindrical, spherical and conical thin shells and then functions are written which gives nodal coordinates and nodal connectivity’s of the elements. On running the demonstrated file, a figure window opens showing mesh of the shell. Using the push buttons “Nodes” and “Elements” at the lower left corner of the figure window, one can see the node numbers and element numbers. These buttons can be toggled to display and un-display the node, element numbers. In this demonstration file, the transparency property and color can be set accordingly to the user convenience.
3.1. Meshing thin cylindrical shell
The input required for meshing a cylindrical shell is; radius, angle, height of the shell and number of elements required along the height and in circumferential direction. The meshing of shell is demonstrated in the file CylindricalShell. After a function MeshCylindricalShell is written to get the nodal coordinates and nodal connectivity’s of the elements. To demonstrate, one fourth of cylindrical shell of unit radius, 2 unit’s height is considered. The number of elements along the height is seven and along the circumferential direction is ten. One can change the number of elements and radius, angle and height of the shell in the code according to the requirement. Figure 1 shows the Mesh of the shell with both node numbers and element numbers set to display.
3.2 Function MeshCylindricalShell
The function MeshCylindricalShell can be used to get nodal coordinates and nodal connectivity’s of the shell. It needs radius, angle, height, numbers of elements along height and in the circumferential directions as inputs and the coordinates of the nodes, nodal connectivity’s as outputs. These outputs can be used in the finite element analysis of the shells. Plot of the mesh using this function with the following values is shown in Figure 2.
Radius = 2; theta = 360; Height = 5; NH = 10; NT = 50;
Call function as: [coordinates, nodes] = MeshCylindricalShell(Radius,theta,Height,NH,NT)
Figure 1: One Fourth of Cylindrical shell Meshed
Figure 2: Cylindrical Shell Meshed
4.1. Meshing thin spherical shell
The input required for meshing a spherical shell is; radius, zenith and polar angles, height of the shell and number of elements required along the zenith and polar angles. The meshing of shell is demonstrated in the file SphericalShell. After a function MeshSphericalShell is written to get the nodal coordinates and nodal connectivity’s of the elements. To demonstrate, half of the spherical shell with unit radius and height is considered. The number of elements along the zenith and polar angles is ten. One can change the number of elements and radius, angles and height of the shell in the code according to the requirement. Figure 3 shows the Mesh of the spherical shell with both node numbers and element numbers set to display.
Figure 3: Spherical Shell Meshed
3.2 Function MeshSphericalShell
The function MeshSphericalShell can be used to get nodal coordinates and nodal connectivity’s of the shell. It needs radius, height, zenith angle, polar angle and numbers of elements along the angles as inputs and the coordinates of the nodes, nodal connectivity’s as outputs. These outputs can be used in the finite element analysis of the shells. Plot of the mesh using this function with the following values is shown in Figure 4.
Radius = 1; Height = 1; theta = 180; phi = 180; N = 40;
Call function as: [coordinates, nodes] = MeshSphericalShell(Radius,Height,theta,phi,N)
Figure 4: Spherical Mesh
4.1. Meshing thin conical shell
The input required for meshing a conical shell is; radius, circumferential angle, height of the shell and number of elements required along the circumferential direction and along the radius. The meshing of shell is demonstrated in the file ConicalShell. After a function MeshConicalShell is written to get the nodal coordinates and nodal connectivity’s of the elements for the conical shell. To demonstrate a conical shell with unit radius and height two units is considered. The number of elements along the circumferential and radial direction is ten and five. One can change the number of elements and radius, angles and height of the shell in the code according to the requirement. Figure 5 shows the Mesh of the conical shell with both node numbers and element numbers set to display.
Figure 5: Conical Shell
4.2 Function MeshConicalShell
The function MeshConicalShell can be used to get nodal coordinates and nodal connectivity’s of the shell. It needs radius, angle of the shell, height, and numbers of elements along the circumferential and radial direction as inputs and the coordinates of the nodes, nodal connectivity’s as outputs. These outputs can be used in the finite element analysis of the shells. Plot of the mesh using this function with the following values is shown in Figure 6.
Radius = 1; theta = 180; Height = 1; NT = 40; NR = 20;
Call function as: [coordinates, nodes] = MeshConicalShell(Radius,theta,Height,NT,NR)
Figure 6: Conical Shell Meshed
The following video shows the run of the code with the above specified values:
Code for meshing thin shell can be obtained from the following link:
For further updates, documentation, help keep checking the link. For any comments, suggestions regarding development of the code, bugs please mail me.