Scripts/dohi.run
From TNT
Dohi
Author: Pablo Goloboff.
Version: 1.0.
For: not provided.
Arguments: not provided.
Example: not provided.
Script
Scripts may not be displaying correctly here at present, use the script from the provide file in the archive.
report-; sil = con ; keep 1 ; macro=; taxna [ 30 ; ag =0 ; loop 1 argnumber
if ( eqstring[ %(#1) fullnames ] ) taxname [ 0 ; continue ; end ag >0 :%(#1) ; stop
tread ( ( { 0 } ) ... ) ; set 1 root ; pruntax 1 /.-@0 '1' ; set 3 numdes[1 (root+1)] ;
set 0 simgroup[1 (root+1) 0 ] set 1 regalfa ; set 2 regr ;
xr =! 0 [.] 0 ; xr = 0 [{0}] 1 ; set 4 length[0 0] - 1 ; set 6 maxsteps[0] - 1 ;
if ( '0' )
ttag -; ttag *0 ; ttag +'0' XXXX TOT:'3'(+'1',-'2'); if ( '4' )
/* set 3 1 - ( '4' / '6' ) ; */
set 3 ('3'-('1'+'2'))/'3' ;
ttag +'0'('/.3(3)')-SPR '4';
else
ttag +'0' - perf.!;
end clb ;
else
sil-all ;
set 3 1 - ( '4' / '6' ) ;
quote No clear match! '4' SPR moves ('/.3(3)') ;
proc/;
end
sil = buffer ; set 3 root ; ag =1 @0 '0' ; ag =2 @0 '3' <2 [0]; ag =3 (Intruders) [1 2] ; ag =4 @0 '3' <4 @0 '0' ; ag =5 (Runaways) [ 0 4 ] ; loop 0 ntax
if ( isinagroup[3 #1] )
ttag +#1 YYYY;
else if ( isinagroup[5 #1] )
ttag +#1 ZZZZ;
end
end
stop keep 1 ; sil - buffer ; ag - 0 1 2 4 ; if ( '2' )
set 1 0 ;
set 4 root ;
loop 0 ntax
if ( isinagroup[ 5 #1 ] )
if ( '1' < distnode[ 0 '0' #1 ] )
set 1 distnode[ 0 '0' #1 ] ;
end
if ( '4' > distnode[ 0 '0' #1 ] )
set 4 distnode[ 0 '0' #1 ] ;
end
end
stop
end
quote Closest group is node '0' ;
ttag ; /* var = 10 bloli[35] ; macfloat 0 ; quote INTRUDERS: ; loop 0 ntax
if ( !isinagroup [ 3 #1 ] ) continue ; end set bloli blocklist[#1] ; quote -- 'bloli[0-listsize]' - $taxon #1;
stop
quote RUNAWAYS: ; loop 0 ntax
if ( !isinagroup [ 5 #1 ] ) continue ; end set bloli blocklist[#1] ; quote -- 'bloli[0-listsize]' - $taxon #1;
stop
macfloat 5 ;
- /
ag ;
if ( '2' )
quote Distance of excluded taxa to group: '1'-'4' nodes ; end
view:XXXX; silent - con ; proc/;