Storage tanks.

Hi Everyone,

I’have been working to obtain an argued criterion that help me to decide a preliminary maximum mesh size on my model for the different areas. The model is so big that a can’t perform a mesh convergence study. In fact, I would be happy if my hardware can solve it with a reasonable accuracy the first run.

I started with simple model. Cylinder clamped on its base under hydrostatic pressure. No roof, no stiffeners, no bottom,…
What I found to my surprise is that I need a quite large number of nodes to approach the values predicted (200.000 nodes).
This is probably due to the fact that ccx expands shells to solids. I’m only reaching good numbers with elements with width / thickness ratio of 1.6t (solid more than shell element).

¿Is this kind of model a special case that requires more elements than usual?
¿Any suggestion to improve accuracy with less elements?
¿Which would be the most correct approach to solve storage tanks with ccx known its limitations. Large diameter with thin walls. Maybe mixing solids and shells?

¿I would appreciate if someone would share his/her experience?

Thanks in advance.

Comments

  • You could try S8R instead of S8. I think that might perform better but I'm not sure about thin-walled structures in particular. It's now under CCX -> custom element type.

    The stress near the clamp presumably won't be correctly predicted by the theory, will it? I would use a solid model as a reference for details like that.

    Make sure you're not taking the maximum stress from the color key since that will likely be at a stress singularity on the edge of a fixed support.
  • Disla and Victor

    Are 10 node tets going to help? Here is a good discussion by VMH on this forum Aug 2015. https://mecway.com/forum/discussion/comment/431/#Comment_431

    I remember being impressed with the 10 node tet thinking that for some thin structures it might be a valid alternative to a shell? To be honest I have not tried it with a clamped tank.
  • Thanks barrti,

    That debate would be interesting in the frame of some other software but actually Mecway doesn’t have any shell formulation at all.

    https://mecway.com/forum/discussion/629/mindlin-thick-shell-kirchoff-thin-shell-formulation

    In fact we are calculating with one solid element per thickness.


    “In CalculiX, S4 and S4R four-node shell elements are expanded into three-dimensional C3D8I and C3D8R solid elements, respectively. The way this is done can
    be derived from the analogous treatment of the S8-element (see manual Figure 61).
    Quadratic shell elements are automatically expanded into 20-node brick elements.
    With these nodes a new 20-node brick element is generated: for a S8 element a C3D20 element, for a S8R element a C3D20R element.”

    Same idea with S3 and S6 that end up as wedge solid elements. Compare node counting before and after calculation for any shell model.
    That’s why I have to refine up to a mesh size more appropriate for solid elements.
    It would be wonderful if Mr.Dhondt in ccx or Victor with it’s internal solver could implement some shell element.

    Please correct me if I’m wrong but I think that the actual strategy of expanding shell to solids is too stiff close to clamped areas as we loose the rotational degrees of freedom.

    Meanwhile I was asking for some alternative keeping in mind what we have.
  • Hi,

    You want the "full" analysis of that kind of tank done in ccx? (according to EC3, GMNIA and so on?).

    AFAIK, there is no continuation algorithms in ccx, so it's practically impossible to calculate this kind of problem in ccx :(
  • At least elastic and nonlinear material. Not all the analysis are mandatory. It depends on working conditions.

    I will be able to solve if the model keeps around let’s say 500K nodes but at this moment only for the shell I’m talking about 200K. Roof will be beam and membrane elements.
    Bottom will be under compression and fully supported, fixed or elastically. It can be membrane elements too or in an extreme need I would forget about them.
    Larger models increase diameter but thickness also, so the mesh size requirement should relax. My main concerns are the base transition, upper ring and roof core. They will consume most of the available nodes.

    I already have the cylindrical components of the Stress matrix and Victor show me how to prepare a set of custom formulas.
    Well let's see if I can sort out the difficulties. I’m figuring how to approach this kind of model. First, I’m working to solve a small one. 6m diameter 5mm thickness.

    Seems something nonsense but the problem is the ratio diameter/thickness. Anyone solving a 1m diameter 1 mm thickness problem will face the same problems of meshing and accuracy than me. Specially with walls clamped or around a reinforcing ring for example.

  • edited November 2018
    I don't really see much of an accuracy problem. I tried to recreate the model from your PDF - 6.015 m diameter and 5 mm wall thickness, clamped at the base. I didn't get anywhere near the same stress so I probably have some parameter wrong, but I did get good accuracy with CCX shells compared to very fine solid mesh. 2% error with 10000 nodes and no local refinement.
    
    Mesh	                Nodes   Stress         Error
    Quad8 360 degree        2480    162.157        10.50%
    Quad8 360 degree        9760    150.236        2.37%
    Quad8 360 degree        38720   147.117        0.25%
    Hex20 1 degree wedge    28865   146.768        0.01%
    Hex20 1 degree wedge    84646   146.751        0.00%
    Stress means maximum circumferential stress on the outside surface.

    Error is relative to the finest mesh.

    I couldn't get maximums for some of the other stresses because they occurred at the clamped support.

    Does CCX have membrane elements now? Last I hear they appeared to be there but weren't working.
  • Hi Victor ,

    Thanks for your help. I really apreciate.

    I have included the cylindrical formulas of the stress matrix to your finest 3D model.
    Adjust the pressure to fit the model.
    Discrepancy is similar to what I found. Von Misses is far from the predicted value. Main differences are zz , V Mises and shear.
    Stt agrees pretty well in all simulations.
    I ‘m going to search at some other code to check if the formula in the EC3 could be wrong.



  • I'm still not seeing much problem. Where are you measuring the stresses? I checked some of them a small distance from the base, and von Mises is 0.5% error with 10,000 nodes. Axial is worse, but approximately 0 error for 39,000 nodes. Shear is the worst but it's also less than 1% of the size of the other stresses where I measured it, so I don't think that value is very important.
    
    Mesh                Nodes    Stress tt     Stress vm     Stress YY    Shear stress
    Quad8 360 degree    2480     162.16        80.08         12.16        5.47
    Quad8 360 degree    9760     150.24        120.84        40.95        0.73
    Quad8 360 degree    38720    147.12        119.24        51.26        -0.53
    Hex20 1 degree      28865    146.77        120.01        51.50        -0.30
    Hex20 1 degree      84646    146.75        120.27        51.29        0.14
                        
                        
    Stress tt       Max circumferential stress                
    Stress vm       von Mises stress at Y=0.175 m from bottom on outside surface                
    Stress YY       Stress YY (axial) at Y=0.175 m up from bottom on outside surface                
    Shear stress    Shear stress associated with meridional bending at Y=0.175 m up from bottom on outside surface measured in the XY plane                
    All stresses in MPa                                     
    
  • Hello Victor ,

    When you say Von Mises is 0.5% error, Axial is worse, or Shear is the worst ¿what are you comparing with?
    I’m using as a reference a theoretical value provided by EN 1993-1-6 EUROCODE 3.
    When you say Quad8 360 degree 38.720 nodes, ¿Are this number of nodes before or after expanding the shells to solid?
  • I'm comparing to the finest solid mesh. I don't trust the theoretical values to use as a reference because the formulas seem too simple - No Poisson's ratio? Is stress inside or outside? Linear or nonlinear? Where do the k factors come from? Where do you measure the stress when the maximum is at the base? Maybe all those details are incorporated in k_*?

    Number of nodes is before expanding the shells.
  • That’s a very good comment from your side.
    Maybe you are right and I’m trusting too much in the formulas.( Old generation )
    I should suspect at least the same on the origin and approximations made to get those formulas.
  • It's not just the reference values, but some of your results don't seem to be converging at all, such as σ_eq,s and σ_sθ which decrease with refinement until local refinement where they suddenly jump up to near the values from the coarsest mesh. Are you sure the local refinement didn't alter the geometry, introduce knots or move the maximum stress to a stress singularity?

    I'm not sure where you're measuring the stresses so maybe you used locations where it behaved worse than mine. I just picked points that seem to have high values or complicated things happening. I tried using the location of maximum von Mises stress on the coarsest mesh and it converged about as well as your σ_eq,s excluding local refinement. So maybe choice of points is part of why my results seem better.
  • disla - EC3 uses the timoshenko's approach for perfectly supported shell, loaded uniformly on the top, which is very conservative in nature and doesn't work well for real design applications, not to mention comparing them with FEM results of any kind. As you can read further in that code, the FEM design is accepted and even encouraged :). You can also check the EN 14015 for some theoretical formulas on the topic.
  • Thanks, Barmin, Victor

    I will have a look. I'm advancing carefully.
    So, after all your help and with more faith on FEM method I would like to recover the background motivation of this post.

    ¿Is there any way to know the initial mesh size in order to obtain a minimum accuracy without the need of a convergence study?
    ¿How does people manage when a large computation (lets’s say 1 week calculation) is involved?
    I hear Sergio saying minimum three layers per thickness. ¿What about the other two dimensions?
  • CCX has some error estimates. See the CCX manual for details. I don't know much about them though.

    There's a rule of thumb to not have the stress change by more than 10% of the whole range over a single element, which means no more than two colors with the usual 9 or 10 color scale.

    The usual way to avoid too big a mesh is to use local refinement. You can refine different areas one at a time so it's never too big.

    Don't forget you can do a mesh convergence study backwards too - using a coarser mesh.

    It would be pretty hard to have a 1 week static calculation with CCX/Mecway because you'd hit the memory limit long before that.
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!