Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Σμιρνωφ, ευχαριστώ για την απάντηση. Αν έχεις χρόνο να αναπτύξεις και το δεύτερο θέμα, θα το εκτιμούσα ιδιαίτερα.

Δημοσ.

@insomniak

 

Εντάξει, να σου πω λίγα πράγματα και για το δεύτερο θέμα που πρότεινα.

Το θέμα αυτό είναι κατάλληλο για όσους ενδιαφέρονται για υπολογιστικές μεθόδους, γραφικά και υπολογιστική γεωμετρία.

 

Η κατασκευή πλεγμάτων γενικά δεν διδάσκεται πουθενά (αν και τα τελευταία χρόνια έχουν αρχίσει να εμφανίζονται courses αποκλειστικά αφιερωμένες σ’ αυτό).

Μια γεννήτρια πλέγματος (mesh generator) και γενικότερα η δημιουργία/επεξεργασία υπολογιστικών πλεγμάτων είναι σημαντική για συστήματα CAD και GIS τα οποία

επεξεργάζονται γεωμετρικές πληροφορίες επιφανειών ή/και δεδομένα που απορρέουν από αυτές. Επιπλέον είναι μεγάλης σημασίας για τις μεθόδους FEM και BEM αφού

το πλέγμα είναι το πρωταρχικό και σημαντικότερο δεδομένο για να δουλέψουν. Πιθανόν όσοι έχουν πάρει σχετικά μαθήματα (κυρίως οι μηχανικοί) να έχουν δει

ξώφαλτσα κάτι επ’ αυτού.

 

Η κατασκευή ενός πλέγματος για πολύπλοκες γεωμετρίες (και γενικώς αυθαίρετα σχήματα) είναι δύσκολη και αποτελεί μια επιστήμη από μόνη της.

Περιοριζόμενοι στις δυο διαστάσεις, μια επιφάνεια πρέπει να διακριτοποιηθεί σε τρίγωνα ή τετράπλευρα όταν δίνεται το περίγραμμά της.

Αυτό είναι συνήθως και το δεδομένο που έχουμε ή μπορούμε να βρούμε εύκολα στην πράξη. Το περίγραμμα μπορεί να δίνεται είτε διακριτοποιημένο(δηλ. σημεία),

είτε με την μορφή καμπυλών NURBS οι οποίες περιγράφουν οποιαδήποτε καμπύλη. Από εκεί και πέρα υπάρχουν πολλοί τρόποι για να φτιαχτεί το πλέγμα.

Είναι ανέφικτο να σχολιαστούν εδώ όλες οι διαθέσιμες τεχνικές.

Δύο από τις πιο αποδοτικές και ενδιαφέρουσες είναι οι τεχνικές Dellauny και προωθούμενου μετώπου (advancing front technique – AFT).

Η πρώτη (Dellauny) πρέπει να είναι γνωστή σε όσους ξέρουν υπολογιστική γεωμετρία.

Πρόκειται για μια τεχνική τριγωνισμού. Στους τριγωνισμούς, το δεδομένο είναι ένα σύνολο σημείων. Τα σημεία αυτά συνδέονται και κατασκευάζονται

τρίγωνα (δηλ. το ζητούμενο πλέγμα). Υπάρχουν διάφοροι τρόποι τριγωνισμού αλλά η μέθοδος dellauny παράγει τριγωνικό πλέγμα με ειδικές ιδιότητες.

Π.χ. τα τρίγωνα τείνουν όσο το δυνατόν να είναι ισόπλευρα, οι περιγεγραμμένοι κύκλοι των τριγώνων δεν περιέχουν άλλα σημεία κλπ.

Αυτά τα χαρακτηριστικά είναι πολύ επιθυμητά για υπολογιστικά πλέγματα (π.χ. τρίγωνα που είναι πολύ επιμήκη είναι ανεπιθύμητα διότι

επιφέρουν σφάλματα κλπ).

Η τριγωνοποίηση dellauny είναι κοινοτοπία στην υπολογιστική γεωμετρία και εξετάζεται ενδελεχώς μαζί τα διαγράμματα voronoi.

Ωστόσο η χρήση της για την κατασκευή πλεγμάτων θέτει προβλήματα που δεν εξετάζονται στην υπολογιστική γεωμετρία.

- παραδοσιακά, ο αλγόριθμος dellauny τριγωνοποεί σημεία που ήδη υπάρχουν. Στην περίπτωση κατασκευής πλέγματος πρέπει να δημιουργηθούν στο

εσωτερικό του χωρίου χρησιμοποιώντας τα δεδομένα του περιγράμματος. Διάφορες παραλλαγές του αλγορίθμου dellauny έχουν αναπτυχθεί για να κάνουν

ταυτόχρονα και αυτή τη δουλειά.

- ο τριγωνισμός dellauny απορρέει από τα διαγράμματα voronoi που ορίζονται μόνον για κυρτά πολύγωνα. Συνεπώς λειτουργεί μόνον για κυρτά χωρία.

Η dellauny τριγωνοποίηση μη κυρτών χωρίων είναι γενικά προβληματική. Για να γίνει πρέπει να τριγωνιστεί ένα κυρτό χωρίο που περιέχει την

επιθυμητή μη κυρτή περιοχή και μετά να αφαιρεθεί το επιπλέον τμήμα.

- οι τρύπες θέτουν επιπλέον προβλήματα και αντιμετωπίζονται με παρόμοιους τρόπους.

- κατασκευή τριγωνισμών που εξαρτώνται από τα δεδομένα (π.χ. υψόμετρο σε ένα πλέγμα που απεικονίζει μια γεωγραφική επ.)

- εισαγωγή προκαθορισμένων ακμών (constrained dellauny triangulation - CDT)

 

Η άλλη τεχνική (advancing front technique) δημιουργεί ένα πλέγμα χρησιμοποιώντας το περίγραμμα ως μέτωπο που προωθείται σταδιακά στο

εσωτερικό του χωρίου. Δημιουργεί πλέγματα καλύτερης ποιότητας από την τεχνική dellauny και δουλεύει για αμφότερες κυρτές και μη κυρτές

γεωμετρίες. Είναι όμως αρκετά πιο αργή.

 

Μια γεννήτρια πλέγματος, εκτός από το να φτιάχνει το πλέγμα (πρέπει να) παρέχει κι άλλα πράγματα. Π.χ.

- πύκνωση/αραίωση του πλέγματος σε συγκεκριμένες περιοχές με βάση κάποια κριτήρια,

- μετατροπή των παραγόμενων τριγώνων σε τετράπλευρα,

- εκτίμηση της ποιότητας του πλέγματος (π.χ. πόσο ισόπλευρα είναι τα τρίγωνα και κατανομή των ελάχιστων γωνιών ή των μηκών τους κλπ),

- δυνατότητα smoothing ή/και averaging των τριγώνων

 

Υπάρχουν πολλά ακόμα ζητήματα που δεν μπορούν να εκτεθούν εδώ. Ήδη με τα παραπάνω μάλλον υποτιμάται η έκταση και η σημασία τους.

 

Οι απαιτούμενες γνώσεις είναι κυρίως άριστη γνώση κάποιας γλώσσας προγραμματισμού όπως C++ αφού ότι επιλεγεί πρέπει να γίνει πρόγραμμα.

Μια επιπλέον δυνατότητα είναι η “γραφική φορεσιά” του τελικού προγράμματος (π.χ. με την Qt) ή/και η οπτικοποίηση του τελικού πλέγματος

με openGL. Ανάλογα με το πόσο και πού επεκτείνεται ο ενδιαφερόμενος μπορεί να χρειαστούν έννοιες από την υπολογιστική γεωμετρία και τα

γραφικά και ξώφαλτσα και από την διαφορική γεωμετρία.

Αντίστοιχα προβλήματα στον χώρο είναι πολύ πιο σύνθετα και δεν μπορούν να εξεταστούν στα πλαίσια μιας πτυχιακής.

Από τα βασικά οφέλη που δίνει ένα τέτοιο θέμα είναι η απεικόνιση και οργάνωση γεωμετρικών και άλλων δεδομένων,

η προγραμματιστική εφαρμογή γεωμετρίας και μαθηματικών εννοιών και η εισαγωγή στην γεωμετρική επεξεργασία.

Πίστεψέ με, το να ξέρεις να φτιάχνεις πλέγμα δεν είναι μικρό πράγμα - ειδικά αν ασχοληθείς με υπολογιστικές μεθόδους...

Βιβλιογραφία υπάρχει και αν επιλεγεί στοχευμένα το θέμα είναι πραγματεύσιμο σε λογικό χρόνο. Εξάλλου από τα παραπάνω γίνεται επιλογή.

Επειδή αυτά τα πράγματα δεν τα ξέρουν και πολλοί, όποιος ξεκινήσει δεν θα πρέπει να αναμένει βοήθεια από τους γύρω του.

Πάντως είναι θέμα για ενδιαφερόμενους που θέλουν να αποκτήσουν γνώσεις σε hard core ζητήματα κι όχι σε εμπορικά θέματα της σειράς.

Πήξαμε στις βάσεις δεδομένων, στα strings και στην java...

 

Τέλος τονίζω ότι δεν είμαι απόφοιτος πληροφορικής και οι απόψεις μου για την ευκολία και την χρησιμότητα του θέματος είναι πολωμένες

από τα δικά μου ενδιαφέροντα…

 

-

Δημοσ.

για το δεύτερο θέμα, χωρίς να μπορώ να μπω σε τεχνικές λεπτομέριες, νομίζω ότι υπάρχουν πλέγματα όπως τα παρουσιάζεις και σε τρεις διαστάσεις. Από την πλευρά της υδροδυναμικής η οποία και κυρίως με ενδιαφέρει (ούτε γω έχω σχέση με την πληροφορική) υπάρχουν υλοποιήσεις, οι οποίες και χρησιμοποιούνται σε υπολογιστικά προβλήματα. Στο λινκ που έδωσα στο προπροηγούμενο μήνυμα μου, αν δεις στα downloads, δίνονται 3-4 mesh generators, που κάποιοι έχουν καρακτηριστικά από αυτά που παρουσιάζεις.

Για την advance τεχνική που αναφέρεις, δεν ξέρω αν είναι τεχνικά το ίδιο, αλλά είναι σαν υλοποίηση για finite volume.

 

Σε κάθε περίπτωση, δεν είχα σκοπό να σου την πω, απλά περίεργος είμαι και ρωτώ. Η γενική μου εντύπωση είναι πως αν ο υπεύθυνος καθηγητής δεν ασχολείται με τα αντικείμενα, μάλλον ο υποψήφιος θα τις παρατήσει, διότι θα χαθεί. Από την άλλη το πιο ενδιαφέρον θέμα, είναι φανερό το δεύτερο.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...