5
5
6
6
7
7
def main (job_ini , rup_files , gmlt_files , max_distances = None ,
8
- concurrent_jobs = 1 ):
8
+ concurrent_jobs = 1 , out_folder = 'Sensitivity' ):
9
9
'''
10
10
Funtion to run sensitivity analysis for ruptures and gmlt.
11
11
@@ -25,6 +25,9 @@ def main(job_ini, rup_files, gmlt_files, max_distances=None,
25
25
26
26
concurrent_jobs : int
27
27
Number of concurrent jobs to run
28
+
29
+ out_folder : str
30
+ Folder name to save log files (it will be relative to the location of the job.ini)
28
31
29
32
Returns
30
33
-------
@@ -59,12 +62,12 @@ def main(job_ini, rup_files, gmlt_files, max_distances=None,
59
62
# Build a job for each rupture model
60
63
jobs = create_jobs (allparams , multi = True ) # independent jobs
61
64
62
- # Run the jobs one by one (no parallel option )
65
+ # Run the jobs (possibility for parallel calcs )
63
66
run_jobs (jobs , concurrent_jobs ) # concurrent_jobs=1
64
67
65
68
# Save the logs
66
69
for job in jobs :
67
- save_log = os .path .join (base_path , 'Sensitivity' , f'log_calc_{ job .calc_id } .txt' )
70
+ save_log = os .path .join (base_path , out_folder , f'log_calc_{ job .calc_id } .txt' )
68
71
rows = logs .dbcmd (
69
72
'SELECT job_id, message FROM log WHERE job_id=?x' , job .calc_id )
70
73
with open (save_log , 'w' ) as f :
@@ -82,10 +85,3 @@ def main(job_ini, rup_files, gmlt_files, max_distances=None,
82
85
gmlt_files = sys .argv [3 ]
83
86
84
87
main (job , rup_files , gmlt_files )
85
-
86
- # job_ini = 'Nepal/20150425_M7.8_Gorkha/OpenQuake_gmfs/job_stations_seismic.ini'
87
- # oq_rups = ['../Rupture/earthquake_rupture_model_Hayes.xml']
88
- # oq_gmlt = ['gmpe_logic_tree_Adjusted.xml']
89
- # max_distances = [50]
90
-
91
- # a = main(job_ini, oq_rups, oq_gmlt, max_distances)
0 commit comments