Laureatosi a pieni voti in fisica-matematica all’università di Pavia nel 1811, assunse il titolo di ingegnere-architetto, rimanendo nell’ateneo come uditore. Nel 1813 fu assunto all’Osservatorio astronomico di Brera a Milano e collaborò alla redazione delle effemeridi annuali. Nel 1816 pubblicò un metodo innovativo per determinare le orbite dei corpi celesti e negli anni successivi salì di grado nella carriera dell’Osservatorio, ma per i suoi orientamenti politici antiaustriaci dovette fuggire a Londra attraverso la Svizzera e Parigi. Su incarico inglese, nel 1827, si recò in Argentina come ingegnere astronomo e nel 1834 ottenne la cattedra di fisica sperimentale all’Università di Buenos Aires. Benché chiamato dall’Università di Bologna a tenere l’insegnamento di astronomia, e avendo perciò lasciato l’Argentina, dovette rinunciare per ragioni politiche e accettare l’incarico di docente offertogli dall’università inglese di Corfù. Rientrato finalmente in Italia nel 1840, fu chiamato alla cattedra di Fisica matematica e meccanica celeste dell’Università di Pisa. Nel 1848 comandò il battaglione universitario toscano alla battaglia di Curtatone e nel 1861 fu nominato Senatore del Regno.