Introduzione al Calcolo Scientifico



Похожие документы
Introduzione al Calcolo Scientifico

Introduzione al Calcolo Scientifico

Introduzione al Calcolo Scientifico

ISTITUTO TECNICO ECONOMICO MOSSOTTI

PROTOTIPAZIONE DI UN TRADUTTORE DA SORGENTE PLC AD ASSEMBLY DI UNA MACCHINA VIRTUALE

Corso di Informatica

Corrispondenza tra gli insegnamenti: ORDINAMENTO (DM 509) NUOVO ORDINAMENTO (DM 270)

Scienze del computer. Cliente. Funzioni del computer. Problema. Teorie. Ingegneria del Software. Strumenti e Tecniche per Risolvere il problema

e-dva - eni-depth Velocity Analysis

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

INFORMATICA. Corso di Laurea in Scienze dell'educazione

Corso di PHP. Prerequisiti. 1 - Introduzione

Breve storia del calcolo automatico

Il Dipartimento individua conoscenze, abilità e competenze in uscita nel biennio e nel triennio ripartite come segue:

Benchmarking. Modulo del Corso di Architettura degli Elaboratori. Nicola Paoletti. Università di Camerino Scuola di Scienze e Tecnologie

Scopo della lezione. Informatica. Informatica - def. 1. Informatica

Università di Pisa Facoltà di Scienze Matematiche Fisiche e Naturali

IL SISTEMA INFORMATIVO

Informatica. Scopo della lezione

Fondamenti di Informatica. Allievi Automatici A.A Nozioni di Base

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

TECNOLOGIE INFORMATICHE DELLA COMUNICAZIONE ORE SETTIMANALI 2 TIPO DI PROVA PER GIUDIZIO SOSPESO PROVA DI LABORATORIO

Data Mining a.a

Progettazione e realizzazione di una GUI multi-piattaforma per applicazioni mediche in 2D

Generazione Automatica di Asserzioni da Modelli di Specifica

Corso di Matematica per la Chimica

I NUOVI ISTITUTI TECNICI

REFERENZIAZIONI 2001) NUP

Appunti del corso di Informatica 1 (IN110 Fondamenti) 4 Linguaggi di programmazione

Architetture Applicative

Introduzione al linguaggio Java

Perito Informatico. Dipartimento Informatica. I.S. Ascanio Sobrero Casale Monferrato (AL) Presentazione del corso di studio

Corso sul pacchetto R

Introduzione alla Progettazione per Componenti

IDENTITÀ GIOVANE. Nata nel 2006 con l intento di diventare leader nel settore IT, Easytech cresce con una solida competenza in tre divisioni:

Fondamenti di Informatica T-1

Cenni sulle reti e applicazioni remote ( internet, applicazioni e servizi web )

Corso ForTIC C2 LEZIONE n. 1

PROGETTO EM.MA PRESIDIO

Modelli matematici avanzati per l azienda a.a

Introduzione alla Virtualizzazione

Corso di Informatica

Corso di Laurea Magistrale in Ingegneria Informatica. Ingegneria del Software II (IS2)

Il modello di ottimizzazione SAM

CODICE ASSE: PRIMO ANNO SECONDO ANNO

TECNICHE DI SIMULAZIONE

UNIVERSITÀ DEGLI STUDI DI PARMA DIPARTIMENTO DI MATEMATICA E INFORMATICA. Corso di Laurea in INFORMATICA

Role plaing esperienziale: ATTUAZIONE DI UN PROGETTO DI NURSING

OFFERTA FORMATIVA INDIRIZZI DI STUDIO

Lezione 1. Introduzione e Modellazione Concettuale

PROFILO FORMATIVO Profilo professionale e percorso formativo

Specifiche tecniche e funzionali del Sistema Orchestra

Fondamenti di Informatica 1. obiettivo: introduzione a conoscenze di base dell informatica

PIANO DI LAVORO ANNUALE DEL DIPARTIMENTO DI MATERIA DIPARTIMENTO DI INFORMATICA INDIRIZZO TECNICO SCIENTIFICO NUCLEI FONDAMENTALI DI CONOSCENZE

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

Software. Algoritmo. Algoritmo INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

Corso di Informatica

Progetto Virtualizzazione

Programma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione

SOFTWARE A SUPPORTO DELLA GESTIONE AMMINISTRATIVA DELLO SPORTELLO UNICO SPECIFICA DEI REQUISITI UTENTE

Alla ricerca dell algoritmo. Scoprire e formalizzare algoritmi.

YOUR EASY SOLUTION FOR COSTING

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia

Problemi, Algoritmi e Programmi

Il Web Server e il protocollo HTTP

Uso del computer e gestione dei file. Elaborazione testi. Foglio elettronico. Strumenti di presentazione

Come ragiona il computer. Problemi e algoritmi

Il sistema operativo TinyOS

Stefania Marrara - Esercitazioni di Tecnologie dei Sistemi Informativi. Integrazione di dati di sorgenti diverse

Dispense del corso di Introduzione all Informatica della Facoltà Di Scienze Matematiche, Fisiche e Naturali dell Università della Calabria

Valutazione assistita del rischio sismico a scala territoriale Valutazione della vulnerabilità e dell agibilità degli edifici Interazione con il

Tecniche di Prototipazione. Introduzione

Approccio stratificato

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

F O R M A T O E U R O P E O P E R

APPENDICE I Pratiche di tecnologie informatiche per la elaborazione della musica e del suono

Ciclo di vita del software: Tipologie di software

Informatica. Teoria. L architettura dei PC Storia dell informatica Periferiche Reti - Software. Marco Brama

Attenzione! il valore della Rimodulazione è superiore alla cifra di Negoziazione

Programmazione per la disciplina Informatica PROGRAMMAZIONE DI MATERIA: INFORMATICA SECONDO BIENNIO AMMINISTRAZIONE FINANZA E MARKETING

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione

Strumenti per la Progettazione

Progetto Cluster. Sottoprogetto Bioinformatica

Materiale didattico. Laboratorio di Informatica a.a I) Introduzione all Informatica. Definizione di Informatica. Definizione di Informatica

Reingegnerizzazione del processo di test nel contesto Exprivia

ANNO SCOLASTICO 2014/2015. LICEO SCIENTIFICO STATALE A. VOLTA Via Juvarra, 14 - Torino

Sistemi di Elaborazione delle Informazioni. Corso di Laurea per "Tecnico Ortopedico" 03

Corso di PHP. Prerequisiti. 1 - Introduzione

Linguaggi dinamici. Giacomo Cabri Riccardo Martoglia

Ref. Prof.ri TIC e Informatica e Laboratorio A PRESENTAZIONE

Linguaggi e Paradigmi di Programmazione

Linguaggi per COMUNICARE. Il linguaggio è un sistema codificato di segni che consente la comunicazione, intesa come scambio di informazioni

ANALISI DEL CONDIZIONAMENTO DI UN SISTEMA LINEARE

Configuration Management

Progettazione e Sviluppo dell Applicazione Web Share Mobile per Dispositivi Mobili Multipiattaforma. Elaborato di Laurea di: Marco Stanzani

Транскрипт:

Introduzione al Calcolo Scientifico Corso di Calcolo Numerico, a.a. 2008/2009 Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 1 / 18

Calcolo Scientifico Insieme degli strumenti, delle tecniche e delle teorie necessarie per risolvere con il computer problemi della scienza e della tecnica. nasce negli anni 40 (modellizzazione di problemi balistici e di armi nucleari nella Seconda Guerra Mondiale); si sviluppa negli anni 70 e 80 (problemi dell industria, es. progettazione di aerei); si consolida negli anni 90 (problemi di Informatica, Fisica, Chimica, Ingegneria, Economia,...). Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 2 / 18

CALCOLO NUMERICO Risoluzione di problemi matematici al calcolatore. Richiede: una conoscenza dello strumento computazionale da usare. una conoscenza del problema da risolvere la costruzione di un algoritmo che risolva il problema con una accuratezza desiderata ed entro i limiti delle risorse (tempo, memoria,...) disponibili. Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 3 / 18

Ambiente computazionale hardware: PC o supercomputer (computer vettoriali, computer paralleli); sistemi operativi e linguaggi: UNIX, LINUX, WINDOWS,... C, C++, Java, Fortran95,... data management: costruzione di database contenenti tutte le informazioni rilevanti per un particolare progetto applicativo; visualizzazione: rappresentazione grafica finalizzata ad una veloce comprensione del calcolo; Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 4 / 18

Esempi di Applicazioni Informatiche Grafica Elaborazione di segnali ed immagini Motori di ricerca Data mining Machine learning Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 5 / 18

Linguaggi per il Calcolo Scientifico Il linguaggio di programmazione per la comunità scientifica è stato per molti anni il Fortran (introdotto negli anni 50). Ora anche altri linguaggi, specialmente il C e il C++ e Java, sono usati per il Calcolo Scientifico. la disponibilità di un linguaggio che può essere usato su una molteplicità di macchine determina la portabilità del software da macchina a macchina con pochissimi cambiamenti nelle performance del codice. Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 6 / 18

Problem Solving Environments Un PSE è un ambiente di alto livello che contiene tutto il software necessario per risolvere una determinata classe di problemi, fra cui metodi avanzati per la soluzione; selezione automatica o semiautomatica dei metodi di soluzione; modi per incorporare facilmente nuovi metodi di soluzione. Gli utenti possono usarlo senza avere una conoscenza specialistica del computer. Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 7 / 18

PSE per il calcolo numerico Matlab; Scilab; Octave; R. Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 8 / 18

MATLAB MATLAB (MATrix LABoratory) : PSE per il calcolo scientifico ad alte prestazioni e la visualizzazione, integra analisi numerica, calcolo con matrici, grafica. È usato in una varietà di applicazioni e rappresenta un potente strumento di calcolo, visualizzazione e programmazione: elaborazione di immagini e segnali; progettazione di sistemi di controllo; ingegneria finanziaria; ricerca in medicina; http://www.mathworks.com/ Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 9 / 18

SCILAB È un ambiente di calcolo scientifico simile al Matlab, sviluppato dallo Scilab group ( INRIA-Rocquencourt Metalau Project, Cergrene ENPC). Scilab è un software free scaricabile dal sito: http://www.scilab.org/ Scilab è disponibile per la maggior parte delle piattaforme Unix, per PC con Linux e Windows. Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 10 / 18

OCTAVE GNU OCTAVE è un ambiente di calcolo scientifico simile al Matlab, sviluppato da John W. Eaton e molti altri. OCTAVE è un software free scaricabile dal sito http://www.octave.org/ Octave è disponibile per la maggior parte delle piattaforme Unix, per PC con Linux e Windows. Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 11 / 18

R R (R development Core Team, 2007) è una versione open-source del linguaggio S. È più conosciuto come un linguaggio per analisi statistica dei dati. Di recente si sta evolvendo come software per il calcolo scientifico. R è un software free scaricabile dal sito http://www.r-project.org R è disponibile per la maggior parte delle piattaforme Unix, per PC con Linux e Windows. Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 12 / 18

Scopo del corso Costruire un algoritmo efficiente per il calcolo scientifico può essere una sfida complessa e difficile. Lo scopo di questo corso è farvi conoscere metodi e strumenti di analisi di base da poter utilizzare per risolvere problemi più complessi che potreste incontrare in futuro. Molti degli algoritmi che faremo sono già implementati nei PSE. Il loro studio ci fornisce le basi per risolvere problemi più complessi che non sono stati ancora risolti. Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 13 / 18

Sorgenti di errori Problema reale Modello Matematico semplificazione del modello: si suppongono trascurabili alcune grandezze fisiche Modello Matematico Metodo Numerico approssimazione nel metodo risolutivo (es. un procedimento infinito approssimato mediante un procedimento finito: errore di troncamento); Metodo Numerico programma errori di arrotondamento: i dati numerici elaborati e i risultati delle operazioni eseguite vengono arrotondati (si opera con aritmetica finita, errore di round-off) Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 14 / 18

Il processo di risoluzione numerica sviluppo di metodi numerici che tengano conto: della natura del problema; delle risorse hardware e software; sviluppo di un algoritmo o un set di istruzioni che descrivono come risolvere un problema con un calcolatore; esame dei diversi aspetti che riguardano la scrittura, la comprensione e la valutazione di algoritmi ed implementazione in un determinato ambiente di calcolo; formulazione di problemi test; fase di testing e misura dell efficienza. Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 15 / 18

Efficienza ottimizzazione della complessità di tempo e di spazio studio accurato dell algoritmo e della fase di implementazione attraverso: la ricerca di tecniche che consentono l effettiva minimizzazione dei calcoli una corretta pianificazione delle aree di memoria da utilizzare Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 16 / 18

Alcuni criteri per un buon codice affidabilità robustezza portabilità leggibilità buona documentazione ampia fase di testing Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 17 / 18

Libri di testo F. Mazzia, D. Trigiante, Laboratorio di Programmazione e Calcolo, Pitagora Editrice, Bologna, 1992. P. Amodio, D. Trigiante, Elementi di Calcolo Numerico, Pitagora Editrice, Bologna, 1993. James F. Epperson, Introduzione all analisi numerica, teoria, metodi, algoritmi. McGraw-Hill, Milano, 2003 Uri. M. Asher and Chen Grief, A first course on Numerical Methods. Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 18 / 18