Jump to content

problem: sin(10^40)

Featured Replies

how would I go about finding sin(10^40) ? [10^40 in radians]

Set your calculator in radians instead of degrees :)

I've been looking at the problem, and I can't really see a solution of the top of my head apart from just plugging it into Matlab/Mathematica. I've got a hunch that you could use the fact that 1/10^40 = 10^(-40) is such a small angle that you can use small angle approximation, but I'm probably totally wrong.

Find 10^40 mod 2pi, since sin(2pi+x) = sin x.

  • Author

I did try sin[10^40 - int((10^40)/(2pi))]...but none of the calculators I own are accurate enough.

You should get:

 

-0.569633400953636327308034181573569 or near to

Imagine a graph of sin(x). It's positive for 2pi radians, then negative for the next 2pi radians, then positive, etc.

When you go along the x axis to the point 10^40, the graph must just turn out to be below the axis there. The angle (x) isn't negative, but the sin(x) value is; like when you have sin 210 degrees = -0.5.

Sin(10^40 - 2pi*10^39)

 

So pi has to be at least 40 digits accurate to have some result in the right direction.

 

A calculator only has pi up to 15 digits? so can't be done with a normal calculator.

 

maybe with a mathematical trick you can solve it on a normal calculator.

"So pi has to be at least 40 digits accurate to have some result in the right direction."

 

He was not after accuracy he was after a method of solution.

 

Thus:

 

Find 10^40 mod 2pi, since sin(2pi+x) = sin x.

 

Thus:

 

-0.569633400953636327308034181573569 +- (1e-12)

 

To compute use windows scientific calculator

windows calculator (scientific mode) 'only' has pi up to 32 digit so you need an other method/program.

 

this accuracy is part of the solution method.

wolfson said in post # :

Imagine a graph of sin(x). It's positive for 2pi radians, then negative for the next 2pi radians, then positive, etc.

 

I think you mean every pi radians there, not 2pi.

 

windows calculator (scientific mode) 'only' has pi up to 32 digit so you need an other method/program.

 

this accuracy is part of the solution method.

 

Indeed. I suspect that this isn't the most efficient method you can use. I think the correct answer is the one I quoted above, since I've now verified it with matlab and mathematica - both of which are very capable of producing numbers to arbritary precision.

When I said 2pi, I should have said pi. I seem to be making a lot of mistakes this evening! But i still say my negative is correct.

  • 5 weeks later...

I used Maple 9 and used evalf(sin(10^40)); and got -.5696334010 so i'm agreeing with Wolfson here. Mathematica 5 also gives -0.56963340.

I think most handheld calculators use taylor series approximation, there simply will not be enough terms for the sum to converge with a number that big.

Yes, I know. I wouldn't really expect a normal handheld calculator (apart from perhaps my TI-89) to be able to work it out.

 

My point is, I said above:

 

from matlab:

 

>> format long

>> sin(10^40)

 

ans =

 

0.64678458842683

 

and then proceeded to type it into mathematica and get the same answer (somehow).

In[6]:=
N[sin[10^40], 50]

Out[6]=
-0.56963340095363632730803418157356872313292131914787

That is quite confusing, the standard input for maple and mathematica is radians... so I'm not really sure where the difference comes from.

  • 6 months later...

For those interested: I kept the calculation accuracy of it high but added a pi that wasn't that accurate you can see that only at accuracy 41 we are getting close/stable.

with maple 8:

you get pi followed with the result of the calculation.

 

sin(10^40-2*p*10^39) with p=Pi > p:=evalf(Pi,70) accuracy=70

 

> p:=evalf(Pi,70);

> evalf(sin(10^40-2*evalf(p,70)*10^39),70);

p:=3.141592653589793238462643383279502884197169399375105820974944592307816

-0.5696334009536363273080341815742365755028674749735871234233590307534688

 

> p:=evalf(Pi,50);

> evalf(sin(10^40-2*evalf(p,50)*10^39),50);

 

p := 3.1415926535897932384626433832795028841971693993751

-0.56963340096320483302155351446748255175004957983385

 

> p:=evalf(Pi,46);

> evalf(sin(10^40-2*evalf(p,50)*10^39),50);

 

p := 3.141592653589793238462643383279502884197169399

-0.56963401755159324178758070546326680727163521628658

 

> p:=evalf(Pi,44);

> evalf(sin(10^40-2*evalf(p,50)*10^39),50);

 

p := 3.1415926535897932384626433832795028841971694

-0.56963237375352485248115648847294557616382230212022

 

> p:=evalf(Pi,43);

> evalf(sin(10^40-2*evalf(p,50)*10^39),50);

 

p := 3.141592653589793238462643383279502884197169

-0.57028971108410160238203260125675586427898889887725

 

> p:=evalf(Pi,42);

> evalf(sin(10^40-2*evalf(p,50)*10^39),50);

 

p := 3.14159265358979323846264338327950288419717

-0.56864568433037894515920937125020327441117069451661

 

> p:=evalf(Pi,41);

> evalf(sin(10^40-2*evalf(p,50)*10^39),50);

 

p := 3.1415926535897932384626433832795028841972

-0.51829708252841365579298072494084993238214196173488

 

> p:=evalf(Pi,40);

> evalf(sin(10^40-2*evalf(p,50)*10^39),50);

 

p := 3.141592653589793238462643383279502884197

-0.81041404149828340893644116133287541019985461015021

 

> p:=evalf(Pi,39);

> evalf(sin(10^40-2*evalf(p,50)*10^39),50);

 

p := 3.14159265358979323846264338327950288420

-0.94183316470675507802643727766602357848601285229868

 

> p:=evalf(Pi,37);

> evalf(sin(10^40-2*evalf(p,50)*10^39),50);

 

p := 3.141592653589793238462643383279502884

0.78071915409033291423119565202296953326898213238585

  • 2 weeks later...

there appears to be two steps:

 

1) compute 10^40 mod 2pi to sufficient accuracy (say 15 significant digits). To do this, start with say 10 sig dig and compute, then keep increasing the sd until no change is observed in the value. there ought to be tables on the internet of the digits of pi which ought to help you. You need to use an arbitrary precision integer package such as probably the one in mathematica or another open source.

 

2) use an ordinary calculator to compute sin of the result.

Archived

This topic is now archived and is closed to further replies.

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.