next up previous print clean
Next: About this document ... Up: R. Clapp: Parallel SEPlib Previous: REFERENCES

Appendix A

The following is a simple example parallel job. In this case a file is split along the third axis and the SEPlib program
Scale
is run on each section, then the files combined to form the final output.
njobs =4        #the number of jobs we are going to break the problem into
isect_dict={}   #an empty dictionary object relating the section and jobid
par_list={}     #an empty dictionary object relating parameters and jobid

for i in range(njobs):           #loop over the jobs
   isect_dict[str(i)]=ia         #form the jobid:isect dictionary ('1':1)
   par_list[str(i)]=SEP.par.sep_pars(name=str(i)) #form an empty parameter list
                                                                                
file={}    #the files dictionary

#create the input: first command line is the name of the file, referenced with<
file["input"]=SEP.parfile.parfile(name=sys.argv[1],
  tag="<",isect_dict=isect_dict, usage="INPUT",axis=3,verb=verb)

#create the output parallel file object
file["output"]=SEP.parfile.parfile(name=sys.argv[2],tag=">",
isect_dict=isect_dict, usage="OUTPUT",axis=3,verb=verb)

#create the parallel job
test1=SEP.parjob.parjob(files=file,sect_pars=par_list,program="Scale",
 log_level=2,verb=verb,njobs=njobs)

#run the job
test1.run_job()

#clean: remove all the temporary and status files
test1.clean()



Stanford Exploration Project
10/23/2004