1
$\begingroup$

I am exploring Euler's product formula for the Riemann Zeta function but I have come across a problem plotting functions with various terms of accuracy. My code is as follows:

Show[Plot[Zeta[x], {x, -1, 4}, PlotRange -> {-4, 8}, 
        PlotStyle -> {Red, Thickness -> .005}],
    Table[Plot[Product[1/(1 - 1/Prime[n]^x), {n, 1, i}], {x, -1, 10}, 
        PlotStyle -> {Black}, PlotPoints -> 1000], {i, 1, 2}]
]

This produces the following image.

1 and 2 terms of accuracy

So the zeta function is in red and I am using a table to produce the product approximations, which are in black. My question is why does the product not get plotted for a lot of the domain I specified? Obviously it won't be defined at $x = 0$, but everywhere else in my domain should be plotted, yes?

I thought this was a problem with using a table maybe, but explicitly plotting

1/(1-1/2^x)

gave the same problem where it ignored a lot of the domain. Any help?

$\endgroup$
  • $\begingroup$ The function Product[1/(1 - 1/Prime[n]^x), {n, 1, 2}], rises too fast near 0: see LogPlot[Product[1/(1 - 1/Prime[n]^x), {n, 1, 2}], {x, -1, 10}, PlotStyle -> {Black}, PlotPoints -> 1000, PlotRange -> All] or LogPlot[Log@Product[1/(1 - 1/Prime[n]^x), {n, 1, 2}], {x, -1, 10}, PlotStyle -> {Black}, PlotPoints -> 1000, PlotRange -> All] $\endgroup$ – kglr Jul 2 '18 at 3:10
  • $\begingroup$ Ah, yeah, I did what you did in your second comment and just gave an explicit PlotRange to the table functions which fixed it. In regards to your first, the table functions should be growing slower than the zeta functions so that was fine. No idea why it seems to be giving arbitrary PlotRanges to my table functions, but that works, thank you! $\endgroup$ – strombc Jul 2 '18 at 3:20
0
$\begingroup$
Show[Plot[Zeta[x], {x, -1, 4}, PlotRange -> {{-1, 10}, {-4, 8}}, 
  Exclusions -> {1}, PlotStyle -> {Red, Thickness -> .005}], 
 Table[Plot[Product[1/(1 - 1/Prime[n]^x), {n, 1, i}], {x, -1, 10}, 
   PlotRange -> {{-1, 10}, {-4, 8}}, PlotStyle -> {Black}, 
   PlotPoints -> 1000], {i, 1, 2}]]

enter image description here

Automatically selected PlotRanges for plots inside Table are

PlotRange /@ Table[Plot[Product[1/(1 - 1/Prime[n]^x), {n, 1, i}], {x, -1, 10}, 
   PlotStyle -> {Black}, PlotPoints -> 1000], {i, 1, 2}]

{{{-1., 10.}, {0.474519, 1.88074}}, {{-1., 10.}, {0.5, 3.87514}}}

so these plots are clipped at 1.88074 and 3.87514. Providing explicit PlotRanges for the two Plots inside Table prevents this clipping.

|improve this answer|||||
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.