HARM
harm and utilities
 All Data Structures Files Functions Variables Typedefs Macros Pages
global.loops.perpoint.h
Go to the documentation of this file.
1 
11 // check for existence in bad form using:
12 // grep "PLOOP" *.c | grep --invert-match "PLOOP("
13 
14 // After conversion to PLOOP(pliter,pl) form, regexp to help replace:
15 // Too unsafe to include () or "\ " in []'s below -- catch afterwards rather than mis-replace
16 // Note, can't look for " PLOOP(..." since may be tab instead
17 // 1) PLOOP(\([-_>a-zA-Z0-9+]+\)) -> PLOOP(pliter,\1)
18 // Start with longest name and work to smaller:
19 // PFLUXBOUNDLOOP [none apparently]
20 // PNOTINTERPLOOP [1]
21 // PINTERPLOOP [some]
22 // PBOUNDLOOP [several]
23 // PDUMPLOOP [several]
24 // PINVERTLOOP [none]
25 // NUMPRIMLOOP [several]
26 // PLOOP
27 //
28 // 2) Rename: NUMPRIMLOOPGEN -> NUMPRIMLOOP
29 // PLOOPINTERP -> PINTERPLOOP
30 // PLOOPNOTINTERP -> PNOTINTERPLOOP
31 //
32 // 3) Provide the additional variable:
33 //
34 // regexp:
35 // int pl -> int pl,pliter;
36 // int dir,pl,sc -> int dir,pl,pliter,sc
37 // int i,j,k,pl; -> int i,j,k,pl,pliter;
38 // int dir,pl; -> int dir,pl,pliter;
39 // int i, j, k, pl, l -> int i, j, k, pl, pliter, l
40 // int pl,i,j,k; -> int pl,pliter,i,j,k;
41 // int i, j, k, pl; -> int i,j,k,pl,pliter;
42 // int i,j,k,l,pl; -> int i,j,k,l,pl,pliter;
43 // int i, pl; -> int i,pl,pliter;
44 // int i,j,k,pl,l; -> int i,j,k,pl,pliter,l;
45 // int l,pl,dir; -> int l,pl,pliter,dir;
46 //
48 #if(1) // for now always control interpolated quantities (used to be only for SLPITNPR)
49 
50 #define PLOOP(pliter,pl) for(pliter=nprstart,pl=nprlist[pliter];pliter<=nprend;pliter++,pl=nprlist[pliter])
51 //SUPERGODMARK
52 #define PRIMLOOP(pliter,pl) PLOOP(pliter,pl)
53 #define PINTERPLOOP(pliter,pl) for(pliter=npr2interpstart,pl=npr2interplist[pliter];pliter<=npr2interpend;pliter++,pl=npr2interplist[pliter])
54 #define PNOTINTERPLOOP(pliter,pl) for(pliter=npr2notinterpstart,pl=npr2notinterplist[pliter];pliter<=npr2notinterpend;pliter++,pl=npr2notinterplist[pliter])
55 
57 #define PBOUNDLOOP(pliter,pl) for(pliter=nprboundstart,pl=nprboundlist[pliter];pliter<=nprboundend;pliter++,pl=nprboundlist[pliter])
58 
60 #define PFLUXBOUNDLOOP(pliter,pl) for(pliter=nprfluxboundstart,pl=nprfluxboundlist[pliter];pliter<=nprfluxboundend;pliter++,pl=nprfluxboundlist[pliter])
61 
63 #define PDUMPLOOP(pliter,pd) for(pliter=nprdumpstart,pd=nprdumplist[pliter];pliter<=nprdumpend;pliter++,pd=nprdumplist[pliter])
64 
66 #define PINVERTLOOP(pliter,pi) for(pliter=nprinvertstart,pl=nprinvertlist[pliter];pliter<=nprinvertend;pliter++,pl=nprinvertlist[pliter])
67 
68 
70 #define NUMPRIMLOOP(pliter,pl) for(pliter=nprlocalstart,pl=nprlocallist[pliter];pliter<=nprlocalend;pliter++,pl=nprlocallist[pliter])
71 
72 
73 
74 
75 
76 #else
77 
78 
80 #define PLOOP(pliter,pl) for(pl=0;pl<NPR;pl++) // original
81 
82 #define PINTERPLOOP(pliter,pl) for(pl=0;pl<NPR2INTERP;pl++)
83 #define PNOTINTERPLOOP(pliter,pl) for(pl=0;pl<0;pl++) // do nothing
84 
85 #define PBOUNDLOOP(pliter,pb) for(pb=0;pb<NPRBOUND;pb++)
86 
88 #define PDUMPLOOP(pliter,pd) for(pd=0;pd<NPRDUMP;pd++)
89 
90 #define PINVERTLOOP(pliter,pi) for(pi=0;pi<NPRINVERT;pi++)
91 
92 #define NUMPRIMLOOP(pliter,pl) for(pl=0;pl<numprims;pl++)
93 
94 
95 
96 #endif
97 
98 
99 
100 
102 #define PALLLOOP(pl) for(pl=0;pl<NPR;pl++)
103 #define PALLLOOPSPECIAL(pl,special) for(pl=0;pl<NPR+special;pl++)
104 
105 #define PLOOPSPECIALONLY(pl,special) for(pl=NPR;pl<NPR+special;pl++)
106 
107 
109 #define PALLREALLOOP(pl) for(pl=0;pl<NPRREALSET;pl++)
110 
111 
113 #define PMAXNPRLOOP(pl) for(pl=0;pl<MAXNPR;pl++)
114 
116 #define PLOOPALLINVERT(pl) for(pl=0;pl<=B3;pl++)
117 
119 #define PLOOPALLINTERP(pl) for(pl=0;pl<NPR2INTERP;pl++)
120 
121 
123 #define PDIAGLOOP(pl) PALLLOOP(pl)
124 
125 
126 
127 
128 
129 #define PLOOPNOB1(pl) for(pl=0;pl<B1;pl++)
130 #define PLOOPBONLY(pl) for(pl=B1;pl<=B3;pl++)
131 #define PLOOPNOB2(pl) for(pl=B3+1;pl<NPR;pl++)
132 #define PLOOPNOB2SPECIAL(pl,special) for(pl=B3+1;pl<NPR+special;pl++)
133 
134 
135 #define PLOOPRADONLY(pl) for(pl=PRAD0;pl<=PRAD3;pl++)
136 
137 
138 
140 #define DLOOP(j,k) for(j=0;j<NDIM;j++)for(k=0;k<NDIM;k++)
141 
142 #define DLOOPA(j) for(j=0;j<NDIM;j++)
143 
144 #define SLOOP(j,k) for(j=1;j<NDIM;j++)for(k=1;k<NDIM;k++)
145 
146 #define SLOOPA(j) for(j=1;j<NDIM;j++)
147 
148 #define DSLOOP(j,k) for(j=0;j<NDIM;j++)for(k=1;k<NDIM;k++)
149 
150 #define SSLOOP(j,k) for(j=1;j<NDIM;j++)for(k=1;k<NDIM;k++)
151 
152 #define SDLOOP(j,k) for(j=1;j<NDIM;j++)for(k=0;k<NDIM;k++)
153 
155 #define DIRLOOP(dir) for(dir=0;dir<COMPDIM*2;dir++)
156 
157 #define DIRSIGNLOOP(dirsign) for(dirsign=-1;dirsign<=1;dirsign+=2)
158 
159 
160 #define DIMENLOOP(dir) for(dir=1;dir<=COMPDIM;dir++)
161 
162 
164 #define GRIDLOOP(gridpos) for(gridpos=0;gridpos<NPG;gridpos++)
165 
166 
167 
175 
176 
178 #define FBOUNDLOOP(ff) for(ff=0;ff<NUMPFLAGSBOUND;ff++)
179 
181 #define JETLOOP(jetio) for(jetio=0;jetio<NUMJETS;jetio++)
182 
184 #define ENERREGIONLOOP(enerregion) for(enerregion=0;enerregion<NUMENERREGIONS;enerregion++) if(dothisenerreg[enerregion])
185 
187 #define ENERREGIONALLLOOP(enerregion) for(enerregion=0;enerregion<NUMENERREGIONS;enerregion++)
188 
190 #define FLOORLOOP(floor) for(floor=0;floor<NUMFAILFLOORFLAGS;floor++)
191 
193 #define TSCALELOOP(tscale) for(tscale=0;tscale<NUMTSCALES;tscale++)
194 
195 
197 #define SCLOOP(sc) for(sc=0;sc<NUMSOURCES;sc++)
198 
200 #define SCPHYSICSLOOP(sc) for(sc=GEOMSOURCE+1;sc<NUMSOURCES;sc++)
201 
203 #define FLLOOP(fl) for(fl=0;fl<NUMFLUXTERMS;fl++)
204 
205 
207 #define PFLAGLOOP(pf) for(pf=0;pf<NUMPFLAGS;pf++)
208 
210 #define FAILPFLAGLOOP(pf) for(pf=0;pf<NUMFAILPFLAGS;pf++)
211 
213 #define ROMIOCOLLOOP(romiocoliter) for(romiocoliter=0;romiocoliter<romiocloopend;romiocoliter++)
214 
215 #define BUFFERINIT nextbuf=0
216 #define COLINIT nextcol=0
217 
219 #define COLLOOP(coliter) for(coliter=0;coliter<numfiles;coliter++)
220 
221 
222 #define DTSTAGELOOP(dtstage) for(dtstage=0;dtstage<MAXITERDTSTAGES;dtstage++)
223 
224 #define INTERPENOTYPELOOP(interpi) for(interpi=0;interpi<NUMENOINTERPTYPES;interpi++)
225 
226 #define ENODEBUGLOOP(enodebugi) for(enodebugi=0;enodebugi<NUMENODEBUGS;enodebugi++)
227 
229 #define FINALSTEPLOOP(indexfinalstep) for(indexfinalstep=0;indexfinalstep<=1;indexfinalstep++)
230 
231 #define FAILFLOORLOOP(indexfinalstep,tscale,floor) FINALSTEPLOOP(indexfinalstep) TSCALELOOP(tscale) FLOORLOOP(floor)
232