Ex. 1 → Compute the value of the sum:
Ex. 2 → Create a generator that computes the sequence defined by the relation:
Ex. 3 → Generate all the even numbers.
Ex. 4 → Let . In calculus, it is shown that . Determine experimentally the smallest number n such that . Use a generator for this task.
Ex. 5 → Generate all prime numbers less than a given integer. Use the algorithm called Sieve of Eratosthenes.
Ex. 6 → Solving the differential equation by applying the explicit Euler method results in the recursion:
Write a generator that computes the solution values un for a given initial value u0 and for a given value of the time step h.
Ex. 7 → Compute π using the formula:
The integral can be approximated using the composite trapezoidal rule, that is, by this formula:
where .
Program a generator for the values yi = f(xi) and evaluate the formula by summing one term after the other. Compare your results with the quad
function of SciPy.
Ex. 8 → Let x = [1, 2, 3] and y = [-1, -2, -3]. What is the effect of the code zip(*zip(x, y))
? Explain how it works.
Ex. 9 → Complete elliptic integrals can be computed by the function scipy.special.ellipk
. Write a function, which counts the number of iterations needed with the AGM iteration until the result coincides up to a given tolerance (note that the input parameter m in ellipk
corresponds to k2 in the definition in the section Arithmetic geometric mean) .
Ex. 10 → Consider the sequence defined by:
It converges monotonically to zero: E1 >E2 > . . . > 0. By integration by parts, one can show that the sequence En fulfills the following recursion:
Compute the first 20 terms of the recursion by using an appropriate generator and compare the results with those obtained by numerical integration with scipy.integrate.quad
. Do the same by reversing the recursion:
Use the exp
function to evaluate the exponential function. What do you observe? Do you have an explanation? (refer to [29])
Figure 9.2: A convergence study of functions approximating to sin(x)
Ex. 11 → The sine-function can be expressed due to Euler as
Write a generator that generates the function values Pk(x). Set x=linspace(-1,3.5*pi,200)
and demonstrate graphically how good Pk(x) approximates sin for increasing k. In previous figure (Figure 9.2), the possible result is shown (refer to [11, Th. 5.2, p. 65]).
3.15.189.199