So far we have demonstrated that can correctly simulate simple flows in relatively simple geometries i.e. flow past a cylinder or flow in a box. Now we push the envelope by considering the flow past a Robotuna. Triantafyllou et al. at the towtank facility at MIT have constructed a robotic tuna that can swim up and down the towtank. They kindly provided the surface definition of the Robotuna device. With the help of PhD student Mike Kirby [82] and FELISA [3] we constructed a tetrahedral mesh around the surface definition. Ideally we would have liked to use a thin layer of prisms around the fish surface, but as a first pass it was instructive to use an off the shelf tetrahedral mesh generator to produce the mesh. As mixed element mesh generators come on line to meet demand we expect that this task will be as straightforward as tetrahedral meshing is today.
We did come across some problems in generating the unstructured mesh. The actual robotuna is covered by Lycra, so we used a spline to approximate the surface curvature. However, in doing so we found that this isoparametric represention [23] of the surface caused a small minority of surface elements to become tangled. The tangling is caused by the curved face projecting through one or more of the other faces of the tetrahedron. To overcome this problem we identified the tangled elements and replaced the curvature with linear blending of the neighbouring elements' curvature.
In future work the curvature problems will be removed by the use of prismatic elements at the surface of the fish. Only extreme deformation of a prism's triangle face will cause the prism to become tangled.
In figure 5.11 we show the mesh and surface spline on the surface of the tuna and in figure 5.12 we show the instantaneous pressure on the surface of the Robotuna. The high pressure at the nose of the Robotuna and at the front sections of the tail are as we would expect for a blunt body flow. The pressure on the wider parts of the body is slightly rough. This may be due to the slight roughness of the surface there introduced by the surface fixes we have already mentioned.
![]() |
![]() |