8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
+
+
+
|
# Copyright (c) P.J.Gawthrop, 1996.
###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.11 1998/05/13 12:39:23 peterg
## Added `unknown' to list od names to avoid
##
## Revision 1.10 1998/03/26 13:03:23 peterg
## Changed SS field fudge.
##
## Revision 1.9 1998/02/16 16:09:57 peterg
## And taken it out again!
##
## Revision 1.8 1998/02/16 12:08:38 peterg
|
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
110
111
112
113
114
115
116
117
|
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
|
-
-
-
-
-
-
-
-
-
+
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
|
SS_parameter = "internal external zero 0 1";
numeric = "[0-9-]";
symbol_count = 0;
symbols = "";
}
{
if ( (match($1,comment)==0) && (NF>=3) ) {
# The following line is a bad attempt to use parameters in SS fields
# It assumes that at least one SS field is an SS_parameter
if (matches(SS_parameter,$3)) {
args = $2
}
else {
args = $3;
}
n_args = split(args,arg,arg_delimiter);
n_args = split($3,arg,arg_delimiter);
for (i = 1; i <= n_args; i++) {
first_char = substr(arg[i],1,1);
if ( (matches(not_an_arg,arg[i])==0) \
&& (match(first_char,numeric)==0) \
&& (match(arg[i],"\\$")==0) \
&& (length(arg[i])>0) \
&& (matches(symbols,arg[i]) ==0) ) {
symbol_count++;
symbols = sprintf("%s %s", symbols, arg[i]);
print arg[i];
}
}
}
}
END {
# print the _sympar file
# printf("MTTNVar := %1.0f;\n", symbol_count);
if (symbol_count>0) {
#printf("MATRIX MTTVar(MTTNVar,1);\n");
split(symbols,symbol);
for (i = 1; i <= symbol_count; i++) {
# printf("MTTVar(%1.0f,1) \t := %s\n", i, symbol[i]);
printf("%s\t%s\n", symbol[i], name);
}
}
}
|