Python, ROOT e MINUIT integrazione? [chiuso]
-
22-08-2019 - |
Domanda
Sono uno studente laureato modesta in un dipartimento di fisica delle particelle ad alta energia. Con una ripugnanza infondata per C / C ++ e un amore fondato di pitone, ho fatto ricorso al pitone per la mia analisi dei dati finora (solo la roba facile) e sto per tentare script supporto python contro le librerie ROOT e, in particolare, utilizzare MINUIT per alcuni parametri minimizzazione.
Oltre a chiedere se qualcuno ha qualche consiglio per l'installazione e l'utilizzo di questi, mi sono chiesto se ne valeva la pena di tentare, anche esso o semplicemente di scivolare nella "norma" di utilizzare C / C ++, o se le cose come pyminuit sono utilizzabili. O pensi che potrei avvolgere script intera C / C ++ in codice python a fare uso dei miei metodi di analisi auto-scritte esistenti (non ho alcuna esperienza involucro come ancora). Ci scusiamo per la vaghezza; Sto andando in un grande sconosciuto che supera di gran lunga la mia esperienza attuale.
Soluzione
Sei a conoscenza di pyROOT , giusto?
Non ha mai fatto io stesso, quindi non so come potrebbe impilare fino contro le vostre esigenze.
Altri suggerimenti
E 'probabilmente la pena di verificare rootpy . Forse non del tutto matura ancora, ma è un passo nella giusta direzione.
Sì, rootpy è costruito sulla cima di PyROOT , ma con qualche ulteriore caratteristiche:
- sottolinea un'interfaccia divinatorio e nasconde alcune delle brutture della ROOT;
- matlibplot , che ha una comunità di sviluppo più grande, e una maggiore presenza su SO, non parlare più bello trame;
- permette la conversione in file HDF5 , che vi permetterà di condividere i dati con le persone che possono 't prendere il tempo necessario per installare il pacchetto ROOT monolitico.
Purtroppo, a patto che si sta lavorando con qualcosa di costruito in cima ad CINT (che è PyROOT), avrai ancora a che fare con uno dei parti più brutte di ROOT .
L'altra opzione, se siete malati di armeggiare con PyROOT, è quello di utilizzare uno dei pacchetti che converte ROOT direttamente a HDF5
ho scritto un wrapper minuit un po 'indietro (Nel mio campione di 1 esperienza, minuit di ROOT sembra più robusto di pyminuit e mi piace ROOT uscita Minuit more)
https://github.com/piti118/RTMinuit
Con la capacità di lettura di file di root NumPy
https://github.com/piti118/root_numpy
E non è così lucido biblioteca montaggio ed ecc generazione giocattolo sulla base di RTMinuit e NumPy
https://github.com/piti118/dist_fit
tutorials e aiuto sono tutti dato nel pacchetto