I am calculating a value using Newton method, and I use a for loop to test if it is converged or not. But I feel like using a fix value inside the for loop is not a best way to do so. Any suggestion?
double startingRate = 0.1;
double oldStartingRate;
double rateDeviation;
for (int x = 0; x < 50; x++)
{
oldStartingRate = startingRate;
startingRate = NewtonMethod(startingRate);
rateDeviation = Math.Abs(startingRate - oldStartingRate);
Debug.WriteLine("deviation:" + rateDeviation .ToString()+" rate:" + startingRate);
if (rateDeviation < deviation) //deviation is a constant
{
return startingRate;
}
}