Όταν πρόκειται για την επίλυση της εξίσωσης μαθηματικών στο Linux, συζητήσαμε προηγουμένως το GeoGebra, ένα λογισμικό για γεωμετρία και 2D γραφήματα. Ωστόσο, αν ψάχνετε για πιο ισχυρά εργαλεία, θα πρέπει να δοκιμάσετε το Sage. Όλοι έχουμε ακούσει για Matlab ή Magma, αλλά η Sage προσφέρει μια εναλλακτική λύση ανοιχτού κώδικα σε αυτά τα δύο και είναι, κατά τη γνώμη μου, πιο απλή στη χρήση.

Εγκατάσταση

Το Sage είναι πάντα υπό βαριά ανάπτυξη, πράγμα που σημαίνει ότι νέες βελτιώσεις προστίθενται πολύ συχνά. Για να το εγκαταστήσετε από την πηγή:

Πρώτον, θα πρέπει να ικανοποιήσετε μερικές εξαρτήσεις.

 sudo apt-get εγκαταστήστε build-essential m4 gfortran libssl-dev dpkg-dev 

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

 ./φτιαχνω, κανω 

Σημείωση : Θα χρειαστείτε περίπου 3GB ελεύθερου χώρου για να λειτουργήσει σωστά το Sage. Βεβαιωθείτε ότι τα έχετε πριν ξεκινήσετε τη συλλογή (η οποία θα πάρει κάποιο χρονικό διάστημα).

Εάν προτιμάτε τη δυαδική έκδοση, υπάρχει επίσης ένας διαθέσιμος PPA για το Ubuntu:

 sudo apt-add-repository -y ppa: στόχοι / sagemath sudo apt-get ενημέρωση sudo apt-get εγκαταστήσετε sagemath-upstream-binary 

Μπορείτε επίσης να εγκαταστήσετε όλα τα προαιρετικά πακέτα:

 sudo apt-get εγκαταστήσετε texlive evince xpdf xdvi tk8.5-dev 

Χρήση

Για να ξεκινήσετε το Sage, μπορείτε να το κάνετε με την εντολή

 ./ΣΟΦΌΣ 

από τον ληφθέντα κατάλογο.

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

 ln -s [διαδρομή προς τον εκκινητή του sage] / usr / local / bin / sage 

ή ακόμα και να κάνετε ένα ψευδώνυμο στο αρχείο ~ / .bashrc όπως έκανα:

 alias sage = / home / adrien / sage-5.2 / sage 

Το Sage είναι ένα μη γραφικό εργαλείο από προεπιλογή. Κατά την έναρξη, θα πρέπει να πάρετε κάτι τέτοιο

Στη συνέχεια, έχετε την επιλογή: να συνεχίσετε με την κονσόλα ή να μεταβείτε στο γραφικό περιβάλλον του προγράμματος περιήγησης, πληκτρολογώντας

 σημειωματάριο() 

Και οι δύο είναι σχεδόν ισοδύναμες όσον αφορά τη λειτουργικότητα. Το GUI είναι πιο διαισθητικό, ειδικά για οικόπεδα και γραφήματα, αλλά το τερματικό λειτουργεί πολύ καλά. Με το GUI, δοκιμάστε την εντολή

 κύκλος ((0, 0), 1, rgbcolor = (1, 1, 0)) 

Θα δείτε έναν κίτρινο κύκλο που εμφανίζεται κάτω από αυτό.

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

Σημείωση : Και το GUI και η κονσόλα διαθέτουν λειτουργία αυτόματης συμπλήρωσης.

Τώρα που έχετε επιλέξει τη διασύνδεση φασκόμηλου, μπορούμε να αρχίσουμε να μιλάμε για τις ίδιες τις λειτουργίες. Sage είναι απολύτως τεράστια, και το εννοώ. Δεν υπάρχει κανένας τρόπος να μπορούμε να συζητήσουμε κάθε πτυχή του σε ένα άρθρο. Αντ 'αυτού, θα σας δείξω κάποιες κοινές εφαρμογές που ίσως θέλετε να δοκιμάσετε.

1. Υπολογιστής

Ναι, ο Sage μπορεί να κάνει κάποια βασικά μαθηματικά. Προσθήκη, πολλαπλασιασμός, κλπ. Δεδομένου ότι είναι γραμμένο κυρίως σε Python, μπορείτε επίσης να χρησιμοποιήσετε τη σύνταξη python για να κάνετε πράγματα όπως διαιρέσεις ακέραιων αριθμών.

2. Ρίζες πολυώνυμων

Είναι πολύ κοινό να δίνεται ένα πολυώνυμο και να ζητάει τις ρίζες του. Με το Sage, δημιουργείτε πρώτα ένα πολυωνυμικό δαχτυλίδι με

 Π.  = ΠολυωνυμικόRing (RR) 

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

 t = x ^ 2-25 

Και στη συνέχεια ζητάτε τις ρίζες

 t.roots () 

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

3. Αντίστροφη μήτρα

Αν είστε λίγο εμπορικός ή οικονομικός, μπορεί να έχετε δει τις μήτρες σε κάποιο σημείο της ζωής σας. Γενικά, υπάρχει μια ολόκληρη διαδικασία για την εύρεση των αντιστρόφων αυτών των μητρών. Λοιπόν, το Sage το κάνει πολύ απλά για εσάς. Δημιουργήστε τη μήτρα σας πάνω από το βασικό δαχτυλίδι που θέλετε.

 m = μήτρα (QQ, [[1, 2], [3, 4]]) 

Και να αναζητήσουμε το αντίστροφο:

 m.inverse () 

4. Γραφήματα

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

 κύκλος ((0, 0), 1, rgbcolor = (1, 1, 0)) 

Είμαι βέβαιος ότι καταλάβατε ότι η πρώτη παράμετρος ήταν το κέντρο του κύκλου, το δεύτερο ήταν η ακτίνα και το τελευταίο ήταν το χρώμα του κύκλου στο πρότυπο RGB. Λοιπόν, μπορείτε επίσης να σχεδιάσετε βασικές λειτουργίες δηλώνοντας πρώτα μια μεταβλητή:

 x = var ('x') 

Στη συνέχεια, χρησιμοποιήστε τη συνάρτηση plot ():

 οικόπεδο (x ^ 3, (-10, 10)) 

Το πρώτο επιχείρημα είναι η εξίσωση λειτουργίας, το δεύτερο είναι το εύρος. Έτσι λοιπόν, ζήτησα την κυβική λειτουργία που εμφανίζεται από -10 έως 10 στο x-plot.

Σημείωση : Εάν έχετε εγκαταστήσει το Jmol, μπορείτε να κάνετε τρισδιάστατα γραφήματα δηλώνοντας δύο μεταβλητές

 x, y = var ('χ, γ') 

Στη συνέχεια, χρησιμοποιήστε τη συνάρτηση plot3d ():

 plot3d (x ^ 2 + y ^ 2, (χ, -2, 2), (γ, -2, 2)) 

5. Επίλυση εξισώσεων

Μερικές φορές θέλουμε μια λύση για μια εξίσωση, αλλά η αριθμομηχανή μας δίνει μόνο μια προσέγγιση. Είναι ακόμα χειρότερο αν υπάρχουν κάποιες άλλες μεταβλητές στην εξίσωση αυτή και ότι θέλουμε η λύση να εκφράζεται σε συνάρτηση με αυτές. Για χρόνια στο γυμνάσιο, ήμουν κολλημένος να το κάνω με το χέρι. Πόσο ανόητο! Το Sage το κάνει τέλεια. Δηλώστε όλες τις μεταβλητές σας

 x, a, b, γ = var ('xab c') 

Και στη συνέχεια απλά χρησιμοποιήστε τη συνάρτηση solve (), με την εξίσωση (ες) ως πρώτο όρισμα και τη μεταβλητή (ες) που θέλετε να εκφράσετε μετά από:

 επίλυση ([x - 3 * a == 6, x + b * c == 10], x, b) 

Εύχομαι ότι ήξερα ότι πίσω στο γυμνάσιο ...

6. Διαφοροποίηση και ολοκλήρωση

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

 x = var ('x') 

Στη συνέχεια, χρησιμοποιήστε είτε τη λειτουργία diff () είτε τη συνάρτηση integrate ().

 diff (χ ^ 3 + 4 * χ + 16, χ) 

για τη διαφοροποίηση και

 ολοκλήρωμα (x ^ 3 + 4 * x + 16, χ) 

για την ενσωμάτωση.

συμπέρασμα

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

Έχετε κάποιο άλλο παράδειγμα να προτείνετε; Μια ερώτηση σχετικά με το Sage; Ενημερώστε μας στα σχόλια.

Πιστωτικές κάρτες: Μαθηματικά από Big Stock Photo.