You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
1.4 KiB
Markdown
35 lines
1.4 KiB
Markdown
# Laboratorio-Computazionale
|
|
|
|
Questo repository contiene il codice per disegnare e calcolare un grafo. Il progetto è diviso in due file principali:
|
|
|
|
1. **main.c**: Questo file contiene il codice per calcolare le posizioni dei nodi del grafo utilizzando un algoritmo di posizionamento basato su forze repulsive e attrattive(Fruchterman-Reingold).
|
|
2. **disegna.c**: Questo file contiene il codice per visualizzare il grafo utilizzando la libreria SDL2.
|
|
|
|
## Contenuto del Repository
|
|
|
|
### File Principali
|
|
|
|
- **main.c**:
|
|
- Implementa la logica per leggere un file di grafo, calcolare le forze repulsive e attrattive tra i nodi, e aggiornare le posizioni dei nodi in base a queste forze.
|
|
- Utilizza la libreria MPI per parallelizzare il calcolo delle forze e delle posizioni dei nodi.
|
|
- **disegna.c**:
|
|
- Legge il file di output generato da `main.c` e visualizza il grafo usando SDL2.
|
|
- Permette di effettuare zoom in/out e di muovere la vista del grafo tramite input da tastiera e mouse.
|
|
|
|
### File di Supporto
|
|
- **out.txt**: Esempio di file di output generato dal programma di calcolo.
|
|
|
|
## Requisiti
|
|
|
|
Per compilare ed eseguire il codice sono necessarie le librerie standard, più le seguenti librerie:
|
|
|
|
- **MPI**: Libreria per la programmazione parallela.
|
|
- **SDL2**: Libreria per la visualizzazione grafica.
|
|
|
|
## Autore
|
|
|
|
Progetto realizzato da [Francesco Romeo].
|
|
## Licenza
|
|
|
|
Questo progetto è distribuito sotto la licenza MIT.
|