MATLAB

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια
MATLAB
Τρισδιάστατη γραφική παράσταση στην Matlab.
Γενικά
Ημερ. Δημιουργίας1984
Είδοςεφαρμογή, λογισμικό μαθηματικών, γλώσσα προγραμματισμού
Διανομή
ΈκδοσηR2023b Update 6 (10 Ιανουάριος 2024)[1]
ΛειτουργικάMicrosoft Windows, macOS, Linux
Ανάπτυξη
Υπευθ. ανάπτυξηςMathWorks,[2] Cleve Moler[3]
Γραμμένο σεC, C++, Fortran, Java
Άδεια χρήσηςιδιόκτητη άδεια
Σύνδεσμοι
Επίσημος ιστότοπος
https://www.mathworks.com/products/matlab.html

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

Χρησιμοποιείται κατά κύριο λόγο για την επίλυση μαθηματικών προβλημάτων, ωστόσο είναι πολύ "ισχυρό" εργαλείο και μπορεί να χρησιμοποιηθεί και για γενικό προγραμματισμό καθώς περιέχει εντολές από την C++ όπως την while, την switch και την if. Στον τομέα των γραφικών όσον αφορά τον μαθηματικό κλάδο μπορεί να υλοποιήσει συναρτήσεις πραγματικές, μιγαδικές, συναρτήσεις δύο μεταβλητών και άλλες. Όσον αφορά τον στατιστικό κλάδο μπορεί να υλοποιήσει ιστογράμματα, τομεογράμματα, ραβδοδιαγράμματα, εμβαδογράμματα και άλλα.

Από το 2020, η MATLAB έχει περισσότερους από 4 εκατομμύρια χρήστες παγκοσμίως. [4] Οι χρήστες της MATLAB προέρχονται από διάφορα υπόβαθρα όπως μηχανικής, επιστήμων και οικονομικών.

Εκδόσεις[Επεξεργασία | επεξεργασία κώδικα]

Version[5] Όνομα Έκδοσης Αριθμός ΠακέτοJVM Χρονιά Ημερομηνία Έκδοσης Σημειώσεις
MATLAB 1.0 1984
MATLAB 2 1986
MATLAB 3 1987
MATLAB 3.5 1990 Έτρεχε σε DOS αλλά χρειαζόταν τουλάχιστον επεξεργαστή της σειράς 386; Η έκδοση 3.5m χρειαζόταν Μονάδα Κινητής Υποδιαστολής FPU.
MATLAB 4 1992 Έτρεχε σε Windows 3.1x και Macintosh
MATLAB 4.2c 1994 Έτρεχε σε Windows 3.1x, χρειαζόταν μια Μονάδα κινητής υποδιαστολής
MATLAB 5.0 Τόμος 8 1996 Δεκέμβριο 1996 Ενοποιημένες εκδόσεις για όλες τις πλατφόρμες
MATLAB 5.1 Τόμος 9 1997 Μάιος 1997
MATLAB 5.1.1 R9.1
MATLAB 5.2 R10 1998 Μάρτιος 1998 Η τελευταία λειτουργική έκδοση για περιβάλλον κλασικού Mac.
MATLAB 5.2.1 R10.1
MATLAB 5.3 R11 1999 Ιανουάριος 1999
MATLAB 5.3.1 R11.1 Νοέμβριος 1999
MATLAB 6.0 R12 12 1.1.8 2000 Νοέμβριο 2000 Πρώτη έκδοση που κυκλοφόρησε με πακέτο Εικονικής μηχανής της Java (JVM)
MATLAB 6.1 R12.1 1.3.0 2001 Ιούνιος 2001 Τελευταία έκδοση που κυκλοφόρησε για τα Windows 95
MATLAB 6.5 R13 13 1.3.1 2002 Ιούλιος 2002
MATLAB 6.5.1 R13SP1 2003
MATLAB 6.5.2 R13SP2 Τελευταία έκδοση που κυκλοφόρησε για τα Windows 98, Windows ME, IBM/AIX (UNIX), Alpha/TRU64 (UNIX), and SGI/IRIX[6]
MATLAB 7 R14 14 1.4.2 2004 Ιούνιος 2004 Προστέθηκε η υποστήριξη για ανώνυμες και ένθετες συναρτήσεις[7]

Επανακυκλοφόρησε για Mac (για MacOS).

MATLAB 7.0.1 R14SP1 Οκτώβριος 2004
MATLAB 7.0.4 R14SP2 1.5.0 2005 Μάρτιος 7, 2005 Προσθήκη υποστήριξης για αρχεία που αντιστοιχούν στην μνήμη (memory-mapped files)[8]
MATLAB 7.1 R14SP3 1.5.0 Σεπτέμβριος 1, 2005 Πρώτη έκδοση για επεξεργαστές με λογική 64-bit, έκδοση για τα Windows XP 64-bit.
MATLAB 7.2 R2006a 15 1.5.0 2006 Μάριος 1, 2006
MATLAB 7.3 R2006b 16 1.5.0 Σεπτέμβριος 1, 2006 Προσθήκη υποστήριξης MAT-αρχείων με HDF5
MATLAB 7.4 R2007a 17 1.5.0_07 2007 Μάρτιος 1, 2007 Νέα συνάρτηση bsxfun για την εφαρμογή δυαδικών πράξεων στοιχείο-στοιχείο με χρήση του μοτίβου sigleton[9]
MATLAB 7.5 R2007b 18 1.6.0 Σεπτέμβριος 1, 2007 Τελευταία έκδοση για τα Windows 2000 και PowerPC Mac; Προσθήκη υποστήριξης Διακομιστή Αδειών για Windows Vista;[10] νέα εσωτερική μορφή για την εκτέλεση P-κώδικα
MATLAB 7.6 R2008a 19 1.6.0 2008 Μάρτιος 1, 2008 Μεγάλη ανάπτυξη λειτουργιών αντικειμενοστρεφούς προγραμματισμού με την προσθήκη του συντακτικού για την δημιουργία κλάσης (class),[11] προσθήκη ικανότητας επεξεργασίας και διαχείρησης χώρων ονομάτων (namespaces) με πακέτα[12]
MATLAB 7.7 R2008b 20 1.6.0_04 Οκτώβριος 9, 2008 Τελευταία έκδοση που κυκλοφόρησε για επεξεργαστές χωρίς το σύνολο εντολών SSE2. Προσθήκη της καινούργιας δομής δεδομένων Map:[13] βελτιώσεις στην Γεννήτρια τυχαίων αριθμών[14]
MATLAB 7.8 R2009a 21 1.6.0_04 2009 Μάρτιος 6, 2009 Πρώτη έκδοση για τα Microsoft 32-bit & 64-bit Windows 7, και νέα εξωτερική διεπαφή με το πλαίσιο λογισμικού .NET [15]
MATLAB 7.9 R2009b 22 1.6.0_12 Σεπτέμβριος 4, 2009 Πρώτη έκδοση για Intel 64-bit Mac, καθώς και τελευταία γιαSolaris SPARC; νέα χρήση του χαρακτήρα περισπωμένης (tilde) (~) για την αδιαφορία παραμέτρων στις κλήσεις συναρτήσεων[16][17]
MATLAB 7.9.1 R2009bSP1 1.6.0_12 2010 Απρίλιος 1, 2010 Διορθώσεις λαθών κώδικα.
MATLAB 7.10 R2010a 23 1.6.0_12 Μάρτιος 5, 2010 Τελευταία έκδοση για Intel 32-bit Mac
MATLAB 7.11 R2010b 24 1.6.0_17 Σεπτέμβριος 3, 2010 Προσθήκη υποστήριξης για απαριθμήσεις (enumerations)[18]
MATLAB 7.11.1 R2010bSP1 1.6.0_17 2011 Μάρτιος 17, 2011 Διόρθωση λαθών κώδικα και αναβαθμίσεις
MATLAB 7.11.2 R2010bSP2 1.6.0_17 Απρίλιος 5, 2012[19] Διόρθωση λαθών κώδικα
MATLAB 7.12 R2011a 25 1.6.0_17 Απρίλιος 8, 2011 Προσθήκη συνάρτησης rng για την παραγωγή ψευδοτυχαίων αριθμών[20][21][22]
MATLAB 7.13 R2011b 26 1.6.0_17 Σεπτέμβριος 1, 2011 Δυνατότητα φόρτωση τμημάτων μεταβλητών με την χρήση αρχείων MAT, χωρίς να τις φορτώνει το MATLAB στην μνήμη;[23] Αύξηση του ορίου ταυτόχρονης επεξεργασιας απο 8 σε 12;[24]
MATLAB 7.14 R2012a 27 1.6.0_17 2012 Μάρτιος 1, 2012 Τελευταία έκδοση για τα 32-bit Linux.[25]
MATLAB 8 R2012b 28 1.6.0_17 Σεπτέμβριος 11, 2012 Πρώτη έκδοση με σχεδιασμό διεπαφής υπολογιστή (Ribbon);[26] MATLAB Apps.[27] επαναδιαμόρφωση του συστήματος τεκμηρίωσης (documentation system)
MATLAB 8.1 R2013a 29 1.6.0_17 2013 Μάρτιος 7, 2013 Προσθήκη της επιλογής επεξεργασίας κώδικα με το πλαισίο δοκιμής μονάδας[28]
MATLAB 8.2 R2013b 30 1.7.0_11 Σεπτέμβριος 6, 2013[29] Αναβάθμηση της εσωτερικής έκδοσης του Java Runtime Environment (JRE) στην έκδοση 7;[30] Νέα δομή δεδομένων table[31]
MATLAB 8.3 R2014a 31 1.7.0_11 2014 Μάρτιος 7, 2014[32] Απλοποίηση της δομής του μεταγλωττιστή (compiler) για την δημιουργία MEX-αρχείων; Προσθήκη υποστήριξης για USB Κάμερες στη βασική έκδοση του MATLAB; Αύξηση του ορίου ταυτόχρονης επεξεργασιας απο 12 που ήταν πριν χάρης στο Περιβάλλον Ανάπτυξης Παράλληλου Υπολογισμού.
MATLAB 8.4 R2014b 32 1.7.0_11 Οκτώβριος 3, 2014 Νέα μηχανή γραφικών που βασίζεται σε κλάσεις(γνωστή και ως HG2);[33] πλοήγης καρτέλας (tabbing) στο γραφικό περιβάλλον χρήστη (GUI);[34] βελτίωση των λογισμικών εργαλείων χρήστη και των βοηθητικών αρχείων;[35] νέα αντικείμενα για την επεξεργασία δεδομένων και μεταβλητών τύποθ ημερομηνίας;[36] Ενσωμάτωση των Git (λογισμικό)-Subversion μέσα στο ολοκληρωμένο περιβάλλον ανάπτυξης (IDE);[37] Τεχνολογίες μαζικών δεδομένων (big data) με το MapReduce (κλιμάκωση με το Hadoop);[38] νέα πακέτο py για χρήση της γλώσσας προγραμματισμού Python μέσα από το MATLAB απευθείας,[39] νεα μηχανή διεπαφής για κλήση του MATLAB από την Python;[40] προσθήκη νέων και βελτιωμένων συναρτήσεων: webread (RESTful υπηρεσίες διαδικτύου με χρήση των JSON/XML), εντολή tcpclient για συνδέσεις βασισμένες στις υποδοχές δικτύου (socket-based), histcounts, histogram, animatedline, και άλλα
MATLAB 8.5 R2015a 33 1.7.0_60 2015 Μάρτιος 5, 2015
MATLAB 8.5 R2015aSP1 1.7.0_60 Οκτώβριος 14, 2015 Τελευταία έκδοση για τα Windows XP και για τα Windows Vista
MATLAB 8.6 R2015b 34 1.7.0_60 Σεπτέμβριος 3, 2015 Νέα μηχανή εκτέλεσης κώδικα MATLAB (γνωστή και ως LXE);[41] κλάσεις graph και digraph για την εργασία με γραφήματα και δίκτυα;[42] Προσθήκη υποστήριξης για τον μεταγλωττιστη MinGW-w64 στα Windows;[43] Τελευταία έκδοση για αρχιτεκτονική 32-bit
MATLAB 9.0 R2016a 35 1.7.0_60 2016 Μάρτιος 3, 2016 Προσθήκη των Live Scripts: διαδραστικά (interactive) έγγραφα που συνδυαζουν κωδικα, κείμενο και έξοδους (στο στυλ προγραμματισμού Literate programming);[44] Σχεδιαστής Εφαρμογών (App Designer): ένα νέο περιβάλλον ανάπτυξης εφαρμογών (με νέα γραφήματα, άξονες και δομικά στοιχεία);[45] Δυνατότητα παύσης της εκτέλεσης του προγράμματος με την πίεση του αντίστοιχου κουμπιού Παύσης
MATLAB 9.1 R2016b 36 1.7.0_60 Σεπτέμβριος 15, 2016 Προσδιορισμός τοπικών συναρτήσεων σε αρχεία επεξεργασίας κώδικα (σενάρια ή scripts);[46] αυτόματη ανάπτυξη διαστάσεων (προηγουμένως γινόταν με κλήση της συνάρτησης bsxfun); tall πίνακες για Μαζικά δεδομένα;[47] νέος τύπος δεδομένων string ;[48] νέες συναρτήσεις για κωδικοποιήση/αποκωδικοποιήση (encode/decode) JSON;[49] επίσημη MATLAB Μηχανη διεπαφής προγραμματισμού εφαρμογών (API) για την Java[50]
MATLAB 9.2 R2017a 37 1.7.0_60 2017 Μάρτιος 9, 2017 MATLAB Online: MATLAB στο διαδίκτυο ;[51] double-quoted strings με διπλά απόστροφο; νέα συνάστηση memoize για Απομνημόνευση (Memoization); επικύρωση ιδιοτήτων διευρυμένου αντικειμένου;[52] πλαίσιο πλαστών αντικειμένων (Mock object) για δοκιμές μονάδας;[53] το MEX εστιάζει σε 64-bit από προεπιλογή; νεά συνάρτηση heatmap για την δημιουργία χάρτών θερμότητας (heatmap charts)[54]
MATLAB 9.3 R2017b 38 1.8.0_121 Σεπτέμβριος 21, 2017
MATLAB 9.4 R2018a 39 1.8.0_144 2018 Μάρτιος 15, 2018[55]
MATLAB 9.5 R2018b 40 1.8.0_152 Σεπτέμβριος 12, 2018
MATLAB 9.6 R2019a 41 1.8.0_181 2019 Mάρτιος 20, 2019 Έργα (Projects) MATLAB.
MATLAB 9.7 R2019b 42 1.8.0_202 Σεπτέμβριος 11, 2019 Εισαγωγή του μπλοκ 'arguments' για επικύρωση εισαγωγής και ενεργοποίηση του ευρετηρίου κουκίδων (dot indexing) σε έξοδο συνάρτησης
MATLAB 9.8 R2020a 43 2020 Μάρτιος 19, 2020 Αφαίρεση του Mupad, Βελτίωση της υποστήριξης για επεξεργαστές AMD (AVX2)[56]
MATLAB 9.9 R2020b 44 Σεπτέμβριος 17, 2020 Βελτίωση της υποστήριξης για επεξεργαστές AMD (AVX2)[56]
9.10 R2021a 45 2021 11 Μαρτίου 2021
9.11 R2021b 46 22 Σεπτεμβρίου 2021
9.12.0 R2022a 47 2022 9 Μαρτίου 2022
9.13 R2022b 48 1.8.0_202 15 Σεπτεμβρίου 2022 Εισήγαγε τα «Λεξικά - Dictionaries» (συσχετιστικοί πίνακες - associative arrays).

Τώρα μπορείτε να καλέσετε το MATLAB από εφαρμογές .NET.

Ο αριθμός (ή ο αριθμός έκδοσης) είναι η έκδοση που έχει δημοσιευτεί βάση του προγράμματος Διαχειριστή Άδειας Ταυτόχρονης Χρήσης FLEXlm.

Για μια εκτενή λίστα των αλλαγών/ανανεώσεων τόσο της MATLAB όσο και των επίσημων λογισμικών εργαλείων, συμβουλευτείτε τις σημειώσεις των εκδόσεων της MATLAB.[57]


Παραπομπές[Επεξεργασία | επεξεργασία κώδικα]

  1. «R2023b Updates Release Notes» (PDF). Ανακτήθηκε στις 18 Ιανουάριος 2024. 
  2. Error: Unable to display the reference properly. See the documentation for details.
  3. Error: Unable to display the reference properly. See the documentation for details.
  4. The MathWorks (Φεβρουαρίου 2020). «Company Overview» (PDF). Αρχειοθετήθηκε από το πρωτότυπο (PDF) στις 19 Ιουλίου 2020. 
  5. Moler, Cleve (Ιανουαρίου 2006). «Η ανάπτυξη του υπολογιστικού πακέτου MATLAB και της The MathWorks για τις δύο δεκαετίες». News & Notes Newsletter. MathWorks. Ανακτήθηκε στις 14 Αυγούστου 2013. 
  6. «MATLAB System Requirements - Release 13». MathWorks. Ανακτήθηκε στις 6 Οκτωβρίου 2015. 
  7. «Dynamic Function Creation with Anonymous and Nested Functions». MathWorks. Ανακτήθηκε στις 15 Ιανουαρίου 2016. 
  8. «Memory Mapping». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  9. «MATLAB bsxfun». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  10. «Do MATLAB versions prior to R2007a run under Windows Vista?». MathWorks. 3 Σεπτεμβρίου 2010. Ανακτήθηκε στις 8 Φεβρουαρίου 2011. 
  11. «OOP Compatibility with Previous Versions». MathWorks. Αρχειοθετήθηκε από το πρωτότυπο στις 11 Ιανουαρίου 2021. Ανακτήθηκε στις 11 Μαρτίου 2013. 
  12. «Packages Create Namespaces». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  13. «Map Containers». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  14. «Creating and Controlling a Random Number Stream». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  15. «New MATLAB External Interfacing Features in R2009a». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  16. «Ignore Function Outputs». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  17. «Ignore Function Inputs». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  18. «Working with Enumerations». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  19. «What's New in Release 2010b». MathWorks. Αρχειοθετήθηκε από το πρωτότυπο στις 25 Νοεμβρίου 2015. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  20. «New RNG Function for Controlling Random Number Generation in Release 2011a». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  21. «MATLAB rng». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  22. «Replace Discouraged Syntaxes of rand and randn». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  23. «MATLAB matfile». MathWorks. Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  24. «MATLAB max workers». Ανακτήθηκε στις 22 Ιανουαρίου 2014. 
  25. MathWorks Support Team (4 Ιουνίου 2015). «Is MATLAB supported on 32-bit Linux?». Versions of MATLAB prior to R2012a are fully supported on 32-bit Linux. After R2012a, MATLAB is no longer supported on 32-bit Linux. 
  26. Shure, Loren (Σεπτεμβρίου 2012). «The MATLAB R2012b Desktop – Part 1: Introduction to the Toolstrip». 
  27. «MATLAB Apps». MathWorks. Ανακτήθηκε στις 14 Αυγούστου 2013. 
  28. «MATLAB Unit Testing Framework». MathWorks. Ανακτήθηκε στις 14 Αυγούστου 2013. 
  29. «MathWorks Announces Release 2013b of the MATLAB and Simulink Product Families». MathWorks. Σεπτεμβρίου 2013. 
  30. «R2013b Release Notes». MathWorks. Ανακτήθηκε στις 17 Σεπτεμβρίου 2018. 
  31. «MATLAB Tables». MathWorks. Ανακτήθηκε στις 14 Σεπτεμβρίου 2013. 
  32. «MathWorks Announces Release 2014a of the MATLAB and Simulink Product Families». MathWorks. Ανακτήθηκε στις 11 Μαρτίου 2014. 
  33. «Graphics Changes in R2014b». MathWorks. Ανακτήθηκε στις 3 Οκτωβρίου 2014. 
  34. «uitab: Create tabbed panel». MathWorks. Ανακτήθηκε στις 3 Οκτωβρίου 2014. 
  35. «Create and Share Toolboxes». MathWorks. Ανακτήθηκε στις 3 Οκτωβρίου 2014. 
  36. «Dates and Time». MathWorks. Ανακτήθηκε στις 3 Οκτωβρίου 2014. 
  37. «Source Control Integration». MathWorks. Ανακτήθηκε στις 3 Οκτωβρίου 2014. 
  38. «MATLAB MapReduce and Hadoop». MathWorks. Αρχειοθετήθηκε από το πρωτότυπο στις 4 Οκτωβρίου 2014. Ανακτήθηκε στις 3 Οκτωβρίου 2014. 
  39. «Call Python Libraries». MathWorks. Ανακτήθηκε στις 3 Οκτωβρίου 2014. 
  40. «MATLAB Engine for Python». MathWorks. Ανακτήθηκε στις 3 Οκτωβρίου 2014. 
  41. «MATLAB Execution Engine». MathWorks. Ανακτήθηκε στις 15 Σεπτεμβρίου 2016. 
  42. «Graph and Network Algorithms». MathWorks. Ανακτήθηκε στις 15 Σεπτεμβρίου 2016. 
  43. «Install MinGW-w64 Compiler». MathWorks. Ανακτήθηκε στις 15 Σεπτεμβρίου 2016. 
  44. «What Is a Live Script?». MathWorks. Αρχειοθετήθηκε από το πρωτότυπο στις 25 Φεβρουαρίου 2018. Ανακτήθηκε στις 15 Σεπτεμβρίου 2016. 
  45. «MATLAB App Designer». MathWorks. Ανακτήθηκε στις 15 Σεπτεμβρίου 2016. 
  46. «Add Functions to Scripts». MathWorks. Ανακτήθηκε στις 15 Σεπτεμβρίου 2016. 
  47. «Tall Arrays». MathWorks. Ανακτήθηκε στις 15 Σεπτεμβρίου 2016. 
  48. «Create String Arrays». MathWorks. Ανακτήθηκε στις 15 Σεπτεμβρίου 2016. 
  49. «JSON Format - MATLAB & Simulink». mathworks.com. Ανακτήθηκε στις 20 Αυγούστου 2017. 
  50. «MATLAB Engine API for Java. MathWorks». MathWorks. Ανακτήθηκε στις 15 Σεπτεμβρίου 2016. 
  51. «MATLAB Online». MathWorks. Ανακτήθηκε στις 10 Απριλίου 2017. 
  52. «Validate Property Values». MathWorks. Ανακτήθηκε στις 10 Απριλίου 2017. 
  53. «Mocking Framework». MathWorks. Ανακτήθηκε στις 10 Απριλίου 2017. 
  54. «Create Heatmap from Tabular Data». MathWorks. Ανακτήθηκε στις 10 Απριλίου 2017. 
  55. «MathWorks Announces Release 2018a of the MATLAB and Simulink Product Families». MathWorks. Ανακτήθηκε στις 5 Απριλίου 2018. 
  56. 56,0 56,1 «Crippled No Longer: Matlab Now Runs on AMD CPUs at Full Speed - ExtremeTech». www.extremetech.com. Ανακτήθηκε στις 29 Οκτωβρίου 2020. 
  57. «MATLAB Release Notes». MathWorks. Ανακτήθηκε στις 25 Ιανουαρίου 2014. 

Εξωτερικοί σύνδεσμοι[Επεξεργασία | επεξεργασία κώδικα]