Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
Simulazione 3D Trottole

Simulazione 3D Trottole

18617_size.png
questo è il mio progetto di informatica per il secondo semestre all EPFL. È strutturato con diverse classi seguendo un programma dato dal prof. Per la parte grafica ho usato OpenGL e GLUT.
Ogni trottola è rappresentata da due vettori che hanno come coefficienti tre angoli, che sono i tre gradi di libertà de sistema di riferimento d'inerzia. Il primo vettore rappresenta gli angoli e il secondo la loro velocita. Come integratori numerici ho usato Euler (che pero diverge subito) e Runge-Kutta (che invece rimane molto stabile). Il programma ha una classe per gestire vettori e una per le matrici. È in grado di leggere file XML che contengono le descrizioni delle condizioni iniziali di una o più trottole, questi file vengono passati come argomento al programma nel terminale oppure vengono chiesti dal programma stesso una volta avviato. Il ReadMe che spiega i tasti da usare è nello zip.
L'eseguibile che cè nello zip è compilato su ubuntu. Il programma compila anche su Mac, basta includere correttamente glut. Su windows non ho provato.


Categoria: Matematica e fisica / C++
Piattaforma:

Downloads: 1663
Rating: (6 voti)
Data: 02/06/2010
Download

A proposito dell'autore


Aggiungi un commento

Inserisci il tuo commento qui
Esegui il login oppure registrati per inviare commenti
  • Programma fantastico ma è impossibile aiutarti... dovresti ripassarti gli standard del C++, ad esempio le funzioni di disegno si devono chiamare Paint*, non Dessin o qualcosa del genere. Non è obbligatorio ma è una convenzione da rispettare
  • Che diavolo c'entrano gli standard del C++? Dove hai letto che le funzioni di disegno devono chiamarsi Paint? Su topolino?
  • Ci sono fior fiori di documenti sul codice riutilizzabile. Ad esempio una funzione che calcola la radice quadrata per standard va chiamatadouble sqrt(double n0)ma se tu la vuoi chiamaredouble bla_bla_maquantoebellalaradicequadrata(double numerino_numeretto)fai pure. documentati prima di lasciare commenti sprezzanti
  • Sei a conoscenza che nello standard C++ attuale(ISO 14882) non c'è traccia di un set di utility per il disegno grafico?E la funzione sqrt() è già definita nella standard library, quindi se tu la volessi ridichiarare con lo stesso nome faresti un grosso errore.
    Documentati(cit.)
  •  ._. si chiama overloading. Documentati. Comunque non mi riferivo allo standard ISO del C++, ma ai coding standards guideline di cplusplus.com 
  • Overloading != name clashing. E di certo l'overloading non c'entra con i coding standards: nessuno ti dice che devi dare i nomi delle funzioni seguendo quelli della libreria standard, anzi. Non c'è alcun "coding standards guideline"(wtf?) sul sito cplusplus.com. 
  • non conoscerò bene C++ ma in molti linguaggi (tutti quelli a oggetti)MiaClasse.qualcosa non è uguale a Libreria.Namespace.Classe.qualcosa
  • francamente, ht-never, e penso di parlare per tutti, mi sono stancato di questa tua ostinatezza, qualita` che in molti casi e` utile, ma che nel tuo si tramuta in saccenteria... se una persona (o piu` di una) ti dice che le tue affermazioni sono errate e se questa persona e` piu` qualificata di te, e quelli che ti hanno risposto lo sono, devi avere l'umilta` di accettare i tuoi errori e stare in silenzio. (la mia era una critica, non prenderla sul personale ;) )
  • o andiamo.... ci sono momenti in cui non riesco a farmi spiegare, ok... ma un codice sorgente in francese è sbagliato. su questo siamo o no tutti d'accordo?
  • Ovvio. Di certo potevi evitarti questa figura però, visto che il fatto del linguaggio era già stato ribadito da HeDo.
  • Peace <3 Comunque non avevo visto il commento ._.
  • peccato per il codice scritto in francese, di solito si usa l'inglese per il codice e i commenti (al max una lingua diversa solo per questi ultimi)...
  • Attenzione a lasciare questi commenti eretici. C'è qualcuno pronto a dirti che questa cosa dell'inglese l'hai letta su paperino ;)