What are you planning to use it for?
The main advantage of #define substitutions is that you may include part of the input code. In most other cases #Let/#Sto is probably a better choice.
Either way there are two ways of using defines:
-
Inline
#define supportnode=11
Spt No $(supportnode) X 0 0 0 Fix F
yields
Spt No 11 X 0 0 0 Fix F
-
Block
#define supportnodes
11 0 0 0 F
12 1 0 0 PP
13 0 1 0 PP
14 1 1 0 PZ
#enddef
Spt No x y z Fix
#include supportnodes
yields
Spt No x y z Fix
11 0 0 0 F
12 1 0 0 PP
13 0 1 0 PP
14 1 1 0 PZ
In a block definition you can have the line continuation ($$), that will get pasted at the include
Given your code snippet, I believe you’ll probably be better off using regular variable storage, e.g.:
Sto#supportNodes 1,11,21,31,41,59,69,87,97,107,117,127,137,155,165,183,193,203, $$
5810,5812,5814,5816,5818,5820,5822,5824,5826,5838,5840,5842, $$
5980,5982,5984,5986,5988,5990,5992,5994,5996
which could be used in this manner:
Spt No #supportnodes(2) X 0 0 0 Fix F
(2) referring to node nr 21