Какие пакеты отвечают за различный вывод между Python2 и Python3 и как решить эту проблему? - PullRequest
0 голосов
/ 15 мая 2019

Я пытаюсь воспроизвести некоторые данные с помощью модельной функции. Я проверил вывод как с Python2, так и с Python3, и результаты значительно отличаются. Я сделал это в Jupyter, а также с .py источником, и то же самое происходит. Я также получаю следующее предупреждение:

RuntimeWarning: недопустимое значение, встречающееся в double_scalars

Может быть, точность - это проблема точности?

Большое спасибо!

def r_diff(en):
    return np.sqrt(4*D_0*pow(en,delta)*(pulsar_ch_age[i]-t_0)*conv_factor_yr_to_sec*(1 - pow( 1 - en/E_max[i], 1-delta))/((1-delta)*(en/E_max[i])))

def J_e(E):
    if E > E_max[i] or r_diff(E)<r_kpc[i]:
        return 0
    return (Q_0_GeV_ch[i] / (pow(pi,3/2) * pow(r_diff(E),3)) * pow(E,-gamma) * pow(1 - E/E_max[i],gamma-2) * np.exp( - E /((1-E/E_max[i]) * E_c) ) * np.exp( - pow( r[i]/r_diff(E) ,2)))*(c/4*pi)

j_E_e = [J_e(x) for x in E_e]

print j_E_e

RuntimeWarning: invalid value encountered in double_scalars
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...