<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Tecnicamente&#039;s Weblog</title>
	<atom:link href="http://tecnicamente.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://tecnicamente.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Mon, 26 Dec 2011 15:24:40 +0000</lastBuildDate>
	<language>it</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='tecnicamente.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Tecnicamente&#039;s Weblog</title>
		<link>http://tecnicamente.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://tecnicamente.wordpress.com/osd.xml" title="Tecnicamente&#039;s Weblog" />
	<atom:link rel='hub' href='http://tecnicamente.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Importare file dati in Excel</title>
		<link>http://tecnicamente.wordpress.com/2011/12/26/importare-file-dati-in-excel/</link>
		<comments>http://tecnicamente.wordpress.com/2011/12/26/importare-file-dati-in-excel/#comments</comments>
		<pubDate>Mon, 26 Dec 2011 15:08:16 +0000</pubDate>
		<dc:creator>tecnicamente</dc:creator>
				<category><![CDATA[C]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[importazione dati]]></category>
		<category><![CDATA[separatore decimale]]></category>

		<guid isPermaLink="false">http://tecnicamente.wordpress.com/?p=218</guid>
		<description><![CDATA[E&#8217; indubbio che Excel come tutti i fogli di calcolo sia ormai uno strumento indispensabile nell&#8217;analisi dei dati, e sicuramente tutti vi siete trovati ad affrontare il triste problema della &#8220;virgola&#8221;. Infatti nelle impostazioni Italiane (ma forse anche straniere), i formati decimali sono separati da &#8220;,&#8221; e non da &#8220;.&#8221; . Questo può creare dei [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=218&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>E&#8217; indubbio che Excel come tutti i fogli di calcolo sia ormai uno strumento indispensabile nell&#8217;analisi dei dati, e sicuramente tutti vi siete trovati ad affrontare il triste problema della &#8220;virgola&#8221;.</p>
<p>Infatti nelle impostazioni Italiane (ma forse anche straniere), i formati decimali sono separati da &#8220;,&#8221; e non da &#8220;.&#8221; .</p>
<p>Questo può creare dei problemi quando si devono importare file numerici realizzati da altri software o scaricati da data-logger, proprio come era successo a me anni fa.</p>
<p>Il problema di per se è facilmente risolvibile quando il file da importare contiene solo numeri decimali con separazione basata su &#8220;.&#8221;, in questi casi si apre il file con un qualsiasi editor e si esegue la sostituzione automatica di &#8220;.&#8221; con &#8220;,&#8221; in tal modo il gioco è fatto e si importa direttamente in Excel un file leggibile secondo il formato che esso si attende.</p>
<p>Tuttavia esistono casi in cui l&#8217;operazione precedente non è possibile, in particolare quando il file da importare è mostruosamente grande, ed in tal caso occore un editor di testi <em>serio</em>, o quando il file contiene dati promiscui, come ad esempio il file che dovevo importare io:</p>
<pre>000000    25/10/2004    17.07.35    21.487    1.612    26.90    27.17
000001    25/10/2004    17.17.38    21.223    1.596    26.05    27.04
000002    25/10/2004    17.27.35    20.820    1.574    25.08    25.89
000003    25/10/2004    17.37.35    19.464    1.515    23.74    24.90
000004    25/10/2004    17.47.35    16.722    1.426    22.43    23.74
000005    25/10/2004    17.57.35    11.868    1.233    21.33    22.81
000006    25/10/2004    18.07.35    6.576    0.809    20.38    21.99
000007    25/10/2004    18.17.35    2.836    0.382    19.77    21.67
000008    25/10/2004    18.27.35    0.746    0.110    19.30    21.56
000009    25/10/2004    18.37.36    0.090    0.013    19.26    21.62
000010    25/10/2004    18.47.36    0.010    0.001    18.95    21.56
000011    25/10/2004    18.57.36    0.003    0.001    18.92    21.63
000012    25/10/2004    19.07.36    0.003    0.001    19.25    21.62
000013    25/10/2004    19.17.36    0.002    0.001    19.11    21.45</pre>
<p>Nel mio caso oltre ad essere un file piuttosto grosso,  (mesi di acquisizione dati), mi serviva modificare i separatori decimali solo dalla quarta colonna in poi, per cui il metodo pocanzi menzionato non era applicabile.</p>
<p>Per risolvere il problema sono bastate poche righe di codice C, dove imponevo di mutare i &#8220;.&#8221; in &#8220;,&#8221; dal secondo punto letto in poi per ogni riga.</p>
<p>Quindi ho prodotto il seguente codice, dove con DOT_LIMIT pari a 2 richiedo la modifica a partire dal terzo &#8220;.&#8221; letto, e DOT_UP_LIMIT pari a 6 per azzerare il contatore a fine linea.</p>
<p>Riposto il codice, per quanto banale  spero possa essere utile a qualcuno.</p>
<pre>#define DOT_LOW_LIMIT 2
#define DOT_UP_LIMIT 6
#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;

int main(int argc, char *argv[])
{
  FILE *fpin;
  FILE *fpout;

  int dot_count;
  char carattere;

  if (argc !=3 )
  {
           fprintf(stderr,"Uso: %s &lt;file_in&gt; &lt;file_out&gt;\n",argv[0]);
           exit(0);
  }

  fpin = fopen(argv[1],"r");
  fpout = fopen(argv[2],"w");

  dot_count = 0;

  while(fscanf(fpin,"%c",&amp;carattere) != EOF ){
           if (carattere == EOF) break;
           if (carattere == '.'){
                         dot_count++;
                         if(dot_count &gt; DOT_LOW_LIMIT){
                                     fprintf(fpout,"%c",',');
                                     fprintf(stdout,"%c",',');
                         }
                         else{
                              fprintf(fpout,"%c",carattere);
                              fprintf(stdout,"%c",carattere);
                         }
                         if(dot_count == DOT_UP_LIMIT) dot_count = 0;
           }
           else{
                fprintf(fpout,"%c",carattere);
                fprintf(stdout,"%c",carattere);
           }
  }

  fclose(fpin);
  fclose(fpout);

  return 0;
}</pre>
<p>Ottenendo questo risultato:</p>
<p>&nbsp;</p>
<pre>000000    25/10/2004    17.07.35    21,487    1,612    26,90    27,17
000001    25/10/2004    17.17.38    21,223    1,596    26,05    27,04
000002    25/10/2004    17.27.35    20,820    1,574    25,08    25,89
000003    25/10/2004    17.37.35    19,464    1,515    23,74    24,90
000004    25/10/2004    17.47.35    16,722    1,426    22,43    23,74
000005    25/10/2004    17.57.35    11,868    1,233    21,33    22,81
000006    25/10/2004    18.07.35    6,576    0,809    20,38    21,99
000007    25/10/2004    18.17.35    2,836    0,382    19,77    21,67
000008    25/10/2004    18.27.35    0,746    0,110    19,30    21,56
000009    25/10/2004    18.37.36    0,090    0,013    19,26    21,62
000010    25/10/2004    18.47.36    0,010    0,001    18,95    21,56
000011    25/10/2004    18.57.36    0,003    0,001    18,92    21,63
000012    25/10/2004    19.07.36    0,003    0,001    19,25    21,62
000013    25/10/2004    19.17.36    0,002    0,001    19,11    21,45</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tecnicamente.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tecnicamente.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tecnicamente.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tecnicamente.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tecnicamente.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tecnicamente.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tecnicamente.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tecnicamente.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tecnicamente.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tecnicamente.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tecnicamente.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tecnicamente.wordpress.com/218/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tecnicamente.wordpress.com/218/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tecnicamente.wordpress.com/218/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=218&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tecnicamente.wordpress.com/2011/12/26/importare-file-dati-in-excel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a951d1927add355a059b4c2099a80adf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tecnicamente</media:title>
		</media:content>
	</item>
		<item>
		<title>CAD per LINUX? Si grazie (seconda parte)</title>
		<link>http://tecnicamente.wordpress.com/2011/11/13/cad-per-linux-si-grazie-seconda-parte/</link>
		<comments>http://tecnicamente.wordpress.com/2011/11/13/cad-per-linux-si-grazie-seconda-parte/#comments</comments>
		<pubDate>Sun, 13 Nov 2011 21:38:29 +0000</pubDate>
		<dc:creator>tecnicamente</dc:creator>
				<category><![CDATA[CAD]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://tecnicamente.wordpress.com/?p=213</guid>
		<description><![CDATA[Un semplice aggiornamento del precedente post. E&#8217; disponibile Draft sight della Dassault System (il produttore del famosto SolidWorks), è gratuito,legge i .dwg e dopo quasi un anno che lo provo devo dire che è veramente ben fatto. A mio parere il miglior CAD gatuito attualmente disponibile per Linux, e sicuramente perfetto per l&#8217;uso professionale. L&#8217;ho [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=213&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Un semplice aggiornamento del precedente <a title="CAD per Linux? Si grazie!" href="http://tecnicamente.wordpress.com/2009/01/23/cad-per-linux-si-grazie/">post</a>.</p>
<p>E&#8217; disponibile Draft sight della Dassault System (il produttore del famosto SolidWorks), è gratuito,legge i .dwg e dopo quasi un anno che lo provo devo dire che è veramente ben fatto.</p>
<p>A mio parere il miglior CAD gatuito attualmente disponibile per Linux, e sicuramente perfetto per l&#8217;uso professionale.</p>
<p>L&#8217;ho usato per creare schemi oleodinamici, importando blocchi, incollando immagini, aprendo file preesistenti in .dwg e nonostante sia una beta mai un crash.</p>
<p>Cosa aspettate? Provatelo sulla vostra Linux box.</p>
<p><a href="http://www.3ds.com/it/products/draftsight/download-draftsight/" target="_blank">http://www.3ds.com/it/products/draftsight/download-draftsight/</a></p>
<p>P.S.: Se non avete Linux, potete provarlo sul vostro windows o Mac OSX</p>
<p>&nbsp;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tecnicamente.wordpress.com/213/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tecnicamente.wordpress.com/213/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tecnicamente.wordpress.com/213/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tecnicamente.wordpress.com/213/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tecnicamente.wordpress.com/213/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tecnicamente.wordpress.com/213/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tecnicamente.wordpress.com/213/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tecnicamente.wordpress.com/213/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tecnicamente.wordpress.com/213/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tecnicamente.wordpress.com/213/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tecnicamente.wordpress.com/213/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tecnicamente.wordpress.com/213/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tecnicamente.wordpress.com/213/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tecnicamente.wordpress.com/213/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=213&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tecnicamente.wordpress.com/2011/11/13/cad-per-linux-si-grazie-seconda-parte/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a951d1927add355a059b4c2099a80adf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tecnicamente</media:title>
		</media:content>
	</item>
		<item>
		<title>Un comodo TEMPLATE per analisi FEM tramite CALCULIX</title>
		<link>http://tecnicamente.wordpress.com/2011/08/05/un-comodo-template-per-analisi-fem-tramite-calculix/</link>
		<comments>http://tecnicamente.wordpress.com/2011/08/05/un-comodo-template-per-analisi-fem-tramite-calculix/#comments</comments>
		<pubDate>Fri, 05 Aug 2011 15:23:08 +0000</pubDate>
		<dc:creator>tecnicamente</dc:creator>
				<category><![CDATA[FEM]]></category>
		<category><![CDATA[Calculix]]></category>
		<category><![CDATA[ccx]]></category>
		<category><![CDATA[File inp]]></category>
		<category><![CDATA[template]]></category>

		<guid isPermaLink="false">http://tecnicamente.wordpress.com/?p=198</guid>
		<description><![CDATA[Calculix è uno strumento veramente interessante e valido, ccx (il solutore) e cgx (il pre e post processore) sono validi quanto, per certi versi oscuri. In questi casi basta un piccolo template per migliorare l&#8217;usabilità. Supponiamo di voler analizzare un pezzo meccanico di cui abbiamo già fatto la mesh. In tal caso il nostro file [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=198&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Calculix è uno strumento veramente interessante e valido, ccx (il solutore) e cgx (il pre e post processore) sono validi quanto, per certi versi oscuri.</p>
<p>In questi casi basta un piccolo template per migliorare l&#8217;usabilità.</p>
<p>Supponiamo di voler analizzare un pezzo meccanico di cui abbiamo già fatto la mesh.</p>
<p>In tal caso il nostro file template.inp sarà il seguente:</p>
<pre>** con "**" si indicano delle linee di commento

** Indichiamo il file che contine la mesh di tutto il modello
*INCLUDE, INPUT = mesh.all

** Indichiamo il file contenente le cordinate dei nodi vincolo:
*INCLUDE, INPUT = vincoli.nam

** Specifichiamo nome del matetiale e caratteristiche meccaniche con le adeguate grandezze dimensionali
*MATERIAL, Name = acciaio_C40
*ELASTIC
22000, 0.3

** Indichiamo il set di nodi a cui associare il materiale, "Eall" è un set definito nel file mesh.all
*SOLID SECTION, Elset=Eall, Material = acciaio_C40

** Con il comando STEP avviamo la parte relatica all'analisi, in questo caso statica
*STEP
*STATIC

** Definiamo le condizioni al contorno, i nodi in vincoli.nam sono bloccati nelle direzioni 1,2,3 (x,y,z)
*BOUNDARY
Nvincoli, 1,2,3

** Definiamo il carico distribuito assegnato che è presente sul dile carico.dlo
*DLOAD
*INCLUDE, INPUT = carico.dlo

** Indichiamo il tipo di risultati che vogliamo visualizzare
*NODE FILE
U

*EL FILE
S, E

*END STEP</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tecnicamente.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tecnicamente.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tecnicamente.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tecnicamente.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tecnicamente.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tecnicamente.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tecnicamente.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tecnicamente.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tecnicamente.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tecnicamente.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tecnicamente.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tecnicamente.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tecnicamente.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tecnicamente.wordpress.com/198/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=198&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tecnicamente.wordpress.com/2011/08/05/un-comodo-template-per-analisi-fem-tramite-calculix/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a951d1927add355a059b4c2099a80adf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tecnicamente</media:title>
		</media:content>
	</item>
		<item>
		<title>Arduino, si comincia</title>
		<link>http://tecnicamente.wordpress.com/2011/03/31/arduino-si-comincia/</link>
		<comments>http://tecnicamente.wordpress.com/2011/03/31/arduino-si-comincia/#comments</comments>
		<pubDate>Thu, 31 Mar 2011 19:42:03 +0000</pubDate>
		<dc:creator>tecnicamente</dc:creator>
				<category><![CDATA[Arduino]]></category>

		<guid isPermaLink="false">http://tecnicamente.wordpress.com/?p=187</guid>
		<description><![CDATA[Questa sera mi sono finalmente convinto a comprare uno starter Kit per Arduino UNO. Prossimamente su questi schermi<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=187&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Questa sera mi sono finalmente convinto a comprare uno starter Kit per<a href="http://www.arduino.cc/"> Arduino UNO</a>.</p>
<p>Prossimamente su questi schermi <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tecnicamente.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tecnicamente.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tecnicamente.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tecnicamente.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tecnicamente.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tecnicamente.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tecnicamente.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tecnicamente.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tecnicamente.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tecnicamente.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tecnicamente.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tecnicamente.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tecnicamente.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tecnicamente.wordpress.com/187/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=187&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tecnicamente.wordpress.com/2011/03/31/arduino-si-comincia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a951d1927add355a059b4c2099a80adf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tecnicamente</media:title>
		</media:content>
	</item>
		<item>
		<title>Fortran parte 3: Fortran Vs. C/C++ o compilatore Vs. compilatore?</title>
		<link>http://tecnicamente.wordpress.com/2011/03/27/fortran-parte-3-fortran-vs-cc-o-compilatore-vs-compilatore/</link>
		<comments>http://tecnicamente.wordpress.com/2011/03/27/fortran-parte-3-fortran-vs-cc-o-compilatore-vs-compilatore/#comments</comments>
		<pubDate>Sun, 27 Mar 2011 20:55:35 +0000</pubDate>
		<dc:creator>tecnicamente</dc:creator>
				<category><![CDATA[Fortran]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Fortran Vs. C/C++]]></category>

		<guid isPermaLink="false">http://tecnicamente.wordpress.com/?p=163</guid>
		<description><![CDATA[Basta fare una ricerca dove si vogliono recuperare informazioni circa le performances offerte dal Fortran95 contro C/C++ e si trovano centianai di benchmark a favore dell&#8217;uno e dell&#8217;altro linguaggio. Se poi si va su gruppi di discussione si assiste a vere e proprie guerre di religione per partito preso e che quasi sempre si concludono [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=163&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Basta fare una ricerca dove si vogliono recuperare informazioni circa le performances offerte dal Fortran95 contro C/C++ e si trovano centianai di benchmark a favore dell&#8217;uno e dell&#8217;altro linguaggio.</p>
<p>Se poi si va su gruppi di discussione si assiste a vere e proprie guerre di religione per partito preso e che quasi sempre si concludono con insulti.</p>
<p>Non è mia intenzione schierarmi dall&#8217;una o dall&#8217;altra parte, credo semplicemente che i software, come qualsiasi altra cosa, sono dei prodotti che devono essere ingegnerizzati.</p>
<p>Quindi quando c&#8217;è da metter giù due righe di codice si può partire alla &#8220;garibaldina&#8221;, ma quando le cose sono serie ed impegnative occorre spendere del tempo per svolgere delle analisi e successivamente impostare l&#8217;architettura del software e la scelta degli strumenti da usare.</p>
<p>Tra gli strumenti c&#8217;è sicuramente il linguaggio di programmazione, difficilmente un solo linguaggio è adatto a coprire tutti gli scopi.</p>
<p>Attenzione, con un linguaggio come ad esempio il C o il C++ si può fare praticamente tutto, non a caso sono &#8220;<em>general purpose</em>&#8220;, e devo essere sincero, sono un grande ammiratore di questi linguaggi e delle loro potenzialità.</p>
<p>Ma in un ambiente di produzione il fattore tempo è fondamentale, il ricorso a strumenti che facilitano certe parti del progetto è, a mio parere, obbligatorio.</p>
<p>Il Fortran non si pone come un linguaggio per risolvere qualsiasi problema, il Fortran si pone come un linguaggio per la soluzione di problemi numerici.</p>
<p>In tale ottica offre una serie di strumenti che altri linguaggi non hanno, per capirci dovendo spiegare quale è il linguaggio più somigliante al fortran, io dire Matlab.</p>
<p>La sostanziale differenza è che Fortran necessita di compilatori, Matlab mi pare sia in pseudocodice.</p>
<p>Ma torniamo alla questione Fortran Vs. C/C++, voglio solo fare degli esempi per dare una idea di quello che mi piace del Fortran ma anche del C/C++.</p>
<p>Si prenda in considerazione l&#8217;esempio seguente, una matrice B contiene dei valori numerici, ed una seconda matrice A è nulla.</p>
<p>Si vuole che A assuma gli stessi elementi di B quando questi sono pari.</p>
<p>Il problema proposto è solo uno spunto per mostrare le capacità del linguaggio.</p>
<p>In C si può scrivere il seguente programma:</p>
<pre>#define X 15000
#define Y 15000
#define ESECUZIONE 5

#include&lt;stdio.h&gt;
#include&lt;stdlib.h&gt;
#include&lt;malloc.h&gt;

int main(void)
{
  int i,j,k;
  int **a;
  int **b;

  for(k=0;k&lt;ESECUZIONE;k++)
  {
    a = malloc(sizeof(int)*X);
    b = malloc(sizeof(int)*X);

    for(i=0;i&lt;Y;i++)
    {
      a[i] = malloc(sizeof(int)*Y);
      b[i] = malloc(sizeof(int)*Y);

      for(j=0;j&lt;Y;j++)
      {
        b[i][j] = j+1;
      }
    }

    for(i=0;i&lt;X;i++)
    {
      for(j=0;j&lt;Y;j++)
      {
        if((b[i][j]%2)==0)
        {
          a[i][j] = b[i][j];
        }
      }
    }
    printf("%d\n",a[10-1][10-1]);

    for(i=0;i&lt;X;i++)
    {
      free(a[i]);
      free(b[i]);
    }
    free(a);
    free(b);
    return 0;
}

return 0;
}</pre>
<p>Come si potrebbe scrivere lo stesso programma in Fortran95?<br />
Ecco la risposta:</p>
<pre>program esempio
implicit none

integer, parameter :: X = 15000
integer, parameter :: Y = 15000
integer, parameter :: ESECUZIONE = 5

integer :: i,j,k

integer, allocatable :: A(:,:), B(:,:)

do k=1,ESECUZIONE
 allocate(A(X,Y))
 allocate(B(X,Y))

 A = 0

 do j=1,Y
     B(:,j) = (/(i,i=1,X)/)
 enddo

 where(mod(B,2)==0) A=B

 write(*,*) B(10,10)

 deallocate (A)
 deallocate (B)

enddo
end program esempio</pre>
<p>o più sinteticamente:</p>
<pre>program esempio_2
implicit none

integer, parameter :: X = 15000
integer, parameter :: Y = 15000
integer, parameter :: ESECUZIONE = 5

integer :: i,j,k

integer, allocatable :: A(:,:), B(:,:)

do k=1,ESECUZIONE
	allocate(A(X,Y))
	allocate(B(X,Y))

	A = 0

	forall(j=1:Y)
		B(:,j)=j
	end forall

	where(mod(B,2)==0) A=B

	write(*,*) B(10,10)

        deallocate (A)
	deallocate (B)
enddo
end program esempio_2</pre>
<p>La cosa evidente, a prescindere da fatto che abbiate capito qualcosa nel codice Fortran <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> , è che in Fortran le linee di codice richieste sono effettivamente poche, e vi assicuro che se si conosce il linguaggio sono anche estremamente leggibili.</p>
<p>Vi ho mostrato due versioni in Fortran95, la differenza tra i due sta nel fatto che nel primo codice uso un ciclo DO&#8230;ENDDO per riempire la matrice B lungo le colonne, ciò è necessario per velocizzare gli accessi in memoria visto che il Fortran organizza i dati in memoria seguendo l&#8217;ordine delle collone, a differenza del C/C++ che seguno le righe.</p>
<p>Nel secondo codice il ciclo DO&#8230;ENDDO precedende è sostituito dal un ciclo FORALL&#8230;END FORALL, tale ciclo è molto particolare, e dovrebbe dare il meglio di se su architetture multiprocessore.</p>
<p>Infatti FORALL implementa il calcolo parallelo nativamente e direttamente dal compilatore, cosa non da poco, purtroppo io dispongo di un sistema non proprio performante e per di più monoprocessore infatti eccovi la scheda del mio sistema:<a href="http://tecnicamente.files.wordpress.com/2011/03/immagine.jpg"><img class="aligncenter size-full wp-image-177" title="Immagine" src="http://tecnicamente.files.wordpress.com/2011/03/immagine.jpg?w=630&#038;h=482" alt="" width="630" height="482" /></a></p>
<p>Adesso passiamo alla copilazione ed al &#8220;<em>benchmark</em>&#8221; dei codici.</p>
<p>Per la precisione userò una versione per usi non commerciali del compilatore Fortran di Intel e l&#8217;immancabile gcc per il codice in C.</p>
<p>Compilo i primi due codici ed ottengo:</p>
<p><a href="http://tecnicamente.files.wordpress.com/2011/03/schermata-22.png"><img class="aligncenter size-large wp-image-182" title="Schermata-2" src="http://tecnicamente.files.wordpress.com/2011/03/schermata-22.png?w=1024&#038;h=640" alt="" width="1024" height="640" /></a></p>
<p>Quale è la conclusione?</p>
<p>La velocità dipende:</p>
<p>- dal tempo impiegato a scrivere tutte le righe di codice</p>
<p>- da come il programmatore implementa il codice</p>
<p>- dal tempo impiegato a debuggare</p>
<p>- dalle ottimizzazioni realizzate dal compilatore</p>
<p>Circa l&#8217;ultimo punto ho una domanda, come mai gfortran che poi è gcc impiega più tempo rispetto alla versione in C, mentre il compilatoreo ifort impiega praticamente lo stesso tempo di gcc?</p>
<p>Ovviamente questo test non è un test valido per qualificare le prestazioni dei compilatori.</p>
<p>Se qualcuno prova ed eseguire i test su una macchina dual core mi farebbe piacere avere i risultati.</p>
<p>In tal caso il codice fortran da usare è il secondo dove è presente l&#8217;istruzione FORALL.</p>
<p>Appena recupero i sorgenti della mia tesi, vedo di eseguire un test sui diversi compilatori, a suo tempo impiegava 60 ore, compilatore Compaq Visual Fortran e un bel PC da 3200 Mhz.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tecnicamente.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tecnicamente.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tecnicamente.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tecnicamente.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tecnicamente.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tecnicamente.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tecnicamente.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tecnicamente.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tecnicamente.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tecnicamente.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tecnicamente.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tecnicamente.wordpress.com/163/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tecnicamente.wordpress.com/163/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tecnicamente.wordpress.com/163/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=163&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tecnicamente.wordpress.com/2011/03/27/fortran-parte-3-fortran-vs-cc-o-compilatore-vs-compilatore/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a951d1927add355a059b4c2099a80adf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tecnicamente</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2011/03/immagine.jpg" medium="image">
			<media:title type="html">Immagine</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2011/03/schermata-22.png?w=1024" medium="image">
			<media:title type="html">Schermata-2</media:title>
		</media:content>
	</item>
		<item>
		<title>Fortran parte 2: Passare i parametri dalla riga di comando</title>
		<link>http://tecnicamente.wordpress.com/2011/03/26/fortran-parte-2-passare-i-parametri-dalla-riga-di-comando/</link>
		<comments>http://tecnicamente.wordpress.com/2011/03/26/fortran-parte-2-passare-i-parametri-dalla-riga-di-comando/#comments</comments>
		<pubDate>Sat, 26 Mar 2011 20:04:29 +0000</pubDate>
		<dc:creator>tecnicamente</dc:creator>
				<category><![CDATA[Fortran]]></category>

		<guid isPermaLink="false">http://tecnicamente.wordpress.com/?p=152</guid>
		<description><![CDATA[Mi è sempre piacuta la possibiltà di passare dei parametri ad un programma nel momento in cui lo si lancia dalla riga di comando. Ciò è estremamente semplice in C/C++, basta infatti: #include&#60;stdio.h&#62; int main(int argc, char* argv[]) { int i; printf("Passati %d parametri\n",argc); printf("I parametri sono:\n"); for(i=1;i&#60;argc;i++) { printf("%s\t",argv[i]);} printf("\n"); return 0; } Sono [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=152&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Mi è sempre piacuta la possibiltà di passare dei parametri ad un programma nel momento in cui lo si lancia dalla riga di comando.</p>
<p>Ciò è estremamente semplice in C/C++, basta infatti:</p>
<pre>#include&lt;stdio.h&gt;
int main(int argc, char* argv[])
{
    int i;
    printf("Passati %d parametri\n",argc);
    printf("I parametri sono:\n");
    for(i=1;i&lt;argc;i++) { printf("%s\t",argv[i]);}
    printf("\n");
    return 0;
}</pre>
<p>Sono rimasto sorpreso e stupito che lo si possa fare con il fortran9x, occore richiamare due funzioni native ed ecco:</p>
<pre>program parametri
implicit none
integer :: argc, i
character(len=256) :: argv
argc = command_argument_count()
argnum = command_argument_count()
write(*,*)  "Numero argomenti: ",argc
do i = 1, argc
 call get_command_argument(i,argv)
 write(*,*) argv
end do
end program parametri</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tecnicamente.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tecnicamente.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tecnicamente.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tecnicamente.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tecnicamente.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tecnicamente.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tecnicamente.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tecnicamente.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tecnicamente.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tecnicamente.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tecnicamente.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tecnicamente.wordpress.com/152/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tecnicamente.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tecnicamente.wordpress.com/152/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=152&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tecnicamente.wordpress.com/2011/03/26/fortran-parte-2-passare-i-parametri-dalla-riga-di-comando/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a951d1927add355a059b4c2099a80adf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tecnicamente</media:title>
		</media:content>
	</item>
		<item>
		<title>Fortran Parte I: Gli array in Fortran95</title>
		<link>http://tecnicamente.wordpress.com/2011/03/24/fortran-parte-i-gli-array-in-fortran95/</link>
		<comments>http://tecnicamente.wordpress.com/2011/03/24/fortran-parte-i-gli-array-in-fortran95/#comments</comments>
		<pubDate>Thu, 24 Mar 2011 20:18:14 +0000</pubDate>
		<dc:creator>tecnicamente</dc:creator>
				<category><![CDATA[Fortran]]></category>

		<guid isPermaLink="false">http://tecnicamente.wordpress.com/?p=131</guid>
		<description><![CDATA[Molti ridono quando sentono parlare del Fortran, ma di fatto chi programma in tale linguaggio non è mai un informatico di professione. In genere chi usa tale linguaggio è una persona che necessita di scrivere del software che si deve interfacciare direttamente a persone o sistemi, ma per la precisione, scrive  software per il calcolo [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=131&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Molti ridono quando sentono parlare del Fortran, ma di fatto chi programma in tale linguaggio non è mai un informatico di professione.</p>
<p>In genere chi usa tale linguaggio è una persona che necessita di scrivere del software che si deve interfacciare direttamente a persone o sistemi, ma per la precisione, scrive  software per il calcolo numerio.</p>
<p>Tutti i linguaggi sono pensati per eseguire calcoli, ma nessuno permette di ottenere le prestazioni e la semplicità di base che si può ottenere con il Fortran95.</p>
<p>In questa breve nota mostrerò l&#8217;aspetto che più apprezzo di questo linguaggio, e che alla fine è quello che mi impedisce anche di passare al C o similari, parliamo di ARRAY!</p>
<p><span style="text-decoration:underline;"><strong>ARRAY in FORTRAN</strong></span></p>
<p>Un Array è un insieme di dati omogenei, e non differesiche in nulla da quelli che sono gli array in altri linguaggi.</p>
<p>Possiamo quindi avere:</p>
<ul>
<li>Array di numeri interi</li>
<li>Array di numeri reali</li>
<li>Array di numeri complessi</li>
<li>Array di caratteri</li>
<li>Array di tipi personali, cioè di tipi creati per uno scopo preciso</li>
</ul>
<p>Ancora una volta gli array possono essere statici o dinamici, e vedremo più avanti cosa vuol dire.</p>
<p>Per un ingegnere, un fisico, un matematico, un chimico, una persona che vuol fare dei calcoli, l&#8217;array non è altro che una MATRICE.</p>
<p>Possiamo avere array monodimensionali, quindi avremo un VETTORE, o array multimensionali quindi MATRICI.</p>
<p>In molte materie scientifiche si realizza un modello matematico basato su matrici ed il calcolo matriciale per semplificare il problema.</p>
<p>Gli esempi sono innumerevoli:</p>
<ul>
<li>L&#8217;analisi del moto dei corpi celesti</li>
<li>La scienza delle costruzioni</li>
<li>L&#8217;analisi agli elementi finiti</li>
<li>La fluido dinamica numerica</li>
<li>L&#8217;aerodinamica applicata</li>
<li>ecc.</li>
</ul>
<p>Per cui possedere un linguaggio che gestisca in modo diretto le matrici non è cosa da poco.</p>
<p>Passiamo agli esempi <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong><span style="text-decoration:underline;">Dichiarazione degli ARRAY</span></strong></p>
<pre><span style="color:#ff0000;">integer :: matrice(10,10)</span>
<span style="color:#ff0000;">integer, dimension(10,10) :: matrice</span></pre>
<p>con le due dichiarazioni precedenti si crea una matrice di interi di rango 10&#215;10</p>
<p>analogamente si può creare un vettore di numeri reali o complessi:</p>
<pre><span style="color:#ff0000;">double precision :: vettore(10)</span></pre>
<pre><span style="color:#ff0000;">double precision, dimension(10) :: vettore</span></pre>
<p>Le dichiarazioni precedenti sono usate quando si conosce a priori la dimensione dell&#8217;array da usare, in molti casi si può avere a che fare con array dalle dimensioni sconosciute, in tal caso occore usare gli array dinamici ed allocare di volta in volta lo spazio i memori necessario.</p>
<p>La dichiarazione è simile alla precedende, ma al posto della dimensione si inserisce il simbolo &#8220;:&#8221;.</p>
<pre><span style="color:#ff0000;">integer, allocatable :: matrice(:,:)</span></pre>
<pre><span style="color:#ff0000;">integer, allocatable, dimension(:) :: vettore</span></pre>
<pre><span style="color:#ff0000;">ALLOCATE(matrice(10,10))</span></pre>
<pre><span style="color:#ff0000;">ALLOCATE(vettore(10))</span></pre>
<p>Per liberare la memori quando le matrici non sono più necessarie basta:</p>
<pre><span style="color:#ff0000;">DEALLOCATE(matrice)</span></pre>
<pre><span style="color:#ff0000;">DEALLOCATE(vettore)</span></pre>
<p><span style="color:#000000;"><strong><span style="text-decoration:underline;">ASSEGNAZIONI DI VALORI AGLI ARRAY</span></strong></span></p>
<p><span style="color:#ff0000;"><span style="color:#000000;">Gli array possono essere usati come semplici variabi sia con la metodologia di accesso in lettura e scrittura basata su indici, quindi:</span></span></p>
<pre><span style="color:#ff0000;"><span style="color:#000000;"><span style="color:#ff0000;">WRITE(*,*) A(i,j)</span> -&gt; stampa l'elemento di coordinate (i,j)</span></span></pre>
<pre><span style="color:#ff0000;"><span style="color:#000000;"><span style="color:#ff0000;">A(i,j) = 5</span> -&gt; assegnail valore 5 all'elemento di coordinate (i,j)</span></span></pre>
<p><span style="color:#ff0000;"><span style="color:#000000;">Ma fin qui tutto è in linea con le possibilità offerte da C/C++, vediamo quindi le peculiarità circa l&#8217;uso degli array.</span></span></p>
<pre><span style="color:#ff0000;"><span style="color:#000000;"><span style="color:#ff0000;">INTEGER :: A(10,20;30) </span> ! creo un array di interi 10x20x30</span></span></pre>
<pre><span style="color:#ff0000;"><span style="color:#000000;"><span style="color:#ff0000;">A = 1</span> ! tutti gli elementi dell'array sono pari ad 1</span></span></pre>
<pre><span style="color:#ff0000;"><span style="color:#000000;"><span style="color:#ff0000;">A(1,:,:) = 2</span> ! tutti gli elementi che hanno il primo indicie pari a 1 assumono valore 2, quindi A(1,1,1) = 2, A(1,1,3) = 2, ..., A(1,20,30) = 2</span></span></pre>
<pre><span style="color:#ff0000;"><span style="color:#000000;"><span style="color:#ff0000;">A(1,1,:) = 3</span> ! tutti gli elementi di coordinate inizilia (1,1) hanno valore = 3, quindi A(1,1,1)=3, A(1,1,2)=3, ...; A(1,1,30) = 3</span></span></pre>
<pre><span style="color:#ff0000;"><span style="color:#000000;"><span style="color:#ff0000;">C = A+B</span> !somma indice ad indice gli elementi di un array ovviamente si può avere anche la sottrazione
 </span></span></pre>
<pre><span style="color:#ff0000;"><span style="color:#000000;"><span style="color:#ff0000;">C=A*B</span> ! moltiplica indice ad indice
</span></span></pre>
<p><span style="color:#ff0000;"><span style="color:#000000;">Tali modi di accesso possono essere usati per ridurre le righe di codice, semplificare la lettura e permette al compilatore di implementare l&#8217;ottimizzazione migliore di accesso, specialmente quando si ha a che fare con migliaia o milioni di elementi.</span></span></p>
<p><span style="color:#ff0000;"><span style="color:#000000;"><span style="text-decoration:underline;"><strong>FUNZIONI NATIVE PER GLI ARRAY</strong></span><br />
</span></span></p>
<p><span style="color:#ff0000;"><span style="color:#000000;">Il linguaggio offre delle funzioni native per particolari operazioni su array quali:</span></span></p>
<pre><span style="color:#ff0000;">DOT_PRODUCT(A, B)</span> ! prodotto scalare di A e della B</pre>
<pre><span style="color:#ff0000;">MAXVAL(A) </span> !  restituisce il valore maggiore dell'array A</pre>
<pre><span style="color:#ff0000;">MINVAL(A) </span> !restituisce  il valore minore di A</pre>
<pre><span style="color:#ff0000;">MAXLOC(A) </span> !  restituisce le coordinate le valore maggiore di A</pre>
<pre><span style="color:#ff0000;">MINLOC(A) </span> ! restituisce le coordinate del valore minore di A</pre>
<pre><span style="color:#ff0000;">PRODUCT(A) </span> ! prodotto degli elementi di A</pre>
<pre><span style="color:#ff0000;">SUM(A)</span> ! somma gli elementi di A</pre>
<pre><span style="color:#ff0000;"><span style="color:#000000;"><span style="color:#ff0000;">TRANSPOSE(A)</span> ! crea la matrice trasposta</span></span></pre>
<p><span style="color:#ff0000;"><span style="color:#000000;">e molte altre ancora per fare lo scorrimento degli elementi, la scelta di elementi da leggere o scrive con l&#8217;applicazioni di filtri (chiamati maschera) ecc.</span></span></p>
<p><span style="color:#ff0000;"><span style="color:#000000;">Il mio intento non è quello di scrivere una guida, se il linguaggio vi interessa potete chiedere qui o consultare i diversi manuali che si trovano in rete.</span></span></p>
<p><span style="color:#ff0000;"><span style="color:#000000;">vi lascio con un piccolo esempio:</span></span></p>
<p><span style="color:#ff0000;"><span style="color:#000000;"><a href="http://tecnicamente.files.wordpress.com/2011/03/schermata-2.png"><img class="aligncenter size-large wp-image-150" title="Schermata-2" src="http://tecnicamente.files.wordpress.com/2011/03/schermata-2.png?w=1024&#038;h=640" alt="" width="1024" height="640" /></a><br />
</span></span></p>
<p style="text-align:center;">Qui il risultato:<a href="http://tecnicamente.files.wordpress.com/2011/03/schermata.png"><img class="aligncenter size-full wp-image-140" title="Schermata" src="http://tecnicamente.files.wordpress.com/2011/03/schermata.png?w=630" alt=""   /></a></p>
<p><span style="color:#ff0000;"><span style="color:#000000;">Ci sarebbe ancora molto da scrivere, ma sarà per la prossima volta.</span></span></p>
<p><span style="color:#ff0000;"><span style="color:#000000;">Infatti non abbiamo parlato di compilatori, lo faremo prossimamente, per ora vi lascio qualche link per curiosare e provare se queste poche note vi hanno incuriosito.</span></span></p>
<p><a title="http://hpff.rice.edu/index.htm" href="http://hpff.rice.edu/index.htm">http://hpff.rice.edu/index.htm</a></p>
<p><a title="http://www.dmi.units.it/~chiarutt/didattica/parallela/fortran/index.html" href="http://www.dmi.units.it/~chiarutt/didattica/parallela/fortran/index.html">http://www.dmi.units.it/~chiarutt/didattica/parallela/fortran/index.html</a></p>
<p><a title="http://www.nsc.liu.se/~boein/f77to90/f77to90.html#index" href="http://www.nsc.liu.se/~boein/f77to90/f77to90.html#index">http://www.nsc.liu.se/~boein/f77to90/f77to90.html#index</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tecnicamente.wordpress.com/131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tecnicamente.wordpress.com/131/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tecnicamente.wordpress.com/131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tecnicamente.wordpress.com/131/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tecnicamente.wordpress.com/131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tecnicamente.wordpress.com/131/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tecnicamente.wordpress.com/131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tecnicamente.wordpress.com/131/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tecnicamente.wordpress.com/131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tecnicamente.wordpress.com/131/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tecnicamente.wordpress.com/131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tecnicamente.wordpress.com/131/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tecnicamente.wordpress.com/131/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tecnicamente.wordpress.com/131/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=131&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tecnicamente.wordpress.com/2011/03/24/fortran-parte-i-gli-array-in-fortran95/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a951d1927add355a059b4c2099a80adf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tecnicamente</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2011/03/schermata-2.png?w=1024" medium="image">
			<media:title type="html">Schermata-2</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2011/03/schermata.png" medium="image">
			<media:title type="html">Schermata</media:title>
		</media:content>
	</item>
		<item>
		<title>HST Parte 2: Calcolo di una trasmissione idrostatica</title>
		<link>http://tecnicamente.wordpress.com/2011/01/16/hst-parte-2-calcolo-di-una-trasmissione-idrostatica/</link>
		<comments>http://tecnicamente.wordpress.com/2011/01/16/hst-parte-2-calcolo-di-una-trasmissione-idrostatica/#comments</comments>
		<pubDate>Sun, 16 Jan 2011 17:46:05 +0000</pubDate>
		<dc:creator>tecnicamente</dc:creator>
				<category><![CDATA[HST]]></category>
		<category><![CDATA[Oleodinamica]]></category>

		<guid isPermaLink="false">http://tecnicamente.wordpress.com/?p=117</guid>
		<description><![CDATA[Il calcolo di una trasmissione idrostatica è abbastanza semplice, ma piuttosto lungo  e noiso a causa delle iterazioni che possono essere richieste. Per velocizzare i tempi di calcolo e verifica ho preparato un foglio di calcolo tramite OpenOffice. Sto ancora lavorandoci su per inserire altre opzioni, quali una differenziazione dei calcoli nel caso si abbia [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=117&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Il calcolo di una trasmissione idrostatica è abbastanza semplice, ma piuttosto lungo  e noiso a causa delle iterazioni che possono essere richieste.</p>
<p>Per velocizzare i tempi di calcolo e verifica ho preparato un foglio di calcolo tramite <a title="link ad OpenOffice" href="http://it.openoffice.org/" target="_blank">OpenOffice</a>.</p>
<p>Sto ancora lavorandoci su per inserire altre opzioni, quali una differenziazione dei calcoli nel caso si abbia a che fare con circuiti aperti o chiusi.</p>
<p>Così come sto inserendo opportune maschere di richiesta data in funzione del tipo di azionamento che sia richiesto, ad esempio:</p>
<p>- trasmissione di veicolo gommato</p>
<p>- trasmissione di veicolo cingolato</p>
<p>- azionamento di un alternatore</p>
<p>- azionamento di un ventilatore/elica</p>
<p>- azionamento di cilindri</p>
<p>Mi ci vorrà del tempo viste le ristrette disponibilità del tempo tempo libero.</p>
<p>Vi do tuttavia una piccola anteprima.</p>
<p>Prendendo spunto da diverso materiale didattico disponibile su  internet, e di cui vi indico i link:</p>
<p>- <a href="https://www.ing.unimore.it/campusone/visualizzazioneingegneria/StreamFile.asp?File=../MaterialeDidattico/Matdidattico5329/Trasmissione_idrostatica_base.pdf" target="_blank">https://www.ing.unimore.it/campusone/visualizzazioneingegneria/StreamFile.asp?File=../MaterialeDidattico/Matdidattico5329/Trasmissione_idrostatica_base.pdf</a></p>
<p>- <a href="http://www.werthercampaldi.it/tesine/Tesina_Mercati.pdf" target="_blank">http://www.werthercampaldi.it/tesine/Tesina_Mercati.pdf</a></p>
<p>-<a href="http://www.diem.ing.unibo.it/personale/naldi/O&amp;P_07.50_2010.03.11_BR_Trasmissioni_R3.pdf" target="_blank"> http://www.diem.ing.unibo.it/personale/naldi/O&amp;P_07.50_2010.03.11_BR_Trasmissioni_R3.pdf</a></p>
<p>ho messo su un foglio di calcolo di cui vi mostro alcune parti.</p>
<div id="attachment_121" class="wp-caption alignnone" style="width: 622px"><a href="http://tecnicamente.files.wordpress.com/2011/01/immagine.jpg"><img class="size-full wp-image-121" title="Foglio di calcolo" src="http://tecnicamente.files.wordpress.com/2011/01/immagine.jpg?w=630" alt=""   /></a><p class="wp-caption-text">Foglio di calcolo</p></div>
<p>e qui i risultati numerici ed il grafico:</p>
<div id="attachment_122" class="wp-caption alignnone" style="width: 1034px"><a href="http://tecnicamente.files.wordpress.com/2011/01/immagine1.jpg"><img class="size-full wp-image-122" title="Risultati" src="http://tecnicamente.files.wordpress.com/2011/01/immagine1.jpg?w=630" alt=""   /></a><p class="wp-caption-text">Risultati</p></div>
<div id="attachment_123" class="wp-caption alignnone" style="width: 809px"><a href="http://tecnicamente.files.wordpress.com/2011/01/immagine2.jpg"><img class="size-full wp-image-123" title="Grafico" src="http://tecnicamente.files.wordpress.com/2011/01/immagine2.jpg?w=630" alt=""   /></a><p class="wp-caption-text">Grafico</p></div>
<p>Sto cercando di correggere alcuni piccoli errori nel foglio di calcolo e di completare le funzionalità.</p>
<p>Se siete interessati al foglio di calcolo lasciate pure un commento.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tecnicamente.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tecnicamente.wordpress.com/117/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tecnicamente.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tecnicamente.wordpress.com/117/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tecnicamente.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tecnicamente.wordpress.com/117/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tecnicamente.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tecnicamente.wordpress.com/117/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tecnicamente.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tecnicamente.wordpress.com/117/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tecnicamente.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tecnicamente.wordpress.com/117/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tecnicamente.wordpress.com/117/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tecnicamente.wordpress.com/117/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=117&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tecnicamente.wordpress.com/2011/01/16/hst-parte-2-calcolo-di-una-trasmissione-idrostatica/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a951d1927add355a059b4c2099a80adf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tecnicamente</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2011/01/immagine.jpg" medium="image">
			<media:title type="html">Foglio di calcolo</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2011/01/immagine1.jpg" medium="image">
			<media:title type="html">Risultati</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2011/01/immagine2.jpg" medium="image">
			<media:title type="html">Grafico</media:title>
		</media:content>
	</item>
		<item>
		<title>HST parte 1: Verifica di un colletore in pressione</title>
		<link>http://tecnicamente.wordpress.com/2010/12/21/hst-parte-1-verifica-di-un-colletore-in-pressione/</link>
		<comments>http://tecnicamente.wordpress.com/2010/12/21/hst-parte-1-verifica-di-un-colletore-in-pressione/#comments</comments>
		<pubDate>Tue, 21 Dec 2010 10:57:32 +0000</pubDate>
		<dc:creator>tecnicamente</dc:creator>
				<category><![CDATA[CAD]]></category>
		<category><![CDATA[FEM]]></category>
		<category><![CDATA[HST]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://tecnicamente.wordpress.com/?p=88</guid>
		<description><![CDATA[Spesso nell&#8217;impiantistica oleodinamica si utilizzano dei collettori con lo scopo di raccogliere o smistare delle portate di fluido da una linea ad altre o nel caso della raccolta di convogliare più linee sulla linea di ritorno. Spesso tali linee sono linee in pressione per cui il colletore diventa un elemento le cui parti devo essere [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=88&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Spesso nell&#8217;impiantistica oleodinamica si utilizzano dei collettori con lo scopo di raccogliere o smistare delle portate di fluido da una linea ad altre o nel caso della raccolta di convogliare più linee sulla linea di ritorno.</p>
<p>Spesso tali linee sono linee in pressione per cui il colletore diventa un elemento le cui parti devo essere calcolate per garantire la corretta tenuta strutturale oltre che le basse perdite di carico e l&#8217;economicità del sistema.</p>
<p>Bene, a questo punto ciò che ci occorre per iniziare la nostra attività progettuale è un foglio di carta, una matita ed una calcolatrice per realizzare il primo schizzo.</p>
<p>Fatto lo schizzo occore creare un modello 3D, o con un qualsiasi software commerciarciale oppure con<a href="http://www.salome-platform.org/"> Salome </a></p>
<p>Realizzato il modello occorre esportare il tutto in formato step (.stp).</p>
<p>A seguire le immagini del modello creato con SALOME:</p>
<div id="attachment_89" class="wp-caption alignnone" style="width: 624px"><a href="http://tecnicamente.files.wordpress.com/2010/12/salome_1.jpg"><img class="size-large wp-image-89 " title="salome_1" src="http://tecnicamente.files.wordpress.com/2010/12/salome_1.jpg?w=614&#038;h=349" alt="" width="614" height="349" /></a><p class="wp-caption-text">Modello del collettore</p></div>
<p>Una visualizzazione più chiara può essere la seguente:</p>
<p><a href="http://tecnicamente.files.wordpress.com/2010/12/salome_2.jpg"><img class="alignnone size-large wp-image-90" title="salome_2" src="http://tecnicamente.files.wordpress.com/2010/12/salome_2.jpg?w=614&#038;h=349" alt="modello 3D realizzato con SALOME" width="614" height="349" /></a></p>
<p>Bene, a questo punto occorre esportare il modello in formato .stp, ciò si rende necessario perchè volendo fare una analisi agli elementi finiti ci occore un formato di scambio tra il modellatore ed il &#8220;meshatore&#8221;, cioè il software che renderà discreto il modello continuo del solido.</p>
<p>Come meshatore mi trovo benissimo con <a title="http://www.hpfem.jku.at/netgen/" href="http://www.hpfem.jku.at/netgen/">netgen</a> e quello che segue è il risultato del lavoro di mesh:</p>
<p><a href="http://tecnicamente.files.wordpress.com/2010/12/netgen_1.jpg"><img class="alignnone size-full wp-image-91" title="netgen_1" src="http://tecnicamente.files.wordpress.com/2010/12/netgen_1.jpg?w=630" alt="Mesh del modello 3D realizzata con NetGen"   /></a></p>
<p>qui un dettaglio:</p>
<p><a href="http://tecnicamente.files.wordpress.com/2010/12/netgen_2.jpg"><img class="alignnone size-full wp-image-92" title="netgen_2" src="http://tecnicamente.files.wordpress.com/2010/12/netgen_2.jpg?w=630" alt="Dettaglio della mesh realizzata con NetGen"   /></a></p>
<p>Adesso la mesh va esportata nel formato abaqus, e quindi possiamo passare ad usare i tool di pre-processing, processing e post-processing di <a title="http://www.calculix.de" href="http://www.calculix.de" target="_blank">Calculux</a>, ciò del software per anlisi agli elementi finiti.</p>
<p>Usando il pre-processing di CalculiX (cgx) possiamo selezionare le superfici che saranno interessate ad una pressione di 400 bar:</p>
<div id="attachment_94" class="wp-caption alignnone" style="width: 510px"><a href="http://tecnicamente.files.wordpress.com/2010/12/hcpy_1.png"><img class="size-full wp-image-94" title="hcpy_1" src="http://tecnicamente.files.wordpress.com/2010/12/hcpy_1.png?w=630" alt=""   /></a><p class="wp-caption-text">Selezione superfici mesh su cui applicare 400 bar</p></div>
<p>Questo il file di input usato per calculix:</p>
<div id="attachment_93" class="wp-caption alignnone" style="width: 510px"><a href="http://tecnicamente.files.wordpress.com/2010/12/vim.jpg"><img class="size-full wp-image-93" title="vim" src="http://tecnicamente.files.wordpress.com/2010/12/vim.jpg?w=630" alt=""   /></a><p class="wp-caption-text">File input per CalculiX</p></div>
<p>Bene a questo punto basterà usare il modulo di post-processing di CalculiX per vedere nell&#8217;ordine le tensioni di Von Mises su tutto il modello e su una sezione in particolare:</p>
<div id="attachment_95" class="wp-caption alignnone" style="width: 510px"><a href="http://tecnicamente.files.wordpress.com/2010/12/hcpy_11.png"><img class="size-full wp-image-95" title="hcpy_1" src="http://tecnicamente.files.wordpress.com/2010/12/hcpy_11.png?w=630" alt=""   /></a><p class="wp-caption-text">Tensioni di Von Mises</p></div>
<div id="attachment_96" class="wp-caption alignnone" style="width: 510px"><a href="http://tecnicamente.files.wordpress.com/2010/12/hcpy_3.png"><img class="alignnone size-full wp-image-99" title="hcpy_3" src="http://tecnicamente.files.wordpress.com/2010/12/hcpy_3.png?w=630" alt=""   /></a><p class="wp-caption-text">Tensioni di Von Mises su una sezione particolare</p></div>
<p>bene per oggi è tutto.</p>
<p>Spero sia utile e stimolante per le vostre attività.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tecnicamente.wordpress.com/88/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tecnicamente.wordpress.com/88/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tecnicamente.wordpress.com/88/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tecnicamente.wordpress.com/88/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tecnicamente.wordpress.com/88/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tecnicamente.wordpress.com/88/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tecnicamente.wordpress.com/88/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tecnicamente.wordpress.com/88/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tecnicamente.wordpress.com/88/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tecnicamente.wordpress.com/88/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tecnicamente.wordpress.com/88/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tecnicamente.wordpress.com/88/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tecnicamente.wordpress.com/88/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tecnicamente.wordpress.com/88/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=88&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tecnicamente.wordpress.com/2010/12/21/hst-parte-1-verifica-di-un-colletore-in-pressione/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a951d1927add355a059b4c2099a80adf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tecnicamente</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2010/12/salome_1.jpg?w=1024" medium="image">
			<media:title type="html">salome_1</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2010/12/salome_2.jpg?w=1024" medium="image">
			<media:title type="html">salome_2</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2010/12/netgen_1.jpg" medium="image">
			<media:title type="html">netgen_1</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2010/12/netgen_2.jpg" medium="image">
			<media:title type="html">netgen_2</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2010/12/hcpy_1.png" medium="image">
			<media:title type="html">hcpy_1</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2010/12/vim.jpg" medium="image">
			<media:title type="html">vim</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2010/12/hcpy_11.png" medium="image">
			<media:title type="html">hcpy_1</media:title>
		</media:content>

		<media:content url="http://tecnicamente.files.wordpress.com/2010/12/hcpy_3.png" medium="image">
			<media:title type="html">hcpy_3</media:title>
		</media:content>
	</item>
		<item>
		<title>HST Hydraulics Software &amp; Tools, Software e tool vari per l&#8217;oleodinamica</title>
		<link>http://tecnicamente.wordpress.com/2010/12/21/hst-hydraulisc-software-tools-software-e-tool-vari-per-loleodinamica/</link>
		<comments>http://tecnicamente.wordpress.com/2010/12/21/hst-hydraulisc-software-tools-software-e-tool-vari-per-loleodinamica/#comments</comments>
		<pubDate>Tue, 21 Dec 2010 09:57:24 +0000</pubDate>
		<dc:creator>tecnicamente</dc:creator>
				<category><![CDATA[Oleodinamica]]></category>
		<category><![CDATA[HST]]></category>

		<guid isPermaLink="false">http://tecnicamente.wordpress.com/?p=84</guid>
		<description><![CDATA[Non ho tutto il tempo necessario da dedicare alla cura adeguata di queste poche scarne pagine che segno di tanto in tanto sul blog. Uso solo i ritagli di tempo che la vita privata e la vita lavorativa mi permettono, e ciò si scontra molto con l&#8217;idea iniziale che avevo di creare piccole ma dettagliate [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=84&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Non ho tutto il tempo necessario da dedicare alla cura adeguata di queste poche scarne pagine che segno di tanto in tanto sul blog.</p>
<p>Uso solo i ritagli di tempo che la vita privata e la vita lavorativa mi permettono, e ciò si scontra molto con l&#8217;idea iniziale che avevo di creare piccole ma dettagliate guide su software particolarmente interessanti per l&#8217;attività professionale e acor di piu&#8217; per il fatto di essere open-source e quindi praticamente primi di costi di acquisto.</p>
<p>Ho quindi rivisto i miei obiettivi in funzione del tempo ed ho deciso di cambire il taglio delle note che andrò a redigere.</p>
<p>Con la sigla HST indicherò una serie di brevi &#8220;case history&#8221; dove mostrerò l&#8217;uso che un progettista o una azienda possono fare dei software open source per migliorare i propri prodotti ad un costo contenuto, la cosa penso possa essere molto interessante per tutti i colleghi che esercitano la professione in ambito oleodinamico.</p>
<p>Quindi HST sarà una breve e veloce carrellata di cosa si possa fare con i principali software disponibili su internet e a costo nullo o quasi se non si considerano le ore necessarie per l&#8217;apprendimendo.</p>
<p>Quindi se qualcuno ha bisogno di chiarimenti non esiti a scrivere sul blog, farò quello che posso nei tempi che ho <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Ma alla fine cosa troverete in HST?</p>
<p>troverete esempi d&#8217;uso di software quali:</p>
<p>- Calculix</p>
<p>- Salomeca</p>
<p>- Scilab e Scicoslab</p>
<p>- Qcad</p>
<p>- DIA</p>
<p>- Open Office</p>
<p>- gcc e gfortran (compilatore C e Fortran)</p>
<p>- Netgen</p>
<p>- Elmer</p>
<p>- gmsh</p>
<p>e tanti altri che ora non ricordo ma che certamente mi verrano in mente.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tecnicamente.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tecnicamente.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tecnicamente.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tecnicamente.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tecnicamente.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tecnicamente.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tecnicamente.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tecnicamente.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tecnicamente.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tecnicamente.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tecnicamente.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tecnicamente.wordpress.com/84/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tecnicamente.wordpress.com/84/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tecnicamente.wordpress.com/84/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tecnicamente.wordpress.com&amp;blog=1548765&amp;post=84&amp;subd=tecnicamente&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tecnicamente.wordpress.com/2010/12/21/hst-hydraulisc-software-tools-software-e-tool-vari-per-loleodinamica/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a951d1927add355a059b4c2099a80adf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">tecnicamente</media:title>
		</media:content>
	</item>
	</channel>
</rss>
