Percentage Thickness Calculation for Shells

In HyperView, the existing implementation of thickness calculation is based on strain data available with result file. In the case where the strain data is not available in the results, HyperView is not able to show the percentage change in the thickness. The existing method of calculating the percentage change in thickness using strain is the most generic method and takes away any assumptions on the initial sheet thickness. However in absence of strain data in the result file, HyperView needs to be able to calculate the percentage thickness reduction based on the thickness at the time step 0. The implementation to meet this need is explained below.

Radioss Implementation

In the case of Radioss, HyperView has three ways to get the % thickness reduction with sequence and preference as follows:
  1. % thickness reduction result type available from result.
  2. % thickness reduction calculation from strain results.
  3. % thickness reduction calculation from thickness.
Case 1
The result type is available in HyperView upon reading and a contour plot can be applied as it is currently.
Case 2
HyperView calculates from a) current thickness and b) current strain at every time step. Depending upon the user request, several options for strain are available. Only the strains with following data names can be used for calculation of thickness:
  • Strain tensor and layer: Membrane
  • Strain tensor and layer: Upper and Lower

In case of data name strain, membrane, the calculation for each step as follows:

Loop through the following for very element

{

Read the current step thickness for an element: Thicknesscurrent

Read the strain tensor for an element this is usually in global coordinate system

Map it to the shell elements coordinate system

Get the strain along the element normal (Ezz)

Get the thicknessinitial = Thicknesscurrent /exp(Ezz)

}

In case of data name strain, upper, and lower the calculation for each step as follows:

Loop through the following for very element

{

Read the current step thickness for an element: Thicknesscurrent

Read the strain upper and lower tensor for an element

Calculate the membrane strain components = (Strain upper + Strain lower)/2. These are in global coordinates.

Map it to the shell elements coordinate system

Get the strain along the element normal (Ezz)

Get the thicknessinitial = Thicknesscurrent /exp(Ezz)

}

Case 3
HyperView assumes that initial thickness is the thickness at time step zero. Therefore, the calculation needs to be done as follows:

Time step =0

Loop through the following for very element

{

Get the element thickness Thicknessinitial

}

For all time steps

Loop through the following for every element

{

Read the current step thickness for an element: Thicknesscurrent

}

The shell element’s local coordinate system needs to be calculated as follows:
The shell element system is calculated as follows:
  1. Calculate normal for each element.
    1. The elements/segments has either three or four nodes N1, N2, N3, and N4.
    2. Three noded element
      1. Extract the coordinates of N1, N2, and N3
      2. Calculate the vector V1 as N2 – N1 (Element X axis)
      3. Calculate the vector V2 as N3-N1
      4. Get V3 which is V1 X V2 (Vector cross product) (Element Z axis)
      5. Get V2 which is cross product of V3x V1 (Vector cross product) (Element Y axis)
    3. Four noded element
      1. Extract the coordinates of N1, N2, N3, N4
      2. Calculate the vector V1 as N2 – N1 (Element X axis)
      3. Calculate the vector V2 as N4-N1
      4. Get V3 which is V1 X V2 (Vector cross product)
      5. Normalize V3
      6. Calculate the vector V1 as N4 – N3
      7. Calculate the vector V2 as N4-N3
      8. Get V4 which is V1 X V2 (Vector cross product)
      9. Normalize V4
      10. Average V3 and V4 = V5 (Element Z axis)
      11. Get V2 which is cross product of V5x V1 (Vector cross product) (Element Y axis)