How do I get my coroutine to repeat?

There might be a simple answer to this, but how do I get my coroutine to repeat on itself? I have a wind script that calls the coroutine in the update function, and the coroutine has the force of wind start at 0, then wait for 3 seconds, then sets the force of wind to 5. After this I want to wait 3 more seconds, then reset the force of wind back to 0 and start all over.

private void Update()
{
    if (isTimed)
    {
        StartCoroutine("WindTimer");
    }
}

private IEnumerator WindTimer()
{
    xForceFinal = yForceFinal = zForceFinal = 0;

    yield return new WaitForSeconds(windDuration);

    xForceFinal = xForce;
    yForceFinal = yForce;
    zForceFinal = zForce;
}

You can put the StartCoroutine function in your coroutine. Like this:

 private void Update()
 {
     if (isTimed)
     {
         StartCoroutine("WindTimer");
     }
 }
 private IEnumerator WindTimer()
 {
     xForceFinal = yForceFinal = zForceFinal = 0;
     yield return new WaitForSeconds(windDuration);
     xForceFinal = xForce;
     yForceFinal = yForce;
     zForceFinal = zForce;

     StartCoroutine("WindTimer");
 }

also, you should know if you put a coroutine in an update function its gonna get called like every frame. So like for example: you put an AddForce in there. Your thing is gonna get like shot off the map pretty much.

I don’t know exactly what your trying to do with this, but you could just put this in your start function, and just have it repeat after that. Again, by putting the StartCoroutine at the end of the code in your coroutine.
Hope this helped!