13
U niversità degliStudidiBologna FA CO LTÀ D ISCIEN ZE M A TEM A TICH E, FISICH E E N A TU RA LI Corso diLaurea in M atematica IstituzionidiA nalisiSuperiore STU D IO SU LL’IN TERFA CCIA M ENTO TRA M ATHEM ATICA E PROGRAM M ISCRITTIIN C TesidiLaurea di: Relatore: A NDREA T OLOM ELLI Chiar.m o Prof. PAOLO M URATORI S ESSIO N E II A nno A ccadem ico 2001-2002

Obiettivi

Embed Size (px)

DESCRIPTION

Sviluppo programmi. serventi di Mathematica. con Mathematica servente. Confronto prestazioni tra programmi:. con Mathematica e C Standard. su piattaforme MacOs e Windows. Obiettivi. Applicazioni multicanale. Studio sull’interfacciamento tra Mathematica e programmi scritti in C. - PowerPoint PPT Presentation

Citation preview

Page 1: Obiettivi

Università degli Studi di Bologna

FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALICorso di Laurea in MatematicaIstituzioni di Analisi Superiore

SSTTUUDDIIOO SSUULLLL’’IINNTTEERRFFAACCCCIIAAMMEENNTTOO TTRRAAMMAATTHHEEMMAATTIICCAA EE PPRROOGGRRAAMMMMII SSCCRRIITTTTII IINN CC

Tesi di Laurea di: Relatore:

ANDREA TOLOMELLI Chiar.mo Prof. PAOLO MURATORI

SESSIONE II

Anno Accademico 2001-2002

Page 2: Obiettivi

Obiettivi

Studio sull’interfacciamento tra Mathematica e programmi scritti in C

• Sviluppo programmi

• serventi di Mathematica

• con Mathematica servente

• Confronto prestazioni tra programmi:

• con Mathematica e C Standard

• su piattaforme MacOs e Windows

• Applicazioni multicanale

Page 3: Obiettivi

MathematicaMathematica

MathLink

Studio sull’interfacciamento tra Mathematica e programmi scritti in C

Page 4: Obiettivi

Apertura LinkApertura Link

Listening Connecting

Front End Kernel

LinkCreate LinkConnect

Studio sull’interfacciamento tra Mathematica e programmi scritti in C

Page 5: Obiettivi

AddTwoAddTwo

AddTwo.c AddTwo.tm

mprep (SAmprep)

AddTwotm.c Librerie Mathlink

Compilatore C e Linker

AddTwo.exe (Windows)AddTwo.PPC (MacOs)

Studio sull’interfacciamento tra Mathematica e programmi scritti in C

File scritti dall’utente

Page 6: Obiettivi

MLSortingMLSorting

MLSorting.c MLSortingInterface.c

Librerie Mathlink

Compilatore C e Linker

MLSorting.exe (Windows)MLSorting.PPC (MacOs)

Studio sull’interfacciamento tra Mathematica e programmi scritti in C

File scritti dall’utente

Page 7: Obiettivi

Programmi

Studio sull’interfacciamento tra Mathematica e programmi scritti in C

• FattorialeFattoriale

• Ricerca in un vettoreRicerca in un vettore

• Ordinamento di un vettoreOrdinamento di un vettore

Page 8: Obiettivi

Prestazioni

Studio sull’interfacciamento tra Mathematica e programmi scritti in C

Ordinamento: Programma standardOrdinamento: Programma standard

MacOs

Windows

Gap

Page 9: Obiettivi

Prestazioni

Studio sull’interfacciamento tra Mathematica e programmi scritti in C

Ordinamento: Programma ML-CompatibileOrdinamento: Programma ML-Compatibile

MacOs

Windows

Gap

Page 10: Obiettivi

MacOs (ML)

Windows

MacOs

Windows (ML)

Prestazioni

Studio sull’interfacciamento tra Mathematica e programmi scritti in C

Ordinamento: Confronto finaleOrdinamento: Confronto finale

Gap MacOs

Gap Windows

Page 11: Obiettivi

Comunicazione

Studio sull’interfacciamento tra Mathematica e programmi scritti in C

Comunicazione Standard con Kernel Comunicazione Standard con Kernel

Kernel

Console DOS

In[1]:=

<Input><Launch>

In[2]:=Out[1]:=<Output>

Page 12: Obiettivi

<Launch>

!

Out[1]:=

<Launch>

Comunicazione

Studio sull’interfacciamento tra Mathematica e programmi scritti in C

Front End

Comunicazione Comunicazione MulticanaleMulticanale

Kernel Kernel

Console DOS

In[1]:=

<Input>

In[2]:=In[1]:=

<Listen> <Connect>

<Connect><LinkOk>

<LinkOk><Display>Out[2]:=

<View><Listen>

<View>

<ViewOk>

<ViewOk>In[3]:=In[4]:=

<View>

Page 13: Obiettivi

Conclusioni

Studio sull’interfacciamento tra Mathematica e programmi scritti in C

• Programmi ML-Compatibili penalizzati dalla Programmi ML-Compatibili penalizzati dalla trasmissione con il Kerneltrasmissione con il Kernel

• Migliori prestazioni di WindowsMigliori prestazioni di Windows

• Maggiore efficienza rispetto al Kernel Maggiore efficienza rispetto al Kernel (programmi serventi Mathematica)(programmi serventi Mathematica)

• Maggiore efficienza del Kernel Maggiore efficienza del Kernel (programmi con Mathematica servente)(programmi con Mathematica servente)

• Utilità programmi ML-Compatibili con:Utilità programmi ML-Compatibili con:

• Gestione dGestione dellaella comunicazione multicanale comunicazione multicanale con MathLinkcon MathLink

• Sviluppi futuri di MathematicaSviluppi futuri di Mathematica