Question: Fsolve won't find my roots

So, newb question here. I've done my best to debug this line of code, but to no avail. For some reason this function is NOT getting solved correcting for the zeros:

cos(L*x) - x*sin(L*x)

 

This is not an extremely complex equation either, so I'm at a loss for why my while loop continues to sit there forever. I've got it set to find N number of zeros, but it'll just keep going forever never finding any zeros. I've tried mixing up the start point, and even changed the range which it's searching for them, but nothing seems to get me any closer. Please help!

 

> restart; with(plots);
> a := 0; b := 1/2; N := 5; w := 1; L := b-a;

Eigenvalue equation
> w := cos(L*x)-sin(L*x)*x;
> plot(w, x = 0 .. 50);

> lam := array(0 .. N+1);

> nn := 0; kk := 5; while nn < N do zz := fsolve(w(x) = 0, x = kk .. kk+1); if type(zz, float) then printf("lam(%d)=%f\n", nn, zz); lam[nn] := zz; nn := nn+1 end if; kk := kk+1 end do

 

Please Wait...