Advertisement
Guest User

Untitled

a guest
Aug 18th, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.93 KB | None | 0 0
  1. #!/usr/bin/env python
  2. import sys
  3. import os
  4. import math
  5.  
  6.  
  7. def f1(x):
  8.         return x * x
  9.  
  10. def f2(x):
  11.         return ((x + .003) * .28) / 6.0
  12.  
  13. def f3(x):
  14.         return x - .0008
  15.  
  16. def f4(x):
  17.         return x * .81
  18.  
  19. # These can be anything
  20. WANTED_1 = 6.8
  21. WANTED_2 = 0.004
  22. WANTED_3 = 1.0
  23. WANTED_4 = 0.23851
  24.  
  25. if __name__ == '__main__':
  26.    
  27.     i = .5
  28.  
  29.     error = 10000.0
  30.  
  31.     numIters = 0
  32.  
  33.     while abs(error) > .000001:
  34.        
  35.         x1 = f1(i)
  36.         x2 = f2(i)
  37.         x3 = f3(i)
  38.         x4 = f4(i)
  39.  
  40.         error = ( (abs(x1) - WANTED_1) + ( abs(x2) - WANTED_2 ) + ( abs(x3) - WANTED_3) + ( abs(x4) - WANTED_4 ) )
  41.         error /= 4.0
  42.  
  43.         if error > 0:
  44.             i -= .0000003
  45.         else:
  46.             i += .0000005
  47.  
  48.         numIters += 1
  49.  
  50.         #print ( "Error is: %.7f" %( error, ))
  51.  
  52.     print ( "Found best error of %.7f at x=%.7f after %d iterations" %( error, i, numIters ) )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement