Progetto per il corso Parallel and Distributed Computing 2020/2021.
Questo progetto contiene l'analisi e la parallelizzaione del pacchetto AlphStructures.jl.
AlphStructures.jl è una libreria Julia che consente di analizzare le nuvole di punti.
Utilizzando AlphaStructures.jl è possibile:
- Valutare la "α-Shape" di una nuvola di punti.
- Calcolare la "α-Filtration" di una nuvola di punti.
- Creare la "α-Complex" di una nuvola di punti.
- Trovare alcune nozioni di base sulla valutazione dell'omologia persistente di una nuvola di punti.
Esempio 2D di questo package al variare del parametro α:
Esempio 3D di questo package al variare del parametro α:

per maggiori informazioni visitare: AlphaStructures.jl Documentation
- Lo studio del pacchetto AlphStructures.jl e di tutte le funzioni e strutture dati utilizzate al suo interno
- La successiva suddivisione delle funzioni (quando possibile) in singoli tasks
- La creazione di una descrizione per ogni task, tipologia e significato di ogni parametro e valore di ritorno
- Stimare comportamenti e tempi delle singole funzioni mirando ad una loro ottimizzazione
- Parallelizzare il codice utilizzando le macro Julia dove possibile.
AlphShapes.jl ha le seguenti dipendenze:
- Julia 1.5.3
- LinearAlgebraicRepresentation.jl di CVDLab
- TimerOutputs.jl di KristofferC
- SharedArrays.jl di JuliaLang
- Distributed.jl di JuliaLang
- Triangle.jl di CVDLab
- Combinatorics.jl di JuliaMath
- DataStructures.jl di JuliaCollection
- viewerGL.jl di CVDLab
- Installare il package tramite Pkg, gestore di pacchetti di Julia, digitando Pkg.add(url="https://github.com/luigibvl/AlphaShapes.jl")
- Utilizzare il modulo appena installato utilizzando la parola chiave using