typo vari e update codice odr

Issue #187 resolved
Luca Palumbo created an issue

Segnalo di seguito alcuni typo:

  • Paragrafo 1.9.4 pagina 21, in fondo

[…] un caso banale in cui in nostro sviluppo in serie troncato al prim’ordine non funziona […]

dovrebbe essere

[…] un caso banale in cui il nostro sviluppo in serie troncato al prim’ordine non funziona […]

  • Paragrafo 1.11.4, pagina 27, prima frase

sfruttando la legge fondamentali delle lenti sottili

dovrebbe essere

sfruttando la legge fondamentale delle lenti sottili

  • Paragrafo 7.1, pagina 156

La macchina di Galton è un dispositivo ideato per semplici esperimenti di statistica, che permette tra le altre cose di illustrare in modo immediato la distribuzione binomiale ed il teorema centrale del limite—argomenti che tratteremo in dettaglio nei prossimi capitoli.

Tali argomenti sono stati trattati precedentemente nel capitolo 5. Forse si può cambiare in

argomenti che abbiamo già trattato nei capitoli precedenti

oppure rimuovere l’ultimo pezzo della frase.

  • Paragrafo 8.4.5, pagina 193

Allora quello che vede la funzione che fa il fit è più simile alla figura 8.14 che non alla 8.14.

dovrebbe essere

Allora quello che vede la funzione che fa il fit è più simile alla figura 8.14 che non alla 8.13.

  • Paragrafo 8.5.1, frammento 8.6, pagina 197
    Usando python 3.10.5 e scipy 1.8.1:
    Nel frammento si importa odrpack

    from scipy.odr import odrpack

Ma non appena lo si utilizza (ad esempio invocando il metodo odrpack.Model ) esce il messaggio di avvertimento.

DeprecationWarning: Please use `Model` from the `scipy.odr` namespace, the `scipy.odr.odrpack` namespace is deprecated.

Lo stesso warning esce usando qualsiasi metodo di odrpack.

Suggerisco di modificare lo snippet seguendo le indicazioni più aggiornate della documentazione di scipy

import numpy as np
from scipy import odr

def fit_model(pars, x):
    # Note the independent variable is the last argument.
    return pars[0] * x + pars[1]

# Read the data from file.
x, dx, y, dy = np.loadtxt('data/lens.dat', unpack=True)
# Run the actual ODR.
model = odr.Model(fit_model)
data = odr.RealData(x, y, sx=dx, sy=dy)
myodr = odr.ODR(data, model, beta0=(1.0, 1.0))
out = myodr.run()
m_hat, q_hat = out.beta
sigma_m, sigma_q = np.sqrt(out.cov_beta.diagonal())
chisq = out.sum_square
# Print the fit output.
print(f'm = {m_hat:.3f} +/- {sigma_m:.3f}')
print(f'q = {q_hat:.3f} +/- {sigma_q:.3f}')
print(f'Chisquare = {chisq:.1f}')

[Output]
m = -0.979 +/- 0.051
q = 9.886 +/- 0.226
Chisquare = 6.5

Ho modificato la riga che importa scipy e sostituito odrpack con odr ovunque.

Per evitare ambiguità ho modificato anche la variabile definita a riga 13 da “odr” a “myodr”

  • Paragrafo 8.7.1, pagina 202
    Dopo

e, analogamente

è presente un’equazione. Il primo membro dell’equazione dovrebbe essere la derivata parziale rispetto a y_c, e non x_c.

Cordiali Saluti, Luca Palumbo.

Comments (4)

  1. Log in to comment