#!/usr/bin/perl
#Ths routine randomly mark up a molecule from $valm to $val
if( $ARGV[0] eq '-h' || $ARGV[0] eq '-help')
{
help();
exit;
}
sub help {
  print "\nMark up a molecules with mark_old to mark_new randomly. \n";
  print "Usage: markup_random mark_old mark_new [file.pxyz]\n\n";
}



$bnk="   ";

$valm=$ARGV[0];shift;
$val=$ARGV[0];shift;

$_=<>;print;chomp;
$natm=$_;
$_=<>;@pbc=split; print;
($box1,$box2,$box3)=split;
die "only orthorhombic box supported.\n" if @pbc>3;

$totQM=0;
$molname[0]="Pleasedonotusethisnameforamolecule";
for ($i=0;$i<$natm;$i++)
{
$_=<>;
($nam[$i],$xxx[$i],$yyy[$i],$zzz[$i],$mol[$i],$mar[$i])=split;
if ($mar[$i]==$valm){

unless ($molname[$totQM] eq $mol[$i] ){
$totQM++;$molname[$totQM] = $mol[$i];
} } }  #end of for

$mol2mark=int(rand($totQM))+1; # chose an atom in inner QM region
$cenmol=$molname[$mol2mark];
print STDERR "Mark up molecule: $cenmol \n";
#print STDERR $totQM.$bnk.$mol2mark.$bnk.$cenmol."\n";

for ($i=0;$i<$natm;$i++)
{
$mar[$i]=$val if $mol[$i] eq $cenmol;
print $nam[$i].$bnk.$xxx[$i].$bnk.$yyy[$i].$bnk.$zzz[$i].$bnk.$mol[$i].$bnk.$mar[$i]."\n";
}
