|
|
|
|
@ -25,7 +25,7 @@ interface CorsoCustom {
|
|
|
|
|
cfu: number
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Dati dei corsi dal XML fornito
|
|
|
|
|
// Dati dei corsi aggiornati dalla tabella ufficiale
|
|
|
|
|
const CORSI_DISPONIBILI: Corso[] = [
|
|
|
|
|
// Primo Anno
|
|
|
|
|
{ nome: 'Analisi matematica 1', anno: '1', cfu: 15 },
|
|
|
|
|
@ -34,18 +34,22 @@ const CORSI_DISPONIBILI: Corso[] = [
|
|
|
|
|
{ nome: 'Fondamenti di programmazione con laboratorio', anno: '1', cfu: 9 },
|
|
|
|
|
{ nome: 'Geometria 1', anno: '1', cfu: 15 },
|
|
|
|
|
{ nome: 'Laboratorio di introduzione alla matematica computazionale', anno: '1', cfu: 6, passFailOnly: true },
|
|
|
|
|
{ nome: 'Algebra 1', anno: '1', cfu: 6 },
|
|
|
|
|
{ nome: 'Laboratorio di comunicazione mediante calcolatore', anno: '1', cfu: 3, passFailOnly: true },
|
|
|
|
|
|
|
|
|
|
// Secondo Anno
|
|
|
|
|
{ nome: 'Algebra 1', anno: '2', cfu: 6 },
|
|
|
|
|
{ nome: 'Algoritmi e strutture dati', anno: '2', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi matematica 2', anno: '2', cfu: 12 },
|
|
|
|
|
{ nome: 'Analisi numerica con laboratorio', anno: '2', cfu: 9 },
|
|
|
|
|
{ nome: 'Elementi di probabilità e statistica', anno: '2', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria 2', anno: '2', cfu: 12 },
|
|
|
|
|
{ nome: 'Algebra 2', anno: '2', cfu: 6 },
|
|
|
|
|
{ nome: 'Inglese scientifico', anno: '2', cfu: 6, passFailOnly: true },
|
|
|
|
|
{ nome: 'Laboratorio didattico di matematica computazionale', anno: '2', cfu: 3, passFailOnly: true },
|
|
|
|
|
|
|
|
|
|
// Terzo Anno
|
|
|
|
|
{ nome: 'Algebra 2', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi matematica 3', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi reale', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Calcolo scientifico', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Elementi di analisi complessa', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Elementi di calcolo delle variazioni', anno: '3', cfu: 6 },
|
|
|
|
|
@ -58,19 +62,25 @@ const CORSI_DISPONIBILI: Corso[] = [
|
|
|
|
|
{ nome: 'Fisica II', anno: '3', cfu: 9 },
|
|
|
|
|
{ nome: 'Fisica III', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria e topologia differenziale', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Laboratorio computazionale', anno: '3', cfu: 6, passFailOnly: true },
|
|
|
|
|
{ nome: 'Laboratorio sperimentale di matematica computazionale', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Gruppi e rappresentazioni', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Laboratorio computazionale', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Linguaggi di programmazione con laboratorio', anno: '3', cfu: 9 },
|
|
|
|
|
{ nome: 'Logica matematica', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Matematiche elementari da un punto di vista superiore: aritmetica', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Matematiche elementari da un punto di vista superiore: geometria', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Meccanica razionale', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Metodi numerici per equazioni differenziali ordinarie', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Metodi topologici in analisi globale', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Ottimizzazione non lineare', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Probabilità', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Ricerca operativa', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Sistemi dinamici', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Spazi di Sobolev', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Statistica matematica', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Storia della matematica', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria algebrica dei numeri 1', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria dei campi e teoria di Galois', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria dei numeri elementare', anno: '3', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria della misura', anno: '3', cfu: 6 },
|
|
|
|
|
|
|
|
|
|
// Istituzioni (Magistrale)
|
|
|
|
|
@ -82,41 +92,98 @@ const CORSI_DISPONIBILI: Corso[] = [
|
|
|
|
|
{ nome: 'Istituzioni di geometria', anno: 'istituzioni', cfu: 11 },
|
|
|
|
|
{ nome: 'Istituzioni di probabilità', anno: 'istituzioni', cfu: 11 },
|
|
|
|
|
|
|
|
|
|
// Materie a scelta (Magistrale con "M" ma non istituzioni)
|
|
|
|
|
// Materie a scelta (Magistrale)
|
|
|
|
|
{ nome: '4-varietà', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Algebra superiore A', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Algebre e gruppi di Lie', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi armonica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi complessa A', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi complessa B', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi convessa', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi dei dati', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi non standard', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi reale', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi su spazi gaussiani', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi superiore', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi superiore A', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Analisi superiore B', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Aspetti matematici nella computazione quantistica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Calcolo delle variazioni B', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Calcolo della variazioni A', anno: 'M', cfu: 6 }, // Variante nome
|
|
|
|
|
{ nome: 'Combinatoria algebrica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Complementi di analisi funzionale', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Complementi di meccanica razionale', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Crittografia post-quantistica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Curve ellittiche', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Determinazione orbitale', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Didattica della matematica e nuove tecnologie', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Dinamica del sistema solare', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Dinamica iperbolica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Dinamica olomorfa', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Elementi di calcolo in gruppi omogenei', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Equazioni della fluidodinamica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Equazioni differenziali stocastiche e applicazioni', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Equazioni ellittiche', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Finanza matematica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Fisica matematica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Forme modulari', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria algebrica B', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria algebrica C', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria algebrica complessa', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria algebrica D', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria algebrica E', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria algebrica F', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria algebrica G', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria e analisi complessa', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria differenziale complessa', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria iperbolica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Geometria riemanniana', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Gruppi algebrici lineari', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Gruppi di Coxeter', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Gruppi di Galois e gruppi fondamentali', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Meccanica celeste', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Meccanica spaziale', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Meccanica superiore', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Metodi di analisi armonica in analisi non lineare', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Metodi di approssimazione', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Metodi matematici della crittografia', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Metodi matematici della meccanica quantistica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Metodi numerici per catene di Markov', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Metodi numerici per equazioni alle derivate parziali', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Metodi numerici per il calcolo tensoriale', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Metodi numerici per il controllo ottimo', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Metodi numerici per la grafica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Metodi numerici per problemi inversi', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: "Metodi probabilistici per l'algebra lineare numerica", anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Modelli matematici in biomedicina e fisica matematica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Origini e sviluppo delle matematiche moderne', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Probabilità superiore', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Problemi e metodi della ricerca in didattica della matematica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Problemi e metodi in storia della matematica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Sistemi dinamici aleatori', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Statistica superiore', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Storia della matematica antica e della sua tradizione', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Superfici di Riemann e curve algebriche', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Tecnologie per la didattica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria algebrica dei numeri 2', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria analitica dei numeri A', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria dei giochi', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria dei modelli', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria dei nodi A', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria degli insiemi', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria degli insiemi A', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria degli insiemi B', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria delle categorie', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria delle rappresentazioni A', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: "Teoria e metodi dell'ottimizzazione", anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria ergodica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Teoria geometrica della misura', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Topologia algebrica', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Topologia algebrica A', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Topologia algebrica B', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Topologia differenziale', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Topologia e geometria in bassa dimensione', anno: 'M', cfu: 6 },
|
|
|
|
|
{ nome: 'Ultrafiltri e metodi non-standard', anno: 'M', cfu: 6 },
|
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
function MediaPesataApp() {
|
|
|
|
|
@ -387,7 +454,7 @@ function MediaPesataApp() {
|
|
|
|
|
// Filtra corsi disponibili in base al tipo di studente
|
|
|
|
|
const getCorsiDisponibili = () => {
|
|
|
|
|
if (tipoStudente === 'triennale') {
|
|
|
|
|
return CORSI_DISPONIBILI
|
|
|
|
|
return CORSI_DISPONIBILI.filter(corso => corso.anno !== 'istituzioni')
|
|
|
|
|
} else {
|
|
|
|
|
return CORSI_DISPONIBILI.filter(
|
|
|
|
|
corso => corso.anno === 'istituzioni' || corso.anno === '3' || corso.anno === 'M',
|
|
|
|
|
@ -404,7 +471,6 @@ function MediaPesataApp() {
|
|
|
|
|
gruppi['Primo Anno'] = corsi.filter(c => c.anno === '1')
|
|
|
|
|
gruppi['Secondo Anno'] = corsi.filter(c => c.anno === '2')
|
|
|
|
|
gruppi['Terzo Anno'] = corsi.filter(c => c.anno === '3')
|
|
|
|
|
gruppi['Istituzioni'] = corsi.filter(c => c.anno === 'istituzioni')
|
|
|
|
|
gruppi['Materie a Scelta'] = corsi.filter(c => c.anno === 'M')
|
|
|
|
|
} else {
|
|
|
|
|
// Per magistrali: prima le istituzioni, poi tutto il resto come "Materie a Scelta"
|
|
|
|
|
|