<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>FireTeam &#187; lapack</title>
	<atom:link href="http://www.fireteam.it/tag/lapack/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.fireteam.it</link>
	<description>#fuoco@AzzurraNet</description>
	<lastBuildDate>Tue, 16 Mar 2010 15:55:56 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>LAPACK e SparsKit</title>
		<link>http://www.fireteam.it/2009/07/lapack-sparskit/</link>
		<comments>http://www.fireteam.it/2009/07/lapack-sparskit/#comments</comments>
		<pubDate>Fri, 10 Jul 2009 21:59:13 +0000</pubDate>
		<dc:creator>saverio</dc:creator>
				<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[lapack]]></category>

		<guid isPermaLink="false">http://www.fireteam.it/?p=501</guid>
		<description><![CDATA[
LAPACK (Linear Algebra PACKage) e&#8217; una libreria scritta in FORTRAN 77 per
risolvere:
- sistemi lineari di equazioni
- problemi di minimi quadrati
- calcolo degli autovalori
- problemi ai valori singolari
- fattorizzazioni di matrici
- stima dell&#8217;indice di condizionamento

STRUTTURA DI LAPACK
In LAPACK ci sono tre livelli di routines:
1) Driver routine
2) Computational routine
3) Auxiliary routine
Le DRIVER routine si basano sulle computational [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.fireteam.it/wp-content/uploads/2009/07/lapack.gif"><img class="alignleft size-full wp-image-616" title="lapack" src="http://www.fireteam.it/wp-content/uploads/2009/07/lapack.gif" alt="lapack" width="193" height="181" /></a></p>
<p>LAPACK (Linear Algebra PACKage) e&#8217; una libreria scritta in FORTRAN 77 per<br />
risolvere:<br />
- sistemi lineari di equazioni<br />
- problemi di minimi quadrati<br />
- calcolo degli autovalori<br />
- problemi ai valori singolari<br />
- fattorizzazioni di matrici<br />
- stima dell&#8217;indice di condizionamento</p>
<p><span id="more-501"></span></p>
<h2>STRUTTURA DI LAPACK</h2>
<p>In LAPACK ci sono tre livelli di routines:<br />
1) Driver routine<br />
2) Computational routine<br />
3) Auxiliary routine</p>
<p>Le DRIVER routine si basano sulle computational routine per risolvere un<br />
problema completo.<br />
Le COMPUTATIONAL routine eseguono un distinto nucleo computazionale.<br />
Le AUXILIARY routine sono routine aggiuntive come prodotto matrice-vettore,<br />
calcolare la norma, ecc&#8230;</p>
<h2>SCHEMA DI DENOMINAZIONE</h2>
<p>Tutte le Driver e Computational routine hanno questo schema: X YY ZZ<br />
dove:</p>
<p>&#8211;&gt;  X   e&#8217; il tipo di dato<br />
- s : reale in singola precisione<br />
- d : reale in doppia precisione<br />
- c : complesso in singola precisione<br />
- z : complesso in doppia precisione</p>
<p>&#8211;&gt;  YY  e&#8217; il tipo di matrice<br />
- BD bidiagonale<br />
- GB banda<br />
- GE generale<br />
- ce ne sono molte altre&#8230; vedere le quick references!</p>
<p>&#8211;&gt;  ZZZ e&#8217; il tipo di calcolo da effettuare<br />
- SVX o SV : risolve un sistema lineare<br />
- ce ne sono troppi&#8230; vedere le quick references!</p>
<h2>RISOLUZIONE DI SISTEMI LINEARI CON LAPACK</h2>
<p>L&#8217;unica cosa che faremo con LAPACK e&#8217; risolvere sistemi lineari!!! Per<br />
facilitarci il lavoro cercheremo di scegliere sempre le Driver routine che si<br />
dividono in due gruppi:<br />
- Quelle che terminano per X sono per esperti e richiedono molti parametri,<br />
- Quelle che terminano senza X sono semplici e richiedono i parametri necessari.</p>
<h2>COMPILARE UN PROGRAMMA CHE UTILIZZA LAPACK</h2>
<p>gcc -o ese prog.c -llapack -lblas -lg2c</p>
<h2>CHIAMARE UNA ROUTINE FORTRAN DAL C</h2>
<p>Passare tutti i valori per indirizzo (quindi passiamo solo puntatori).<br />
il nome della routine, quando viene chiamata deve essere seguito da un carattere<br />
underscore&#8230; cioe&#8217;: sgemm_(&amp;parametri);</p>
<h1>Libreria Sparskit</h1>
<p>La libreria Sparskit (versione 2) e&#8217; fatta per eseguire operazioni su matrici<br />
sparse. Essa e&#8217; strutturata in questo modo:</p>
<pre>Sparskit2</pre>
<pre>|</pre>
<pre>|</pre>
<pre>|-Formats</pre>
<pre>|</pre>
<pre>|-Blassm</pre>
<pre>|</pre>
<pre>|-InOut</pre>
<pre>|</pre>
<pre>|-Matgen</pre>
<pre>| |</pre>
<pre>| |-Fdif</pre>
<pre>| |</pre>
<pre>| |-Fem</pre>
<pre>| |</pre>
<pre>| |-Misc</pre>
<pre>|</pre>
<pre>|-Itsol</pre>
<pre>|</pre>
<pre>|-Orderings</pre>
<pre>|</pre>
<pre>|-Unsupp</pre>
<pre>| |</pre>
<pre>| |-Matexp</pre>
<pre>| |</pre>
<pre>| |-Plots</pre>
<pre>| |</pre>
<pre>| |-Blas1</pre>
<pre>|</pre>
<pre>|-Info</pre>
<pre>|</pre>
<pre>|-Doc</pre>
<h3>FORMATS</h3>
<p>Permette di trasformare il tipo di memorizzazione di una matrice sparsa.<br />
Ad esempio di puo&#8217; passare dal formato denso di una matrice (quello normale)<br />
a un formato Packed Storage per le matrici a banda, oppure al formato in<br />
tre vettori.</p>
<h3>BLASSM</h3>
<p>Esegue operazioni algebriche di base come quelle che convolgono due matrici.</p>
<h3>INOUT</h3>
<p>Gestisce l&#8217;input e l&#8217;output della matrici in qualunque formato. Usando queste<br />
routine il programmatore risparmia molto tempo.</p>
<h3>MATGEN</h3>
<p>Routine per generare matrici utili per i test.</p>
<h3>ITSOL</h3>
<p>Metodi iterativi per la risoluzione di sistemi lineari.</p>
<h3>ORDERINGS</h3>
<p>Routini utili a riordinare gli elementi della matrici seguendo vari criteri.</p>
<h3>UNSUPP</h3>
<p>Contiene routine che non sono di proprieta&#8217; di sparkit. Ad esempio BLAS1.</p>
<h3>INFO</h3>
<p>Sono routine che data una matrice in input restituiscono informazioni sulla<br />
matrice.</p>
<h3>DOC</h3>
<p>Contiene la documentazione di Sparskit 2 (comprende le Quick References).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.fireteam.it/2009/07/lapack-sparskit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
