32 lines
793 B
Python
32 lines
793 B
Python
# coding: utf-8
|
|
|
|
import numpy as np
|
|
import re
|
|
import bunch
|
|
import yaml
|
|
import os
|
|
|
|
_dir_path = os.path.dirname(os.path.realpath(__file__))
|
|
|
|
# Add support for '1e3' kind of float
|
|
_loader = yaml.SafeLoader
|
|
_loader.add_implicit_resolver(
|
|
u'tag:yaml.org,2002:float',
|
|
re.compile(u'''^(?:
|
|
[-+]?(?:[0-9][0-9_]*)\\.[0-9_]*(?:[eE][-+]?[0-9]+)?
|
|
|[-+]?(?:[0-9][0-9_]*)(?:[eE][-+]?[0-9]+)
|
|
|\\.[0-9_]+(?:[eE][-+][0-9]+)?
|
|
|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*
|
|
|[-+]?\\.(?:inf|Inf|INF)
|
|
|\\.(?:nan|NaN|NAN))$''', re.X),
|
|
list(u'-+0123456789.'))
|
|
|
|
|
|
def load_params(filename):
|
|
with open(filename) as f:
|
|
para_disk = yaml.load(f, Loader=_loader)
|
|
return bunch.bunchify(para_disk)
|
|
|
|
def default_params():
|
|
return load_params(_dir_path + '/pp_params.yml')
|