Category archives: Programmazione

 

 

0

Adobe rilascia la versione 1.0 Stabile di Brackets

Adobe ha rilasciato nei giorni scorsi la nuova versione 1.0 stabile di Brackets, le novità e come installarla.

Adobe Brackets in Ubuntu
Adobe Brackets è progetto open source sviluppato per fornire ai developer un moderno editor ottimizzato per lo sviluppo di pagine web. Tra le principali caratteristiche di Adobe Brackets troviamo un’interfaccia grafica semplice e minimale con integrati diversi strumenti, possiamo inoltre espanderne le funzionalità tramite plugin / estensioni di terze parti. Dopo mesi di duro lavoro è finalmente disponibile la nuova versione 1.0 stabile di Brackets, software realizzato (oltre a supportare) le principalmente tecnologie open source come HTML, JavaScript e CSS ecc.

Continua a leggere…

 

0

Cos’é MeteorJS e perché è diverso da altri framework javascript/nodejs

È stato rilasciato da poco Meteor 1.0, colgo quindi l’occasione per fare un post in italiano sulle caratteristiche principali.

Meteor HackerChat source

In breve Meteor è un framework javascript isomorfico open source per fare web app realtime. Va oltre al classico approccio client/REST API/server e quindi permette di condividere facilmente il codice tra client e server.

Isomorfismo

Meteor utilizza javascript nel client (web browser) e nodejs nel server. Sebbene ci siano differenze inevitabili, molti aspetti si “comportano allo stesso modo”. Per esempio l’accesso e query dei dati avviene attraverso MiniMongo nel client e MongoDB nel server oppure l’upload di una foto viene gestito attraverso le api classiche del web oppure attraverso quelle esposte da Cordova/PhoneGap nel caso decidessimo di fare una build “nativa”.

Compensazione di latenza

Le interazioni dell’utente sulla UI vengono applicate immediatamente da Meteor (client), ma nel caso Meteor (server) non approvi verrà fatto rollback dei dati all’ultimo stato valido.

Questo comportamento è molto utile nel caso delle app mobile e nel caso si voglia dare un feedback immediato all’utente.

leggi tutto

 

0

Qt 5 Quanto Basta ottimo libro per imparare l'uso della Libreria Grafica Qt 5

Vi presentiamo un’interessante libro italiano con il quale potremo imparare ad utilizzare la libreria grafica QT5.

Qt 5 Quanto Basta, La Guida all'Uso della Libreria Grafica Qt
Vi vogliamo presentare un’interessante progetto realizzato dal nostro lettore Gianbattista Gualeni, il quale ha deciso di realizzare il primo libro dedicato a Qt 5 in italiano.
Qt 5 Quanto Basta: la Guida all’Uso della Libreria Grafica Qt 5, in Italiano è un libro che punta a differenziarsi dal classico manuale di informatica, l’idea è quella di non realizzare una copia ridotta della copiosa documentazione ufficiale di Qt, ma prende il lettore per mano e, attraverso esempi ben congegnati, lo porta ad esplorare alcuni argomenti di questa fantastica libreria.

Continua a leggere…

 

0

Marco's Box I/O 29+30

Il laser del Very Large Telescope nel deserto di Atacama (Cile) [Gizmodo]

  • Rosetta Code è un sito wiki che propone diversi task di programmazione risolti in quanti più linguaggi possibili [Rosetta Code]
  • Il 31 Dicembre chiuderà Yahoo Directory, il servizio originale offerto dalla società americana da vent’anni [Yahoo]
  • I nomi dei nuovi nati dalla diffusione della tastiera QWERTY tendono ad essere sempre più composti da lettere poste sul lato destro della tastiera [PopSci]
  • John Draper, meglio conosciuto come Captain Crunch, ha bisogno di aiuto per pagare le spese mediche. [Gizmodo]
  • Come funziona l’algoritmo dietro alla generazione di nuovi Bitcoin? [Gizmodo]
  • Cypher è una nuova tecnologia che potrebbe permettere di fare conversazioni telefoniche dagli smartphone con una qualità vocale quasi perfetta [Gizmodo]
  • Come funziona l’emulazione di Windows 95 su uno smartwatch? [The Verge]
  • Una web app per Oculus Rift permette di programmare l’ambiente 3D in cui ci si trova [The Verge]
  • Le reti wifi salvate dai device evocano ricordi dei momenti durante i quali le abbiamo utilizzate [Motherboard]
  • Emmett Rensin racconta la sua esperienza di troll su Internet [Vox]
  • TinyScreen è un progetto in fase di crowdfunding composto da uno schermo OLED controllabile da piattaforme hardware come il TinyDuino [Kickstarter]
  • La storia della tastiera Model M dell’IBM, che l’anno prossimo compirà 30 anni [The Verge]

 

0

Guida all’uso di MatLab: espressioni matematiche.

Come altri linguaggi di programmazione, MATLAB prevede espressioni matematiche, ma queste espressioni coinvolgono matrici intere.

 

Il blocco di espressioni è:

 

Variabili

Numeri

Operatori

Funzioni

Variabili

MATLAB non richiede alcuna dichiarazione del tipo della dimensione. Quando MATLAB incontra un nome variabile nuovo, crea automaticamente la variabile e stanzia l’ammontare adatto in deposito. Se la variabile già esiste, MATLAB cambia i suoi contenuti e, se necessario, effettua un nuovo deposito. Per esempio

elenco = 30

matlab_mcxlab

crea una 1-by-1 matrice di nome elenco e immagazzina il valore 30 come suo singolo elemento. I nomi delle variabili consistono di una lettera, seguita da qualsiasi numero di lettere, cifre o sottolinea. MATLAB usa solamente i primi 31 caratteri di un nome di una variabile. MATLAB è case sensitive; distingue tra uppercase e lowercase . A ed a non sono la stessa variabile. Per vedere la matrice assegnata a ciascuna variabile, semplicemente digitare il nome della variabile.

 

Numeri

MATLAB usa notazione decimale e convenzionale, con un punto decimale e opzionale ed indicando quantità positive o il segno meno, per numeri negativi. La notazione scientifica usa la lettera e per specificare la potenza decimale.I numeri immaginari usano i o j, come un suffisso. Degli esempi di numeri legali sono:

 

3 -99 0.0001

9.6397238 1.60210e-20 6.02252e23

1i -3.14159j 3e5i

 

Tutti i numeri che usano il format long specificato dall’IEEE sono immagazzinati internamente con lo standard floating-point. I numeri floating-point hanno una precisione limitata di 16 cifre decimali significative e una serie limitata da 10^-308 a 10^308+. (Il computer di VAX usa una configurazione diversa, ma la sua precisione e serie sono quasi le stesse.)

 

Operatori.

Le espressioni usano operatori di aritmetica familiari e le regole della precedenza.

+ Addizione

- Sottrazione

* Moltiplicazione

/ Divisione

Left division

(sono descritte nella sezione su matrici e Algebra Lineare in MATLAB)

^ potenza

‘ Asse coniugato complesso trasposto

() Valutazione specifiche di ordine.

 

Funzioni

MATLAB prevede un gran numero di funzioni matematiche standard,incluso abs, sqrt, exp, e sin. La radice quadrata o il logaritmo di un numero negativo non è un errore; il risultato complesso è prodotto automaticamente. MATLAB prevede anche funzioni matematiche molto più avanzate, incluso Bessel e gamma function. La maggior parte di queste funzioni accettano argomenti complessi. Per un elenco delle funzioni matematiche elementari, digitare:

 

help elfun

 

Per un elenco più avanzato delle funzioni matematiche e delle matrici digitare:

 

help specfun

help elmat

 

Alcune delle funzioni, come sqrt e sin, sono calcolate al momento. Loro sono parte del cuore di MATLAB quindi sono molto efficienti, ma i dettagli della computazione non sono prontamente accessibili. Le altre funzioni, come gamma e sinh sono perfezionate in M-files. Si può vedere il codice originario che le valuta ed eventualmente anche cambiarlo .

 

Molte funzioni speciali prevedono valori di costanti utili.Infinito è generato dividendo un valore diverso da zero per zero, o valutando bene espressioni matematiche e definite che tendono all’infinito. Not-a-number è generato tentando di valutare espressioni tipo 0/0 o Inf-Inf che non hanno valori matematici ben definiti. I nomi delle funzione non sono riservati. `E possibile utilizzare alcuni di tali nomi con una nuova variabile, come:

eps = 1.e-6

 

e poi usare quel valore in calcoli susseguenti. La funzione originale può essere ripristinata con :

clear eps

 

Alcuni nomi sono associati a precisi valori, come ad esempio:

pi : 3.14159265…

i : unità Immaginaria,

j : come i

eps : Floating-point con precisione, 2 -52

realmin : il più piccolo floating-point, 2 -1022

realmax : il più grande floating-point,(2-e)2 1023

Inf : Infinito

NaN : Not-a-number.

 

Abbiamo già ha visto molti esempi di espressioni di MATLAB. Qui ci sono altri esempi, ed i valori che ne risultano.

rho = (1+sqrt(5)) /2 rho = 1.6180

a = abs(3+4i) a = 5

z = sqrt(besselk(4/3,rho-i)) z = 0.3730+ 0.3214i

huge= l’exp(log(realmax)) huge = 1.7977e+308

toobig = il pi*huge toobig = Inf.

Se ti è piaciuto l’articolo , iscriviti al feed cliccando sull’immagine sottostante per tenerti sempre aggiornato sui nuovi contenuti del blog:

reeder

 

0

mEdit 1.2.0 disponibile per Ubuntu e derivate

Ecco come installare in Ubuntu e derivate la nuova versione 1.2.0 di mEdit, editor di testi per la programmazione.

mEdit in Ubuntu
Nei repository ufficiali delle principali distribuzioni Linux troviamo numerosi editor di testo, software che normalmente includono anche il supporto per i più diffusi linguaggi di programmazione come ad esempio Gedit, Kate, ecc. Un altro ottimo editor di testi disponibile per Linux è sicuramente mEdit, software open source scritto in Python, dall’interfaccia grafica GTK semplice e funzionale. Tra le principali caratteristiche di mEdit troviamo la possibilità di configurare l’evidenziazione della sintassi e la presenza di una console Python integrata, possiamo inoltre personalizzare gli strumenti richiamabili dal menu principale o contestuale (come ad esempio script ecc) oppure operazioni con MooScript (un semplice linguaggio per script integrato nel editor di testo).

Continua a leggere…

 

0

Guida all’uso di MatLab: operazioni.

In MATLAB sono definite le seguenti operazioni aritmetiche:
1) addizione +
2) sottrazione -
3) moltiplicazione *
4) divisione /
5) elevamento a potenza ˆ

Quando l’espressione da valutare è troppo lunga per stare su di un’unica riga di comando,è possibile utilizzare un carattere di continuazione dato da . . . (tre punti). Ad esempio,
>> 1 + 1/4 + …
1/8 ans = 1.375
matlab Screenshot
E’ possibile verificare che poichè in MATLAB non vi è alcuna distinzione tra variabili intere, reali o complesse, il risultato dell’operazione di elevamento a potenza nel caso di esponenti frazionari può non corrispondere a quello naturalmente atteso. Ad esempio, volendo calcolare la radice cubica di -5, si ottiene:
>> (-9)^(1/5)
ans = 1.2555 + 0.9122i

e non un numero reale. Il problema è dovuto al fatto che MATLAB, lavorando in notazione complessa, calcola come prima radice cubica di -9 una delle due con parte immaginaria non nulla. Anche in MATLAB è possibile alterare le precedenze classiche delle operazioni aritmetiche mediante l’uso opportuno delle parentesi tonde. Ad esempio, se nel caso precedente si fosse scritto ( – 9) 1 /5 si sarebbe ottenuto il valore -l.8000 ossia, giustamente, – 9/5. Per quanto riguarda i vettori, le operazioni elementari si estendono (quando ben definite) in modo del tutto naturale, con l’eccezione delle operazioni di divisione e di elevamento a potenza. Ad esempio,
>> a = [1:4];
>> b = [1:3];
>> c = [3 2 6 -1] ;
>> a+c (somma di vettori riga)
ans =
4 4 9 3
>> a-c (differenza di vettori riga)
ans =
-2 O -3 5
>> a+b
??? Errar using ==> + Matrix dimension must agree.
>>a*c
??? Errar using ==> * Inner matrix dimension must agree.
Le ultime istruzioni ci indicano che, le operazioni fra vettori sono valide solo se le dimensioni sono consistenti. Infatti, dato un vettore riga s di dimensione n (ossia una matrice 1 * n) ed un vettore colonna d di dimensione m, si potrà eseguire il prodotto scalare s*d solo se m=n (ottenendo in tal caso uno scalare).
>> s=[1:4];
>> d=[1;2;3;4];
>> s*d
ans=
30
Quindi d*s fornirà una matrice m*n.
>> s=[1:4];
>> d=[1;2;3;4];
>> M=d*s
M=
1 2 3 4
2 4 6 8
3 6 9 12
4 8 12 16
5 10 15 20
matlab Screenshot 1 

Se ti è piaciuto l’articolo , iscriviti al feed cliccando sull’immagine sottostante per tenerti sempre aggiornato sui nuovi contenuti del blog:
reeder

 

0

Guida all’uso di MatLab: la funzione magic.

Pedici
L’elemento in riga i e colonna j di A è denotato con A(i,j). Per esempio:
A(4,2)

è il numero nella quarta riga e seconda colonna. Per la nostra magic square, A(4,2) è 15. Così è possibile calcolare la somma degli elementi nella quarta colonna di A digitando:
A(1,4) + A(2,4) + A(3,4) + A(4,4)

Questo produce:
ans = 34
ma non è il modo più elegante di sommare una singola colonna.

E anche possibile per assegnare gli elementi di una matrice utilizzare un singolo pedice, A(k). Questo è il modo solito di citare vettori riga e vettori colonna.

Ma si può anche applicare ad una matrice bidimensionale in questo caso la matrice è considerata come un vettore colonna, formato dalle colonne della matrice originale.
matlab ubuntu
Così, per la nostra magic square, A(8) è un altro modo di assegnare il valore 15 immagazzinato nella posizione A(4,2), cioè quarta riga seconda colonna. Se si tenta di usare il valore di un elemento della matrice al di fuori di essa, si commette un errore:

t = A(4,5)
Index exceeds matrix dimensions (Messaggio di errore)
D’altra parte, se si immagazzina un nuovo valore in un elemento della matrice, c’è un aumento dell’ordine per accomodare il nuovo venuto:
A(4,5) = 17
A = 16 3 2 13
0 5 10 11
8 0 9 6
7 12 0 4
15 14 1 17

L’operatore : (due punti)
Il due punti,:, è uno dei più importanti operatori di MATLAB. Si trova in molte forme diverse. L’espressione:
1:10
è un vettore riga che contiene i numeri interi da 1 a 10
1 2 3 4 5 6 7 8 9 10
Per ottenere una sequenza, si deve specificare un incremento. Per esempio:
100:-7:50
è
100 93 86 79 72 65 58 51
cioè una sequenza di numeri da 100 a 50 con passo uguale a -7; mentre
0:pi/4:pi
è
0 0.7854 1.5708 2.3562 3.1416
matlab6
Le espressioni sottoscritte che coinvolgono i due punti assegnano porzioni di una matrice.
A(1:k,j)
rappresenta i primi k elementi della colonna jth di A. Così:
Sum(A(1:4,4))
calcola la somma della quarta colonna. Ma c’è un modo migliore . Il due punti assegna tutti gli elementi in una riga o colonna di una matrice e la keyword END assegna l’ultima riga o colonna. Così
sum(A(:,end))
calcola la somma degli elementi nell’ultima colonna di A.
ans = 34

Perchè la somma della magic square è uguale a 34? Se i numeri interi da 1 a 16 sono ordinati in quattro gruppi con somme uguali, quella somma deve essere:
sum(1:16)/4
che, chiaramente, è
ans = 34
Se si ha accesso al Symbolic Math Toolbox si può scoprire che la somma per un n-by-n magic square è (n3 + n)/2.

La funzione magic.
La funzione magic di MATLAB costruisce magic square di qualsiasi dimensione.Non a caso, questa funzione è chiamata magic.
B = magic(4)
B = 16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1

Se ti è piaciuto l’articolo , iscriviti al feed cliccando sull’immagine sottostante per tenerti sempre aggiornato sui nuovi contenuti del blog:
reeder

 

0

Guida all’uso di MatLab: per iniziare.

Questo tutorial è teso ad aiutare chi inizia ad imparare MATLAB. Contiene un numero elevato di esempi così da poter da subito utilizzare MATLAB ,e dovrebbe poi essere utile per il seguito. Per attivare MATLAB su un PC o Mac, basta un duplice scatto sull’icona di MATLAB.

Per attivare MATLAB su un sistema UNIX, digitare matlab al prompt del sistema operativo. Per uscire da MATLAB in qualsiasi istante, digitare QUIT al prompt di MATLAB. Se si necessita di più assistenza, digitare HELP al prompt di MATLAB, o cliccare sul menu dell’HELP su un PC o Mac.

Matrici e Magic Squares
Il migliore modo per iniziare con MATLAB è quello di imparare a maneggiare le matrici, questa sezione mostra come fare.

Una matrice è in MATLAB, un ordine rettangolare di numeri,significato speciale qualche volta è adottato per le 1 -by- 1 matrici che sono scalari, e per matrici con solamente una riga o colonna che sono vettori.
matlab3
MATLAB ha altri modi di immagazzinare dati numerici e dati non numerici, ma all’inizio, di solito è meglio pensare a tutto come una matrice. Le operazioni in MATLAB sono destinate ad essere più naturali possibile. Dove gli altri linguaggi di programmazione lavorano con numeri uno alla volta, MATLAB permette di lavorare facilmente e rapidamente con matrici di interi.

Immettere le matrici
Si possono registrare matrici in MATLAB in molti modi diversi.
- introdurre un elenco esplicito di elementi.
- caricare matrici da files di dati esterni.
- generare matrici utilizzando la funzione built-in.
- creare matrici con le proprie funzioni in M-files.

Cominciamo a registrare la matrice come un elenco dei suoi elementi. Si seguano a tal proposito solamente alcune convenzioni di base:

- Separare gli elementi di una riga con spazi vuoti o virgole.
- Usare un punto e virgola ”;” per indicare la fine di ciascuna fila.
- Racchiudere l’elenco intero di elementi con parentesi quadrate , [ ].

Per registrare la matrice di D¨urer, semplicemente digitare:
A = [16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1]
MATLAB espone a video solo la matrice digitata,
A = 16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1

Questo procedimento associa precisamente i numeri a porzioni di memoria. Una volta fornita la matrice, essa è registrata automaticamente nel workspace di MATLAB. Ora si può indicarla semplicemente come A.Quindi si può sommare, trasporre, etc .Si è probabilmente già consapevoli delle proprietà speciali di una matrice magic square con i vari modi di sommare i suoi elementi. Se si prende la somma lungo qualsiasi riga o colonna, o lungo una delle due diagonali principali, si ottiene sempre lo stesso numero. Verificare tutto ci`o usando MATLAB. Il primo tentativo è il seguente:
sum(A)
matlab_mcxlab
MATLAB risponde con:
ans = 34 34 34 34
Quando non si specifica una variabile di output, MATLAB usa la variabile ans, per immagazzinare i risultati di un calcolo. Si è calcolato un vettore fila che contiene certamente le somme delle colonne di A; ogni colonna ha la stessa somma, la somma magica, 34. Cosa si può dire sulle somme delle righe? MATLAB ha una preferenza per lavorare con le colonne di una matrice, così il modo più facile per ottenere le somme delle righe è quello di trasporre la matrice,si calcoli la colonna somma della trasposta, e poi si trasponga il risultato. L’operazione di trasposizione è denotata da un apostrofo ’. Così:
A’
determina il risultato seguente:
ans = 16 5 9 4
3 10 6 15
2 11 7 14
13 8 12 1
e
sum(A ‘) ‘
produce un vettore colonna che contiene le somme delle righe:
ans = 34 34 34 34

La somma degli elementi della digonale principale è ottenuta facilmente con l’aiuto della funzione diag che estrae solo gli elementi dellla diagonale.
diag(A) produce:
ans = 16 10 7 1 e
sum(diag(A)) produce:
ans = 34
L’altra diagonale, l’antidiagonale così chiamata non è così importante MATLAB non ha così matematicamente, una funzione fatta apposta . Ma una funzione originariamente creata per uso in grafica, fliplr riporta una matrice da sinistra a destra.
sum(diag(fliplr(A)))
ans = 34

Si è così verificato che la matrice di D¨urer è davvero una magic square e, nel processo,si sono utilizzate operazioni sulle matrici di MATLAB. Le sezioni seguenti continuano a usare questa matrice per illustrazioni supplementari .
Mate_in_Ubuntu 

Se ti è piaciuto l’articolo , iscriviti al feed cliccando sull’immagine sottostante per tenerti sempre aggiornato sui nuovi contenuti del blog:
reeder

 

0

Guida all’uso di MATLAB: introduzione.

MATLAB (abbreviazione di Matrix Laboratory) è un ambiente per il calcolo numerico e l’analisi statistica scritto in C che comprende anche l’omonimo linguaggio di programmazione creato dalla MathWorks.

 

MATLAB consente di manipolare matrici, visualizzare funzioni e dati, implementare algoritmi, creare interfacce utente, e interfacciarsi con altri programmi. Nonostante sia specializzato nel calcolo numerico, uno strumentario opzionale interfaccia MATLAB con il motore di calcolo simbolico di Maple.

 

MATLAB è usato da milioni di persone nell’industria e nelle università per via dei suoi numerosi strumenti a supporto dei più disparati campi di studio applicati e funziona su diversi sistemi operativi, tra cui GNU/Linux e Unix.

Matlab_Logo

Abbreviazione di “MATrix LABoratory“, MATLAB fu creato alla fine degli anni ’70 da Cleve Moler, il presidente del dipartimento di scienze informatiche dell’Università del Nuovo Messico. Egli creò MATLAB per dare ai suoi studenti accesso a LINPACK e ad EISPACK senza che essi dovessero conoscere il Fortran. Presto si diffuse nelle altre università e trovò un grande pubblico tra la comunità dei matematici applicati.

 

Jack Little, un ingegnere, conobbe il programma durante una visita a Moler all’università di Stanford nel 1983. Riconoscendo il suo potenziale commerciale, si unì con Moler e Steve Bangert. Essi riscrissero MATLAB in linguaggio C e fondarono la The MathWorks nel 1984 per continuare il suo sviluppo.

Interfaccia.

L’interfaccia principale di MATLAB è composta da diverse finestre che è possibile affiancare, spostare, ridurre a icona, ridimensionare e così via. Le finestre principali, più usate, sono quattro:

    Command Window
    Workspace
    Current directory
    Command history

 

matlab main

 

MATLAB caratterizza una famiglia delle soluzioni application-specific denominate toolboxes. Molto utile per la maggior parte degli utenti di MATLAB, toolboxes, fornisce le basi per applicare la tecnologia specializzata.I toolboxes sono collezioni complete di funzioni MATLAB (M-files)che estendono l’ambiente di MATLAB per risolvere particolari categorie di problemi.Gli ambienti in cui i toolboxes sono disponibili sono:

elaborazione dei segnali,

sistemi di controllo,

reti neurali,

logica incoerente,

wavelets,

simulazione e molti altri.

 

Screenshots.

 

Matlabunix

 

matlab_mcxlab

 

Matlab2

 

Matlab1

 

matlab3

 

matlab4

 

matlab5

Se ti è piaciuto l’articolo , iscriviti al feed cliccando sull’immagine sottostante per tenerti sempre aggiornato sui nuovi contenuti del blog:

reeder