Tricky 3D assembly (Salome problem)

This is Salome rather than Mecway, hope this is OK.

I've got a 3D assembly that I've imported into Salome as an STP file. I created and positioned a thin disc that fits into a recess in the main and partitioned them together so I can later give the disc a different material. I ran a coarse tetrahedral mesh to test the partition which worked fine and I checked that the partition surface had meshed correctly.

I want to partition the disc so that I can do a nice hexahedral mesh similar to the Mecway plate function. The disc is on the centreline of the assembly, but forward of centre and at a 30° angle to horizontal. There will be several partitions in the main body so that I can grade the mesh size to be coarser away from the disc. The main body will be meshed with tetrahedrals.

I'm finding it tricky to partition the disc correctly to facilitate the hexahedral mesh. I'm thinking of a couple of workarounds:

1. Import from Mecway a 3D plate mesh of the correct size and position it correctly within the disc. This is tricky, as I only know the disc position by extracting the node coordinates from a node in the recess base (which is 30 ° from the horizontal) at the 9 o'clock position. This method was sufficiently accurate to get the disc partitioned in place, but I am not sure if the mesh will align accurately enough with the existing geometry. Not sure how tolerant Salome is to this sort of process. I'll give it a try tomorrow and report back.

2. Build from scratch starting with the disc and partitions at the origin (aligned with the axes), then adding everything else around it and repositioning if needed. This is a bit more drawn out than I really wanted.

3. Reposition the current geometry so the disc is aligned with the axes at the origin and do the partitions here before repositioning as necessary. Alternatively, set up a local coordinate system for the disc, will have to read up on how to make this work.

4. Do the whole thing from scratch in Mecway starting with a plate mesh and building around it.

I'm happy to try these things out and report back, but if anyone has any insights or good ideas I'd love to hear them.

One specific question, there appears to be a 2x button in Salome to double the mesh density, but I can't make it do anything. Any hints?

Thanks all, Dave

Comments

  • Hi Dave, maybe if you could upload the initial step we could get a better idea or try by ourselves. I usually use Salome to create hexa meshes, but is not very friendly :-)
  • Sergio, I'll email the geometry to you, as I can't share on here. I'll have to tidy up the tree a bit first.
  • Incidentally, I have tried on several occasions to join the Salome forum, but it seems I've got more chance of getting into the Freemasons.
  • By perseverance and watching YouTube videos (and even reading the Salome user guide), I have got SO close to where I want to be. But time is against me, so I still welcome help. I have managed to get the recessed disc meshed with hexa elements with the rest of the body in relatively coarse tets. I have not worked out how to use sub-meshes to independently control the aspect ratio of the hexa elements in the disc. I want maybe 6 divisions through the thickness, with maybe 12 through the radial and circumferential segments ( I currently have 6, 6, 6). Whenever I change a sub-mesh it seems to randomly change the other mesh levels, but I have no doubt this is just me getting it wrong.

    After spending time and feeling very pleased with myself for getting the disc meshed with hexas, I had a minor, OK major, panic that there was no way to conformally mesh hexas to tets, as the hexas have only quad faces and the tets have only triangular faces. Surely pyramids are needed? The 'clipping' feature of Salome was not conclusive, but when I looked at the element count there were 432 pyramids, exactly the number of faces needed to interface with the disc (6x6x4 + 6x6x8 = 432) so I think Salome is way ahead of me and using pyramids to make a good interface.

    The user guide states (I told you I read some of it!): "Attractive meshing capabilities include:
    ...
    •automatic conformal transition between tetrahedral and hexahedral sub-meshes."

    so I think Salome is doing a good job of sticking in Pyramids where needed. I have found Salome a pain in the arse to learn, but when it works it is so rewarding. I recommend those of you that are initially put off should persevere.

    I will come back to Mecway to convert to quad elements and to fit nodes to circles.

    I feel my mesh is just about good enough for some comparative analyses, but I really want to sort out the hexa aspect ratios. I want the customer to look at it and ask, "Why did my own FEA not look that good?" We all want good engineering answers, but there's an element of PR to this game.






  • For the record, the partitioning of the disc for hexa meshing was initially my main obstacle. I achieved it this way:
    1. Sketch at the origin (a hexagon with 6 slightly oversize arms)
    2. Rotate and translate the sketch into place as near as dammit to the centre of the top surface of the disc. I inferred the position from existing vertices for which displayed precision might be limited? - not sure. I also used the normal vector function .
    3. Extrude the sketch both ways (New Entity>Generation>Extrusion)
    4. Partition with the extruded sketch.

  • Hi Dave,

    Regarding the disc positioning remember there is a nice phyton script done by John
    "Python script to create center node of circle between 3 points."

    Regarding the integration of both geometries maybe it is easier for the mesher if you prepare the disc "perimetral interface" alrready soleved and your recesed face is an square box.



    alrready solved and then the recesed face is a box.


    Those images have been done with MECWAY combining "circle" with "square with circular hole".
  • Thanks Disla.

    I made some progress today, but in exporting from Salome as .unv I lose 1728 pyramids. I exported anyway and tried to import into Mecway and got the attached warning.

    Any ideas?
  • @DaveStupple. Oh, that's not right. Do you mind sending me the .unv file to try to find the problem and fix it for the next release?
  • All that work to make this beautiful mesh and it's trapped in Salome. I'm supposed to have this analysis done by midweek. I can email the hdf and/or the unv file if anyone thinks they can open it in Mecway for me. I'll still have 1728 pyramid files to create manually, but life is what it is.

    I've tried to look at the unv format and the liml format, but I haven't got very far and even if I did, my scripting is not good enough to quickly write a conversion code.

    I've tried some previous Mecways but no different. I've tried saving and exporting from Salome, same problem: "OBJECT REFERENCE NOT SET TO AN INSTANCE OF AN OBJECT".

    Come on Mecwayworld, there must be a way forward? Please help!



    Mesh.jpg 343.5K
  • Hey Victor appreciate this, I'll send to support if that's cool? Is the Salome hdf file any good to you, or just the unv? Get me a liml file by tomorrow and I'll arrange the freedom of Hastings (for what it's worth...).
  • @Victor, if you don't get me a liml by tomorrow then I'll get you the freedom of Bexhill and Eastbourne too. That'll teach you.
  • Sent it! I wish I'd waited though because I'd love Eastbourne - fanciest neighborhood in my city. Not sure what a Bexhill is but it sounds old :pensive:
  • edited January 2023
    As we know Salome creates pyramid elements at the interface between Hexa and tetrahedral elements but it doesn't export pyramid elements (unv format).
    I noted that Salome warnings appear only if you export first order mesh. Exporting second order mesh the warning doesn't appear, at least for version 9.5. At the same mode Pyramid elements are missed.
    I try to creates hex dominant mesh with old FEA (Algor) because it creates pyr elements and exporting first order mesh to unv format and importing into Mecway, 5 nodes pyramids are present.
    What is strange is that exporting mesh to inp Abaqus format pyr elements are not defined (element type card) but are present Hex8 with 4 coincident nodes and Mecway recognize that as pyr5 element.

  • PS if someone have patience could check this model where initial mesh was a linear one and I change elements shape into Mecway (Tet4->Tet10; Pyr5->Pyr13-Wedge6->wedge15; Hex8->Hex20) and merging the nodes with 0 tolerance

    Regards
  • edited January 2023
    Yes. Pyramids are written as C3D8 for ccx .


  • Hi again Andrea,

    You could get full hex mesh combining the mesh tool Create plate mesh + later Custom refinement of the contact surface. This way you can refine the area of interest preserving the hex mesh.
    Final extrude if needed.




  • Mecway automatically converts collapsed elements to their equivalent shape if one exists, so that's why imported collapsed hexes become pyramids.

    A way to look for missing internal elements is set the 3 view options shown in this picture. I deleted a pyramid just to show the effect - your model seems fine.

  • OK...in this manner if the model presents holes these are depicted.
    At this point if Salome would convert pyramid elements as collapsed Hex8 (4 coincident nodes) we will obtain a regular mesh into Mecway. Interesting!
    I try to suggest it into Salome forum.
    I don't know if there will be issues converting second order elements...I try writing inp file with a 20 node Hexa with 8 coincident nodes because in this case also 4 midside nodes must collapse with 4 corner nodes
    Regards
  • Yes, it will be recognized as pyr15
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!