Salvie | |
---|---|
Animeret diagram oprettet i Sage, y=x 2 (rød kurve), y=x 3 (blå kurve) | |
Type | Computer algebra system |
Udvikler | William A. Stein [d] |
Skrevet i | Python , Cython |
Operativ system | Cross-platform software |
Første udgave | 24. februar 2005 |
Hardware platform | Python |
nyeste version |
|
Licens | GNU General Public License |
Internet side | sagemath.org |
Mediefiler på Wikimedia Commons |
Sage (fra engelsk - "sage") er et computeralgebrasystem , der dækker mange områder af matematik , herunder algebra , kombinatorik , beregningsmatematik og matematisk analyse .
Den første version af Sage blev udgivet den 24. februar 2005 som gratis software licenseret under GNU GPL . Det oprindelige mål med projektet var "at give et open source-alternativ til Magma , Maple , Mathematica og MATLAB " [2] . Hovedudvikleren er matematikeren William Stein fra University of Washington .
Systemets hovedgrænseflade er en interaktiv notesblok , der giver mulighed for at se og genbruge de indtastede kommandoer, udskrive og gemme resultaterne, inklusive grafer og tekstanmærkninger, tilgængelige fra de fleste moderne webbrowsere . En sikker forbindelse understøttes via HTTPS-protokollen . Kan udføres både lokalt og eksternt.
Der er en kommandolinje- inputgrænseflade, der bruger Python-sproget (siden Sage version 9.0 - Python version 3, tidligere - Python version 2).
Parallel computing understøttes ved hjælp af både multi-core processorer , multiprocessor systemer og distribuerede computersystemer .
Matematisk analyse er implementeret på basis af Maxima og SymPy systemer . Lineær algebra er implementeret baseret på GSL- , SciPy- og NumPy- systemerne . Implementeret egne biblioteker af elementære og specielle matematiske funktioner. Der er værktøjer til at arbejde med matricer og dataarrays med understøttelse af sparse arrays . Forskellige statistiske funktionsbiblioteker er tilgængelige ved brug af R- og SciPy- funktionalitet .
Funktioner og data kan vises i form af flade og tredimensionelle grafer. Der er et sæt værktøjer til at tilføje din egen brugergrænseflade til beregninger og applikationer [3] . Der er værktøjer til at udarbejde videnskabelig og teknisk dokumentation ved hjælp af formeleditoren og muligheden for at indlejre Sage i LaTeX -formatdokumentation [4] .
Understøtter import og eksport af forskellige dataformater: billeder, video, lyd, CAD , GIS , dokumenter og medicinske formater. pylab og Python bruges til billedbehandling; der er midler til grafteoretisk analyse og visualisering af grafer.
Det er muligt at oprette forbindelse til databaser. Forskellige netværksprotokoller understøttes, herunder HTTP , NNTP , IMAP , SSH , IRC , FTP .
Implementerede programmeringsgrænseflader til at arbejde med Mathematica -systemer (også Sage kan kaldes fra grænsefladen til Mathematica [5] [6] ), Magma og Maple .
Kildekoden og Sage eksekverbare filer er tilgængelige for download. Når systemet er bygget, vil mange af de biblioteker, der er inkluderet i sættet, automatisk blive konfigureret til optimal drift på denne hardware under hensyntagen til antallet af processorer og kerner, størrelsen af cache-buffere og understøttelse af specielle instruktionssæt, som f.eks. SSE .
Under udviklingen af Sage stolede William Stein på, at det ville tage hundreder eller tusinder af mandår at skabe et værdigt alternativ til Magma, Maple , Mathematica og MATLAB , hvis man starter udviklingsprocessen fra bunden, og der er en stor mængde færdiglavet matematisk software med åben kildekode, men skrevet på forskellige programmeringssprog, hvoraf de mest almindelige er C , C++ , Fortran , og Python .
Så i stedet for at starte fra bunden, blev det besluttet at kombinere al den specialiserede matematiske software til et system med en fælles grænseflade. Slutbrugeren behøver kun at kende Python-sproget . Hvis der ikke fandtes open source-software til en bestemt opgave, så var opgaven at skrive den tilsvarende blok for Sage, mens man i modsætning til kommercielle computeralgebrasystemer ofte brugte kildekoderne til allerede eksisterende fri software.
Både fagfolk og studerende er involveret i udviklingen af Sage. Udviklere arbejder på frivillig basis og er støttet af tilskud [7] .
Sage er gratis software distribueret under betingelserne i GNU General Public License version 2+. Kildekoden kan downloades fra det officielle websted. Udgivelser under udvikling er også tilgængelige, selvom de ikke anbefales til almindelige brugere. Eksekverbare filer er tilgængelige til Linux , Windows , OS X og Solaris -operativsystemer (både x86- og SPARC-arkitekturer ). En Linux live-cd er også tilgængelig , så du kan prøve Sage uden at installere den på din computer.
Brugere kan bruge onlineversionen af Sage. Samtidig er der begrænsninger på mængden af tilgængelig hukommelse og fortroligheden af arbejdet.
I 2007 vandt Sage førstepræmien i den internationale gratis softwarekonkurrence Les Trophées du Libre i den videnskabelige softwaresektion [8] .
Algebra | GAP , Maxima , Ental |
Algebraisk geometri | Ental |
Vilkårlig præcisionsaritmetik | GMP , MPFR , MPFI , NTL |
Aritmetisk geometri | PARI , NTL , mwrank , ecm |
Matematisk analyse | Maxima , SymPy , GiNaC |
Kombinatorik | Symmetrica , Sage-Combinat |
Lineær algebra | Linbox , IML |
grafteori | NetworkX |
Gruppeteori | hul |
Numeriske beregninger | GSL , SciPy , NumPy , ATLAS |
Kommandolinjegrænseflade | IPython |
Database | ZODB , Python Pickles , SQLite |
GUI | Sage Notebook, jsmath |
Grafisk kunst | Matplotlib , Tachyon3d , GD , Jmol |
Kommandotolk | Python |
Netværk | Snoet |
Vigtigste udgivelser:
Sage versionerVersion | Udgivelses dato | Beskrivelse |
---|---|---|
0,1 | januar 2005 | Pari aktiveret, men GAP og Singular mangler |
0,2 - 0,4 | marts til juli 2005 | Cremona-database, multivariate polynomier, store endelige felter og mere dokumentation |
0,5 - 0,7 | august til september 2005 | Vektorfelter, ringe, modulære symboler og brug af vinduer |
0,8 | oktober 2005 | Fuldt inkluderet GAP, Singular |
0,9 | november 2005 | Tilføjet Maxima og klip |
1.0 | februar 2006 | |
2.0 | januar 2007 | |
3.0 | april 2008 | Interaktiv skal, grænseflade til R-sproget |
4.0 | maj 2009 | Solaris 10-understøttelse, 64bit OSX-understøttelse |
5,0 | maj 2012 [9] | OSX Lion support |
6,0 | december 2013 | Sage repository flyttet til Git [10] |
7,0 | januar 2016 | |
8,0 | juli 2017 | Windows support |
9,0 | januar 2020 | Flytter til Python 3 |
Matematik software | |
---|---|
Symbolske beregninger | |
Numeriske beregninger |
Computer algebra systemer | |
---|---|
Proprietære |
|
Ledig | |
Gratis/shareware |
|
Ikke understøttet |
|