Lavoro nel campo della fisica degli acceleratori e della radiazione di sincrotrone. Gli elettroni ad alta energia che circolano in anelli di grandi dimensioni di magneti producono raggi X che sono usati per una varietà di diversi tipi di scienza.
Gestire e migliorare queste strutture richiede il controllo e la modellazione del fascio di elettroni mentre circola nell'anello. Un codice per modellarlo richiede fondamentalmente che i tracker seguano gli elettroni attraverso gli elementi (qualcosa chiamato un integratore simplettico), e quindi il calcolo dei diversi parametri associati a questo movimento. Il problema con questi codici è che ogni struttura ha il proprio (forse 4-5 codici diversi, alcuni con più versioni). In linea di principio il codice non è così complesso. E come progetto di modellazione, si potrebbe pensare che abbia un interesse generale. Chi non vuole essere in grado di creare una traccia nello spazio con i magneti e osservare la circolazione degli elettroni?
Esiste un codice basato su Matlab per fare ciò chiamato Accelerator Toolbox, ma il creatore del codice non è più nel campo. Inserisco il codice in Sourceforge sotto il nome atcollab . La risorsa base è un insieme di integratori simplettici scritti in C. Questi sono poi compilati in codice mex e interfacciati tramite Matlab. È stato utile inserire il codice su Sourceforge per scambiare il codice, ma la comunità degli utenti è piuttosto piccola e la maggior parte è troppo impegnata per dedicarsi molto tempo alla collaborazione. Quindi, in termini di miglioramento del codice, non penso che abbia avuto tanto successo.
Qualsiasi parte di questa immagine potrebbe essere ricreata senza troppe difficoltà, ma nel complesso è un po 'complessa, e poiché ogni laboratorio ha una propria installazione con un sacco di codice aggiuntivo e strumenti sviluppati localmente, le persone lo trovano difficile lavorare insieme e condividere il codice. In qualche modo penso che dobbiamo coinvolgere una comunità più ampia nel nostro sviluppo, o semplicemente utilizzare alcuni strumenti standard. Ma per quello, suppongo debba essere di interesse generale. Penso che gli integratori simplettici possano avere un interesse generale. E la parte relativa a un'architettura plug-in per costruire l'anello dovrebbe adattarsi ad altri modelli. Oppure l'altra opzione è accettare semplicemente che questo non è un problema di interesse generale e lavorare di più nella nostra piccola comunità.
Sarebbero graditi suggerimenti o aneddoti di esperienza analoga.