Σε αυτή τη διπλωματική εργασία αναπτύσσεται λογισμικό για βελτιστοποίηση αεροδυναμικής μορφής σε χρονικά μη-μόνιμη, μη-συνεκτική ροή. Η βελτιστοποίηση γίνεται με τη μέθοδο της απότομης καθόδου για την οποία απαιτούνται οι παράγωγοι ευαισθησίας της συνάρτησης-στόχου, που είναι ένα ολοκλήρωμα στον χρόνο, ως πρός τις μεταβλητές σχεδιασμού. Αυτές βρίσκονται με τη συνεχή συζυγή μέθοδο και ,εδώ, έμφαση δίνεται στη χρήση της μεθόδου της επιλεκτικής αποθήκευσης στιγμιοτύπων του πεδίου ροής με τη βοήθεια δεικτών μνήμης checkpoints. Κίνητρο για τη μελετη της μεθόδου αποτελεί η εξοικονόμηση μνήμης κατά τον υπολογισμό των συζυγών μεταβλητών με αποδεκτή όμως αύξηση του υπολογιστικού χρόνου. Εξοικονομείται μνήμη αποθηκεύοντας επιλεκτικά σε ορισμένα χρονικά βήματα, τις λύσεις του ευθέος προβλήματος αντί σε κάθε χρονικό βήμα. Στη συνέχεια, για να επιλυθούν οι συζυγείς εξισώσεις, επεναϋπολογίζονται οι μεταβλητές της ροής σε όποιο χρονικό βήμα δεν έχουν αποθηκευτεί λύνοντας το ευθύ πρόβλημα με αρχή το τελευταίο αποθηκευμένο στιγμιότυπο-πεδίο λύσεων. Τα checkpoints κατανέμονται κατά τη λύση του ευθέος προβλήματος με τέτοιο τρόπο ώστε να ελαχιστοποιούνται οι φορές που πρέπει να επεναϋπολογιστούν οι εξισώσεις ροής σε κάθε χρονικό βήμα. Οι εξισώσεις ροής επιλύονται με χρονοπροέλαση (και οι συζυγείς εξισώσεις με ανάποδη χρονοπροέλαση) με τη μέθοδο Runge-Kutta τρίτης τάξης. Εδώ προγραμματίστηκε κώδικας σε Fortran77 που διαχειρίζεται τους επιλύτες του εργαστηρίου και την τοποθέτηση των δεικτών μνήμης με βάση τη θεωρία του
checkpointing. Τα παραπάνω εφαρμόστηκαν σε δύο περιπτώσεις βελτιστοποίησης με κριτήρια την αύξηση του συντελεστή άνωσης και τη μείωση του συντελεστή οπισθέλκουσας κατά τη διάρκεια ενός μεταβατικού φαινομένου. Τα αποτελέσματα που προέκυψαν οδήγησαν στη διεξαγωγή συμπερασμάτων για την αξιοπιστία της μεθόδου του checkpointing για το κόστος της σε υπολογιστικό χρόνο και τα πλεονεκτήματά της.
In this diploma thesis, an aerodynamic shape optimization method for unsteady flows governed by Euler equations is set up. Optimization is carried out through the steepest descent method, where the sensitivity derivatives of the objective function with respect to the design variables are computed using the continuous adjoint method.
This diploma thesis lays emphasis to the use of the checkpointing method for saving memory whilst the computation of the adjoint variables.
In checkpointing, memory is saved by selectively storing solutions to the primal (flow) problem at certain time steps, instead of every time step. Consequently, during the solution of the adjoint equations, the instantaneous flow fields are recomputed at each time step for which no stored solutions are available, starting from the solutions of the last saved time step and solving it until the current time step.
The checkpoints are distributed during the solution of the direct problem in such way, so as to minimize the recomputation of the direct variables on each time step.
The flow equations are solved by time-marching (and the adjoint equations by reverse time-marching) using the method of third-order Runge-Kutta. In this thesis, a code programmed in Fortran77 manages existing flow and adjoint equations' solvers and the distribution of the checkpoints according to the checkpointing theory. All the above was used to solve two optimization cases which targeted at matching a prescribed lift coefficient value and the reduction in the drag coefficient for the duration of the unsteady flow phenomenon. The output results of these cases led to conclusions about the reliability, the cost and the advantages of the checkpointing
method.