[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
1.13.4 User-defined variables and functions
New user-defined variables and functions of one through twelve variables may be declared and used anywhere, including on the ‘plot‘ command itself.
User-defined function syntax:
<func-name>( <dummy1> {,<dummy2>} ... {,<dummy12>} ) = <expression> |
where <expression> is defined in terms of <dummy1> through <dummy12>.
User-defined variable syntax:
<variable-name> = <constant-expression> |
Examples:
w = 2 q = floor(tan(pi/2 - 0.1)) f(x) = sin(w*x) sinc(x) = sin(pi*x)/(pi*x) delta(t) = (t == 0) ramp(t) = (t > 0) ? t : 0 min(a,b) = (a < b) ? a : b comb(n,k) = n!/(k!*(n-k)!) len3d(x,y,z) = sqrt(x*x+y*y+z*z) plot f(x) = sin(x*a), a = 0.2, f(x), a = 0.4, f(x) |
file = "mydata.inp" file(n) = sprintf("run_%d.dat",n) |
The final two examples illustrate a user-defined string variable and a user-defined string function.
Note that the variables ‘pi‘ (3.14159...) and ‘NaN‘ (IEEE "Not a Number") are already defined. You can redefine these to something else if you really need to. The original values can be recovered by setting:
NaN = GPVAL_NaN pi = GPVAL_pi |
Other variables may be defined under various gnuplot operations like mousing in interactive terminals or fitting; see variables for details.
You can check for existence of a given variable V by the exists("V") expression. For example
a = 10 if (exists("a")) print "a is defined" if (!exists("b")) print "b is not defined" |
Valid names are the same as in most programming languages: they must begin with a letter, but subsequent characters may be letters, digits, or "_".
Each function definition is made available as a special string-valued variable with the prefix ’GPFUN_’.
Example:
set label GPFUN_sinc at graph .05,.95 |
See functions, functions, variables, macros.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |