Coverage for parallel_bilby/parser/analysis.py: 100%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

17 statements  

1import argparse 

2 

3from .shared import _create_base_parser 

4 

5 

6def create_analysis_parser(sampler="dynesty"): 

7 """Parser for parallel_bilby_analysis""" 

8 parser = _create_base_parser(sampler=sampler) 

9 

10 analysis_parser = argparse.ArgumentParser( 

11 prog="parallel_bilby_analysis", parents=[parser] 

12 ) 

13 analysis_parser.add_argument( 

14 "data_dump", 

15 type=str, 

16 help="The pickled data dump generated by parallel_bilby_analysis", 

17 ) 

18 analysis_parser.add_argument( 

19 "--outdir", default=None, type=str, help="Outdir to overwrite input label" 

20 ) 

21 analysis_parser.add_argument( 

22 "--label", default=None, type=str, help="Label to overwrite input label" 

23 ) 

24 analysis_parser.add_argument( 

25 "--result-format", default="hdf5", type=str, help="Format to save the result" 

26 ) 

27 return analysis_parser 

28 

29 

30def parse_analysis_args(parser, cli_args=[""]): 

31 """Parse the command line arguments for parallel_bilby_analysis""" 

32 args = parser.parse_args(args=cli_args) 

33 

34 if args.walks > args.maxmcmc: 

35 raise ValueError( 

36 f"You have maxmcmc ({args.maxmcmc}) > walks ({args.walks}, minimum mcmc)" 

37 ) 

38 if args.nact < 1: 

39 raise ValueError(f"Your nact ({args.nact}) < 1 (must be >= 1)") 

40 

41 return args