Animation Nodes - How to make a series of waves
We start by creating a grid that is high resolution along the y axis and offset its vertices by some amount equal to a multiple of the sine of a multiple of the vertices' y locations. Since this is a grid, a float range should represent the y location of the vertices and thus we have:



Notice that the mesh morph into a rectangle when the multiple (offset amplitude) approaches zero. So, we are going to create a number of waves that moves and morph into rectangles in a delayed fashion. To do so, we use a loop that takes factors as iterator, this factor ranges between zero and one, where it is zero at the start of its animation and one at its end. We are going to modulate the amplitude of the offset based on the factors as follows:



Then, we are going to offset each wave by a certain amount. This amount depend on the factor as well as the index of the wave. The factor is used as a factor in mixing between zero (no offset) and some end value (max offset), the max offset is determined by a multiple of the inverse of the normalized index. The normalized index is computed by dividing the index by the number of iterations, the inverse is computed by computing one minus the normalized index, the multiple is computed by multiplying the number of iterations (waves) by their width to make them stack tightly.



Finally, the factors are generate by evaluating a delay falloff:



The speed and iterpolation can be adjusted from within the falloff node.