title: The iteration is not making good progress, as measured by the improvement from the last ten iterations. Error while making SRK EoS/Python
body: <pre><code>import matplotlib.pyplot as plt  
  import numpy as np
  from scipy.optimize import fsolve
  
  R = 0.08206
  Tc = 150.687
  Pc = 47.994
  ω = -0.00219
  T = 100
  
  a = 0.42748*R**2*Tc**2/Pc
  b = 0.08664*R*Tc/Pc
  α = (1 + (0.48 + 1.574*ω - 0.176*ω**2)*(1 - (T/Tc)**(0.5)))**2
  
  
  X = np.linspace(1, 731, 100) 
  k = [] 
  for dx in X: 
      P=dx
      def f(V):
          return P - R*T/(V - b)  + a*α/ V/(V + b)
      k.append(fsolve(f,0.05)*dx/R/T)
  plt.xlabel(&quot;Pressure (atm)&quot;)
  plt.ylabel(&quot;Compressibility Z&quot;)
  plt.title(&quot;Z-p plot at 100K, Ar&quot;)
  plt.plot(X, k, label = 'SRK')
  plt.show()
  </code></pre>
  <p>This is my code for SRK Equation of state.
  For some reason, when the temperature is high enough, (ex:T = 300) it won't have any problem.
  <a href="https://i.stack.imgur.com/P4zwO.png" rel="nofollow noreferrer">https://i.stack.imgur.com/P4zwO.png</a>
  But when the temperature is low, like the code that I mentioned above, it will start to print out at error saying
  <a href="https://i.stack.imgur.com/5CKTN.png" rel="nofollow noreferrer">https://i.stack.imgur.com/5CKTN.png</a></p>
  <p>(I'm using Google Colab to code)</p>
  <p>What change should I make to solve this problem?</p>