day1/exercise/roots.py
author Prabhu Ramachandran <prabhu@aero.iitb.ac.in>
Mon, 21 Jun 2010 00:49:03 -0400
branchscipy2010
changeset 412 ca04d463c573
parent 64 333092b68926
permissions -rw-r--r--
ENH: Enhanced the problem set building on the image handing and arrays. Illustrated dtypes, casting and their importance along with an example using RGBA images. Also introduce edge detection.

import math

def linspace(a, b, N):
    lns = []
    step = (float(b) - float(a)) / float(N - 1)
    print step
    for i in range(N):
        lns.append(a + i*step)

    return lns

def sinsin_func():
    x = linspace(0, 5, 11)
    sin_list = []
    for i in x:
        sin_list.append(math.sin(i) + math.sin(10*i))

    return sin_list

def find_root_range():
    sin_list = sinsin_func()
    for i, sins in enumerate(sin_list):
        if (sin_list[i] > 0 and sin_list[i+1] < 0) or (sin_list[i] > 0 and sin_list[i+1] < 0):
            print "Roots lie between: %f and %f" % (sin_list[i], sin_list[i+1])
        if sin_list[i] == 0:
            print "%f is the root" % sin_list[i]

find_root_range()