An artificial fish moves as a real fish does: by contracting its muscles. If is a muscle, it is contracted by decreasing its rest length . The characteristic undulation of the fish tail can be achieved by periodically contracting the swimming segment muscles on one side of the body while relaxing their counterparts on the other side. We will develop the motor controllers that produce this muscle coordination in Section .

When the fish tail swings, it sets in motion a volume of water. The inertia of the displaced water produces a reaction force normal to the fish's body and proportional to the volume of water displaced per unit time, which propels the fish forward (Fig. ).

Assuming irrotational, incompressible and not very viscid fluid, the
instantaneous hydrodynamic force on the surface *S* of a body due to
the fluid is approximately proportional to

where is the unit outward normal function over the surface and is the relative velocity function between the surface and the fluid [Massey1983]. For efficiency, we triangulate the faces of the fish model between the nodes. For each triangle, we approximate the hydrodynamic force as

where is the viscosity of the fluid medium, *A* is the area of
the triangle, is its normal, and is its velocity
relative to the water. The external forces (see
Eq. ) at each of the three nodes of the triangle are
incremented by .

Xiaoyuan Tu | January 1996 |