Skip to content

Commit

Permalink
flexibility in camb,ngenic,gadget2 param filenames in lenstools.submi…
Browse files Browse the repository at this point in the history
…ssion
  • Loading branch information
apetri committed Jun 8, 2016
1 parent 541f916 commit 6b65870
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 10 deletions.
21 changes: 15 additions & 6 deletions lenstools/pipeline/simulation.py
Original file line number Diff line number Diff line change
Expand Up @@ -761,7 +761,7 @@ def getModel(self,cosmo_id):
##########################################Job submission scripts###########################################################################
###########################################################################################################################################

def writeCAMBSubmission(self,realization_list,job_settings,job_handler,chunks=1,**kwargs):
def writeCAMBSubmission(self,realization_list,job_settings,job_handler,config_file="camb.param",chunks=1,**kwargs):

"""
Writes CAMB submission script
Expand All @@ -778,6 +778,9 @@ def writeCAMBSubmission(self,realization_list,job_settings,job_handler,chunks=1,
:param job_handler: handler of the cluster specific features (job scheduler, architecture, etc...)
:type job_handler: JobHandler
:param config_file: name of the CAMB configuration file
:type config_file: str.
:param kwargs: you can set one_script=True to include all the executables sequentially in a single script
:type kwargs: dict.
Expand Down Expand Up @@ -829,7 +832,7 @@ def writeCAMBSubmission(self,realization_list,job_settings,job_handler,chunks=1,
box_size = float(box_size) * model.Mpc_over_h
collection = model.getCollection(box_size=box_size,nside=nside)

parameter_file = os.path.join(collection.home_subdir,"camb.param")
parameter_file = os.path.join(collection.home_subdir,config_file)
if not(self.syshandler.exists(parameter_file)):
raise IOError("CAMB parameter file at {0} does not exist yet!".format(parameter_file))

Expand Down Expand Up @@ -867,7 +870,7 @@ def writeCAMBSubmission(self,realization_list,job_settings,job_handler,chunks=1,

############################################################################################################################################

def writeNGenICSubmission(self,realization_list,job_settings,job_handler,chunks=1,**kwargs):
def writeNGenICSubmission(self,realization_list,job_settings,job_handler,config_file="ngenic.param",chunks=1,**kwargs):

"""
Writes NGenIC submission script
Expand All @@ -884,6 +887,9 @@ def writeNGenICSubmission(self,realization_list,job_settings,job_handler,chunks=
:param job_handler: handler of the cluster specific features (job scheduler, architecture, etc...)
:type job_handler: JobHandler
:param config_file: name of the NGenIC config file
:type config_file: str.
:param kwargs: you can set one_script=True to include all the executables sequentially in a single script
:type kwargs: dict.
Expand Down Expand Up @@ -930,7 +936,7 @@ def writeNGenICSubmission(self,realization_list,job_settings,job_handler,chunks=

r = collection.getRealization(int(ic_number.strip("ic")))

parameter_file = os.path.join(r.home_subdir,"ngenic.param")
parameter_file = os.path.join(r.home_subdir,config_file)
if not(self.syshandler.exists(parameter_file)):
raise IOError("NGenIC parameter file at {0} does not exist yet!".format(parameter_file))

Expand Down Expand Up @@ -973,7 +979,7 @@ def writeNGenICSubmission(self,realization_list,job_settings,job_handler,chunks=
############################################################################################################################################


def writeNbodySubmission(self,realization_list,job_settings,job_handler,chunks=1,**kwargs):
def writeNbodySubmission(self,realization_list,job_settings,job_handler,config_file="gadget2.param",chunks=1,**kwargs):

"""
Writes N-body simulation submission script
Expand All @@ -990,6 +996,9 @@ def writeNbodySubmission(self,realization_list,job_settings,job_handler,chunks=1
:param job_handler: handler of the cluster specific features (job scheduler, architecture, etc...)
:type job_handler: JobHandler
:param config_file: name of the Nbody configuration file
:type config_file: str.
:param kwargs: you can set one_script=True to include all the executables sequentially in a single script
:type kwargs: dict.
Expand Down Expand Up @@ -1046,7 +1055,7 @@ def writeNbodySubmission(self,realization_list,job_settings,job_handler,chunks=1

r = collection.getRealization(int(ic_number.strip("ic")))

parameter_file = os.path.join(r.home_subdir,"gadget2.param")
parameter_file = os.path.join(r.home_subdir,config_file)
if not(self.syshandler.exists(parameter_file)):
raise IOError("Gadget2 parameter file at {0} does not exist yet!".format(parameter_file))

Expand Down
24 changes: 20 additions & 4 deletions scripts/lenstools.submission
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ system2handler = {
#Parse command line options
parser = argparse.ArgumentParser()
parser.add_argument("-e","--environment",dest="env_file",action="store",type=str,default=lensData("environment_default.ini"),help="environment option file")
parser.add_argument("-o","--options",dest="exec_options",action="store",type=str,default=lensData("lens_default.ini"),help="configuration file to pass to the executable (planes or raytracing)")
parser.add_argument("-o","--options",dest="exec_options",action="store",type=str,default=None,help="name of the configuration file to pass to the executable")
parser.add_argument("-O","--one",dest="one_script",action="store_true",default=False,help="Use to collapse all the lens planes and raytracing executables in a single job script")
parser.add_argument("-j","--job",dest="job_options_file",action="store",type=str,default=lensData("job_default.ini"),help="job specifications file")
parser.add_argument("-t","--type",dest="job_type",action="store",type=str,default=None,help="type of job submission (Gadget,NGenIC,etc...)")
Expand Down Expand Up @@ -102,23 +102,39 @@ if job_type=="camb":
print("[+] Generating CAMB submission script")
print("[*] Reading job specifications from {0} section {1}".format(cmd_args.job_options_file,section))
job_settings = JobSettings.read(cmd_args.job_options_file,section)
batch.writeCAMBSubmission(realizations,job_settings,job_handler,chunks=cmd_args.chunks,one_script=cmd_args.one_script)

#Write script
if cmd_args.exec_options is not None:
batch.writeCAMBSubmission(realizations,job_settings,job_handler,config_file=cmd_args.exec_options,chunks=cmd_args.chunks,one_script=cmd_args.one_script)
else:
batch.writeCAMBSubmission(realizations,job_settings,job_handler,chunks=cmd_args.chunks,one_script=cmd_args.one_script)

elif job_type=="ngenic":

section = type2section[job_type]
print("[+] Generating N-GenIC submission script")
print("[*] Reading job specifications from {0} section {1}".format(cmd_args.job_options_file,section))
job_settings = JobSettings.read(cmd_args.job_options_file,section)
batch.writeNGenICSubmission(realizations,job_settings,job_handler,chunks=cmd_args.chunks,one_script=cmd_args.one_script)

#Write script
if cmd_args.exec_options is not None:
batch.writeNGenICSubmission(realizations,job_settings,job_handler,config_file=cmd_args.exec_options,chunks=cmd_args.chunks,one_script=cmd_args.one_script)
else:
batch.writeNGenICSubmission(realizations,job_settings,job_handler,chunks=cmd_args.chunks,one_script=cmd_args.one_script)


elif job_type in ["nbody","gadget2"]:

section = type2section[job_type]
print("[+] Generating Gadget2 submission script")
print("[*] Reading job specifications from {0} section {1}".format(cmd_args.job_options_file,section))
job_settings = JobSettings.read(cmd_args.job_options_file,section)
batch.writeNbodySubmission(realizations,job_settings,job_handler,chunks=cmd_args.chunks,one_script=cmd_args.one_script)

#Write script
if cmd_args.exec_options is not None:
batch.writeNbodySubmission(realizations,job_settings,job_handler,config_file=cmd_args.exec_options,chunks=cmd_args.chunks,one_script=cmd_args.one_script)
else:
batch.writeNbodySubmission(realizations,job_settings,job_handler,chunks=cmd_args.chunks,one_script=cmd_args.one_script)

elif job_type=="planes":

Expand Down

0 comments on commit 6b65870

Please sign in to comment.