Мне нужно передать геометрическую последовательность (от 1 до 2 ^ 20, всего 21 число) в функцию.Я могу сделать это, не заполняя свой массив нежелательными числами? - PullRequest
0 голосов
/ 28 сентября 2019

Этот код отправляет 2 * 21 числа в мой T-массив.Мне нужно всего 21 номер там.от 2 ^ 0 до 2 ^ 21.Как мне это сделать, пожалуйста.Какой лучший способ обойти это?


a  = 0.0;b = 1.0  # integration interval [a,b]

T=np.empty(2**21)
S=np.empty(2**3)
R=np.zeros(2**4)
E=np.zeros(2**4)

def geom_generator(max_number):
  N = 1
  while N < max_number:
    yield N
    N = N*2

for N in geom_generator(max_number=2**21): # just a random sample
    T[N]= trapezoid(f1,a,b,N)
    #S[N]= simpson(f1,a,b,N)

    #R = romberg(f1,a,b,1.0e-12,N) 
print(T)
Relative_errorT = abs(T-exactValue) ```
...