/usr/share/doc/stilts/sun256/jel.html is in stilts-doc 3.1.2-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 | <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="sun-style.css">
<title>Algebraic Expression Syntax</title>
</head>
<body>
<hr>
<a href="jel-colref.html">Next</a> <a href="plotSuffixes.html">Previous</a> <a href="index.html">Up</a> <a href="index.html">Contents</a> <br> <b>Next: </b><a href="jel-colref.html">Referencing Column Values</a><br>
<b>Up: </b><a href="index.html">Top</a><br>
<b>Previous: </b><a href="plotSuffixes.html">Parameter Suffixes</a><br>
<hr>
<hr>
<h2><a name="jel">10 Algebraic Expression Syntax</a></h2>
<p>Many of the STILTS commands
allow you to use algebraic expressions based on table columns when doing
things like making row selections, defining new columns, selecting values
to plot or match, and so on.
In these cases you are defining an expression which
has a value in each row as a function of the values in the existing
columns in that row.
This is a powerful feature which permits you to manipulate and select
table data in very flexible ways.
The syntax for entering these expressions is explained in this section.
</p>
<p>What you write are actually expressions in
the Java language, which are compiled into Java bytecode before
evaluation. However, this does not mean that you need to be a
Java programmer to write them. The syntax is pretty similar to C,
but even if you've never programmed in C most simple things,
and many complicated ones, are quite intutitive.
</p>
<p>The following explanation gives
some guidance and <a href="jelExamples.html">examples</a>
for writing these expressions.
Unfortunately a complete tutorial on writing Java is beyond
the scope of this document, but it should provide enough information
for even a novice to write useful expressions.
</p>
<p>The expressions that you can write are basically any function
of all the column values which apply
to a given row; the function result can then be used where STILTS
needs a per-row value, for instance to define a new column.
If the built-in operators and functions are not sufficient,
or it's unwieldy to express your function in one line of code,
it is possible to add new functions by writing your own classes -
see <a href="jelExtend.html">Section 10.7.3</a>.
</p>
<p>Note that since these algebraic expressions often contain spaces,
you may need to enclose them in single or double quotes so that
they don't get confused with other parts of the command string.
</p>
<p><strong>Note:</strong> if Java is running in an environment with
certain security restrictions (a security manager which
does not permit creation of custom class loaders) then algebraic
expressions won't work at all. It's not particularly likely
that security restrictions will be in place if you are running
from the command line though.
</p>
<ul>
<li><a href="jel-colref.html">10.1 Referencing Column Values</a></li>
<li><a href="jel-paramref.html">10.2 Referencing Parameter Values</a></li>
<li><a href="sec10.3.html">10.3 Null Values</a></li>
<li><a href="sec10.4.html">10.4 Operators</a></li>
<li><a href="staticMethods.html">10.5 Functions</a></li>
<ul>
<li><a href="uk.ac.starlink.ttools.func.Strings.html">10.5.1 Strings</a></li>
<li><a href="uk.ac.starlink.ttools.func.Tilings.html">10.5.2 Tilings</a></li>
<li><a href="uk.ac.starlink.ttools.func.Fluxes.html">10.5.3 Fluxes</a></li>
<li><a href="uk.ac.starlink.ttools.func.Distances.html">10.5.4 Distances</a></li>
<li><a href="uk.ac.starlink.ttools.func.Times.html">10.5.5 Times</a></li>
<li><a href="uk.ac.starlink.ttools.func.Arrays.html">10.5.6 Arrays</a></li>
<li><a href="uk.ac.starlink.ttools.func.Arithmetic.html">10.5.7 Arithmetic</a></li>
<li><a href="uk.ac.starlink.ttools.func.TrigDegrees.html">10.5.8 TrigDegrees</a></li>
<li><a href="uk.ac.starlink.ttools.func.KCorrections.html">10.5.9 KCorrections</a></li>
<li><a href="uk.ac.starlink.ttools.func.Lists.html">10.5.10 Lists</a></li>
<li><a href="uk.ac.starlink.ttools.func.Coverage.html">10.5.11 Coverage</a></li>
<li><a href="uk.ac.starlink.ttools.func.CoordsRadians.html">10.5.12 CoordsRadians</a></li>
<li><a href="uk.ac.starlink.ttools.func.Conversions.html">10.5.13 Conversions</a></li>
<li><a href="uk.ac.starlink.ttools.func.CoordsDegrees.html">10.5.14 CoordsDegrees</a></li>
<li><a href="uk.ac.starlink.ttools.func.Maths.html">10.5.15 Maths</a></li>
<li><a href="uk.ac.starlink.ttools.func.Formats.html">10.5.16 Formats</a></li>
</ul>
<li><a href="jelExamples.html">10.6 Examples</a></li>
<li><a href="jelAdvanced.html">10.7 Advanced Topics</a></li>
<ul>
<li><a href="sec10.7.1.html">10.7.1 Expression evaluation</a></li>
<li><a href="instanceMethods.html">10.7.2 Instance Methods</a></li>
<li><a href="jelExtend.html">10.7.3 Adding User-Defined Functions</a></li>
</ul>
</ul>
<hr><a href="jel-colref.html">Next</a> <a href="plotSuffixes.html">Previous</a> <a href="index.html">Up</a> <a href="index.html">Contents</a> <br> <b>Next: </b><a href="jel-colref.html">Referencing Column Values</a><br>
<b>Up: </b><a href="index.html">Top</a><br>
<b>Previous: </b><a href="plotSuffixes.html">Parameter Suffixes</a><br>
<hr><i>STILTS - Starlink Tables Infrastructure Library Tool Set<br>Starlink User Note256<br>STILTS web page:
<a href="http://www.starlink.ac.uk/stilts/">http://www.starlink.ac.uk/stilts/</a><br>Author email:
<a href="mailto:m.b.taylor@bristol.ac.uk">m.b.taylor@bristol.ac.uk</a><br>Mailing list:
<a href="mailto:topcat-user@jiscmail.ac.uk">topcat-user@jiscmail.ac.uk</a><br></i></body>
</html>
|