Meshing helicoidal path tubes

Hi Everyone,

Trying to figure out how to mesh with hexahedral elements helicoidal twisting tubes encased in a polymer, but it seems imposible to mesh the polymer with the hex elements with out it resulting in chaos on one of the surfaces

any advice on how to avoid this?

Thanks for the advice

Hi @camilo.rojas!

I once meshed a part with some similar challenges to what you’re facing. See the below journal file for an example - in essence I’m creating the cylinder via joining “helical wedges” together. The effect this has is it creates a cylinder that is, through construction, webcut to follow the underlying helical wires.

Here’s the Trelis file that gets made via the below script: helicalWires.trelis (642.9 KB)

reset

## Create the underlying helical wires with 60 degree radial spacing
create surface circle radius 0.1 zplane 
Surface 1  copy move x 0.4 
Surface 2  copy rotate 60 about z repeat 5 
sweep surface all helix zaxis thread_distance 20 angle 360 right_handed 

## Create the circular profile for the external cylinder
create surface circle radius 0.7 zplane 

## Cut the circular profile to 60 degree wedge
block 1 vol 8  # Using block as a temporary "grouping" tool
sideset 1 surface 22  # Using sideset as a temporary "grouping" tool
webcut vol all in block 1  with plane xplane 
webcut vol all in block 1 with plane xplane rotate 60 about z
webcut vol all in block 1 with plane xplane rotate 120 about z
delete body 8 9 10 11 13
compress

## Grab the remaining wedge and create a volume via a helical sweep
sweep surface 22  helix zaxis thread_distance 20 angle 360 right_handed 

## Create 5 copies of this volume, rotated in 60 degree increments
vol 8  copy rotate 60 about z repeat 5 

## Delete temporary grouping tool
delete block all
delete sideset all

## Using blocks as temporary "grouping tool"
block 1 vol 1 2 3 4 5 6 7
block 2 vol 8 9 10 11 12 13

## Subtract the wires from the wedge segments
subtract vol all in block 1 from vol all in block 2 keep

## Remove the uncut wedge segments
delete vol all in block 2
compress
block 2 vol all

## Imprint and merge for meshing
imprint all
merge all

## Fine mesh on the flat face
surf all with z_coord < 0.1 size 0.025
mesh surf all with z_coord < 0.1

## Coarser mesh along the length
vol all size 0.1
mesh vol all

## Set block names
block 1 name "wires"
block 2 name "polymer"


2 Likes

thank you @gvernon, it was a great solution!

Hello all,
I have helical features that have some extraneous curves (circumferential circles and axial curves) that get created along the helical features. I attached a screenshot. Do you think these extra curves will pose a problem for hex meshing? Thanks.

Mesh edges will be constrained by the curves on the volumes. In general, this should not cause a problem but it may affect element quality. I would try meshing it and then checking the mesh quality. If you want to get rid of the extraneous curves, try the command

regularize volume all