Gnuplot/Funzioni
Funzioni
modificaGnuplot fornisce una vasta serie di funzioni standard che coprono tutte le funzioni matematiche più comuni.
Esse necessitano un argomento, che solitamente è la variabile indipendente x
che rappresenta l'asse delle ascisse.
Le funzioni di Gnuplot sono descritte più avanti in Gnuplot/Appendice funzioni.
Definizione di funzioni
modificaSebbene Gnuplot non sia un programma di elaborazione numerica, esso mette a disposizione dell'utente gli strumenti necessari per effettuare le operazioni più comuni.
+ | somma |
- | sottrazione |
* | moltiplicazione |
/ | divisione |
% | resto della divisione intera |
** | elevamento a potenza |
= | assegnamento |
È ovviamente possibile utilizzare le parentesi tonde '(', ')' per precisare la precedenza delle operazioni.
Questi operatori possono essere in combinazione con le funzioni viste precedentemente per definirne di nuove.
gnuplot> <nome_funzione>(<variabili>)=<corpo_della_funzione>
Per esempio:
gnuplot> retta(x)=2*x+3 gnuplot> parabola(x)=(x**2)+(3*x)-2 gnuplot> periodica(x)=cos(2*x)+sin(x) gnuplot> smorzata(x)=sin(10*x)*exp(-x) gnuplot> piano(x,y)=2*x-5 gnuplot> paraboloide(x,y)=((x/3)**2-(y/5)**2)/2
definiscono nell'ordine una retta, una parabola, una generica funzione periodica, uno smorzamento esponenziale, un piano e un paraboloide ellittico.
Queste funzioni potranno poi essere visualizzate tramite il comando plot o splot, quest'ultimo nel caso della funzioni a due variabili, seguito dal nome della funzione. Oppure, come negli esempi riportati, si potrà dare il comando seguito semplicemnte dal corpo della definizione. Con riferimento agli esempi precedenti i comandi:
gnuplot> retta(x)=2*x+3 gnuplot> plot retta(x)
e
gnuplot> plot 2*x+3
sortiscono lo stesso risultato
Le funzioni possono essere anche definite parametricamente tramite l'utilizzo di variabili. Possiamo per esempio definire una funzione sinusoidale di periodo arbitrario nel seguente modo:
gnuplot> periodicsin(x)=sin(k*x)
È da sottolineare il fatto che la variabile k non è stata definita precedentemente e che è alla sua prima apparizione. Potremo successivamente assegnarvi diversi valori ottenendo sinusoidi che differiscono per l'ampiezza del periodo. L'assegnamento della variabile viene fatto per mezzo dell'operatore = così come per le funzioni.
gnuplot> k=2