#!/usr/bin/env perl use strict; my $sqs = $ARGV[0]; my $nevt = $ARGV[1]; my $min = $ARGV[2]; my $max = $ARGV[3]; my $pref = $ARGV[4]; if (!defined($nevt)) {$nevt = 10000;} if (!defined($min)) {$min = 1;} if (!defined($max) || $max<$min) {$max = $min;} if (!defined $ARGV[0]) { print "USAGE:\n"; print "submit_fsim.pl [n_evt] [min] [max] [modepref]\n\n"; print " : center of mass energy\n"; print " [n_evt] : number of events per job (default = 10000) \n"; print " [min] : minimum job array number (default = 1) \n"; print " [max] : maximum job array number (default = 1 -> 1 job will be submitted) \n"; print " [modepref] : modes with prefix 'modepref'; 'DPM' to produce DPM events\n\n"; exit(0); } my @skiprecoils = qw( 99 ); # put recoils to skip my @modes = qw( 000640000 000641000 000600000 000601000 013642000 013660000 013602000 021620000 021621000 034622000 101500000 101500001 115500002 128500004 129500005 143500009 156500003 200500006 201500007 211500008 223400000 223400001 236400002 237410000 237410001 250400004 251400005 251410002 264400009 264410004 265410005 277400003 279410009 292410003 298220000 298220001 298221000 298221001 298222000 298222001 298223000 298223001 298224000 298224001 309200000 309200001 309201000 309201001 311220002 311221002 311222002 311223002 311224002 321400006 322400007 323200002 323201002 325220004 325221004 325222004 325223004 325224004 325220005 325221005 325222005 325223005 325224005 332400008 336410006 336200004 336201004 337410007 337200005 337201005 339220009 339221009 339222009 339223009 339224009 341240000 341240001 341241000 341241001 347410008 351200009 351201009 352220003 352221003 352222003 352223003 352224003 354240002 354241002 364200003 364201003 368240004 368241004 369240005 369241005 372100000 372100001 372101000 372101001 372102000 372102001 372103000 372103001 372104000 372104001 373120000 373120001 373121000 373121001 373122000 373122001 373123000 373123001 382240009 382241009 386100002 386101002 386102002 386103002 386104002 387100100 387100101 387101100 387101101 387102100 387102101 387103100 387103101 387104100 387104101 387110100 387110101 387111100 387111101 387112100 387112101 387113100 387113101 387114100 387114101 387115100 387115101 387116100 387116101 387117100 387117101 387118100 387118101 387119100 387119101 387120002 387121002 387122002 387123002 387120100 387120101 387121100 387121101 387122100 387122101 387123100 387123101 387130100 387130101 387131100 387131101 387132100 387132101 387133100 387133101 387134100 387134101 387135100 387135101 387136100 387136101 387137100 387137101 387138100 387138101 393140000 393140001 393141000 393141001 396240003 396241003 396220006 396221006 396222006 396223006 396224006 397220007 397221007 397222007 397223007 397224007 399100004 399101004 399102004 399103004 399104004 400100102 400101102 400102102 400103102 400104102 400110102 400111102 400112102 400113102 400114102 400115102 400116102 400117102 400118102 400119102 400100005 400101005 400102005 400103005 400104005 400120004 400121004 400122004 400123004 401110000 401110001 401111000 401111001 401112000 401112001 401113000 401113001 401114000 401114001 401115000 401115001 401116000 401116001 401117000 401117001 401118000 401118001 401119000 401119001 401120102 401121102 401122102 401123102 401130102 401131102 401132102 401133102 401134102 401135102 401136102 401137102 401138102 401120005 401121005 401122005 401123005 402130000 402130001 402131000 402131001 402132000 402132001 402133000 402133001 402134000 402134001 402135000 402135001 402136000 402136001 402137000 402137001 402138000 402138001 407140002 407141002 407220008 407221008 407222008 407223008 407224008 408140100 408140101 408141100 408141101 408150100 408150101 408151100 408151101 408200006 408201006 409200007 409201007 414100104 414101104 414102104 414103104 414104104 414110104 414111104 414112104 414113104 414114104 414115104 414116104 414117104 414118104 414119104 414100009 414101009 414102009 414103009 414104009 414110002 414111002 414112002 414113002 414114002 414115002 414116002 414117002 414118002 414119002 414120104 414121104 414122104 414123104 414130104 414131104 414132104 414133104 414134104 414135104 414136104 414137104 414138104 415100105 415101105 415102105 415103105 415104105 415110105 415111105 415112105 415113105 415114105 415115105 415116105 415117105 415118105 415119105 415120009 415121009 415122009 415123009 415130002 415131002 415132002 415133002 415134002 415135002 415136002 415137002 415138002 415120105 415121105 415122105 415123105 415130105 415131105 415132105 415133105 415134105 415135105 415136105 415137105 415138105 419200008 419201008 420140004 420141004 421140102 421141102 421150102 421151102 421140005 421141005 422150000 422150001 422151000 422151001 427100003 427101003 427102003 427103003 427104003 428110004 428111004 428112004 428113004 428114004 428115004 428116004 428117004 428118004 428119004 428100109 428101109 428102109 428103109 428104109 428110109 428111109 428112109 428113109 428114109 428115109 428116109 428117109 428118109 428119109 428120003 428121003 428122003 428123003 429130004 429131004 429132004 429133004 429134004 429135004 429136004 429137004 429138004 429110005 429111005 429112005 429113005 429114005 429115005 429116005 429117005 429118005 429119005 429120109 429121109 429122109 429123109 429130109 429131109 429132109 429133109 429134109 429135109 429136109 429137109 429138109 429130005 429131005 429132005 429133005 429134005 429135005 429136005 429137005 429138005 435140104 435141104 435150104 435151104 435140009 435141009 435150002 435151002 435140105 435141105 435150105 435151105 440240006 440241006 441240007 441241007 441100103 441101103 441102103 441103103 441104103 441110103 441111103 441112103 441113103 441114103 441115103 441116103 441117103 441118103 441119103 442120103 442121103 442122103 442123103 442130103 442131103 442132103 442133103 442134103 442135103 442136103 442137103 442138103 442110009 442111009 442112009 442113009 442114009 442115009 442116009 442117009 442118009 442119009 443130009 443131009 443132009 443133009 443134009 443135009 443136009 443137009 443138009 448140003 448141003 449150004 449151004 449140109 449141109 449150109 449151109 450150005 450151005 451240008 451241008 456110003 456111003 456112003 456113003 456114003 456115003 456116003 456117003 456118003 456119003 456130003 456131003 456132003 456133003 456134003 456135003 456136003 456137003 456138003 457420000 457420001 457421000 457421001 457422000 457422001 462140103 462141103 462150103 462151103 463150009 463151009 470420002 470421002 470422002 471100006 471101006 471102006 471103006 471104006 472100007 472101007 472102007 472103007 472104007 472120006 472121006 472122006 472123006 473120007 473121007 473122007 473123007 477150003 477151003 482100008 482101008 482102008 482103008 482104008 483120008 483121008 483122008 483123008 484420004 484421004 484422004 485420005 485421005 485422005 485100106 485101106 485102106 485103106 485104106 485110106 485111106 485112106 485113106 485114106 485115106 485116106 485117106 485118106 485119106 486100107 486101107 486102107 486103107 486104107 486110107 486111107 486112107 486113107 486114107 486115107 486116107 486117107 486118107 486119107 486120106 486121106 486122106 486123106 486130106 486131106 486132106 486133106 486134106 486135106 486136106 486137106 486138106 487120107 487121107 487122107 487123107 487130107 487131107 487132107 487133107 487134107 487135107 487136107 487137107 487138107 492140006 492141006 493140007 493141007 496100108 496101108 496102108 496103108 496104108 496110108 496111108 496112108 496113108 496114108 496115108 496116108 496117108 496118108 496119108 497120108 497121108 497122108 497123108 497130108 497131108 497132108 497133108 497134108 497135108 497136108 497137108 497138108 498420009 498421009 498422009 500110006 500111006 500112006 500113006 500114006 500115006 500116006 500117006 500118006 500119006 500130006 500131006 500132006 500133006 500134006 500135006 500136006 500137006 500138006 500110007 500111007 500112007 500113007 500114007 500115007 500116007 500117007 500118007 500119007 501130007 501131007 501132007 501133007 501134007 501135007 501136007 501137007 501138007 503140008 503141008 506140106 506141106 506150106 506151106 507140107 507141107 507150107 507151107 510110008 510111008 510112008 510113008 510114008 510115008 510116008 510117008 510118008 510119008 511130008 511131008 511132008 511133008 511134008 511135008 511136008 511137008 511138008 512420003 512421003 512422003 517140108 517141108 517150108 517151108 521150006 521151006 521150007 521151007 532150008 532151008 556420006 556421006 556422006 556420007 556421007 556422007 566420008 566421008 566422008 ); sub pbarmom { my $mp0 = 0.938272; my $minp = 0.0; my $s = $_[0]*$_[0]; if (sqrt($s)>2.*$mp0) {$minp = sqrt(($s-2.*$mp0*$mp0)*($s-2.*$mp0*$mp0)/(4.*$mp0*$mp0)-$mp0*$mp0);} return $minp; } # -------------- # main routine # -------------- my $sqscode = sprintf "%3d", $sqs*100; my $pmom = sprintf "%.5f", pbarmom($sqs); if ($pref eq "DPM") { print "qsub -t $min-$max job_sof_fsim.sge $sqscode\900 $nevt DPM $pmom\n"; if ($nevt>0) {`qsub -t $min-$max job_sof_fsim.sge $sqscode\900 $nevt DPM $pmom`;} } foreach my $mode (@modes) { # is in list of skipped recoils? my $rec = substr $mode, -2; if ($rec ~~ @skiprecoils) {next;} my $nrg = sprintf "%d",$mode/1000000; my $mmode = $mode%1000000; if (defined($pref) && $mmode !~ m/^\Q$pref\E/) {next;} if ($sqs*100>=$nrg) { if ($nevt==0) {print "nevt=0 ? ";} print "qsub -t $min-$max job_sof_fsim.sge $sqscode$mmode $nevt decfiles/M$mmode.dec $pmom pbarpSystem0\n"; if ($nevt>0) {`qsub -t $min-$max job_sof_fsim.sge $sqscode$mmode $nevt decfiles/M$mmode.dec $pmom pbarpSystem0`;} } }