Τι είναι το Meshgrid στο MATLAB;

Το MATLAB είναι ένα εύχρηστο πακέτο μαθηματικού λογισμικού για την εκτέλεση υπολογισμών που κυμαίνονται από απλή αριθμητική και λογισμό έως γραμμική άλγεβρα και επεξεργασία σήματος. Μπορεί επίσης να σχεδιάσει δεδομένα σε γραφήματα. Οι χιλιάδες ενσωματωμένες λειτουργίες του MATLAB του δίνουν τη δύναμή του και ένα από τα ισχυρά εργαλεία σχεδίασης είναι η λειτουργία "meshgrid". Η συνάρτηση τοποθετεί τις γραμμές πλέγματος που ορίζονται από το χρήστη σε δισδιάστατα και τρισδιάστατα γραφήματα.

Προεπιλογές σχεδίασης MATLAB

Όταν χρησιμοποιείτε οποιαδήποτε από τις συναρτήσεις τρισδιάστατης γραφικής παράστασης στο MATLAB από μόνη της χωρίς πρόσθετες οδηγίες, το MATLAB δεν θα χρησιμοποιεί γραμμές πλέγματος. Εάν ο χρήστης σχεδιάζει ένα γράφημα σε δισδιάστατο χώρο, η περιοχή φόντου της γραφικής παράστασης είναι κενή και λευκή. Στον τρισδιάστατο χώρο, το MATLAB θα χρησιμοποιεί ένα γενικό πλέγμα. Εάν οι γραμμές πλέγματος οποιουδήποτε είδους πρέπει να εμφανιστούν σε ένα γράφημα 2-Δ για να γίνει πιο ξεκάθαρη η εμφάνισή του, ο χρήστης πρέπει να καθορίσετε ότι κατά την κλήση της εντολής plot ή από το παράθυρο σχήματος αφού το MATLAB δημιουργήσει το γραφική παράσταση.

Το βίντεο της ημέρας

Meshgrid Versus Grid

Η συνάρτηση "πλέγμα" του MATLAB είναι ένας απλός τρόπος για να ενεργοποιήσετε τις γενικές γραμμές πλέγματος σε 2-D κατά την κλήση μιας γραφικής παράστασης. Ένας προ-προγραμματισμένος αλγόριθμος στο MATLAB καθορίζει πόσες γραμμές πλέγματος θα χρησιμοποιηθούν και πόσο απέχουν μεταξύ τους για να τοποθετηθούν. Αντίθετα, ο χρήστης καθορίζει πλήρως τις οριζόντιες και κάθετες γραμμές πλέγματος που εμφανίζονται σε ένα γράφημα όταν χρησιμοποιεί τη λειτουργία "meshgrid". Επιπλέον, ο αριθμός των γραμμών πλέγματος και η απόσταση τους είναι ίδια και για τους δύο άξονες με "πλέγμα", αλλά με "meshgrid" ο χρήστης θα μπορούσε να απαιτήσει, για παράδειγμα, τρεις γραμμές πλέγματος οριζόντια και 100 γραμμές πλέγματος κάθετα.

3-D Παράδειγμα

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

[X, Y] = meshgrid(-2:.2:2, -1:0.2:1) Z = X .* exp(-X.^2 - Y.^2); σερφάρισμα (X, Y, Z)

Η πρώτη γραμμή κώδικα λέει στο MATLAB να χρησιμοποιεί οριζόντιες γραμμές πλέγματος που κυμαίνονται από -2 έως 2, με κενά 0,2. Απαιτεί επίσης κάθετες γραμμές πλέγματος από -1 έως 1 σε βήματα των δέκατων. Η δεύτερη γραμμή λέει στο MATLAB πώς να υπολογίσει την τιμή "Z" με βάση τις τιμές "X" και "Y". Τέλος, η λειτουργία "surf" του MATLAB σχεδιάζει μια τρισδιάστατη επιφάνεια αιωρούμενη στο διάστημα, με το πλέγμα πλέγματος προσαρμοσμένο στην επιφάνεια.

Ένα άλλο τρισδιάστατο παράδειγμα

Εδώ είναι ένας άλλος τρόπος για να χρησιμοποιήσετε το "meshgrid" για μια τρισδιάστατη πλοκή.

[X, Y] = meshgrid(-2:.2:2) Z = X .* exp(-X.^2 - Y.^2); σερφάρισμα (X, Y, Z)

Η δεύτερη και η τρίτη γραμμή είναι πανομοιότυπες με την προηγούμενη ενότητα, αλλά σε αυτήν την περίπτωση, η συνάρτηση "meshgrid" πήρε μόνο ένα όρισμα. Το MATLAB κατανοεί ότι η λήψη μόνο ενός ορίσματος σημαίνει στην πραγματικότητα ότι ο χρήστης λέει στο πρόγραμμα να χρησιμοποιήσει τον ίδιο αριθμό γραμμών πλέγματος και κενά για τις τιμές "X" και "Y". Με αυτόν τον κωδικό, η επιφάνεια θα έχει 21 οριζόντιες γραμμές πλέγματος καθώς και 21 κάθετες γραμμές πλέγματος, όλες σε ίση απόσταση.