blob: b3d610d43f4d5b22225db79d811a15b604e583b6 (
plain) (
blame)
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
|
# Lexer structure lengths
define LEN_ID SZ_LINE # string length
define LEN_CODE SZ_LINE # code length
define LEN_LEX (3+LEN_ID+LEN_CODE) # total structure length
# Lexer structure
define LEX_TOK Memi[$1+0] # token
define LEX_VAL Memr[P2R($1+1)] # numeric value (if any)
define LEX_ID Memc[P2C($1+2)] # character string
define LEX_CLEN Memi[$1+LEN_ID+2] # code length
define LEX_CODE ($1+LEN_ID+3) # RPN code buffer
# Minimum number of characters required when a keyword is abbreviated
define ABBREVIATE 3
# Keywords
define KEYWORDS "|catalog|observations|extinction|transformations|\
|fit|constant|delta|\
|error|weight|minimum|maximum|\
|set|derivative|plot|"
# Keyword codes
define K_CATALOG 1 # catalog section
define K_OBSERVATION 2 # observation section
define K_EXTINCTION 3 # extinction section
define K_TRANSFORMATION 4 # transformation section
# newline 5
define K_FIT 6 # fitting parameter declaration
define K_CONSTANT 7 # constant parameter declaration
define K_DELTA 8 # parameter delta declaration
# newline 9
define K_ERROR 10 # error column/equation
define K_WEIGHT 11 # weight column/equation
define K_MIN 12 # minimum equation (error/weight)
define K_MAX 13 # maximum equation (error/weight)
# newline 14
define K_SET 15 # set equation
define K_DERIVATIVE 16 # derivative equation
define K_PLOT 17 # plot equations
# Functions
define FUNCTIONS "|abs|acos|asin|atan|cos|exp|log|log10|sin|\
|sqrt|tan|"
# Function codes
define K_ABS 1 # absolute value
define K_ACOS 2 # arccosine
define K_ASIN 3 # arcsine
define K_ATAN 4 # arctangent
define K_COS 5 # cosine
define K_EXP 6 # sine
define K_LOG 7 # natural logarithm
define K_LOG10 8 # decimal logarithm
define K_SIN 9 # sine
# newline 10
define K_SQRT 11 # square root
define K_TAN 12 # tangent
|