--- ray/src/util/genklemsamp.pl 2011/01/27 22:28:12 2.8 +++ ray/src/util/genklemsamp.pl 2011/04/16 00:39:07 2.10 @@ -1,16 +1,17 @@ #!/usr/bin/perl -w -# RCSid $Id: genklemsamp.pl,v 2.8 2011/01/27 22:28:12 greg Exp $ +# RCSid $Id: genklemsamp.pl,v 2.10 2011/04/16 00:39:07 greg Exp $ # # Sample Klems (full) directions impinging on surface(s) # # G. Ward # use strict; +use File::Temp qw/ :mktemp /; if ($#ARGV < 0) { print STDERR "Usage: genklemsamp [-c N ][-f{a|f|d}] [view opts] [geom.rad ..]\n"; exit 1; } -my $td = `mktemp -d /tmp/genklemsamp.XXXXXX`; +my $td = mkdtemp("/tmp/genklemsamp.XXXXXX"); chomp $td; my $nsamp = 1000; my $fmt = "a"; @@ -119,9 +120,9 @@ if ($#ARGV >= 0) { "-e 'cond=($nsamp-outno+1)/($ntot-recno+1)-rand($rn+recno)' " . "-e 'Kbin=$k;x1=rand($r1+recno);x2=rand($r2+recno)' " . q{-e '$1=$1+Vo*Vdx; $2=$2+Vo*Vdy; $3=$3+Vo*Vdz' } . - q{-e '$4=K0*Vhx-K1*Vvx+K2*Vdx' } . - q{-e '$5=K0*Vhy-K1*Vvy+K2*Vdy' } . - q{-e '$6=K0*Vhz-K1*Vvz+K2*Vdz' } . + q{-e '$4=-K0*Vhx-K1*Vvx+K2*Vdx' } . + q{-e '$5=-K0*Vhy-K1*Vvy+K2*Vdy' } . + q{-e '$6=-K0*Vhz-K1*Vvz+K2*Vdz' } . "-if3 $td/origins.flt"; } } else { @@ -143,9 +144,9 @@ if ($#ARGV >= 0) { q{-e '$1=Vpx+Vo*Vdx+hpos*Vhx+vpos*Vvx' } . q{-e '$2=Vpy+Vo*Vdy+hpos*Vhy+vpos*Vvy' } . q{-e '$3=Vpz+Vo*Vdz+hpos*Vhz+vpos*Vvz' } . - q{-e '$4=K0*Vhx-K1*Vvx+K2*Vdx' } . - q{-e '$5=K0*Vhy-K1*Vvy+K2*Vdy' } . - q{-e '$6=K0*Vhz-K1*Vvz+K2*Vdz' } ; + q{-e '$4=-K0*Vhx-K1*Vvx+K2*Vdx' } . + q{-e '$5=-K0*Vhy-K1*Vvy+K2*Vdy' } . + q{-e '$6=-K0*Vhz-K1*Vvz+K2*Vdz' } ; } } system "rm -rf $td";