ΕΛ/ΛΑΚ | creativecommons.gr | mycontent.ellak.gr |
freedom

Gisola: Ανοικτό Λογισμικό για τον υπολογισμό του Τανυστή Σεισμικής Ροπής, σε πραγματικό χρόνο, σχεδιασμένο σε αρχιτεκτονικές Συστημάτων Υψηλής Επίδοσης (HPC)

Στο πλαίσιο του προγράμματος «Υποστήριξη ερευνητών με έμφαση στους νέους ερευνητές-κύκλος Β’», με την υποστήριξη του Γεωδυναμικού Ινστιτούτου του Εθνικού Αστεροσκοπείου Αθηνών και του Εργαστηρίου Σεισμολογίας του Πανεπιστημίου Πατρών, αναπτύχθηκε ένα λογισμικό ανοικτού κώδικα για την άμεση επίλυση του Τανυστή Σεισμικής Ροπής (ΤΣΡ) σε πραγματικό χρόνο, υλοποιημένο σε αρχιτεκτονικές CPU και/ή GPU.

Το λογισμικό είναι υλοποιημένο κυρίως στην προγραμματιστική γλώσσα Python χρησιμοποιώντας ανοικτού κώδικα βασικές σεισμολογικές και υπολογιστικές βιβλιοθήκες όπως τις ObsPy, Matplotlib, Numpy κ.α., καθώς και την παράλληλης επεξεργασίας βιβλιοθήκη (multiprocessing). Ωστόσο, αρκετά τμήματα του βασικού του πυρήνα είναι γραμμένα σε Fortran, ενώ της οπτικοποίησης των αποτελεσμάτων σε τεχνολογίες διαδικτύου (π.χ. Leaflet Maps, Jinja2).

Εικόνα 1: Στιγμιότυπο από την οπτικοποίηση των υπολογισμών ΤΣΡ μέσω τεχνολογιών διαδικτύου -χρησιμοποιώντας κατά βάσει την ανοικτού κώδικα βιβλιοθήκη Javascript Leaflet- όπως αυτό απεικονίζεται, σε πραγματικό χρόνο, στο Γεωδυναμικό Ινστιτούτο του Εθνικού Αστεροσκοπείου Αθηνών: https://bbnet.gein.noa.gr/gisola/realtime

Στην επιστήμη της σεισμολογίας, o ΤΣΡ είναι μια μαθηματική αναπαράσταση που σχετίζεται άμεσα με τη γεωμετρία του ρήγματος και το μέγεθος του σεισμού. Οι ΤΣΡ χρησιμοποιούνται σε ένα ευρύ φάσμα ερευνητικών θεμάτων όπως τη σεισμοτεκτονική, τη μοντελοποίηση θαλασσίων κυμάτων βαρύτητας (tsunami), την άμεση αντίδραση σε ένα σεισμό, την εκτίμηση των καταστροφών κτλ. και ως εκ τούτου είναι σημαντικός ο γρήγορος και αξιόπιστος υπολογισμός τους. Ο καθορισμός της σωστής γεωμετρίας του ρήγματος, ειδικά αμέσως μετά από ένα μεγάλο γεγονός, βοηθά επίσης στην εκτίμηση της επερχόμενης σεισμικής δράσης και στη συσχέτιση του κύριου γεγονότος με τα επερχόμενα (μετασεισμοί) ή προηγούμενα (προσεισμοί). Για παράδειγμα, η γνώση του ΤΣΡ σε μικρό χρόνο μετά από ένα σεισμό, μας δίνει τη δυνατότητα να ανασύρουμε προϋπολογισμένα σενάρια κατανομής της εδαφικής κίνησης, να άρουμε την προειδοποίηση για τσουνάμι -αν ο σεισμός δεν έχει γίνει σε ρήγμα που μπορεί να προκαλέσει τσουνάμι- κ.α. 

Το πρόγραμμα χρησιμοποιεί προηγμένους αλγόριθμους, για την επιλογή κατάλληλων σεισμολογικών δεδομένων χρησιμοποιώντας ποιοτικούς δείκτες και μηχανισμούς αξιολόγησης των σεισμολογικών κυματομορφών. Χαρακτηριστικοί τέτοιοι αλγόριθμοι αποτελούν η αξιολόγηση της σχέσης σήματος προς θόρυβο -Signal-to-Noise Ratio (SNR)-, η ισχύς πιθανοτικού φάσματος πυκνότητας (probabilistic power spectral densities), οι “διαταραχές” μεγάλης περιόδου σε καταγραφές (mouse), η αφαίρεση της επίδρασης του σεισμολογικού οργάνου, η επιλογή σεισμολογικών δεδομένων βάσει της αζιμουθιακής κάλυψης του σεισμολογικού σταθμού σε σχέση με τη γεωγραφική θέση του σεισμικού γεγονότος (βλ. Εικόνα 2) κ.α. Οι αλγόριθμοι αυτοί υλοποιούνται σε παράλληλη εκτέλεση σε CPU με σκοπό την εκμετάλλευση της παράλληλης αρχιτεκτονικής των συστημάτων, για γρήγορα αποτελέσματα. Στο πλαίσιο του μαθηματικού προβλήματος, καταλυτικό ρόλο παίζει (i) o υπολογισμός των συναρτήσεων Green (Green’s Functions), για πολλαπλά μοντέλα ταχυτήτων (crustal models) σε τρεις χωρικές διαστάσεις (3-D) -γεωγραφικό μήκος, πλάτος και βάθος-, καθώς και (ii) ο υπολογισμός της μαθηματικής αντιστροφής κάνοντας χρήση των πραγματικών σεισμολογικών καταγραφών σε συνδυασμό με τις προϋπολογισμένες συναρτήσεις Green, που αποσκοπεί στην εύρεση της θέσης του κεντροειδούς και του ΤΣΡ σε ένα σύνολο σημείων ενός τετραδιάστατου κάναβου (4-D) -οι τρεις χωρικές και μια χρονική συντεταγμένη- (βλ. Εικόνα 3). Η καινοτομία στην υλοποίηση σε παράλληλες αρχιτεκτονικές (CPU και GPU) προσφέρει τη δυνατότητα για αντιστροφή σε πυκνούς χωροχρονικούς κανάβους και με πληθώρα παραμέτρων επιτρέποντας εγκυρότερη τελική εκτίμηση της ποιότητας της βέλτιστης λύσης και της διαφοράς της από τις υπόλοιπες λιγότερο πιθανές λύσεις. Με τον τρόπο αυτό, δηλαδή την εκτίμηση της πυκνότητας κατανομής πιθανότητας της λύσης (PDF), προκύπτει αυτόματα ο βαθμός αβεβαιότητας της επίλυσης, που μπορεί να ληφθεί υπόψη σε επόμενες ενέργειες.

Εικόνα 2: Στιγμιότυπο των προκρινόμενων σεισμολογικών καταγραφών που συμμετέχουν στον υπολογισμό του ΤΣΡ, βάσει της επιλογής τους από τους προηγμένους αλγορίθμους διαλογής καλής ποιότητας σεισμολογικών δεδομένων.

Ο κώδικας του υπολογισμού των συναρτήσεων Green, βασίζεται στο ανοικτού κώδικα -με δυνατότητα παράλληλης εκτέλεσης- λογισμικό Axitra, ενώ ο κώδικας της αντιστροφής, προέρχεται από το ISOLated Asperities (ISOLA) – ένα ευρέως χρησιμοποιούμενο ανοικτού κώδικα πρόγραμμα χειροκίνητης ανάκτησης ΤΣΡ- το οποίο βελτιώθηκε στο πλαίσιο του έργου με την παραλληλοποίηση του τόσο σε CPU, όσο και σε GPU, κάνοντας χρήση των προτύπων OpenMP και OpenACC αντίστοιχα.

Επιπλέον, το Gisola προσφέρει τη δυνατότητα διασύνδεσης για ανάκτηση σεισμολογικών δεδομένων και μεταδεδομένων (χαρακτηριστικά των σεισμολογικών οργάνων) σε πασίγνωστες πλατφόρμες και υπηρεσίες στο χώρο της σεισμολογίας όπως το διεθνές πρότυπο FDSN (Federation of Digital Seismograph Networks) Web Services, το πρωτόκολλο μετάδοσης σεισμολογικών δεδομένων -σε πραγματικό χρόνο- SeedLink και τη διασύνδεση με το SDS (SeisComP Data Structure (SDS) πρότυπο αρχειοθέτησης (archiving) σεισμολογικών δεδομένων. Το νέο αυτό λογισμικό δημοσιεύει τα αποτελέσματά του σε διάφορες μορφές, όπως στα σεισμολογικά XML πρότυπα, QuakeML και SC3ML. Επιπλέον, περιλαμβάνει (i) σουίτα ιστότοπου για άμεση διανομή της επίλυσης, την ανασκόπηση της αλλά και τη δυνατότητα αναζήτησης των παλαιότερων ΤΣΡ, καθώς και (ii) σύστημα ειδοποιήσεων μέσω ηλεκτρονικού ταχυδρομείου, αλλά και (iii) αποθήκευση των αποτελεσμάτων σε MySQL βάση δεδομένων παρόμοια της ανοικτού κώδικα ευρέως διαδεδομένης σεισμολογικής σουίτας προγραμμάτων και εργαλείων SeisComP), όπως επίσης και (iv) διανομή των αποτελεσμάτων με βάση το πρότυπο των FDSN Web Services (RESTful web services). Τέλος, ο χρήστης δύναται να χρησιμοποιήσει την εφαρμογή τόσο για επιχειρησιακούς, όσο και για ερευνητικούς σκοπούς, καθώς διαθέτει τον πλήρη και εκτεταμένο έλεγχο όλων των πτυχών υπολογισμού μέσω κατάλληλων ρυθμίσεων σε YAML αρχεία.

Εικόνα 3: Στιγμιότυπο από επιμέρους ΤΣΡ υπολογισμούς στον τετραδιάστατο κάναβο (χωροχρονική αναζήτηση) και επιλογή της πιο καλά συσχετισμένης λύσης ως προτεινόμενη.

Μέχρι στιγμής με τη χρήση του ανοικτού λογισμικού Gisola έχουν πραγματοποιηθεί περί τους 1000 υπολογισμούς ΤΣΡ σεισμικών γεγονότων στον Ελλαδικό χώρο από το 2012 έως και τις αρχές του 2022, για σεισμούς μεγέθους μεγαλύτερων ή ίσων των 4 βαθμών της κλίμακας σεισμικής ροπής (Mw). Αυτή τη στιγμή λειτουργεί επιχειρησιακά, σε πραγματικό χρόνο, στο Γεωδυναμικό Ινστιτούτο του Εθνικού Αστεροσκοπείου Αθηνών (Εικόνα 1). 

Ο κώδικας μαζί με οδηγίες (Wiki) εγκατάστασης και χρήσης είναι ελεύθερος για χρήση, τροποποίηση και αναδιανομή από οποιονδήποτε, και είναι προσβάσιμος για λήψη από το αποθετήριο GitHub (με mirroring στο GitLab).

Επιπλέον, η παρουσίαση της εργασίας βραβεύτηκε στο συνέδριο European Geosciences Union (EGU) General Assembly 2021 με το βραβείο Virtual Outstanding Student and PhD candidate Presentation (vOSPP) Award 2021, παρουσιάστηκε, επίσης, στο ετήσιο πανελλήνιο συνέδριο κοινοτήτων ελεύθερου λογισμικού και λογισμικού ανοικτού κώδικα FOSSCOMM 2021 (παρουσίαση και βίντεο), ενώ δημοσιεύθηκε στο καταξιωμένο σεισμολογικό περιοδικό Seismological Research Letters (δημοσίευση).

Νικόλαος Τριανταφύλλης
Διπλ. Μηχανικός Η/Υ & Πληροφορικής

Leave a Comment

Social Media Auto Publish Powered By : XYZScripts.com