Page 351 - Handbook Of Multiphase Flow Assurance
P. 351
350 10. Research methods in flow assurance
nothere:=True;
for jc2:=1 to ic do
if nhb[jc,2]=rin[jc2] then
begin
nothere:=false;
goto C1;
end;
end;
if (nhb[jc,2]=rin[ic]) then
begin {other end of the bond fits}
nothere:=True;
for jc2:=1 to ic do
if nhb[jc,1]=rin[jc2] then
begin
nothere:=false;
goto C1;
end;
end;
if nothere then
begin {Found a branch. Record its position.}
rinn[ic]:=True;
rinm[ic]:=jc;
goto C2;
end;
C1: end; {end of loop on bonds}
C2:end; {end of loop on ring links}
end; {exit from procedure}
Procedure SChoice; {similar to Choice,used by CheckShort}
label C1,C2;
var kc,ic,jc,jc2:integer; {counters}
begin
for ic:=1 to ns do
begin
srinn[ic]:=False; {specify no branching at nhb[nbond,1]}
srinm[ic]:=0;
for jc:=sbonds[ic]+1 to n do {see if choices are present: }
begin {if a bond from list i+1..n has a }
nothere:=False; {check point and not in ring itself }
if (nhb[jc,1]=srin[ic]) then
begin {one end of bond fits}
nothere:=True;
for jc2:=1 to ic do