- #1

Dustinsfl

- 2,285

- 5

How do I find the first 10 positive solutions numerically?

$$

\tan x = \frac{1}{x}

$$

$$

\tan x = \frac{1}{x}

$$

You are using an out of date browser. It may not display this or other websites correctly.

You should upgrade or use an alternative browser.

You should upgrade or use an alternative browser.

- Thread starter Dustinsfl
- Start date

- #1

Dustinsfl

- 2,285

- 5

How do I find the first 10 positive solutions numerically?

$$

\tan x = \frac{1}{x}

$$

$$

\tan x = \frac{1}{x}

$$

- #2

- 13,256

- 1,262

http://www.wolframalpha.com/input/?i=Plot+y(x)+=+tan+x+-+1/x

- #3

Dustinsfl

- 2,285

- 5

I tried using NSolve in Mathematica but that didn't work.

I also tried

syms x

solve(tan(x)==1/x)

in Matlab and that just gave -263.

How can I do this in one of these programs?

I also tried

syms x

solve(tan(x)==1/x)

in Matlab and that just gave -263.

How can I do this in one of these programs?

Last edited:

- #4

Ray Vickson

Science Advisor

Homework Helper

Dearly Missed

- 10,706

- 1,722

How do I find the first 10 positive solutions numerically?

$$

\tan x = \frac{1}{x}

$$

How do you find the first positive solution? You tell US; do not ask us to tell you: read the forum rules.

RGV

Last edited:

- #5

SammyS

Staff Emeritus

Science Advisor

Homework Helper

Gold Member

- 11,647

- 1,223

Where are you stuck?How do I find the first 10 positive solutions numerically?

$$

\tan x = \frac{1}{x}

$$

What have you tried?

After 490 posts, you should know the drill here at PF .

But here's one hint: One thing I would try is to take the reciprocal of both sides of that equation, giving you:

[itex]\displaystyle \cot(x)=x[/itex]

Graph each side.

- #6

Dustinsfl

- 2,285

- 5

How do you find the first positive solution? You tell US; do not ask us to tell you: read the forum rules.

RGV

I am not good at numerical analysis. I haven't taken a course in it yet as well as in Matlab. I will be taking Matlab this spring and Numerical Analysis next fall. So when I know how to do it and use Matlab efficiently, I won't even ask you.

- #7

Dustinsfl

- 2,285

- 5

Where are you stuck?

What have you tried?

After 490 posts, you should know the drill here at PF .

But here's one hint: One thing I would try is to take the reciprocal of both sides of that equation, giving you:[itex]\displaystyle \cot(x)=x[/itex]

Graph each side.

Read post 3.

- #8

Dustinsfl

- 2,285

- 5

http://www.wolframalpha.com/input/?i=Plot+y(x)+=+tan+x+-+1/x

I have a graph of it. I don't know if the forum can handle tikz but here it is

$$

\begin{tikzpicture}[>=stealth',x = .5cm,y = .5cm,scale = .60]

\def\npi{3.1416}

\def\periods{4}

\draw[->] (-\npi/2,0) -- ({(\periods + .5)*\npi},0) node[above] {$\lambda_n$};

\draw[->] (0,-10) -- (0,10) node

{$f(\lambda_n)$};

\clip (-\npi/2,-9.8) rectangle ({(\periods + .5)*\npi},9.8);

\draw[thick, domain = 0.05:{(\periods + .4)*\npi},samples = 300,smooth,color = red] plot (\x,1/\x);

\foreach \n in {0,...,4}

\draw[thick,shift = {(\npi*\n,0)},domain = -\npi/2+.1:\npi/2-.1,samples = 100,smooth] plot (\x,{tan(\x r)});

%draw the ticks

\foreach \x in {1,...,10} \draw (\x*\npi/2,2pt) -- (\x*\npi/2,-2pt);

%draw labels n\pi/2 for odd n >= 3

\foreach \x in {3,5,...,7} \node[below] at (\x*\npi/2,0) {$\frac{\x\pi}{2}$};

%draw labels n\pi for n >= 2

\foreach \x in {2,...,4} \node[below] at (\x*\npi,0) {$\x\pi$};

\node[below] at (\npi/2,0) {$\frac{\pi}{2}$};

\node[below] at (\npi,0) {$\pi$};

\end{tikzpicture}

$$

\clip (-\npi/2,-9.8) rectangle ({(\periods + .5)*\npi},9.8);

\draw[thick, domain = 0.05:{(\periods + .4)*\npi},samples = 300,smooth,color = red] plot (\x,1/\x);

\foreach \n in {0,...,4}

\draw[thick,shift = {(\npi*\n,0)},domain = -\npi/2+.1:\npi/2-.1,samples = 100,smooth] plot (\x,{tan(\x r)});

%draw the ticks

\foreach \x in {1,...,10} \draw (\x*\npi/2,2pt) -- (\x*\npi/2,-2pt);

%draw labels n\pi/2 for odd n >= 3

\foreach \x in {3,5,...,7} \node[below] at (\x*\npi/2,0) {$\frac{\x\pi}{2}$};

%draw labels n\pi for n >= 2

\foreach \x in {2,...,4} \node[below] at (\x*\npi,0) {$\x\pi$};

\node[below] at (\npi/2,0) {$\frac{\pi}{2}$};

\node[below] at (\npi,0) {$\pi$};

\end{tikzpicture}

$$

- #9

Ray Vickson

Science Advisor

Homework Helper

Dearly Missed

- 10,706

- 1,722

I am not good at numerical analysis. I haven't taken a course in it yet as well as in Matlab. I will be taking Matlab this spring and Numerical Analysis next fall. So when I know how to do it and use Matlab efficiently, I won't even ask you.

You don't need to know how to use Matlab, etc. Just apply Newton's method, which you can do using a hand-held scientific calculator. If you have not ever seen Newton's method before, I would be very surprised.

RGV

- #10

SammyS

Staff Emeritus

Science Advisor

Homework Helper

Gold Member

- 11,647

- 1,223

- #11

Dustinsfl

- 2,285

- 5

Here are the graphs of y=x and y=cot(x), superimposed. (from WolframAlpha)

I tried using NSolve in Mathematica but that didn't work.

I also tried

syms x

solve(tan(x)==1/x)

in Matlab and that just gave -263.

How can I do this in one of these programs?

This is what I wrote in post 3.

I can make graphs of this with the Tikz package and in Mathematica (that isn't the challenge here). How can I use Mathematica or Matlab to generate the first 10 positive solution?

- #12

Ray Vickson

Science Advisor

Homework Helper

Dearly Missed

- 10,706

- 1,722

I tried using NSolve in Mathematica but that didn't work.

I also tried

syms x

solve(tan(x)==1/x)

in Matlab and that just gave -263.

How can I do this in one of these programs?

This is what I wrote in post 3.

I can make graphs of this with the Tikz package and in Mathematica (that isn't the challenge here). How can I use Mathematica or Matlab to generate the first 10 positive solution?

I don't have access to Mathematica (except through Wolfram Alpha) or to Matlab, but in Maple it is easy:

S:=fsolve(tan(x)=1/x,x=0..Pi/2),seq(fsolve(tan(x)=1/x,x=Pi/2+(i-1)*Pi..Pi/2+i*Pi),i=1..9);

S := 0.8603335890, 3.425618459, 6.437298179, 9.529334405,

12.64528722, 15.77128487, 18.90240996, 22.03649673,

25.17244633, 28.30964285

I'm sure it must be possible, even easy, to do the same thing in Mathematica.

RGV

Last edited:

- #13

Dustinsfl

- 2,285

- 5

Thanks. Hopefully in the spring when I take programming in Matlab I will be better at this.I don't have access to Mathematica (except through Wolfram Alpha) or to Matlab, but in Maple it is easy:

S:=fsolve(tan(x)=1/x,x=0..Pi/2),seq(fsolve(tan(x)=1/x,x=Pi/2+(i-1)*Pi..Pi/2+i*Pi),i=1..9);

S := 0.8603335890, 3.425618459, 6.437298179, 9.529334405,

12.64528722, 15.77128487, 18.90240996, 22.03649673,

25.17244633, 28.30964285

I'm sure it must be possible, even easy, to do the same thing in Mathematica.

RGV

- #14

vela

Staff Emeritus

Science Advisor

Homework Helper

Education Advisor

- 15,671

- 2,310

Try using FindRoot instead.I tried using NSolve in Mathematica but that didn't work.

- #15

Bill Simpson

- 1,072

- 32

I tried using NSolve in Mathematica but that didn't work.

...

How can I do this in one of these programs?

In[7]:= Plot[Tan[x]-1/x,{x,.01,30}]

Out[7]= <snip graphic showing approximate positions of solutions>

In[8]:= FindRoot[Tan[x]-1/x,{x,.9}]

Out[8]= {x->0.860334}

In[9]:= FindRoot[Tan[x]-1/x,{x,3.5}]

Out[9]= {x->3.42562}

etc,etc,etc

Share:

- Last Post

- Replies
- 2

- Views
- 259

- Replies
- 29

- Views
- 734

- Replies
- 2

- Views
- 170

- Replies
- 32

- Views
- 605

- Last Post

- Replies
- 14

- Views
- 977

- Last Post

- Replies
- 5

- Views
- 249

- Replies
- 2

- Views
- 463

- Replies
- 4

- Views
- 1K

- Replies
- 54

- Views
- 2K

- Last Post

- Replies
- 3

- Views
- 903