Andrea Ellero, Alberto Zorzi - AA.2002/2003

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Andrea Ellero, Alberto Zorzi - AA.2002/2003"

Transcript

1 Introduzione a MAPLE Andrea Ellero, Alberto Zorzi - AA.2002/2003 Questi appunti hanno lo scopo di introdurre all uso del programma Maple (Waterloo Maple Inc.) e sono di supporto alle lezioni di Informatica (idoneità), Facoltà di Economia dell Università Ca Foscari di Venezia. La conoscenza del programma puù essere approfondita utilizzando un qualsiasi manuale di Maple. INDICE DEI PARAGRAFI 1. Calcoli, espressioni e funzioni. 2. Risoluzione di equazioni e sistemi. 3. Limiti, derivate, integrali. 4. Funzioni di più variabili e grafici. 5. Algebra delle matrici. 6. Introduzione alla programmazione Calcoli, espressioni e funzioni 1.1 Calcoli numerici e letterali Maple è in grado di soddisfare esigenze di calcolo sia di tipo simbolico che numerico.

2 1.1.1 Numeri razionali e numeri floating point Provate a calcolare una somma algebrica di due numeri interi. Seguite l esempio e battete il tasto di ritorno a capo. > 3-5; 2 NB: non è necessario scrivere = mentre è obbligatorio concludere l espressione con ; > 7/2; 7 2 NB: non viene eseguita la divisione in modo numerico per non perdere precisione negli eventuali calcoli successivi. Per Maple, 7/2 e 3.5 sono oggetti diversi: il primo è un numero razionale, il secondo è un numero in virgola mobile (floating point). Per chiarire la differenza consideriamo uno stesso calcolo eseguito con Maple utilizzando la notazione razionale e con virgola: > (1/3.0)*3; > (1/3)*3; 1 NB: il simbolo * indica la moltiplicazione e non puù essere sottinteso. Si noti che il primo calcolo viene effettuato in virgola mobile anche se un solo numero (3.0) è di tipo floating point. Il secondo calcolo è esatto perchè 1/3 è riconosciuto e trattato come numero razionale. Vediamo che pasticci possono accadere: consideriamo un calcolo in cui siano utilizzate le due notazioni appena viste > (1/3.0)*3-(1/3)*3; cioè -0.1 per un miliardesimo ovvero mentre, ovviamente, dovrebbe risultare 0. Possiamo chiedere un calcolo numerico più accurato chiedendo a Maple di utilizzare un maggior numero di cifre (digits) decimali: > Digits:= 10; > (1/3.0)*3-(1/3)*3; Digits := ora gli zeri che precedono la cifra 1, dopo la virgola, sono 24: si tratta di un numero molto vicino allo zero ma non è esattemente zero.

3 1.1.2 Arrotondamenti, troncamenti ed errori La precisione nei calcoli effettuati da Maple è assai elevata, ma alla precisione dei calcoli è necessario accompagnare attenzione nel fornire i dati alla macchina e nell interpretare i risultati che la macchina restituisce. Ad esempio se forniamo dati poco precisi è inutile, se non dannoso, utilizzare molte cifre decimali nei calcoli effettuati da Maple. Vediamo allora come comportarci in alcuni casi frequenti. Anzitutto, quando è opportuno trascurare alcune cifre decimali di un numero possiamo semplicemente tenere solo le cifre che ci interessano: effettuiamo in tal caso un troncamento del numero. Possiamo diminuire l errore nel considerare il dato effettuando un arrotondamento. Effettuare un arrotondamento significa aumentare di una unità l ultima cifra che consideriamo qualora la prima cifra che stiamo per eliminare sia maggiore o uguale a 5, troncare il numero altrimenti. Ad esempio se > x:= ; x := volendo considerare due cifre decimali con un troncamento otteniamo il numero , arrotondando troviamo invece Se desideriamo una sola cifra decimale allora sia troncando che arrotondando otteniamo E chiaro che in generale l arrotondamento, a parità di cifre considerate, consente di ridurre l errore commesso ed è pertanto preferibile. Vediamo ora cosa accade se effettuiamo gli arrotondamenti troppo presto. Supponiamo di dover calcolare quanto vino sia necessario per riempire un contenitore cilindrico di alluminio (qui semplifichiamo e supponiamo si tratti di un cilindro perfetto). Prendiamo le misure interne del cilindro. Con un calibro (precisione 1/10=0.1 mm) riusciamo a misurare il diametro: > Diam:= 9.31 ; # cm Diam := 9.31 per l altezza usiamo un metro con precisione di un millimetro: > Altezza:= 19.4 ; # cm Calcoliamo il volume: Altezza := 19.4 > Volume:=(Diam/2)^2*Pi*Altezza; # il risultato è in cm^3 > evalf(%); Volume := π

4 AnzichÈ considerare l intera cifra decidiamo di considerare solo le quattro cifre a sinistra della virgola. Quindi, arrotondando all unità, otteniamo 1321 centimetri cubi (in litri: 1,321). Supponiamo che il vino costi 0,51 euro al litro e di dover riempire lattine. Il costo che dovremo sostenere sarà allora: > Costo_totale:=1.321*0.51*19800; ovvero 13339,46 euro. Costo totale := E una bella cifra che ci spinge ad effettuare una valutazione più precisa. Tornando al calcolo del volume prendiamo subito qualche cifra in più, anzi teniamo tutte quelle che vediamo scritte, non ci costa più fatica: > Costo_totale:= *0.51*19800; Costo totale := La differenza, in euro, è data da > ; 3.44 L esempio ci suggerisce di effettuare i calcoli ritardando il più possibile il momento nel quale effettuare gli arrotondamenti. Errori nei dati iniziali e trasmissione dell errore Ma il nostro conto è anche affetto da un altro errore, un errore inevitabile anche se meno evidente, dovuto alla precisione con la quale sono noti i dati iniziali. Per misurare il diametro del cilindro avevamo infatti a disposizione un calibro con precisione di un decimo di millimetro. In realtà dunque siamo certi che il diametro (Diam=9,31 cm) ha una misura compresa tra 9,30 e 9,32 cm; di più non possiamo chiedere al calibro. Diciamo che l errore assoluto in questa misura è di 0,01 cm e possiamo scrivere Diam = 9,310,01. L errore percentuale, o errore relativo, è dato dal rapporto tra l errore assoluto e la misura effettuata > er_diam:=0.01/9.32; vale a dire circa uno su mille. er Diam := Analogamente per l altezza, l errore assoluto è di 0,1 cm, ovvero Altezza=19,4 0,1 cm. L errore relativo è in tal caso:

5 > er_altezza:=0.1/19.4; er Altezza := quindi dell ordine del 5 per mille. Ma quale errore commettiamo nel calcolo del volume? Si dimostra che moltiplicando tra loro due misure l errore percentuale trasmesso nel calcolo è dato dalla somma degli errori percentuali. Nel nostro caso allora: > er_volume:=er_diam+er_diam+er_altezza; er Volume := L errore relativo nel calcolo del volume è dunque del 7 per mille (perchè sommiamo due volte l errore relativo del diametro?). Lo stesso errore relativo si ripercuote sul calcolo del costo totale. Si noti che gli altri fattori che compaiono nel calcolo del costo totale sono il numero 1/2, che è esatto cioè con errore assoluto nullo, e π, che Maple tiene in memoria con un numero di cifre significative sufficientemente elevato da poter essere considerato con errore relativo trascurabile. In termini assoluti il calcolo del volume è affetto allora dall errore: > ea_volume:=er_volume*volume; ea Volume := π > evalf(%); In realtà quindi il volume di una singola lattina è ovvero di millilitri L errore su di una singola lattina è dell ordine di mezzo cucchiaio da cucina! Per quanto riguarda il costo complessivo abbiamo invece: > ea_costo_totale:=er_volume*costo_totale; ea Costo totale := quindi un errore dell ordine di un centinaio di euro, un errore che rende in realtà trascurabile, in questo caso, l errore complessivo dovuto al precedente arrotondamento al centimetro cubo del volume della lattina! Problemi simili a quelli incontrati nel caso di una moltiplicazione si hanno anche nella trsmissione degli errori effettuando altre operazioni tra i dati: per un loro adeguato trattamento rimandiamo ai testi specializzati in analisi numerica.

6 1.1.3 Calcoli simbolici Maple è in grado di fare calcoli di tipo letterale utilizzando moltissimi comandi per la manipolazione algebrica. Vediamo qualche esempio. > 3*a-5*a+4*a-b*a; 2 a b a Manipoliamo l espressione raccogliendone i fattori: > factor(%); a ( 2 + b) NB: per indicare la riga di calcolo (execution group) appena eseguita si utilizza il simbolo di percentuale (%), nelle versioni di Maple meno recenti lo stesso effetto si ha utilizzando il doppio apice ( ). > 3*x*(x^2-y^2)^2/((x+y)*9*x); 1 (x 2 y 2 ) 2 3 x + y NB: l elevamento a potenza viene indicato dal simbolo ˆ. Si puù notare che Maple effettua immediatamente le semplificazioni ovvie. Ma puù fare di meglio: > simplify(%); 1 3 (x y) (x2 y 2 ) Vediamo qualche altra semplificazione: > root(x^2,2); x 2 > simplify(%); csgn(x) x NB: csgn(x) indica il segno di x. Poteva far di meglio scrivendo il valore assoluto di x, che pure è definito (si provi a scrivere >abs(x);) e si legge meglio: questa è una avvisaglia del fatto che Maple puù perdersi in un bicchier d acqua. Ancora un esempio: > (x+2)*(x^2-1)/(x+1); (x + 2) (x 2 1) x + 1 cerchiamo di riscrivere l espressione in modo più semplice:

7 > factor(%); (x 1) (x + 2) Proviamo ad eseguire le operazioni > expand(%); x 2 + x 2 ancora non ci soddisfa, torniamo a fattorizzare > factor(%); Rifacciamo il conto in ordine diverso > (x+2)*(x^2-1)/(x+1); proviamo prima ad espandere > expand(%); (x 1) (x + 2) (x + 2) (x 2 1) x + 1 x 3 x + 1 x x x2 x x + 1 un disastro! Proviamo a vedere se si semplifica qualcosa > simplify(%); meglio. Ora proviamo a fattorizzare > factor(%); x 2 + x 2 (x 1) (x + 2) L ordine delle operazioni è ovviamente importante: l abbiamo provato tante volte facendo i conti a mano, qui almeno possiamo riprovare velocemente. Provate a rifare il conto cambiando ancora l ordine delle manipolazioni e con altre espressioni. Dagli esempi fin qui visti simplify puù apparire come il comando più utile; in realtà il comando più flessibile è expand che consente, ad esempio, di stabilire quale fattore raccogliere: > expand((x+2)*(x+3)*(y+z),x); x 2 y + x 2 z + 5 x y + 5 x z + 6 y + 6 z > expand((x+2)*(x+3)*(y+z),x+2); (x + 2) x y + (x + 2) x z + 3 (x + 2) y + 3 (x + 2) z > expand((x+2)*(x+3)*(y+z),y+z); (y + z) x (y + z) x + 6 y + 6 z

8 > factor(%); (x + 2) (x + 3) (y + z) Altre informazioni Maple consente operazioni sui numeri interi quali la divisione con resto, il fattoriale, la fattorizzazione..., sui numeri complessi, su insiemi, vettori, matrici,... Sono inoltre definite alcune costanti quali > exp(1); e > Pi; π 1.2 Assegnazioni e funzioni Possiamo associare un nome ad un oggetto matematico quale ad esempio un espressione, un equazione, una funzione. La sintassi è nome := oggetto;. Ad esempio > fattore1:=x*y; fattore1 := x y ora fattore1 è una variabile che vale xy. Consideriamo una seconda variabile > fattore2:=x*z; e moltiplichiamo fattore2 := x z > prodotto:=fattore1*fattore2; prodotto := x 2 y z Maple ha già effettuato qualche conto riconoscendo il valore delle variabili utilizzate. Possiamo definire in questo modo anche le funzioni: > f:=x->x^2-1; f := x x 2 1 La variabile f è in questo caso un oggetto di tipo funzione che possiamo utilizzare come siamo abituati, per esempio per valutarla in un punto

9 > f(2); 3 ma anche in un punto simbolico > f(antonio); antonio 2 1 o componendola > f(y-1); (y 1) 2 1 Combiniamo una variabile di tipo numero con la funzione f > alfredo:=3; > f(alfredo); alfredo := 3 8 E poi semplicissimo disegnare grafici mediante il comando plot: > plot(f,-2..4,-2..5); Nell esempio la porzione di grafico che interessa è quella racchiusa nel rettangolo [-2,4]x[-2,5]. Il secondo argomento del comando plot è un intervallo contenuto nel dominio di f relativamente al quale interessa rappresentare il grafico di f. Il terzo argomento è opzionale e, se presente, individua l intervallo di interesse relativamente al codominio.

10 2 2. Risoluzione di equazioni e sistemi 2.1 Equazioni La risoluzione di equazioni è particolarmente semplice, il comando da utilizzare è solve. > solve({x^2=4},{x}); {x = 2}, {x = 2} Maple commette errori nel caso di calcoli letterali, anche semplici, se ci sono parametri > solve({a*x+b=0},{x}); {x = b a } (cosa succede se a=0?) e non risponde in alcuni casi numerici proibiti > solve({0*x+3=0},{x}); E capace di lavorare con i numeri complessi > solve({x^2+1=0},{x}); {x = I}, {x = I} (I è l unità immaginaria vale a dire il numero complesso tale che Iˆ2=-1). Vediamo qualche altro esempio > solve({x^3+x^2-5*x=0},{x}); {x = 0}, {x = }, {x = } 2 > solve({x^3-13*x+12=0},{x}); {x = 1}, {x = 3}, {x = 4} > solve({x^2+y=0},{x,y}); {y = x 2, x = x} > solve({x^2+y^2=0},{x,y}); {x = I y, y = y}, {x = I y, y = y} > solve({x^7+x^2=0},{x}); {x = 0}, {x = 0}, {x = 1}, {x = I }, {x = I 2 5 5}, {x = I 2 5 5}, {x = I }

11 > solve({exp(x)*x^2-3=0},{x}); {x = 2 LambertW( 1 1 3)}, {x = 2 LambertW( 3)} 2 2 Nell ultimo esempio LambertW è una funzione che soddisfa l equazione LambertW(x) * exp(lambertw(x)) = x. Maple è riuscito a fornirci una soluzione esatta anche in questo caso. In genere siamo perù più interessati alla risoluzione numerica di una equazione come la precedente. Il comando da usare è in tal caso fsolve, con la stessa sintassi di solve > fsolve({exp(x)*x^2-3 = 0},{x}); Ecco un altro caso interessante > f:=sin(x); {x = } f := sin(x) > sol1:=solve({f=0.3},{x}); sol1 := {x = } > sol2:=fsolve({f=0.3},{x}); sol2 := {x = } Quale soluzione è corretta? In realtà queste sono solo due delle infinite soluzioni dell equazione considerata. Maple non è in grado, in questo caso, di avvisarci della presenza di altre soluzioni. Possiamo comunque accertare la bontà delle soluzioni trovate sostituendole come argomento della funzione f utilizzando il comando subs > subs(sol1,f); sin( ) chiedendo il calcolo del valore della funzione nel punto mediante il comando evalf > evalf(%); > subs(sol2,f); > evalf(%); sin( )

12 2.2 Sistemi di equazioni Per risolvere sistemi di equazioni è sufficiente scrivere come argomenti del comando solve l elenco delle equazioni e delle variabili rispetto alle quali risolverle > eq1:=3*x+2*y=2; > eq2:=x-y=4; eq1 := 3 x + 2 y = 2 eq2 := x y = 4 > solve({eq1,eq2},{x,y}); {x = 2, y = 2} Vediamo un caso in cui il sistema presenta infinite soluzioni > eq3:=x+2*y=1; > eq4:=2*x+4*y=2; eq3 := x + 2 y = 1 eq4 := 2 x + 4 y = 2 > solve({eq3,eq4},{x,y}); {y = y, x = 2 y + 1} Mettiamo ora alla prova Maple su di un sistema di due equazioni non lineari. Sia > primo1:=3*x^3-exp(y); primo1 := 3 x 3 e y il primo membro della prima equazione e > primo2:=y^2+x; primo2 := y 2 + x il primo membro della seconda equazione e risolviamo il sistema primo1=0, primo2=3 dando anche un nome all insieme delle soluzioni > soll:=fsolve({primo1=0,primo2=3},{x,y}); soll := {x = , y = } Controlliamo l esattezza del risultato sostituendo le soluzioni trovate in primo1 e primo2 > subs(soll,primo1); > evalf(%); > subs(soll,primo2); e ( )

13 Si noti che la soluzione trovata non è unica (anche se Maple non lo dice): > subs({x= ,y= },primo1); > evalf(%); e > subs({x= ,y= },primo2); Limiti, derivate, integrali Maple fornisce tutti gli strumenti tradizionali dell analisi. Iniziamo a vedere alcune delle possibilità offerte nel caso di funzioni reali di variabile reale. Arriveremo a poter svolgere il tradizionale studio di funzione in modo completo Limiti Definiamo una funzione della quale andremo poi a cercare alcuni limiti > g:= x-> (x+1)*(x+2)*(x-3)/(x-1); g := x (x + 1) (x + 2) (x 3) x 1 Proviamo a calcolare il limite per x - > 1. Prima definiamo il limite che ci interessa > Limit(g(x),x=1); e adesso cerchiamone il valore > value(%); (x + 1) (x + 2) (x 3) lim x 1 x 1 undefined La risposta è corretta infatti calcolando i limiti da sinistra e da destra troviamo > Limit(g(x),x=1,left); > value(%); (x + 1) (x + 2) (x 3) lim x 1 x 1

14 Per il limite destro utilizziamo la lettera minuscola nel comando limit, questo consente di ottenere subito il valore numerico del limite > limit(g(x),x=1,right); Se gli ultimi due limiti calcolati da Maple sono giusti (e lo sono) allora il primo limite cercato non esiste. Vediamo come si calcolano i limiti a + e - infinito. Ad esempio > Limit(g(x),x=-infinity); > value(%); (x + 1) (x + 2) (x 3) lim x ( ) x Derivate Consideriamo una funzione di x e contenente il parametro k: > f:=x->x*cos(k*x); > diff(f(x),x); f := x x cos(k x) cos(k x) x sin(k x) k In realtà il fatto che f sia definita come funzione di x a Maple interessa poco. Possiamo infatti derivare anche rispetto a k: > diff(f(x),k); x 2 sin(k x) Cerchiamo ora i punti stazionari di una funzione. Definiamo la funzione > h:=x->x^3-2*x^2-4*x; h := x x 3 2 x 2 4 x e calcoliamone i punti stazionari ai quali diamo anche un nome (staz): > staz:=solve(diff(h(x),x)=0,x); staz := 2, 2 3 Più in generale possiamo studiare la monotonia della funzione determinando gli intervalli nei quali la derivata si mantiene non negativa: > solve(diff(h(x),x)>=0,x); RealRange(, 2 ), RealRange(2, ) 3

15 Otteniamo così che -2/3 è un punto di massimo locale mentre è di minimo locale il punto 2. Vediamo come classificare i punti stazionari utilizzando la derivata seconda. Anzitutto calcoliamola nel generico punto x: > diff(h(x),x,x); 6 x 4 Speghiamo ora a Maple di considerare l espressione appena trovata come immagine di x tramite la funzione derivata seconda di h, che chiameremo DDh; per far questo usiamo il comando unapply > DDh:=unapply(%,x); DDh := x 6 x 4 Adesso possiamo valutare la derivata seconda nei due punti stazionari. Nel primo punto si ha > DDh(staz[1]); 8 perciù si tratta di un massimo. Nel secondo punto stazionario si ha > DDh(staz[2]); 8 che ci conferma che il punto 2 è di minimo per h. Vediamo il grafico (numerico) di h fornito da Maple: > plot(h(x),x=-3..5, ); x

16 Uno studio di funzione Esaminiamo le caratteristiche del grafico di una funzione in modo dettagliato. Consideriamo la funzione > f:=x->x^3*(x+1)/(x^2+2); f := x x3 (x + 1) x Proviamo a farci disegnare il grafico da Maple: > plot(f(x),x= ); x Pare che in 0 ci sia un minimo. Ma vediamo di effettuare uno studio delle qualità delle proprietà della funzione in modo completo. Partiamo con il calcolo dei limiti: > limit(f(x),x=-infinity); > limit(f(x),x=+infinity); Studiamo il segno di f: > solve(f(x)>=0,x); RealRange(, 1), RealRange(0, ) pertanto f è negativa tra -1 e 0, positiva altrove. Per studiare la monotonia calcoliamo la derivata di f

17 > diff(f(x),x); 3 x2 (x + 1) x che si puù semplificare un po : > simplify(%); Cerchiamo i punti stazionari + x3 x x4 (x + 1) (x 2 + 2) 2 x 2 (2 x x + x 2 + 6) (x 2 + 2) 2 > staz:=solve(diff(f(x),x)=0,x); staz := 0, 0, 1 6 %1(1/3) %1 (1/3) 1 6, 1 12 %1(1/3) %1 1 (1/3) I 3 ( 1 6 %1(1/3) % %1(1/3) %1 1 (1/3) I 3 ( 1 6 %1(1/3) 47 6 %1 := (1/3) ), 1 %1 (1/3) ) Si leggono proprio male! Prima di tentare di scrivere meglio i punti stazionari vediamo cosa si puù dire riguardo alla monotonia fornendo a Maple solo il fattore che determina il segno della derivata > solve(2*x^3+8*x+x^2+6>=0,x); RealRange 1 6 ( ) (1/3) + 6 ( ) 1 (1/3) 6, ancora una volta qualcosa di poco leggibile. Proviamo a riscrivere i punti stazionari: > s1:=evalf(staz[1]); > s2:=evalf(staz[2]); s1 := 0. s2 := 0. > s3:=evalf(staz[3]*1.); s3 := > s4:=evalf(staz[4]); s4 := I > s5:=evalf(staz[5]); s5 := I

18 Valutiamo f nel terzo punto stazionario: > f(s3); Proviamo ora ad utilizzare la derivata seconda per classificare i punti stazionari > DDf:=unapply(diff(f(x),x,x),x); DDf := x 6 x (x + 1) x x2 x x3 (x + 1) (x 2 + 2) 2 4 x4 (x 2 + 2) x5 (x + 1) (x 2 + 2) 3 Nei punti stazionari si ottiene: > evalf(ddf(staz[1])); > evalf(ddf(staz[3])); Il punto terzo punto stazionario è pertanto di minimo locale. Per classificare il primo punto stazionario abbiamo bisogno di calcolare la derivata terza: > DDDf:=unapply(diff(f(x),x,x,x),x); DDDf := x 6 x + 1 x x6 (x + 1) (x 2 + 2) 4 > evalf(dddf(staz[1])); 18 x x x2 (x + 1) (x 2 + 2) 2 L origine è dunque un punto di flesso x3 (x 2 + 2) x4 (x + 1) (x 2 + 2) 3 + Avendo capito che i punti stazionari sono certamente compresi nell intervallo [-1, 1], proviamo a tracciare un secondo grafico numerico di f, questa volta restringendo il range da considerare > plot(f(x),x= ); 24 x5 (x 2 + 2) 3

19 x 1 Lo studio di funzione consente di guidare il modo di tracciare anche il grafico numerico molto meglio rispetto al fuorviante grafico numerico tracciato all inizio Integrali Possiamo calcolare sia integrali indefiniti che definiti. Ad esempio, calcoliamo una primitiva della funzione > f:=x->x*exp(x+1); f := x x e (x+1) usando il comando int: > int(f(x),x); e (x+1) (x + 1) 2 e (x+1) Verifichiamo i calcoli derivando > diff(%,x); e (x+1) (x + 1) e (x+1) e semplificando > simplify(%); x e (x+1)

20 ottenendo la conferma della correttezza del calcolo dell integrale. Nota: anche se non sappiamo se il programma ha fornito una primitiva corretta ci possiamo senz altro fidare delle derivate fornite da Maple. Si tratta di un conto puramente meccanico che un programmatore puù insegnare ad un elaboratore con poche righe di istruzioni in un qualsiasi linguaggio di programmazione. Per calcolare un integrale definito è sufficiente indicare, oltre alla variabile, l intervallo di integrazione > Int(f(x),x=0..2); > value(%); 2 0 x e (x+1) dx e 3 + e Consideriamo ora una classico esempio di funzione le cui primitive non possono essere scritte a partire da funzioni elementari utilizzando operazioni algebriche o composizione di funzioni: > g:=x->exp(-x^2); g := x e ( x2 ) calcoliamone l integrale generalizzato nell intervallo tra 0 e più infinito > int(g(x),x=0..+infinity); 1 π 2 che è corretto. Se vogliamo calcolare lo stesso integrale tra 0 e 1, ad esempio, Maple ovviamente non puù far molto: > int(g(x),x=0..5); 1 2 erf(5) π dove erf ( x ) = 2/sqrt(Pi) * int ((exp(-xˆ2), t = 0..x ). Quindi Maple si mangia la coda, e non poteva che essere così. Possiamo perù chiedere una valutazione numerica dell integrale: > evalf(value(%));

21 4 4. Funzioni di più variabili e grafici Limiti e derivate Vediamo molto velocemente come quanto visto per le funzioni di una sola variabile reale si estenda al caso di due variabili; l estensione a più variabili risulterà poi del tutto ovvia. Cominciamo definendo una funzione nelle variabili x e y: > f:=(x,y)->x^2*y-3*y/x; Proviamo a calcolare due limiti (facili) > limit(f(x,y),{x=2,y=3}); > limit(f(x,y),{x=0,y=3}); f := (x, y) x 2 y 3 y x 15 2 undefined Se tentiamo con altre funzioni facciamo presto a mettere in difficoltà Maple. La funzione > g:=(x,y)->x^2*y^2/(x^2*y^2+(x-y)^2); g := (x, y) non ha limite in (0,0), Maple non risponde: > limit(g(x,y),{x=0,y=0}); x 2 y 2 x 2 y 2 + (x y) 2 x 2 y 2 limit(, {x = 0, y = 0}) x 2 y 2 + (x y) 2 Ma anche nel caso di una funzione con limite 0 in (0,0) Maple si arena > limit(x^3/(x^2+y^2),{x=0,y=0}); x 3 limit(, {x = 0, y = 0}) x 2 + y2 Non ci sono ovviamente problemi nel calcolo delle derivate parziali: > diff(g(x,y),x); x y 2 2 x 2 y 2 + (x y) x2 y 2 (2 x y x 2 y) 2 (x 2 y 2 + (x y) 2 ) 2 > simplify(diff(g(x,y),y)); 2 x 3 y (x y) (x 2 y 2 + x 2 2 x y + y 2 ) 2

22 Ed ecco una derivata seconda mista > simplify(diff(g(x,y),x,y)); 2 x2 y 2 (6 x y 3 x 2 + x 2 y 2 3 y 2 ) (x 2 y 2 + x 2 2 x y + y 2 ) 3 Per valutare in un punto la derivata parziale seconda appena calcolata definiamo la funzione > DDXY:=unapply(%,(x,y)); DDXY := (x, y) 2 x2 y 2 (6 x y 3 x 2 + x 2 y 2 3 y 2 ) (x 2 y 2 + x 2 2 x y + y 2 ) 3 che ora possiamo valutare dove ci interessa, ad esempio in (1,-1): > DDXY(1,-1); Grafici Le possibilità grafiche sono uno dei punti forti dei programmi tipo Maple. Analizziamo prima alcune possibilità non ancora esplorate riguardo alle funzioni di una sola variabile. Passeremo poi alle funzioni di due variabili Alcune potenzialità grafiche per funzioni di una sola variabile > plot(sin(x),x=0..2*pi,title="funzione seno");

23 1 funzione seno x Possiamo anche tentare una compressione dell asse delle x per avere un idea del comportamento della funzione per valori molto grandi dell argomento > plot(sin(x),x=0..infinity); 0 infinity x Ma attenzione all interpretazione delle proprietà geometriche del grafico. Guardate cosa accade del grafico della funzione logaritmo in base e (che è una funzione concava!): > plot(ln(x),x=0..infinity);

24 infinity 0 x infinity -infinity Per utilizzare potenzialità grafiche disponibili solo a domanda, chiediamo a Maple di caricare il modulo plots: > with(plots); Warning, the name changecoords has been redefined [animate, animate3d, animatecurve, arrow, changecoords, complexplot, complexplot3d, conformal, conformal3d, contourplot, contourplot3d, coordplot, coordplot3d, cylinderplot, densityplot, display, display3d, fieldplot, fieldplot3d, gradplot, gradplot3d, implicitplot, implicitplot3d, inequal, listcontplot, listcontplot3d, listdensityplot, listplot, listplot3d, loglogplot, logplot, matrixplot, odeplot, pareto, pointplot, pointplot3d, polarplot, polygonplot, polygonplot3d, polyhedra supported, polyhedraplot, replot, rootlocus, semilogplot, setoptions, setoptions3d, spacecurve, sparsematrixplot, sphereplot, surfdata, textplot, textplot3d, tubeplot] Possiamo ora utilizzare tutti i comandi elencati sopra. Per esempio possiamo utilizzare le coordinate polari > polarplot(1,theta=0..2*pi);

25 Per un confronto tra coordinate cartesiane e polari prendiamo la curva di equazioni parametriche x=t, y=t in coordinate cartesiane > plot([t,t,t=-2*pi..2*pi]); e in coordinate polari, vale a dire interpretando la prima coordinata come la distanza dall origine e la seconda coordinata come angolo rispetto al semiasse positivo delle ascisse > polarplot([t,t,t=-2*pi..2*pi]);

26 Veniamo ora ad un grafico in scala semilogaritmica > logplot(10^x,x=0..10); 1e+10 1e+09 1e+08 1e+07 1e+06 1e+05.1e5.1e4.1e3.1e x e ad una curva definita mediante una equazione ben nota > implicitplot(x^2+y^2=1,x=-1..1,y=-1..1);

27 1 y x Quest ultimo comando è particolarmente utile quando si hanno curve meno note che Maple traccia senza protestare > implicitplot(exp(x^2*y)-exp(y)=sin(4*x),x=-2..2,y=-5..5); 4 y x

28 Grafici per funzioni di due variabili Vediamo alcuni esempi di grafici in tre dimensioni ottenuti con il comando plot3d e come tracciare le curve di livello. > plot3d(x^2+y^2,x=-4..4,y=-4..4,style=patch,color=x,grid=[50,50],orien > tation=[160,100],axes=boxed,title= paraboloide ); paraboloide x 2 0 y 2 4 > contourplot(x^2+y^2,x=-5..5,y=-5..5,contours=25); 4 y x 4 2 4

29 > plot3d(y^2-x^2,x=-4..4,y=-4..4,style=contour,contours=50,grid=[50,50] >,orientation=[200,60],color=black,axes=boxed,title= sella ); sella y x 4 > densityplot(x^2+y^2,x=-5..5,y=-5..5); 4 y x 4 2 4

30 5 5. Algebra delle matrici Esaminiamo ora alcune delle possibilità che Maple offre nel calcolo matriciale. Anzitutto vi sono due pacchetti che possiamo richiamare per operare sulle matrici e, più in generale, su probelmi di algebra lineare: linalg elinearalgebra. Qui esamineremo solo alcune delle possibilità offerte dal primo che andiamo a caricare: > with(linalg); Warning, the protected names norm and trace have been redefined and unprotected [BlockDiagonal, GramSchmidt, JordanBlock, LUdecomp, QRdecomp, Wronskian, addcol, addrow, adj, adjoint, angle, augment, backsub, band, basis, bezout, blockmatrix, charmat, charpoly, cholesky, col, coldim, colspace, colspan, companion, concat, cond, copyinto, crossprod, curl, definite, delcols, delrows, det, diag, diverge, dotprod, eigenvals, eigenvalues, eigenvectors, eigenvects, entermatrix, equal, exponential, extend, ffgausselim, fibonacci, forwardsub, frobenius, gausselim, gaussjord, geneqns, genmatrix, grad, hadamard, hermite, hessian, hilbert, htranspose, ihermite, indexfunc, innerprod, intbasis, inverse, ismith, issimilar, iszero, jacobian, jordan, kernel, laplacian, leastsqrs, linsolve, matadd, matrix, minor, minpoly, mulcol, mulrow, multiply, norm, normalize, nullspace, orthog, permanent, pivot, potential, randmatrix, randvector, rank, ratform, row, rowdim, rowspace, rowspan, rref, scalarmul, singularvals, smith, stackmatrix, submatrix, subvector, sumbasis, swapcol, swaprow, sylvester, toeplitz, trace, transpose, vandermonde, vecpotent, vectdim, vector, wronskian] Definiamo anzitutto due vettori di 3 componenti: > v:= vector(3,[1,2,3]);w:=vector(3,[5,6,7]); v := [1, 2, 3] w := [5, 6, 7] Possiamo ora effettuare tutte le operazioni tra vettori. Partiamo con la somma: > v+w; v + w Per vedere esplicitamente il risultato dobbiamo valutare l espressione con l istruzione evalm:

31 > evalm(%); [6, 8, 10] Ecco invece la moltiplicazione per uno scalare > evalm(3*w); [15, 18, 21] Il prodotto scalare, o prodotto interno, si scrive invece > innerprod(v,w); 38 Passiamo alle matrici. Definiamo una matrice 2 per 3 e chiamiamola A: > A := matrix( 2, 3, [[1,3,2], [-5,14,9]]); [ ] A := una matrice 3 per 3 di nome B: > B := matrix( 3, 3, [[1,-1,1], [0,20,-8], [2,0,2]]); B := e una seconda matrice 2 per 3 di nome C: > C := matrix( 2, 3, [[0,5,2], [1,2,-1]]); [ ] C := e facciamo un po di operazioni tra matrici: > evalm(a+c); > evalm(2*a); [ [ ] ] Per l operazione di moltiplicazione tra matrici (righe per colonne) dobbiamo usare il simbolo &* :

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

GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno GeoGebra 4.2 Introduzione all utilizzo della Vista CAS per il secondo biennio e il quinto anno La Vista CAS L ambiente di lavoro Le celle Assegnazione di una variabile o di una funzione / visualizzazione

Dettagli

Parte 2. Determinante e matrice inversa

Parte 2. Determinante e matrice inversa Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice

Dettagli

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica

Dettagli

Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento.

Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento. Excel: le funzioni Le formule possono essere scritte utilizzando un insieme di funzioni predefinite che Excel mette a disposizione, raggruppate per argomento. DEFINIZIONE: Le funzioni sono dei procedimenti

Dettagli

Lab. 1 - Introduzione a Matlab

Lab. 1 - Introduzione a Matlab Lab. 1 - Introduzione a Matlab Alcune informazioni su Matlab Matlab è uno strumento per il calcolo scientifico utilizzabile a più livelli, dalla calcolatrice tascabile, alla simulazione ed analisi di sistemi

Dettagli

Rapida Introduzione all uso del Matlab Ottobre 2002

Rapida Introduzione all uso del Matlab Ottobre 2002 Rapida Introduzione all uso del Matlab Ottobre 2002 Tutti i tipi di dato utilizzati dal Matlab sono in forma di array. I vettori sono array monodimensionali, e così possono essere viste le serie temporali,

Dettagli

Gli algoritmi. Gli algoritmi. Analisi e programmazione

Gli algoritmi. Gli algoritmi. Analisi e programmazione Gli algoritmi Analisi e programmazione Gli algoritmi Proprietà ed esempi Costanti e variabili, assegnazione, istruzioni, proposizioni e predicati Vettori e matrici I diagrammi a blocchi Analisi strutturata

Dettagli

if t>=0 x=1; else x=0; end fornisce, nella variabile x, il valore della funzione gradino a tempi continui, calcolata in t.

if t>=0 x=1; else x=0; end fornisce, nella variabile x, il valore della funzione gradino a tempi continui, calcolata in t. Il programma MATLAB In queste pagine si introduce in maniera molto breve il programma di simulazione MAT- LAB (una abbreviazione di MATrix LABoratory). Introduzione MATLAB è un programma interattivo di

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

Da una a più variabili: derivate

Da una a più variabili: derivate Da una a più variabili: derivate ( ) 5 gennaio 2011 Scopo di questo articolo è di evidenziare le analogie e le differenze, relativamente al calcolo differenziale, fra le funzioni di una variabile reale

Dettagli

Arduino: Programmazione

Arduino: Programmazione Programmazione formalmente ispirata al linguaggio C da cui deriva. I programmi in ARDUINO sono chiamati Sketch. Un programma è una serie di istruzioni che vengono lette dall alto verso il basso e convertite

Dettagli

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net

Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Lezione 1 Introduzione agli algoritmi e alla programmazione in VisualBasic.Net Definizione di utente e di programmatore L utente è qualsiasi persona che usa il computer anche se non è in grado di programmarlo

Dettagli

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 1.1 Che cos è un algoritmo CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 Gli algoritmi sono metodi per la soluzione di problemi. Possiamo caratterizzare un problema mediante i dati di cui si dispone all inizio

Dettagli

esame di stato 2014 seconda prova scritta per i licei scientifici di ordinamento

esame di stato 2014 seconda prova scritta per i licei scientifici di ordinamento ARTICOLO Archimede 4 4 esame di stato 4 seconda prova scritta per i licei scientifici di ordinamento Il candidato risolva uno dei due problemi e risponda a 5 quesiti del questionario. PROBLEMA Nella figura

Dettagli

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Se a e b sono numeri interi, si dice che a divide b, in simboli: a b, se e solo se esiste c Z tale che b = ac. Si può subito notare che:

Dettagli

Dimensione di uno Spazio vettoriale

Dimensione di uno Spazio vettoriale Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione

Dettagli

Esempi di algoritmi. Lezione III

Esempi di algoritmi. Lezione III Esempi di algoritmi Lezione III Scopo della lezione Implementare da zero algoritmi di media complessità. Verificare la correttezza di un algoritmo eseguendolo a mano. Imparare a valutare le prestazioni

Dettagli

ESAME DI STATO DI LICEO SCIENTIFICO CORSO DI ORDINAMENTO 2004

ESAME DI STATO DI LICEO SCIENTIFICO CORSO DI ORDINAMENTO 2004 ESAME DI STATO DI LICEO SCIENTIFICO CORSO DI ORDINAMENTO 004 Il candidato risolva uno dei due problemi e 5 dei 10 quesiti in cui si articola il questionario. PROBLEMA 1 Sia f la funzione definita da: f

Dettagli

Raccolta di Esercizi di Matematica. Capitolo 8 : Modalità CAS (Computer Algebra S ystem)

Raccolta di Esercizi di Matematica. Capitolo 8 : Modalità CAS (Computer Algebra S ystem) Raccolta di Esercizi di Matematica Capitolo 8 : Modalità CAS (Computer Algebra S ystem) Contenuti: 8-1. L ordine Algebrico delle Operazioni 8-2. Problemi sulle Percentuali 8-3. Le Forme Standard e Point-Slope

Dettagli

Parte 3. Rango e teorema di Rouché-Capelli

Parte 3. Rango e teorema di Rouché-Capelli Parte 3. Rango e teorema di Rouché-Capelli A. Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Rango di una matrice, 2 Teorema degli orlati, 3 3 Calcolo con l algoritmo di Gauss, 6 4 Matrici

Dettagli

ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE

ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE ALGEBRA: LEZIONI DAL 13 OTTOBRE AL 3 NOVEMBRE 1 DIPENDENZA E INDIPENDENZA LINEARE Se ho alcuni vettori v 1, v 2,, v n in uno spazio vettoriale V, il sottospazio 1 W = v 1,, v n di V da loro generato è

Dettagli

Funzioni in più variabili

Funzioni in più variabili Funzioni in più variabili Corso di Analisi 1 di Andrea Centomo 27 gennaio 2011 Indichiamo con R n, n 1, l insieme delle n-uple ordinate di numeri reali R n4{(x 1, x 2,,x n ), x i R, i =1,,n}. Dato X R

Dettagli

CS. Cinematica dei sistemi

CS. Cinematica dei sistemi CS. Cinematica dei sistemi Dopo aver esaminato la cinematica del punto e del corpo rigido, che sono gli schemi più semplificati con cui si possa rappresentare un corpo, ci occupiamo ora dei sistemi vincolati.

Dettagli

Introduzione alla Teoria degli Errori

Introduzione alla Teoria degli Errori Introduzione alla Teoria degli Errori 1 Gli errori di misura sono inevitabili Una misura non ha significato se non viene accompagnata da una ragionevole stima dell errore ( Una scienza si dice esatta non

Dettagli

Accuratezza di uno strumento

Accuratezza di uno strumento Accuratezza di uno strumento Come abbiamo già accennato la volta scora, il risultato della misurazione di una grandezza fisica, qualsiasi sia lo strumento utilizzato, non è mai un valore numerico X univocamente

Dettagli

Floating Point N = M BE. Notazione in virgola mobile. base. esempi 34.76 104 3.6891 106 = 36.891 105 =368.91 104 12.78 10-3 1.

Floating Point N = M BE. Notazione in virgola mobile. base. esempi 34.76 104 3.6891 106 = 36.891 105 =368.91 104 12.78 10-3 1. Floating Point Notazione in virgola mobile N = M BE mantissa base esponente esempi 34.76 104 3.6891 106 = 36.891 105 =368.91 104 12.78 10-3 1.6273 102 forma normalizzata: la mantissa ha una sola cifra

Dettagli

Matematica B - a.a 2006/07 p. 1

Matematica B - a.a 2006/07 p. 1 Matematica B - a.a 2006/07 p. 1 Definizione 1. Un sistema lineare di m equazioni in n incognite, in forma normale, è del tipo a 11 x 1 + + a 1n x n = b 1 a 21 x 1 + + a 2n x n = b 2 (1) = a m1 x 1 + +

Dettagli

Corso di Analisi Matematica. Polinomi e serie di Taylor

Corso di Analisi Matematica. Polinomi e serie di Taylor a.a. 2013/14 Laurea triennale in Informatica Corso di Analisi Matematica Polinomi e serie di Taylor Avvertenza Questi sono appunti informali delle lezioni, che vengono resi disponibili per comodità degli

Dettagli

EQUAZIONI non LINEARI

EQUAZIONI non LINEARI EQUAZIONI non LINEARI Francesca Pelosi Dipartimento di Matematica, Università di Roma Tor Vergata CALCOLO NUMERICO e PROGRAMMAZIONE http://www.mat.uniroma2.it/ pelosi/ EQUAZIONI non LINEARI p.1/44 EQUAZIONI

Dettagli

Rappresentazione dei numeri in un calcolatore

Rappresentazione dei numeri in un calcolatore Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri in un calcolatore Lezione 2 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione dei numeri

Dettagli

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi alternative: function nome { lista-comandi } oppure nome ( ) {

Dettagli

Appunti sulle disequazioni

Appunti sulle disequazioni Premessa Istituto d Istruzione Superiore A. Tilgher Ercolano (Na) Appunti sulle disequazioni Questa breve trattazione non vuole costituire una guida completa ed esauriente sull argomento, ma vuole fornire

Dettagli

4. Operazioni elementari per righe e colonne

4. Operazioni elementari per righe e colonne 4. Operazioni elementari per righe e colonne Sia K un campo, e sia A una matrice m n a elementi in K. Una operazione elementare per righe sulla matrice A è una operazione di uno dei seguenti tre tipi:

Dettagli

Indice generale. Modulo 1 Algebra 2

Indice generale. Modulo 1 Algebra 2 Indice generale Modulo 1 Algebra 2 Capitolo 1 Scomposizione in fattori. Equazioni di grado superiore al primo 1.1 La scomposizione in fattori 2 1.2 Raccoglimento a fattor comune 3 1.3 Raccoglimenti successivi

Dettagli

Semantica operazionale dei linguaggi di Programmazione

Semantica operazionale dei linguaggi di Programmazione Semantica operazionale dei linguaggi di Programmazione Oggetti sintattici e oggetti semantici Rosario Culmone, Luca Tesei Lucidi tratti dalla dispensa Elementi di Semantica Operazionale R. Barbuti, P.

Dettagli

FUNZIONI AVANZATE DI EXCEL

FUNZIONI AVANZATE DI EXCEL FUNZIONI AVANZATE DI EXCEL Inserire una funzione dalla barra dei menu Clicca sulla scheda "Formule" e clicca su "Fx" (Inserisci Funzione). Dalla finestra di dialogo "Inserisci Funzione" clicca sulla categoria

Dettagli

EQUAZIONI E DISEQUAZIONI POLINOMIALI E COLLEGAMENTI CON LA GEOMETRIA ELEMENTARE

EQUAZIONI E DISEQUAZIONI POLINOMIALI E COLLEGAMENTI CON LA GEOMETRIA ELEMENTARE EQUAZIONI E DISEQUAZIONI POLINOMIALI E COLLEGAMENTI CON LA GEOMETRIA ELEMENTARE 1. EQUAZIONI Definizione: un equazione è un uguaglianza tra due espressioni letterali (cioè in cui compaiono numeri, lettere

Dettagli

INTEGRALI DEFINITI. Tale superficie viene detta trapezoide e la misura della sua area si ottiene utilizzando il calcolo di un integrale definito.

INTEGRALI DEFINITI. Tale superficie viene detta trapezoide e la misura della sua area si ottiene utilizzando il calcolo di un integrale definito. INTEGRALI DEFINITI Sia nel campo scientifico che in quello tecnico si presentano spesso situazioni per affrontare le quali è necessario ricorrere al calcolo dell integrale definito. Vi sono infatti svariati

Dettagli

MATRICI E DETERMINANTI

MATRICI E DETERMINANTI MATRICI E DETERMINANTI 1. MATRICI Si ha la seguente Definizione 1: Un insieme di numeri, reali o complessi, ordinati secondo righe e colonne è detto matrice di ordine m x n, ove m è il numero delle righe

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico 1996-1997

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico 1996-1997 1 RAPPRESENTAZIONE BINARIA DEI NUMERI Andrea Bobbio Anno Accademico 1996-1997 Numeri Binari 2 Sistemi di Numerazione Il valore di un numero può essere espresso con diverse rappresentazioni. non posizionali:

Dettagli

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2)

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Definiamo innanzitutto una relazione d ordine tra le funzioni. Siano φ e ψ funzioni

Dettagli

(accuratezza) ovvero (esattezza)

(accuratezza) ovvero (esattezza) Capitolo n 2 2.1 - Misure ed errori In un analisi chimica si misurano dei valori chimico-fisici di svariate grandezze; tuttavia ogni misura comporta sempre una incertezza, dovuta alla presenza non eliminabile

Dettagli

Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto

Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto LEZIONE

Dettagli

Problema n. 1: CURVA NORD

Problema n. 1: CURVA NORD Problema n. 1: CURVA NORD Sei il responsabile della gestione del settore Curva Nord dell impianto sportivo della tua città e devi organizzare tutti i servizi relativi all ingresso e all uscita degli spettatori,

Dettagli

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI Indice 1 Le frazioni algebriche 1.1 Il minimo comune multiplo e il Massimo Comun Divisore fra polinomi........ 1. Le frazioni algebriche....................................

Dettagli

I file di dati. Unità didattica D1 1

I file di dati. Unità didattica D1 1 I file di dati Unità didattica D1 1 1) I file sequenziali Utili per la memorizzazione di informazioni testuali Si tratta di strutture organizzate per righe e non per record Non sono adatte per grandi quantità

Dettagli

STUDIO DI UNA FUNZIONE

STUDIO DI UNA FUNZIONE STUDIO DI UNA FUNZIONE OBIETTIVO: Data l equazione Y = f(x) di una funzione a variabili reali (X R e Y R), studiare l andamento del suo grafico. PROCEDIMENTO 1. STUDIO DEL DOMINIO (CAMPO DI ESISTENZA)

Dettagli

ALGORITMI 1 a Parte. di Ippolito Perlasca. Algoritmo:

ALGORITMI 1 a Parte. di Ippolito Perlasca. Algoritmo: ALGORITMI 1 a Parte di Ippolito Perlasca Algoritmo: Insieme di regole che forniscono una sequenza di operazioni atte a risolvere un particolare problema (De Mauro) Procedimento che consente di ottenere

Dettagli

razionali Figura 1. Rappresentazione degli insiemi numerici Numeri reali algebrici trascendenti frazionari decimali finiti

razionali Figura 1. Rappresentazione degli insiemi numerici Numeri reali algebrici trascendenti frazionari decimali finiti 4. Insiemi numerici 4.1 Insiemi numerici Insieme dei numeri naturali = {0,1,,3,,} Insieme dei numeri interi relativi = {..., 3,, 1,0, + 1, +, + 3, } Insieme dei numeri razionali n 1 1 1 1 = : n, m \{0}

Dettagli

I Numeri Complessi. Si verifica facilmente che, per l operazione di somma in definita dalla (1), valgono le seguenti

I Numeri Complessi. Si verifica facilmente che, per l operazione di somma in definita dalla (1), valgono le seguenti Y T T I Numeri Complessi Operazioni di somma e prodotto su Consideriamo, insieme delle coppie ordinate di numeri reali, per cui si ha!"# $&% '( e )("+* Introduciamo in tale insieme una operazione di somma,/0"#123045"#

Dettagli

LA FUNZIONE ESPONENZIALE E IL LOGARITMO

LA FUNZIONE ESPONENZIALE E IL LOGARITMO LA FUNZIONE ESPONENZIALE E IL LOGARITMO APPUNTI PER IL CORSO DI ANALISI MATEMATICA I G. MAUCERI Indice 1. Introduzione 1 2. La funzione esponenziale 2 3. Il numero e di Nepero 9 4. L irrazionalità di e

Dettagli

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni Funzioni Le funzioni Con il termine funzione si intende, in generale, un operatore che, applicato a un insieme di operandi, consente di calcolare un risultato, come avviene anche per una funzione matematica

Dettagli

PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI

PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI PROBLEMA DELLA RICERCA in termini generali: Dati in input un insieme S di elementi (numeri, caratteri, stringhe, ) e un elemento

Dettagli

Abstract Data Type (ADT)

Abstract Data Type (ADT) Abstract Data Type Pag. 1/10 Abstract Data Type (ADT) Iniziamo la nostra trattazione presentando una nozione che ci accompagnerà lungo l intero corso di Laboratorio Algoritmi e Strutture Dati: il Tipo

Dettagli

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

Il concetto di valore medio in generale

Il concetto di valore medio in generale Il concetto di valore medio in generale Nella statistica descrittiva si distinguono solitamente due tipi di medie: - le medie analitiche, che soddisfano ad una condizione di invarianza e si calcolano tenendo

Dettagli

STRUTTURE (O COSTRUTTI) DI CONTROLLO

STRUTTURE (O COSTRUTTI) DI CONTROLLO Le strutture di controllo Le strutture di controllo STRUTTURE (O COSTRUTTI) DI CONTROLLO determinano l ordine con cui devono essere eseguite le istruzioni sono indipendenti dalla natura delle istruzioni

Dettagli

Manipolazione di testi: espressioni regolari

Manipolazione di testi: espressioni regolari Manipolazione di testi: espressioni regolari Un meccanismo per specificare un pattern, che, di fatto, è la rappresentazione sintetica di un insieme (eventualmente infinito) di stringhe: il pattern viene

Dettagli

Integrazione numerica

Integrazione numerica Integrazione numerica Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ Lezione 6-20-26 ottobre 2009 Indice 1 Formule di quadratura semplici e composite Formule di quadratura

Dettagli

PROPRIETA' ASSOCIATIVA La somma di tre o più addendi non cambia se al posto di alcuni di essi si sostituisce la loro somma.

PROPRIETA' ASSOCIATIVA La somma di tre o più addendi non cambia se al posto di alcuni di essi si sostituisce la loro somma. Addizione: PROPRIETA' COMMUTATIVA Cambiando l'ordine degli addendi la somma non cambia. 1) a + b = b + a PROPRIETA' ASSOCIATIVA La somma di tre o più addendi non cambia se al posto di alcuni di essi si

Dettagli

Esercizi per il corso di Algoritmi e Strutture Dati

Esercizi per il corso di Algoritmi e Strutture Dati 1 Esercizi per il corso di Algoritmi e Strutture Dati Esercizi sulla Tecnica Divide et Impera N.B. Tutti gli algoritmi vanno scritti in pseudocodice (non in Java, né in C++, etc. ). Di tutti gli algoritmi

Dettagli

ED. Equazioni cardinali della dinamica

ED. Equazioni cardinali della dinamica ED. Equazioni cardinali della dinamica Dinamica dei sistemi La dinamica dei sistemi di punti materiali si può trattare, rispetto ad un osservatore inerziale, scrivendo l equazione fondamentale della dinamica

Dettagli

Le variabili. Olga Scotti

Le variabili. Olga Scotti Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.

Dettagli

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1 DIAGRAMMI A BLOCCHI TEORIA ED ESERCIZI 1 1 Il linguaggio dei diagrammi a blocchi è un possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o flowchart, è una rappresentazione grafica

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri Rappresentazione dei numeri nei calcolatori rappresentazioni finalizzate ad algoritmi efficienti per le operazioni

Dettagli

SCUOLA PRIMARIA DI MONTE VIDON COMBATTE CLASSE V INS. VIRGILI MARIA LETIZIA

SCUOLA PRIMARIA DI MONTE VIDON COMBATTE CLASSE V INS. VIRGILI MARIA LETIZIA SCUOLA PRIMARIA DI MONTE VIDON COMBATTE CLASSE V INS. VIRGILI MARIA LETIZIA Regoli di Nepero Moltiplicazioni In tabella Moltiplicazione a gelosia Moltiplicazioni Con i numeri arabi Regoli di Genaille Moltiplicazione

Dettagli

SISTEMI LINEARI QUADRATI: METODI ITERATIVI

SISTEMI LINEARI QUADRATI: METODI ITERATIVI SISTEMI LINEARI QUADRATI: METODI ITERATIVI CALCOLO NUMERICO e PROGRAMMAZIONE SISTEMI LINEARI QUADRATI:METODI ITERATIVI p./54 RICHIAMI di ALGEBRA LINEARE DEFINIZIONI A R n n simmetrica se A = A T ; A C

Dettagli

Elementi di semantica denotazionale ed operazionale

Elementi di semantica denotazionale ed operazionale Elementi di semantica denotazionale ed operazionale 1 Contenuti! sintassi astratta e domini sintattici " un frammento di linguaggio imperativo! semantica denotazionale " domini semantici: valori e stato

Dettagli

A.1 Definizione e rappresentazione di un numero complesso

A.1 Definizione e rappresentazione di un numero complesso 441 APPENDICE A4 NUMERI COMPLESSI A.1 Definizione e rappresentazione di un numero complesso Si riepilogano i concetti e le operazioni elementari relativi ai numeri complessi. Sia z un numero complesso;

Dettagli

I NUMERI DECIMALI. che cosa sono, come si rappresentano

I NUMERI DECIMALI. che cosa sono, come si rappresentano I NUMERI DECIMALI che cosa sono, come si rappresentano NUMERI NATURALI per contare bastano i numeri naturali N i numeri naturali cominciano con il numero uno e vanno avanti con la regola del +1 fino all

Dettagli

Scilab: I Polinomi - Input/Output - I file Script

Scilab: I Polinomi - Input/Output - I file Script Scilab: I Polinomi - Input/Output - I file Script Corso di Informatica CdL: Chimica Claudia d'amato claudia.damato@di.uniba.it Polinomi: Definizione... Un polinomio è un oggetto nativo in Scilab Si crea,

Dettagli

Appunti di Logica Matematica

Appunti di Logica Matematica Appunti di Logica Matematica Francesco Bottacin 1 Logica Proposizionale Una proposizione è un affermazione che esprime un valore di verità, cioè una affermazione che è VERA oppure FALSA. Ad esempio: 5

Dettagli

METODO DEI MINIMI QUADRATI. Quest articolo discende soprattutto dai lavori di Deming, Press et al. (Numerical Recipes) e Jefferys.

METODO DEI MINIMI QUADRATI. Quest articolo discende soprattutto dai lavori di Deming, Press et al. (Numerical Recipes) e Jefferys. METODO DEI MINIMI QUADRATI GIUSEPPE GIUDICE Sommario Il metodo dei minimi quadrati è trattato in tutti i testi di statistica e di elaborazione dei dati sperimentali, ma non sempre col rigore necessario

Dettagli

esame di stato 2012 seconda prova scritta per il liceo scientifico di ordinamento

esame di stato 2012 seconda prova scritta per il liceo scientifico di ordinamento RTICL rchimede 4 esame di stato seconda prova scritta per il liceo scientifico di ordinamento Il candidato risolva uno dei due problemi e risponda a 5 quesiti del questionario PRBLEM Siano f e g le funzioni

Dettagli

APPUNTI DI MATEMATICA LE DISEQUAZIONI NON LINEARI

APPUNTI DI MATEMATICA LE DISEQUAZIONI NON LINEARI APPUNTI DI MATEMATICA LE DISEQUAZIONI NON LINEARI Le disequazioni fratte Le disequazioni di secondo grado I sistemi di disequazioni Alessandro Bocconi Indice 1 Le disequazioni non lineari 2 1.1 Introduzione.........................................

Dettagli

Esercizi Capitolo 5 - Alberi

Esercizi Capitolo 5 - Alberi Esercizi Capitolo 5 - Alberi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle

Dettagli

MINIMI QUADRATI. REGRESSIONE LINEARE

MINIMI QUADRATI. REGRESSIONE LINEARE MINIMI QUADRATI. REGRESSIONE LINEARE Se il coefficiente di correlazione r è prossimo a 1 o a -1 e se il diagramma di dispersione suggerisce una relazione di tipo lineare, ha senso determinare l equazione

Dettagli

1. Intorni di un punto. Punti di accumulazione.

1. Intorni di un punto. Punti di accumulazione. 1. Intorni di un punto. Punti di accumulazione. 1.1. Intorni circolari. Assumiamo come distanza di due numeri reali x e y il numero non negativo x y (che, come sappiamo, esprime la distanza tra i punti

Dettagli

esame di stato 2013 seconda prova scritta per il liceo scientifico di ordinamento

esame di stato 2013 seconda prova scritta per il liceo scientifico di ordinamento Archimede esame di stato seconda prova scritta per il liceo scientifico di ordinamento ARTICOLO Il candidato risolva uno dei due problemi e risponda a 5 quesiti del questionario. PROBLEMA La funzione f

Dettagli

Compito di SISTEMI E MODELLI. 19 Febbraio 2015

Compito di SISTEMI E MODELLI. 19 Febbraio 2015 Compito di SISTEMI E MODELLI 9 Febbraio 5 Non é ammessa la consultazione di libri o quaderni. Le risposte vanno giustificate. Saranno rilevanti per la valutazione anche l ordine e la chiarezza di esposizione.

Dettagli

Funzioni di più variabili. Ottimizzazione libera e vincolata

Funzioni di più variabili. Ottimizzazione libera e vincolata libera e vincolata Generalità. Limiti e continuità per funzioni di 2 o Piano tangente. Derivate successive Formula di Taylor libera vincolata Lo ordinario è in corrispondenza biunivoca con i vettori di

Dettagli

Cicli in Visual Basic for Application. For contatore = inizio To fine istruzioni Next contatore

Cicli in Visual Basic for Application. For contatore = inizio To fine istruzioni Next contatore Cicli in Visual Basic for Application Le strutture del programma che ripetono l'esecuzione di una o più istruzioni sono chiamate Cicli. Alcune strutture per i cicli sono costruite in modo da venire eseguite

Dettagli

Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009. Lab 02 Tipi semplici in C

Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009. Lab 02 Tipi semplici in C Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009 Lab 02 Tipi semplici in C Obiettivo dell esercitazione Acquistare familiarità con i tipi di dato semplici supportati

Dettagli

Determinante e inversa di una matrice

Determinante e inversa di una matrice CPITOLO 6 Determinante e inversa di una matrice Esercizio 6.. Calcolare il determinante delle seguenti matrici: 3 3 = B = 0 3 7 C = 0 D = 0 F = 0 0 3 4 0 3 4 3 Esercizio 6.. Calcolare il determinante delle

Dettagli

Descrizioni VHDL Behavioral

Descrizioni VHDL Behavioral 1 Descrizioni VHDL Behavioral In questo capitolo vedremo come la struttura di un sistema digitale è descritto in VHDL utilizzando descrizioni di tipo comportamentale. Outline: process wait statements,

Dettagli

I Grafici. La creazione di un grafico

I Grafici. La creazione di un grafico I Grafici I grafici servono per illustrare meglio un concetto o per visualizzare una situazione di fatto e pertanto la scelta del tipo di grafico assume notevole importanza. Creare grafici con Excel è

Dettagli

1) Le Espressioni regolari

1) Le Espressioni regolari ESPRESSIONI REGOLARI e FILTRI SED, GREP e AWK 1) Le Espressioni regolari Un'espressione regolare è un modello che descrive un insieme di stringhe. Le espressioni regolari sono costruite, in maniera analoga

Dettagli

Proposta di soluzione della prova di matematica Liceo scientifico di Ordinamento - 2014

Proposta di soluzione della prova di matematica Liceo scientifico di Ordinamento - 2014 Proposta di soluzione della prova di matematica Liceo scientifico di Ordinamento - 14 Problema 1 Punto a) Osserviamo che g (x) = f(x) e pertanto g () = f() = in quanto Γ è tangente all asse delle ascisse,

Dettagli

Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati

Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati Condizione di sincronizzazione Qualora si voglia realizzare una determinata politica di gestione delle risorse,la decisione se ad

Dettagli

Analisi Mat. 1 - Ing. Inform. - Soluzioni del compito del 23-3-06

Analisi Mat. 1 - Ing. Inform. - Soluzioni del compito del 23-3-06 Analisi Mat. - Ing. Inform. - Soluzioni del compito del 3-3-6 Sia p il polinomio di quarto grado definito da pz = z 4. Sia S il settore circolare formato dai numeri complessi che hanno modulo minore o

Dettagli

Ricapitoliamo. Ricapitoliamo

Ricapitoliamo. Ricapitoliamo Ricapitoliamo Finora ci siamo concentrati sui processi computazionali e sul ruolo che giocano le procedure nella progettazione dei programmi In particolare, abbiamo visto: Come usare dati primitivi (numeri)

Dettagli

Studente: SANTORO MC. Matricola : 528

Studente: SANTORO MC. Matricola : 528 CORSO di LAUREA in INFORMATICA Corso di CALCOLO NUMERICO a.a. 2004-05 Studente: SANTORO MC. Matricola : 528 PROGETTO PER L ESAME 1. Sviluppare una versione dell algoritmo di Gauss per sistemi con matrice

Dettagli

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, abbiamo bisogno di conoscere un metodo risolutivo, cioè un metodo che a partire dai dati di ingresso fornisce i risultati attesi.

Dettagli

Funzione reale di variabile reale

Funzione reale di variabile reale Funzione reale di variabile reale Siano A e B due sottoinsiemi non vuoti di. Si chiama funzione reale di variabile reale, di A in B, una qualsiasi legge che faccia corrispondere, a ogni elemento A x A

Dettagli

DERIVATE DELLE FUNZIONI. esercizi proposti dal Prof. Gianluigi Trivia

DERIVATE DELLE FUNZIONI. esercizi proposti dal Prof. Gianluigi Trivia DERIVATE DELLE FUNZIONI esercizi proposti dal Prof. Gianluigi Trivia Incremento della variabile indipendente e della funzione. Se, sono due valori della variabile indipendente, y f ) e y f ) le corrispondenti

Dettagli

Capitolo 9: PROPAGAZIONE DEGLI ERRORI

Capitolo 9: PROPAGAZIONE DEGLI ERRORI Capitolo 9: PROPAGAZIOE DEGLI ERRORI 9.1 Propagazione degli errori massimi ella maggior parte dei casi le grandezze fisiche vengono misurate per via indiretta. Il valore della grandezza viene cioè dedotto

Dettagli

Cristian Secchi Pag. 1

Cristian Secchi Pag. 1 CONTROLLI DIGITALI Laurea Magistrale in Ingegneria Meccatronica SISTEMI A TEMPO DISCRETO Ing. Tel. 0522 522235 e-mail: cristian.secchi@unimore.it http://www.dismi.unimo.it/members/csecchi Richiami di Controlli

Dettagli

ESAME DI STATO 2010 SECONDA PROVA SCRITTA PER IL LICEO SCIENTIFICO DI ORDINAMENTO

ESAME DI STATO 2010 SECONDA PROVA SCRITTA PER IL LICEO SCIENTIFICO DI ORDINAMENTO Archimede ESAME DI STATO SECONDA PROVA SCRITTA PER IL LICEO SCIENTIFICO DI ORDINAMENTO ARTICOLO Il candidato risolva uno dei due problemi e risponda a 5 quesiti del questionario. Sia ABCD un quadrato di

Dettagli

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: G.C.D.( a d, b d ) = 1 Sono state introdotte a lezione due definizioni importanti che ricordiamo: Definizione

Dettagli