Introduzione a Python per il calcolo scientifico
|
|
- Bernardo Capelli
- 7 anni fa
- Visualizzazioni
Transcript
1 Introduzione a Python per il calcolo scientifico Ma ia Penati 23 gennaio 2014
2 Python Python è un linguaggio di programmazione dinamico orientato agli ogge i >>> import t h i s The Zen o f Python, by Tim P e t e r s B e a u t i f u l i s b e t t e r than ugly E x p l i c i t i s b e t t e r than i m p l i c i t Simple i s b e t t e r than complex Complex i s b e t t e r than c o m p l i c a t e d F l a t i s b e t t e r than n e s t e d S p a r s e i s b e t t e r than dense R e a d a b i l i t y counts
3 Algoritmo di Floyd-Warshall l e t d i s t be a V V a r r a y o f minimum d i s t a n c e s i n i t i a l i z e d to f o r each v e r t e x v d i s t [ v ] [ v ] 0 f o r each edge ( u, v ) d i s t [ u ] [ v ] w( u, v ) f o r k from 1 to V f o r i from 1 to V f o r j from 1 to V i f d i s t [ i ] [ k ] + d i s t [ k ] [ j ] < d i s t [ i ] [ j ] then d i s t [ i ] [ j ] d i s t [ i ] [ k ] + d i s t [ k ] [ j ]
4 Algoritmo di Floyd-Warshall def f l o y d _ w a r s h a l l ( V, E, weights ) : i n f = f l o a t ( I n f ) d i s t = [ [ i n f for u in V] for v in V] for i in range ( len ( V ) ) : d i s t [ i ] [ i ] = 0 for e, w in zip ( E, w ) : u, v = e d i s t [ u ] [ v ] = w for k in range ( len ( V ) ) : for i in range ( len ( V ) ) : for j in range ( len ( V ) ) : i f d i s t [ i ] [ k ] + d i s t [ k ] [ j ] < d i s t [ i ] [ j ] : d i s t [ i ] [ j ] = d i s t [ i ] [ k ] + d i s t [ k ] [ j ]
5 Python history 1991 Van Rossum rilascia i sorgenti della versione Viene rilasciata la versione Prima implementazione di numpy (Numeric) 2000 Viene rilasciata la versione Viene rilasciato SciPy Viene rilasciato NumPy Viene rilasciata la versione 30 Iniziano le conferenze SciPy e EuroSciPy
6 Python sfru a a pieno le potenzialità di un vero linguaggio di programmazione Python ha i namespaces è possibile sviluppare un intera applicazione con lo stesso linguaggio di programmazione, dall interfaccia alla logica, grazie al gran numero di librerie esistenti
7 Python sfru a a pieno le potenzialità di un vero linguaggio di programmazione Python ha i namespaces è possibile sviluppare un intera applicazione con lo stesso linguaggio di programmazione, dall interfaccia alla logica, grazie al gran numero di librerie esistenti MATLAB possiede un gran numero di funzioni testate e efficienti Simulink oltre ad essere utilizzato nelle università è utilizzato anche in ambito lavorativo
8 NumPy NumPy è il pacche o base per il calcolo scientifico con Python gestione degli array N-dimensionali integrazione con C, C++ e Fortran funzioni di base di algebra lineare
9 Gli array di Numpy Cos è un array per NumPy? typedef s t r u c t PyArrayObject { char * data ; i n t nd ; npy_intp * dimensions ; npy_intp * s t r i d e s ; PyArray_Descr * d e s c r ; } PyArrayObject ; Blocco di memoria contiene i dati in formato grezzo Schema di accesso traduce gli indici in un indirizzo di memoria Descri ore di tipo perme e di interpretare i dati
10 Gli array di Numpy >>> import numpy as np >>> A = np z e r o s ( ( 2, 2 ) ) >>> A a r r a y ( [ [ 0, 0 ], [ 0, 0 ] ] )
11 Gli array di Numpy >>> import numpy as np >>> A = np z e r o s ( ( 2, 2 ) ) >>> A a r r a y ( [ [ 0, 0 ], [ 0, 0 ] ] ) >>> B = A [ 0, : ] >>> B a r r a y ( [ 0, 0 ] )
12 Gli array di Numpy >>> import numpy as np >>> A = np z e r o s ( ( 2, 2 ) ) >>> A a r r a y ( [ [ 0, 0 ], [ 0, 0 ] ] ) >>> B = A [ 0, : ] >>> B a r r a y ( [ 0, 0 ] ) >>> B [ 0 ] = 1 >>> B a r r a y ( [ 1, 0 ] )
13 Gli array di Numpy >>> import numpy as np >>> A = np z e r o s ( ( 2, 2 ) ) >>> A a r r a y ( [ [ 0, 0 ], [ 0, 0 ] ] ) >>> B = A [ 0, : ] >>> B a r r a y ( [ 0, 0 ] ) >>> B [ 0 ] = 1 >>> B a r r a y ( [ 1, 0 ] ) >>> A a r r a y ( [ [ 1, 0 ], [ 0, 0 ] ] )
14 Differenze con MATLAB tu e le operazioni algebriche tra gli array di NumPy sono element-wise A * B A * B dot ( A, B ) A * B Python è zero-based A ( 1 : 5, : ) A ( end 4: end, : ) A ( 3 : 2 : 2 1, : ) A [ 0 : 5, : ] A [ 5 :, : ] A [ 2 : 2 1 : 2, : ] gli array di NumPy vengono passati per referenza e gli slice sono delle viste
15 SciPy SciPy è una collezione di algoritmi e funzioni basato su NumPy funzioni speciali (scipy special ) quadratura numerica e ODE (scipy integrate ) o imizzazione (scipy optimize) interpolazione (scipy interpolate ) trasformata di Fourier (scipy fftpack) elaborazione dei segnali (scipy signal) algebra lineare (scipy linalg ) statistica (scipy stats) I/O (scipy io)
16 SciPy Il pacche o scipy weave perme e di includere codice C e C++ dire amente nello script Python, rendendo molto semplice l o imizzazione di alcune parti di codice, senza dover scrivere un estensione
17 SciPy Il pacche o scipy weave perme e di includere codice C e C++ dire amente nello script Python, rendendo molto semplice l o imizzazione di alcune parti di codice, senza dover scrivere un estensione u [1: 1,1: 1] = ( ( u [0: 2,1: 1] + u [ 2 :, 1 : 1 ] ) * dy2 + ( u [1: 1,0: 2] + u [ 1 : 1, 2 : ] ) * dx2 ) * d n r _ i n v
18 SciPy Il pacche o scipy weave perme e di includere codice C e C++ dire amente nello script Python, rendendo molto semplice l o imizzazione di alcune parti di codice, senza dover scrivere un estensione u [1: 1,1: 1] = ( ( u [0: 2,1: 1] + u [ 2 :, 1 : 1 ] ) * dy2 + ( u [1: 1,0: 2] + u [ 1 : 1, 2 : ] ) * dx2 ) * d n r _ i n v expr = u [1: 1,1: 1] = ( ( u [0: 2,1: 1] + u [ 2 :, 1 : 1 ] ) * dy2 + \ ( u [1: 1,0: 2] + u [ 1 : 1, 2 : ] ) * dx2 ) * d n r _ i n v weave b l i t z ( expr, c h e c k _ s i z e = 0 )
19 SciPy Il pacche o scipy weave perme e di includere codice C e C++ dire amente nello script Python, rendendo molto semplice l o imizzazione di alcune parti di codice, senza dover scrivere un estensione u [1: 1,1: 1] = ( ( u [0: 2,1: 1] + u [ 2 :, 1 : 1 ] ) * dy2 + ( u [1: 1,0: 2] + u [ 1 : 1, 2 : ] ) * dx2 ) * d n r _ i n v expr = u [1: 1,1: 1] = ( ( u [0: 2,1: 1] + u [ 2 :, 1 : 1 ] ) * dy2 + \ ( u [1: 1,0: 2] + u [ 1 : 1, 2 : ] ) * dx2 ) * d n r _ i n v weave b l i t z ( expr, c h e c k _ s i z e = 0 ) La versione in Python viene eseguita in 10s, quella scri a con il paccheto Weave in 3s, invece la versione nativa scri a in C in 1s
20 Cython Cython è un compilatore per Python e Cython, perme e scrivere estensioni in C con la stessa facilità con cui si scrive in Python chiamare funzioni native in ogni punto del codice, aumentare le performance del codice introducendo la dichiarazione di tipo, integrare in modo semplice codice già esistente
21 Cython Cython è un compilatore per Python e Cython, perme e scrivere estensioni in C con la stessa facilità con cui si scrive in Python chiamare funzioni native in ogni punto del codice, aumentare le performance del codice introducendo la dichiarazione di tipo, integrare in modo semplice codice già esistente import numpy as np def n a i v e _ c o n v o l v e ( f, g ) :
22 Cython Cython è un compilatore per Python e Cython, perme e scrivere estensioni in C con la stessa facilità con cui si scrive in Python chiamare funzioni native in ogni punto del codice, aumentare le performance del codice introducendo la dichiarazione di tipo, integrare in modo semplice codice già esistente import numpy as np def n a i v e _ c o n v o l v e ( f, g ) : import numpy as np cimport numpy as np def n a i v e _ c o n v o l v e ( np ndarray f, np ndarray g ) :
23 Matplotlib Matplotlib è una libreria per la creazione di grafici 2D e 3D
24 perme e di includere grafici nelle applicazioni (wx, Qt, GTK) creazione di script per il postprocessing automatico dei dati importa dati da una grande varietà di fonti, anche Excel esporta in qualsiasi formato grafico ve oriale o raster anch esso è basato su NumPy
25 >>> import numpy as np >>> import m a t p l o t l i b p y p l o t as p l t >>> x = np l i n s p a c e ( 0, 2 * np pi, ) >>> y = np s i n ( x ) >>> p l t p l o t ( x, y ) [ < m a t p l o t l i b l i n e s Line2D object at 0 x10744c150 >] >>> p l t show ( )
26 alche libreria avanzata VTK È una libreria open-source per la grafica 3D, elaborazione di immagini e visualizzazione Sandia è tra i principali sviluppatori del proge o Trilinos È un proge o che raccoglie diverse librerie utilizzate per lo sviluppo di risolutori per problemi ingegneristici e scientifici PETSc È una suite di stru ure dati e algoritmi per lo sviluppo di applicazioni scientifiche Dal proge o PETSc sono nati i proge i: mpi4py, petsc4py, slepc4py, tao4py
27 FEniCS FEniCS è un proge o che ha l obie ivo di sviluppare strumenti innovativi per la risoluzione dei problemi differenziali con il metodo degli elementi finiti
28 FEniCS FEniCS è un proge o che ha l obie ivo di sviluppare strumenti innovativi per la risoluzione dei problemi differenziali con il metodo degli elementi finiti u v dx = fv dx v V Ω u = T r i a l F u n c t i o n ( V ) v = T e s t F u n c t i o n ( V ) } {{ } a(u,v) Ω }{{} L(v) a = dot ( grad ( u ), L = f * v * dx grad ( v ) ) * dx
29 FEniCS L obie ivo è creare strumenti che automatizzino parte dello sviluppo di un codice a elementi finiti: y n: generazione automatica delle funzioni di base valutazione automatica delle forme variazionali assemblaggio automatico delle stru ure controllo automatico dell ada ività di griglia =f tr (v) I (rv) > ) ) = u(x)
30 Enthought Python Distribution La distribuzione EPD è un ambiente autocontenuto che contiene al suo interno tu i gli strumenti necessari per lo sviluppo di applicazioni tecniche in Python è multipia aforma (Linux/MacOSX/Windows) per l utilizzo accademico è completamente gratuito contiene al suo interno più di 100 librerie (NumPy, SciPy, ) sponsorizzano il proge o SciPy
31 Anaconda Come EPD è un ambiente autocontenuto per lo sviluppo di applicazione per il calcolo scientifico in Python è multipia aforma (Linux/MacOSX/Windows) per l utilizzo accademico è completamente gratuito contiene al suo interno più di 100 librerie (NumPy, SciPy, ) perme e di switchare rapidamente tra diverse versioni dell interprete include o imizzazioni multi-core e GPU
32 Installazione in ambienti Unix Il modo più intelligente di installare queste librerie in un ambiente Unix è utilizzare virtualenv e a s y _ i n s t a l l pip pip i n s t a l l v i r t u a l e n v pip i n s t a l l v i r t u a l e n v w r a p p e r Configurate l ambiente con lo script virtualenvwrapper sh m k v i r t u a l e n v s c i p y pip i n s t a l l numpy pip i n s t a l l s c i p y pip i n s t a l l m a t p l o t l i b pip i n s t a l l ipython
Introduzione ai Laboratori di Fondamenti di Analisi dei Dati. Antonino Furnari
Introduzione ai Laboratori di Fondamenti di Analisi dei Dati Antonino Furnari furnari@dmi.unict.it www.dmi.unict.it/~furnari/ Laboratori di FAD Docente: Antonino Furnari (www.dmi.unict.it/~furnari/); Ricevimento:
DettagliIntroduzione al Calcolo Scientifico
Introduzione al Calcolo Scientifico Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 1 / 14 Calcolo Scientifico Insieme degli
DettagliStrumenti per l automazione del testing di applicazioni web Javascript-based
tesi di laurea Strumenti per l automazione del testing di applicazioni web Javascript-based Anno Accademico 2005/2006 relatore Ch.mo prof. Porfirio Tramontana 1 candidato Salvatore Agnello Matr. 41/2612
DettagliIntroduzione a SciPy
Introduzione a SciPy Mario Rosati CINECA Roma m.rosati@cineca.it Introduzione Il#pacche)o#SciPy#con0ene#diversi# toolbox #dedica0#ai#problemi#più# comuni#del#calcolo#scien0fico## I#suoi#diversi#so)o>moduli#corrispondono#a#diverse#applicazioni,#come#
DettagliNumPy. Programmazione Orientata agli Oggetti e Scripting in Python
NumPy Programmazione Orientata agli Oggetti e Scripting in Python NumPy: Informazioni di Base Estensione che aggiunge supporto per vettori e matrici multidimensionali Fornisce: funzioni matematiche di
DettagliInformatica 3. LEZIONE 1: Introduzione. Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di programmazione
Informatica 3 LEZIONE 1: Introduzione Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di Informatica 3 Lezione 1- Modulo 1 Introduzione al corso Introduzione Corso di Informatica 3
DettagliTCL PAD: UN EDITOR DI TESTO ESTENDIBILE, INCORPORABILE E CON INTERFACCE DI TEXT-PROCESSING
Tesi di Laurea Triennale in Ingegneria Informatica TCL PAD: UN EDITOR DI TESTO ESTENDIBILE, INCORPORABILE E CON INTERFACCE DI TEXT-PROCESSING Relatore: Prof. SERGIO FLESCA Laureando: ANTONIO BONIFATI MATR.
DettagliLaboratorio Apprendimento Automatico
Laboratorio Apprendimento Automatico Laurea Magistrale in Informatica Mirko Polato 14 novembre 2016 Python Perché python? Molti moduli per l analisi e la visualizzazione dei dati pre esistenti; Facile
DettagliInformatica 3. Informatica 3. Lezione 1- Modulo 1. LEZIONE 1: Introduzione. Concetti di linguaggi di programmazione. Introduzione
Informatica 3 Informatica 3 LEZIONE 1: Introduzione Lezione 1- Modulo 1 Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di Introduzione al corso Politecnico di Milano - Prof. Sara Comai
DettagliLaboratorio di Informatica
Laboratorio di Informatica Lorenzo Mucchi Ingegneria Elettronica e delle Telecomunicazioni Informazioni sul corso Laboratorio di Informatica è un corso di 27 ore che fornisce un'introduzione all'ambiente
DettagliPython. Loriano Storchi.
Python Loriano Storchi loriano@storchi.org http:://www.storchi.org/ I linguaggi di programmazione Abbiamo visto che i linguaggi di programmaione sono: Dichiarativi Logici Funzionali Imperativi Procedurali
DettagliSciPy. Programmazione Orientata agli Oggetti e Scripting in Python
SciPy Programmazione Orientata agli Oggetti e Scripting in Python SciPy: Informazioni di Base Libreria di algoritmi e strumenti matematici Fornisce: moduli per l'ottimizzazione, per l'algebra lineare,
DettagliLe novità di QGIS 3 Cosa cambierà nel più utilizzato software GIS Open Source. Valerio Noti - TerreLogiche srl
Le novità di QGIS 3 Cosa cambierà nel più utilizzato software GIS Open Source Valerio Noti - TerreLogiche srl, ROMA 18 OTTOBRE 2017 QGIS QGIS è uno dei principali software GIS attualmente disponibili e
DettagliTutorato di Fondamenti di Informatica TUTOR: DAVIDE GHIANI, GIULIA ORRU
Tutorato di Fondamenti di Informatica PROFESSORE: GIAN LUCA MARCIALIS TUTOR: DAVIDE GHIANI, GIULIA ORRU Organizzazione Informazioni di contatto: informatica.marcialis@gmail.com Davide Ghiani Giulia Orrù
DettagliIntroduzione a Java A. FERRARI
Introduzione a Java A. FERRARI La nascita di Java 1991 - James Gosling lavora al Green Project (SUN) per studiare la convergenza tra dispositivi di elettronica di consumo e computer 1992 il Green Project
Dettagliinterfacing C/C++/FORTRAN
interfacing C/C++/FORTRAN Simone Campagna 1 pimp your python code/1 Python è un linguaggio relativamente lento, se confrontato con C/C++/FORTRAN. Questo deriva dal fatto che è di alto livello, con tipizzazione
DettagliIl linguaggio di programmazione Python
Università Roma Tre Dipartimento di Matematica e Fisica Percorso Abilitante Speciale Classe A048 Matematica Applicata Corso di Informatica Il linguaggio di programmazione Python Marco Liverani (liverani@mat.uniroma3.it)
DettagliArchitetture Applicative Altri Esempi
Architetture Applicative Altri Esempi Alessandro Martinelli alessandro.martinelli@unipv.it 15 Aprile 2014 Architetture Applicative Altri Esempi di Architetture Applicative Architetture con più Applicazioni
DettagliInterfaccia utente Al momento dell apertura del software viene visualizzata la finestra dei comandi principali.
MATLAB Presentazione MATLAB, che sta per MATrixLABoratory, è un software ad alta prestazione utile nella trattazione tecnica di problemi di analisi numerica, ingegneristici, per il calcolo scientifico.
DettagliLinguaggi di programmazione e astrazione
Linguaggi di programmazione e astrazione i linguaggi di programmazione ad alto livello moderni sono il più potente strumento di astrazione messo a disposizione dei programmatori che possono, con un solo
DettagliPROGRAMMA = ALGORITMO
Corso di Laurea Scienze Prof. San. Tec., Area Tecnico-Assistenziale SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Anno Accademico 2005-2006 Prof. Fausto Passariello Corso Integrato Metodologia della Ricerca
DettagliPython Start. Docente: M. Chiara Debernardi. Lingua del corso. Descrizione del corso e obiettivi. Destinatari. Italiano
Python Start Docente: M. Chiara Debernardi Lingua del corso Italiano Descrizione del corso e obiettivi Il corso mira a far conoscere i fondamenti di Python i cui ambiti di utilizzo sono molteplici: intelligenza
DettagliCORSO DI PROGRAMMAZIONE ios BASE IN LINGUAGGIO NATIVO OBJECTIVE-C
CORSO DI PROGRAMMAZIONE ios BASE IN LINGUAGGIO NATIVO OBJECTIVE-C Apple ha stupito tutta la sua comunità di sviluppatori quando ha annunciato Swift, un nuovo linguaggio di programmazione per applicazioni
DettagliLinguaggi di Programmazione
Linguaggi di Programmazione!paradigmi linguistici, costrutti!semantica!implementazione, strutture a tempo di esecuzione 1 Linguaggi di programmazione e astrazione! i linguaggi di programmazione ad alto
DettagliESERCITAZIONE 1 CORSO DI FONDAMENTI DI INFORMATICA PROF. GABRIELE DI STEFANO - DR. FRANCESCO GALLO
DIPARTIMENTO DI INGEGNERIA E SCIENZE DELL INFORMAZIONE E MATEMATICA - UNIVAQ CORSO DI FONDAMENTI DI INFORMATICA ESERCITAZIONE 1 PROF. GABRIELE DI STEFANO - DR. FRANCESCO GALLO Blocco 0 - III Piano - francesco.gallo@univaq.it
DettagliInformatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura
Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura francesco.tura@unibo.it 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina
DettagliU4Learn.
U4Learn www.u4learn.it U4Learn 1 SPINOFF - UNIPA E-learning cloud-based U4Learn: Nuove Prospettive per la Formazione Ambiti Formativi SCOLASTICO ACCADEMICO PROFESSIONALE U4Learn: Nuove Prospettive per
DettagliIndice. Prefazione. 3 Oggetti e Java 53
Prefazione xv 1 Architettura dei calcolatori 1 1.1 Calcolatori e applicazioni 1 1.1.1 Alcuni esempi di applicazioni 3 1.1.2 Applicazioni e interfacce 4 1.2 Architettura dei calcolatori 7 1.2.1 Hardware
DettagliA. Ferrari. informatica. introduzione a Java. Alberto Ferrari Informatica
informatica introduzione a Java La nascita di Java 1991 - James Gosling lavora al Green Project (SUN) per studiare la convergenza tra dispositivi di elettronica di consumo e computer 1992 il Green Project
DettagliIntroduzione al Calcolo Scientifico
Introduzione al Calcolo Scientifico Corso di Analisi Numerica, a.a. 2006/2007 Francesca Mazzia Dipartimento di Matematica Università di Bari 16 Ottobre 2006 Francesca Mazzia (Univ. Bari) Introduzione al
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Strumenti di Sviluppo: Introduzione versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliREGISTRI D'ESAME CODICE ESAME CORSO DI LAUREA NOME DEL CORSO LAUREA CFU
REGISTRI D'ESAME Con "" si intende la Triennale del Nuovo Ordinamento (Legge 270) Con "" si intende la Specialistica di due anni del Nuovo Ordinamento (Legge 270) CODICE ESAME CORSO DI LAUREA NOME DEL
DettagliLaboratorio di Programmazione Lezione 1 Introduzione al corso
Laboratorio di Programmazione Lezione 1 al corso Prof. Michele Scarpiniti Prof. Danilo Comminiello Dipartimento di Ingegneria dell Informazione, Elettronica e Telecomunicazioni Sapienza Università di Roma
DettagliUna Libreria di Algebra Lineare per il Calcolo Scientifico
Una Libreria di Algebra Lineare per il Calcolo Scientifico Introduzione Il Lavoro di Tesi Introduzione al Metodo Ridurre l Occupazione di Memoria Metodo di Memorizzazione degli Elementi Risultati Attesi
DettagliFREEFEM++ Marcello Bellomi. 18 Aprile Università di Verona FREEFEM++
18 Aprile 2013 Indice 1) Introduzione 2) Esempio base 3) Sintassi 4) Esempio Part I Indroduzione Dettagli iniziali Risolve problemi in 2D e 3D, creato principalmente per risolvere problemi variazionali
DettagliElementi di Base. Introduzione a Python.
Elementi di Base Introduzione a Python http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Panoramica Elementi di base della sintassi (struttura,
DettagliProblema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.
Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. 1) Comprendere il problema 2) Stabilire quali sono le azioni da eseguire per risolverlo 3) Stabilire la
DettagliModelli di programmazione parallela
Modelli di programmazione parallela Oggi sono comunemente utilizzati diversi modelli di programmazione parallela: Shared Memory Multi Thread Message Passing Data Parallel Tali modelli non sono specifici
DettagliConcetti di Base sulla Programmazione. Prof.Ing.S.Cavalieri
Concetti di Base sulla Programmazione Prof.Ing.S.Cavalieri 1 La Programmazione Dato un problema INFORMATICO, programmare significa: Definire i dati in ingresso e il risultato che si vuole raggiungere Definire
DettagliIndice Prefazione XIII Capitolo 1 Introduzione al Visual Basic per Excel
Indice Prefazione XIII Capitolo 1 Introduzione al Visual Basic per Excel 1 1.1 Premessa 1 1.2 Lavorare in Ambiente Excel 2 1.3 Le Macro di Excel 4 Dal Linguaggio Macro al Visual Basic for Application 4
DettagliEvoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN
LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna
DettagliLAUREA TRIENNALE IN INFORMATICA - DM 270/04
LAUREA TRIENNALE IN INFORMATICA - DM 270/04 SC01123195 ALGEBRA E GEOMETRIA 10:00 MAT/02, MAT/03 2010 SC02100080 ALGORITMI E STRUTTURE DATI 08:00 INF/01 2009 SC02100179 ANALISI MATEMATICA 10:00 MAT/05,
DettagliIntroduzione alla programmazione strutturata
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Prof. ELIO TOPPANO Facoltà di Ingegneria Università degli Studi di Udine Introduzione alla programmazione strutturata 2001 Pier Luca Montessoro, Elio
DettagliMATLAB - Introduzione. Antonino Polimeno
MATLAB - Introduzione Antonino Polimeno antonino.polimeno@unipd.it MATLAB - 1 Da Wikipedia MATLAB (abbreviazione di Matrix Laboratory) è un ambiente per il calcolo numerico e l'analisi statistica scritto
DettagliLa formalizzazione dell informazione: Dati e Diagrammi di Flusso
La formalizzazione dell informazione: Dati e Diagrammi di Flusso Codifica degli algoritmi Algoritmo formulato per essere comunicato tra esseri umani chiaro, sintetico e intuitivo codificato in linguaggi
DettagliTEORIE E TECNICHE DEL RICONOSCIMENTO
TEORIE E TECNICHE DEL RICONOSCIMENTO INTRODUZIONE A SCIKIT-LEARN CLASSIFICAZIONE REGRESSIONE ALTRE LIBRERIE PER L APPRENDIMENTO AUTOMATICO IN PYTHON Come abbiamo visto, la libreria NLTK permeie di apprendere
DettagliStrutture dati nel supporto a run time
Strutture dati nel supporto a run time 1 Entità presenti quando un programma va in esecuzione programmi d utente (compilati) routines del supporto interprete I/O, librerie, routines per la gestione delle
DettagliCorso di Fondamenti di Informatica e Laboratorio
Corso di Fondamenti di Informatica e Laboratorio Corsi di Laurea Ingegneria Informatica (O-Z) Corsi di Laurea Ingegneria delle Telecomunicazioni - (A-Z) (ordinamento 03) A.A. 2009-2010 Prof. Giuseppe Mangioni
DettagliProgramma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza
DettagliPREFAZIONE... IX Lo scopo di questo libro... ix La metodologia di insegnamento... ix Panoramica sul libro... xiii
Sommario PREFAZIONE... IX Lo scopo di questo libro... ix La metodologia di insegnamento... ix Panoramica sul libro... xiii CAPITOLO 1: INTRODUZIONE AI COMPUTER, A INTERNET E AL WEB... 1 1.1 Introduzione...
DettagliSTUDIO E IMPLEMENTAZIONE DI UN SISTEMA DI PARCHEGGIO ASSISTITO
UNIVERSITÀ DEL SALENTO FACOLTÀ DI INGEGNERIA Corso di Laurea Magistrale in Ingegneria Meccanica TESI DI LAUREA in MECCANICA DEL VEICOLO STUDIO E IMPLEMENTAZIONE DI UN SISTEMA DI PARCHEGGIO ASSISTITO Relatore:
DettagliAlgoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema
Algoritmo 2 Procedimento di risoluzione di un problema La programmazione Ver. 2.4 Permette di ottenere un risultato eseguendo una sequenza finita di operazioni elementari Esempi: Una ricetta di cucina
DettagliMapServer. Marco Negretti
MapServer Marco Negretti Politecnico di Milano Polo Regionale di Como e-mail: marco.negretti@polimi.it http://geomatica.como.polimi.it - tel +39.031.332.7524 17/05/05 - v 1.0 proprietà MapServer è un ambiente
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 1 Introduzione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Linguaggi di Programmazione Sintassi
DettagliIntroduzione a Matlab
INFORMATICA B Ingegneria Elettrica Introduzione a Matlab Introduzione a Matlab Matlab (MATrix LABoratory) è uno strumento per il calcolo scientifico ed ingegneristico Matlab facilita lo sviluppo di programmi
DettagliIl computer. Il case e l'unità di elaborazione. Il computer, una macchina aggiornabile.
Liceo Scientifico Vinci PROGRAMMA FINALE A.S. 2016/2017 Materia: INFORMATICA Classe 1Q Prof. Dardanelli Francesco PROGRAMMA SVOLTO NELL ANNO SCOLASTICO IL COMPUTER. Hardware e software. Il computer. Il
DettagliProgrammazione. Andrea Passerini Informatica. Programmazione
Andrea Passerini passerini@disi.unitn.it Informatica Linguaggi di programmazione Il calcolatore è in grado di comprendere solo istruzioni in linguaggio macchina. Il linguaggio macchina non è adatto alla
DettagliConcetti Introduttivi
Concetti Introduttivi Linguaggi di Programmazione http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Linguaggi di Programmazione Impartiscono
DettagliINSEGNAMENTI DEI GRUPPI PER IL CURRICULUM TEORICO La loro attivazione è definita per ogni anno accademico in sede di programmazione didattica
INSEGNAMENTI DEI GRUPPI PER IL CURRICULUM TEORICO La loro attivazione è definita per ogni anno accademico in sede di programmazione didattica Gruppo IstAppl: Istituzioni applicative Istituzioni di analisi
DettagliIntroduzione alla programmazione con Java
Introduzione alla programmazione con Java Docente: Lucio Benussi Lingua del corso Italiano Descrizione del corso e obiettivi Il corso affronta lo studio di Java, linguaggio open source orientato agli oggetti
DettagliAppalto concorso sistema GAWS
Appalto concorso sistema GAWS Data: 29 ottobre 2007 Autore: Fabio Faieta Azienda Proponente: srl Appalto concorso per la realizzazione di un modello software per la automatica di un componente di comunicazione
DettagliLabView Parte 1 IL LABVIEW LEZ_1. Corso di. Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento )
Corso di Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento ) IL LABVIEW LEZ_1 Luigi Ferrigno ferrigno@unicas.it Gruppo Misure Elettriche ed Elettroniche Facoltà
DettagliCorso di Fondamenti di Informatica Linguaggi di Programmazione
Corso di Informatica Linguaggi di Programmazione Anno Accademico 2011/2012 Francesco Tortorella Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di un
DettagliUniversità di Pisa Facoltà di Scienze Matematiche Fisiche e Naturali
Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea Specialistica in Informatica (classe 23/S: Informatica) Corso di Laurea Specialistica in Tecnologie Informatiche (classe 23/S: Informatica)
DettagliIntroduzione a Simulink
Ing. Roberto Naldi DEIS-Università di Bologna Tel. 051 2093876 (CASY) Email: roberto.naldi@unibo.it URL: www-lar.deis.unibo.it/~rnaldi 1 Cosa è Simulink Simulink: un ambiente grafico per la simulazione
DettagliJava: un linguaggio per applicazioni di rete
Java: un linguaggio per applicazioni di rete Moreno Falaschi Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena March 3, 2014 1 Caratteristiche di Java (SUN) Linguaggio
DettagliCORSO TRASVERSALE. SummeR School-DATA MINING AND DATA ANALYSIS WITH R
CORSO TRASVERSALE SummeR School-DATA MINING AND DATA ANALYSIS WITH R PROPONENTE Prof.ssa Luisa Bernardinelli, Prof. Mario Grassi e Dott. Davide Gentilini OBIETTIVI FORMATIVI La gestione e l analisi dei
DettagliProgramma Master Programmatore Java
Programma Master Programmatore Java PCAcademy Via Capodistria 12 Tel.: 06.97.84.22.16 06.85.34.44.76 Cell. 393.93.64.122 - Fax: 06.91.65.92.92 www.pcacademy.it info@pcacademy.it Informazioni generali La
DettagliEvoluzione del C 07/04/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 16 IL LINGUAGGIO C
LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 16 IL LINGUAGGIO C Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna
DettagliIndice generale Introduzione...vii Parte I Concetti e costrutti fondamentali... 1 Capitolo 1 Introduzione al linguaggio... 3
Introduzione...vii Organizzazione del libro... viii Struttura del libro e convenzioni... ix Codice sorgente e progetti... x Compilare ed eseguire direttamente i listati e gli snippet di codice... x Compilare
DettagliIniziare a programmare in C++
Iniziare a programmare in C++ Docente: Ing. Edoardo Fusella Dipartimento di Ingegneria Elettrica e Tecnologie dell Informazione Via Claudio 21, 4 piano laboratorio SECLAB Università degli Studi di Napoli
Dettagliv.krige - coupling GRASS GIS and R for spatial interpolation
v.krige - coupling GRASS GIS and R for spatial interpolation 10.02.2011 Superficie statistica Dai punti alla superficie Grandezza presente su tutta l area (temperatura, quota... ), campionamento puntiforme
DettagliIntroduzione a Matlab e Simulink
Introduzione a Matlab e Simulink Fondamenti di Automatica 1 Motivazioni: problema di analisi Modello del sistema dinamico parametri Segnali d eccitazione Prestazioni? del sistema Come analizzare il comportamento,
DettagliMapServer. Marco Negretti. Politecnico di Milano Polo Regionale di Como
MapServer Marco Negretti Politecnico di Milano Polo Regionale di Como e-mail: marco.negretti@polimi.it http://geomatica.como.polimi.it 08/02/06 - v 1.2 proprietà MapServer è un ambiente di sviluppo open
DettagliIl pitone mangianumeri Breve descrizione di alcune delle caratteristiche che rendono Python adatto al calcolo scientifico
Il pitone mangianumeri Breve descrizione di alcune delle caratteristiche che rendono Python adatto al calcolo scientifico Samuele Carli 8 settembre 2008 Samuele Carli (Prato Linux User Group) Python number
DettagliSommario FONDAMENTI DI INFORMATICA. Definizione formale di algoritmo. Informatica e algoritmi. ALGORITMI E LINGUAGGIO PYTHON Introduzione
Università degli Studi di Cagliari Corsi di Laurea in Ingegneria Chimica e Ingegneria Meccanica FONDAMENTI DI INFORMATICA http://www.diee.unica.it/~marcialis/fi A.A. 2017/2018 Sommario Algoritmi, linguaggi
DettagliREPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA
REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA QUALIFICAZIONE PROFESSIONALE Denominazione qualificazione Analista programmatore 5 Settore Economico Professionale Area di Attività
DettagliIntroduzione alla programmazione con Java
Introduzione alla programmazione con Java Docente: Lucio Benussi Lingua Italiano Descrizione e obiettivi Il corso affronta lo studio di Java, linguaggio open source orientato agli oggetti tra i più diffusi
DettagliIntroduzione all uso di FICO Xpress. Metodi di Ottimizzazione per la Logistica e la Produzione
Introduzione all uso di FICO Xpress Metodi di Ottimizzazione per la Logistica e la Produzione 1 2 Alcuni risolutori per la Programmazione Matematica Indice Sono a disposizione numerosi risolutori di Programmazione
DettagliCENNI MINIMI DI PROGRAMMAZIONE FUNZIONALE IN PYTHON - V. 0.3
CENNI MINIMI DI PROGRAMMAZIONE FUNZIONALE IN PYTHON - V. 0.3 MATTEO PRADELLA 1. Introduzione e concetti base La programmazione funzionale è uno stile di programmzione che enfatizza la valutazione di espressioni,
DettagliScrivere il software. Scrivere il software. Interprete. Compilatore e linker. Fondamenti di Informatica
FODAMETI DI IFORMATICA Prof. PIER LUCA MOTESSORO Prof. ELIO TOPPAO Facoltà di Ingegneria Università degli Studi di Udine Introduzione alla programmazione strutturata 2001 Pier Luca Montessoro, Elio Toppano
Dettagli3. Programmi e algoritmi
3. Programmi e algoritmi Andrea Marongiu (andrea.marongiu@unimore.it) Paolo Valente Contiene slides del corso «Fondamenti di Informatica» del Prof. Montessoro (Università degli Studi di Udine) Recall:
DettagliSCHEMA DI COLLOCAZIONE delle monografie disposte a scaffale aperto
SCHEMA DI COLLOCAZIONE delle monografie disposte a scaffale aperto 00 OPERE DI CARATTERE GENERALE 00A Matematiche generali 00B Atti di convegni internazionali - Proceedings di interesse generale 00C Dizionari
DettagliIntroduzione al Corso
Introduzione al Nicu Sebe Informatica Nicu Sebe 1 / 12 Informazioni Scopo Contatti Nicu Sebe (niculae.sebe@unitn.it) Per informazioni/ricevimento, email http://www.disi.unitn.it/ sebe/info Materiale per
DettagliPag. 1. La formalizzazione dell informazione: Dati e Diagrammi di Flusso. Codifica degli algoritmi
1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione Informatica a.a. 2012/13 Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni La formalizzazione
DettagliPlotting: matplotlib & pyplot
Plotting: matplotlib & pyplot Programmazione Orientata agli Oggetti e Scripting in Python Matplotlib: summary Matplotlib: libreria per la gestione di grafici 2d Matplotlib: summary Matplotlib: libreria
DettagliStrutture dati e loro organizzazione. Gabriella Trucco
Strutture dati e loro organizzazione Gabriella Trucco Introduzione I linguaggi di programmazione di alto livello consentono di far riferimento a posizioni nella memoria principale tramite nomi descrittivi
DettagliLinguaggi di Programmazione
Linguaggi di Programmazione 1 C-Introduzione.tex: Versione 1.0, aa 2005-2006 Linguaggi di programmazione (1) Sono linguaggi che permettono la codifica di algoritmi in modo da renderli eseguibili, direttamente
DettagliIntroduzione al MATLAB c Parte 1 Variabili ed array
Introduzione al MATLAB c Parte 1 Variabili ed array Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 Cos è il MATLAB Componenti principali di MATLAB Avvio e Strumenti
DettagliTraduzione e interpretazione
Traduzione e interpretazione Parte dei lucidi sono stati gentilmente forniti dal Prof. Salza VII.1 Linguaggi di programmazione Linguaggi ad alto livello Maggiore espressività Maggiore produttività Migliore
DettagliJava il Corso Fondamentale
Java il Corso Fondamentale Imparare a Programmare APP per Android, applicativi per Server e Desktop, applet e molto altro. IlTuoCorso - Ermes srl Via E.De Amicis 57 20123 Milano Il corso Ciao! Se desideri
DettagliAmbienti di Sviluppo. Linguaggi compilati
Insieme omogeneo di strumenti adatti allo sviluppo di progetti software. Compilatori e/o interpreti; Editor; Ambienti di Sviluppo Strumenti di debug e/o test; 1 Linguaggi compilati Codice sorgente convertito
DettagliINTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica
Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione
DettagliINTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma
Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione
DettagliIl calcolatore. Architettura di un calcolatore (Hardware)
Il calcolatore Prima parlare della programmazione, e' bene fare una brevissima introduzione su come sono strutturati i calcolatori elettronici. I calcolatori elettronici sono stati progettati e costruiti
DettagliMATERIALI PER LA DISCUSSIONE
SETTORE TECNOLOGICO MATERIALI PER LA DISCUSSIONE ISTITUTO TECNICO INDIRIZZO ARTICOLAZIONE TELECOMUNICAZIONI INFORMATICA E TELECOMUNICAZIONI ESITI DI APPRENDIMENTO Regolamento, Art. 5 comma 1 Nota: Le Competenze,
DettagliStruttura di un. Struttura dei programmi C
Parte 4 Struttura di un Programma Struttura dei programmi C Un programma C deve essere contenuto in uno o più file (salvo diversa specifica, per ora si assume in un file): 1. Una parte contenente direttive
DettagliModel-Based-Design in F1
Model-Based-Design in F1 Team-development e generazione codice in ambienti con un breve time-to-market Riccardo Lodini Indice Ferrari GES Scuderia La storia dell elettronica in F1 Principali controlli
Dettagli