Introduzione a SAGE Math



Documenti analoghi
Maxima: mini guida. Presentazione del software matematico MAXIMA

Introduzione allo Scilab Parte 1: numeri, variabili ed operatori elementari

Matematica 1 - Corso di Laurea in Ingegneria Meccanica

Soluzione di equazioni quadratiche

Strumenti per la Progettazione

Laboratorio 2. Calcolo simbolico, successioni, limiti e derivate

una sequenza di comandi di Mathematica: scritta in un file filename.m salvata in una pagina di notebook filename.nb

Scopo dell esercitazione

Corso di Matematica per CTF Appello 15/12/2010

Laboratorio di Informatica

Derive 5. di Stefania Mannara. Studio di funzione con Derive 5 di Stefania Mannara (SICSI VI CICLO) 1 28/05/2009

Esercizi svolti. 1. Si consideri la funzione f(x) = 4 x 2. a) Verificare che la funzione F(x) = x 2 4 x2 + 2 arcsin x è una primitiva di

Corso di Analisi Matematica. Polinomi e serie di Taylor

F (x) = f(x) per ogni x I. Per esempio:

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno

EQUAZIONI DIFFERENZIALI. 1. Trovare tutte le soluzioni delle equazioni differenziali: (a) x = x 2 log t (d) x = e t x log x (e) y = y2 5y+6

La grafica. La built-in funzione grafica plot. x spezzata poligonale. discretizzato

LE FUNZIONI A DUE VARIABILI

Integrazione numerica

IBM SPSS Statistics per Linux - Istruzioni di installazione (Licenza per sito)

Derivate Limiti e funzioni continue

MATLAB. Caratteristiche. Dati. Esempio di programma MATLAB. a = [1 2 3; 4 5 6; 7 8 9]; b = [1 2 3] ; c = a*b; c

I PROBLEMI ALGEBRICI

Il controllo della visualizzazione

Quickstart. Cos è GeoGebra? Notizie in pillole

Programmazione Matematica classe V A. Finalità

Matematica generale CTF

ELABORAZIONE di GRAFICI di FUNZIONI

Unità 1 Introduzione al sistema MAPLE

GHPPEditor è un software realizzato per produrre in modo rapido e guidato un part program per controlli numerici Heidenhain.

Interpolazione ed approssimazione di funzioni

x ( 3) + Inoltre (essendo il grado del numeratore maggiore del grado del denominatore, d ancora dallo studio del segno),

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1

MATLAB: Una veloce introduzione (Parte II)

LINGUAGGI DI PROGRAMMAZIONE

EQUAZIONI DIFFERENZIALI Esercizi svolti. y = xy. y(2) = 1.

Nell esempio verrà mostrato come creare un semplice documento in Excel per calcolare in modo automatico la rata di un mutuo a tasso fisso conoscendo

Approssimazione polinomiale di funzioni e dati

QUARTA E QUINTA ISTITUTO TECNICO INDUSTRIALE

Introduzione a Dev-C++

Introduzione al MATLAB c Parte 2

PIANO DI LAVORO ANNUALE DEL DIPARTIMENTO DI MATERIA NUCLEI FONDAMENTALI DI CONOSCENZE

Consorzio Nettuno - Corso di Matematica 1 Schede di lavoro guidato per le esercitazioni

Guida rapida - versione Web e Tablet

Studente: SANTORO MC. Matricola : 528

Quesiti di Analisi Matematica A

ECDL - Database. European Computer Driving Licence - Modulo 5 - Database LEZIONE 2

EQUAZIONI non LINEARI

2 Argomenti introduttivi e generali

MANUALE PARCELLA FACILE PLUS INDICE

Docente: DI LISCIA F. CLASSE 1T MODULO 1: GLI INSIEMI NUMERICI

Guida rapida. Cos è GeoGebra? Notizie in pillole

Teoria in sintesi 10. Attività di sportello 1, 24 - Attività di sportello 2, 24 - Verifica conclusiva, 25. Teoria in sintesi 26

Grandezze fisiche e loro misura

Il sofware è inoltre completato da una funzione di calendario che consente di impostare in modo semplice ed intuitivo i vari appuntamenti.

STANDARD MINIMI DI RIFERIMENTO MATEMATICA LICEO TECNICO

Esercitazioni di Reti Logiche. Lezione 2 Algebra Booleana e Porte Logiche. Zeynep KIZILTAN zkiziltan@deis.unibo.it

Obiettivi dell Analisi Numerica. Avviso. Risoluzione numerica di un modello. Analisi Numerica e Calcolo Scientifico

Università degli Studi di Trento Facoltà di Scienze Cognitive. Corso di Laurea in Scienze e Tecniche di Psicologia Cognitiva Applicata

Alcune nozioni di base di Logica Matematica

15J0460A300 SUNWAY CONNECT MANUALE UTENTE

Creazione e installazione di un NAS utilizzando FreeNAS

PIANO DI LAVORO DEL PROFESSORE

Corso di Calcolo Numerico

Grafico qualitativo di una funzione reale di variabile reale

Raccolta degli Scritti d Esame di ANALISI MATEMATICA U.D. 1 assegnati nei Corsi di Laurea di Fisica, Fisica Applicata, Matematica

Registratori di Cassa

E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools

ISTITUTO D'ISTRUZIONE SUPERIORE A. MOTTI PROGRAMMAZIONE ANNUALE ANNO SCOLASTICO 2014 /2015

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software:

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate

Fogli Elettronici: MS Excel

APPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1)

MATEMATICA. PRIMO ANNO (Liceo Classico e Liceo delle Scienze Umane)

Le equazioni. Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete.

ShellExcel. Una domanda contiene i riferimenti (#A, #B, #C) alle celle che contengono i dati numerici del

MANUALE PER CONSULTARE LA RASSEGNA STAMPA VIA WEB ( ULTIMO AGGIORNAMENTO 26MARZO 2009)

Indirizzo odontotecnico a.s. 2015/2016

INTRODUZIONE A MATLAB Matrix Laboratory

Funzioni in C. Violetta Lonati

NOZIONI BASE PER ESERCITAZIONI

Guida all uso di. a cura dell Area Economia Applicata (AEA) - IPI

Prof.ssa Paola Vicard

Documentazione esterna al software matematico sviluppato con MatLab

Semantica operazionale dei linguaggi di Programmazione

3 Automazione Web-based con Saia S-Web

Insiemi di livello e limiti in più variabili

CLASSE terza SEZIONE H A.S. 14/ 15 PROGRAMMA SVOLTO

ISTITUTO D ISTRUZIONE SUPERIORE "L. EINAUDI" ALBA ANNO SCOLASTICO 2015/2016

STRUMENTI DI PRESENTAZIONE MODULO 6

1 Serie di Taylor di una funzione

IBM SPSS Statistics per Mac OS - Istruzioni di installazione (Licenza per sito)

TRASMISSIONE RAPPORTO ARBITRALE IN FORMATO PDF

Corso sul linguaggio SQL

Test Excel conoscenze di Base

File Server Resource Manager (FSRM)

Transcript:

Introduzione Espressioni Funzioni Plot Stefano Zambon Esercitazione di Corsi di Laurea in Matematica Applicata e Informatica Multimediale Università degli Studi di Verona Marzo 2009

Introduzione Espressioni Funzioni Plot Sommario 1 Introduzione Sage MATH Installazione 2 Espressioni Simboliche Variabili e Espressioni Semplificazioni Sostituzioni e Approssimazioni Operazioni su Polinomi Risoluzione di Equazioni 3 Operazioni su Funzioni di Variabile Reale Derivate Polinomi di Taylor Limiti Integrali 4 Plotting

Introduzione Espressioni Funzioni Plot Sage MATH Installazione Introduzione Software matematici (alla buona): Calcolo Simbolico Manipolano analiticamente espressioni matematiche... spesso non trovano la soluzione! π 0 sin(x) = cos(0) cos(π) = 2 Maple, Mathematica Calcolo Numerico Lavorano su rappresentazioni finite in virgola mobile Problemi di precisione numerica π 0 sin(x) 1.999998731 Matlab, C/FORTRAN + librerie

Introduzione Espressioni Funzioni Plot Sage MATH Installazione Introduzione Software matematici (alla buona): Calcolo Simbolico Manipolano analiticamente espressioni matematiche... spesso non trovano la soluzione! π 0 sin(x) = cos(0) cos(π) = 2 Maple, Mathematica Calcolo Numerico Lavorano su rappresentazioni finite in virgola mobile Problemi di precisione numerica π 0 sin(x) 1.999998731 Matlab, C/FORTRAN + librerie

Introduzione Espressioni Funzioni Plot Sage MATH Installazione Introduzione Software matematici (alla buona): Calcolo Simbolico Manipolano analiticamente espressioni matematiche... spesso non trovano la soluzione! π 0 sin(x) = cos(0) cos(π) = 2 Maple, Mathematica Calcolo Numerico Lavorano su rappresentazioni finite in virgola mobile Problemi di precisione numerica π 0 sin(x) 1.999998731 Matlab, C/FORTRAN + librerie

Introduzione Espressioni Funzioni Plot Sage MATH Installazione Introduzione Software matematici (alla buona): Calcolo Simbolico Manipolano analiticamente espressioni matematiche... spesso non trovano la soluzione! π 0 sin(x) = cos(0) cos(π) = 2 Maple, Mathematica Calcolo Numerico Lavorano su rappresentazioni finite in virgola mobile Problemi di precisione numerica π 0 sin(x) 1.999998731 Matlab, C/FORTRAN + librerie

Introduzione Espressioni Funzioni Plot Sage MATH Installazione Sage MATH http://www.sagemath.org Free Software (GPL) sviluppato inizialmente alla Washington University Interfaccia unica per diversi software free Basato su Python Molte potenzialità: algebra, calcolo combinatorio, teoria dei numeri... Noi lo useremo per calcolo simbolico elementare relativo agli argomenti del corso

Introduzione Espressioni Funzioni Plot Sage MATH Installazione Sage MATH http://www.sagemath.org Free Software (GPL) sviluppato inizialmente alla Washington University Interfaccia unica per diversi software free Basato su Python Molte potenzialità: algebra, calcolo combinatorio, teoria dei numeri... Noi lo useremo per calcolo simbolico elementare relativo agli argomenti del corso

Introduzione Espressioni Funzioni Plot Sage MATH Installazione Sage MATH http://www.sagemath.org Free Software (GPL) sviluppato inizialmente alla Washington University Interfaccia unica per diversi software free Basato su Python Molte potenzialità: algebra, calcolo combinatorio, teoria dei numeri... Noi lo useremo per calcolo simbolico elementare relativo agli argomenti del corso

Introduzione Espressioni Funzioni Plot Sage MATH Installazione Installazione Varie opzioni. In ordine dalla più semplice alla più difficile: 1 Da un browser, connessione con server remoto, es. https://sagenb.kaist.ac.kr:8022/ 2 Scaricare un Live CD 3 Distribuzione binaria per Linux ( grossa, niente pacchetti... ) 4 Dentro una macchina virtuale sotto Windows 5 Compilazione da sorgente La documentazione è accessibile da: http://www.sagemath.org/doc Il Reference Manual mostra diversi esempi (ripresi in queste slides).

Uso Introduzione Espressioni Funzioni Plot Sage MATH Installazione Usiamo l interfaccia Notebook: Nella casella di testo si possono inserire più comandi o espressioni Vengono valutate con il tasto evaluate o con <SHIFT>+<ENTER> È presente un help interattivo (vediamo dopo un esempio... )

Uso Introduzione Espressioni Funzioni Plot Sage MATH Installazione Usiamo l interfaccia Notebook: Nella casella di testo si possono inserire più comandi o espressioni Vengono valutate con il tasto evaluate o con <SHIFT>+<ENTER> È presente un help interattivo (vediamo dopo un esempio... )

Uso Introduzione Espressioni Funzioni Plot Sage MATH Installazione Usiamo l interfaccia Notebook: Nella casella di testo si possono inserire più comandi o espressioni Vengono valutate con il tasto evaluate o con <SHIFT>+<ENTER> È presente un help interattivo (vediamo dopo un esempio... )

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Variabili Simboliche Bisogna dichiarare in anticipo le variabili che intendiamo usare: x = var( x ) Attenzione: non sono le classiche variabili in un linguaggio di programmazione... Si possono dichiarare contemporaneamente più variabili: x, y, t = var( x, y, t ) La variabile x è predefinita nell ambiente

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Variabili Simboliche Bisogna dichiarare in anticipo le variabili che intendiamo usare: x = var( x ) Attenzione: non sono le classiche variabili in un linguaggio di programmazione... Si possono dichiarare contemporaneamente più variabili: x, y, t = var( x, y, t ) La variabile x è predefinita nell ambiente

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Variabili Simboliche Bisogna dichiarare in anticipo le variabili che intendiamo usare: x = var( x ) Attenzione: non sono le classiche variabili in un linguaggio di programmazione... Si possono dichiarare contemporaneamente più variabili: x, y, t = var( x, y, t ) La variabile x è predefinita nell ambiente

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Variabili Simboliche Bisogna dichiarare in anticipo le variabili che intendiamo usare: x = var( x ) Attenzione: non sono le classiche variabili in un linguaggio di programmazione... Si possono dichiarare contemporaneamente più variabili: x, y, t = var( x, y, t ) La variabile x è predefinita nell ambiente

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Espressioni È possibile costruire espressioni che coinvolgono le variabili dichiarate ed assegnarle ad un oggetto, es.: f = (x^2) * (log(x) - 1) La sintassi per le espressioni è molto intuitiva Operazioni binarie : +, -, *, /, ^ Funzioni predefinite : log, cos, sin, exp... Costanti predefinite : pi, e, I...

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Espressioni È possibile costruire espressioni che coinvolgono le variabili dichiarate ed assegnarle ad un oggetto, es.: f = (x^2) * (log(x) - 1) La sintassi per le espressioni è molto intuitiva Operazioni binarie : +, -, *, /, ^ Funzioni predefinite : log, cos, sin, exp... Costanti predefinite : pi, e, I...

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Espressioni - 2 Possiamo passare argomenti a f come se fosse una funzione, es. : f(e^3) 2*e^6 In generale, f è un oggetto. Le operazioni possibili su f sono accessibili tramite la notazione punto f.op(..) È possibile vedere l elenco delle operazioni digitando f. seguito da <TAB>:

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Approssimazioni numeriche Possiamo trovare l approssimazione numerica di una valore con l operatore.numerical_approx() Abbreviato anche con.n(), es.: sage: f(e^3).n() 806.857586985470

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Sostituzioni È possibile sostituire intere espressioni ad una variabile Uso pratico : comporre funzioni.. Sintassi : f.subs(var = expr) Esempi: sage: sage: t = var( t ) print f.subs(x = 3*t) 2 9 t (log(3 t) - 1) sage: g = 4*t^2-1 sage: print f.subs(x = g(t)) 2 2 2 (4 t - 1) (log(4 t - 1) - 1) Nota: usando esplicitamente il comando print, otteniamo una formattazione più leggibile.

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Semplificazioni Sage offre diversi comandi (anche troppi!) per semplificare espressioni. Grosso modo, tre classi di semplificazioni: 1 simplify_rational usa regole per funzioni razionali 2 simplify_radical, simplify_log, exp_simplify sono alias per lo stesso comando: semplificazioni usando regole per potenze, logaritmi ecc. 3 simplify_trig viene usato per espressioni trigonometriche Esempi - simplify_trig() : sage: f = sin(x)^2 + cos(x)^2; f sin(x)^2 + cos(x)^2 sage: f.simplify_trig() 1

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Semplificazioni - 2 Esempi - simplify_exp() : sage: f = (log(x+x^2)-log(x))^a/log(1+x)^(a/2) sage: f.simplify_radical() log(x + 1)^(a/2) sage: f = (e^x-1)/(1+e^(x/2)) sage: f.simplify_exp() e^(x/2) - 1

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Semplificazioni - 3 Esempi - simplify_rational() : sage: f = ((x - 1)^(3/2) - (x + 1)*sqrt(x - 1))/sqrt((x - 1)*(x + 1)) sage: print f 3/2 (x - 1) - sqrt(x - 1) (x + 1) -------------------------------- sqrt((x - 1) (x + 1)) sage: print f.simplify_rational() 2 sqrt(x - 1) - ------------- 2 sqrt(x - 1) Note: 1 Esiste un comando simplify_full() che applica, nell ordine, simplify_trig(), simplify_rational(), simplify_radical( 2 Attenzione a ricordarsi le parentesi ()! Vale per tutti i comandi che non prendono argomenti

Sviluppi Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni I comandi expand_trig(), expand_rational(), expand_radical() sviluppano espressioni anziché semplificarle Esempio: sage: x,y = var( x,y ) sage: a = (x-y)^5 sage: a.expand_rational() -y^5 + 5*x*y^4-10*x^2*y^3 + 10*x^3*y^2-5*x^4*y + x^5

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Operazioni su polinomi È possibile fattorizzare un polinomio (o, in genere, un espressione razionale) con factor() Esempio: sage: f = x^6 + x^5/2-5*x^4-23*x^3/2-25*x^2/2-7*x - 3/2 sage: print f.factor() 1 2 2 (x - 3) (x + -) (x + 1) (x + x + 1) 2 Per polinomi semplici, è possibile calcolare le radici esatte con roots() Esempio: sage: f.roots() [(-1/2, 1), (3, 1), ((-sqrt(3)*i - 1)/2, 1), ((sqrt(3)*i - 1)/2, 1), (-1, 2)] Il formato dell output è una lista di coppie (radice, molteplicità)

Introduzione Espressioni Funzioni Plot Variabili Sostituzioni Polinomi Equazioni Risoluzione di equazioni Alcune equazioni non lineari possono essere risolte simbolicamente da Sage. Per le altre, esistono i comandi per metodi numerici (che non vediamo). Sintassi: solve(x, multiplicities=false, explicit_solutions=fal 1 x è l incognita nell equazione 2 Gli altri parametri sono opzionali: se impostati a True, mostrano rispettivamente le molteplicità delle soluzioni e forzano soluzioni in forma esplicita Esempio: sage: f = log((x+1)^2) - 2 sage: f.solve(x) [x == e - 1]

Derivate Introduzione Espressioni Funzioni Plot Derivate Taylor Limiti Integrali Possiamo differenziare una funzione con il comando diff Sintassi : f.diff(var [,ord]) Calcola la derivata di ordine ord rispetto alla variabile var Esempio: sage : f = log(sin(x)) / sqrt(x) sage : print f.diff(x).simplify_full() 2 x cos(x) - sin(x) log(sin(x)) ------------------------------- 3/2 2 x sin(x) sage : (sin(2*x)).diff(x,5) 32*cos(2*x)

Introduzione Espressioni Funzioni Plot Derivate Taylor Limiti Integrali Polinomi di Taylor Comando: taylor(var, cent, n) Calcola il polinomio di Taylor di ordine n rispetto a var centrato in cent Esempio: sage: f = arctan(log(1+x)) sage: f.taylor(x, 0, 4) x - x^2/2 + x^4/4 Funziona anche per espansioni non polinomiali: sage: f = cos(log(1 + sqrt(x))) sage: print f.taylor(x, 0, 2) 2 3/2 5 x x x - ---- + ---- - - + 1 12 2 2

Limiti Introduzione Espressioni Funzioni Plot Derivate Taylor Limiti Integrali Comando: limit(var = val [,taylor=true]) Calcola il limite per var tendente a val (usare oo per ) È consigliato impostare l opzione taylor=true È possibile calcolare limiti destri e sinistri dando prima un comando assume(expr), es.: assume(x > 0), assume(x < 1) Esempi (tratti da esercizi-temi d esame): sage: f = ( (log(1+x^3))^2 - x^6 ) / ( (sin(2*x^3))^3 ) sage: f.limit(x=0,taylor=true) - 1 / 8 sage: f = ( x^2 + sin(x)*log(x) ) / ( 3*x^2 + 2*x + 5 ) sage: f.limit(x=+oo,taylor=true) 1 / 3

Integrali Introduzione Espressioni Funzioni Plot Derivate Taylor Limiti Integrali Comando: Integra rispetto a var integral(var = val [,a,b]) Se a, b sono specificati, calcola l integrale definito tra questi estremi Altrimenti, trova una primitiva della funzione Esempi (tratti da esercizi-temi d esame): sage: print (sin(log(x))).integral(x) x (sin(log(x)) - cos(log(x))) ----------------------------- 2 sage: f = sin(x) sage: f.integral(x,0,pi) 2 Riesce anche a calcolare qualche integrale improprio

Plotting Introduzione Espressioni Funzioni Plot Comando: plot(expr, xmin, xmax) Disegna la funzione definita da expr nell intervallo [xmin, xmax]