Skip to content

Commit

Permalink
Merge pull request #22 from jcrivenaes/linting
Browse files Browse the repository at this point in the history
Linting
  • Loading branch information
jcrivenaes committed Aug 19, 2019
2 parents f218857 + 27dfa41 commit 0f9f9b7
Show file tree
Hide file tree
Showing 4 changed files with 69 additions and 78 deletions.
31 changes: 18 additions & 13 deletions src/xtgeoapp_grd3dmaps/avghc/_get_grid_props.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,13 @@

logger = xtg.functionlogger(__name__)

# Heavy need for reprogramming...:
# pylint: disable=logging-format-interpolation
# pylint: disable=too-many-statements
# pylint: disable=too-many-locals
# pylint: disable=too-many-branches
# pylint: disable=too-many-nested-blocks


def files_to_import(config, appname):
"""Get a list of files to import, based on config"""
Expand Down Expand Up @@ -68,7 +75,6 @@ def files_to_import(config, appname):
restartlist["SGAS"] = eclroot + ".UNRST"

for date in config["input"]["dates"]:
logger.debug("DATE {}".format(date))
if len(date) == 8:
dates.append(date)
elif len(date) > 12:
Expand Down Expand Up @@ -130,10 +136,10 @@ def files_to_import(config, appname):
pprestart = pprint.PrettyPrinter(indent=4)
ppdates = pprint.PrettyPrinter(indent=4)

logger.debug("Grid from {}".format(gfile))
logger.debug("{}".format(ppinit.pformat(initlist)))
logger.debug("{}".format(pprestart.pformat(restartlist)))
logger.debug("{}".format(ppdates.pformat(dates)))
logger.debug("Grid from %s", gfile)
logger.debug("%s", ppinit.pformat(initlist))
logger.debug("%s", pprestart.pformat(restartlist))
logger.debug("%s", ppdates.pformat(dates))

return gfile, initlist, restartlist, dates

Expand All @@ -151,13 +157,12 @@ def import_data(config, appname, gfile, initlist, restartlist, dates):
"""

logger.info("Import data for {}".format(appname))
logger.info("Import data for %s", appname)
logger.debug("Config is %s", config)

# get the grid data + some geometrics
grd = xtgeo.grid3d.Grid(gfile, fformat="guess")

logger.info("Grid is now imported for {}".format(appname))

# For rock thickness only model, the initlist and restartlist will be
# empty dicts, and just return at this point

Expand All @@ -174,7 +179,7 @@ def import_data(config, appname, gfile, initlist, restartlist, dates):

initdict = defaultdict(list)
for ipar, ifile in initlist.items():
logger.info("Parameter INIT: {} \t file is {}".format(ipar, ifile))

if isinstance(ifile, dict):
lookfor, usefile = list(ifile.keys()), list(ifile.values())
initdict[usefile[0]].append([ipar, lookfor[0]])
Expand All @@ -191,11 +196,11 @@ def import_data(config, appname, gfile, initlist, restartlist, dates):
initdict[ifile].append([ipar, lookfor])

ppinitdict = pprint.PrettyPrinter(indent=4)
logger.debug("\n{}".format(ppinitdict.pformat(initdict)))
logger.debug("\n%s", ppinitdict.pformat(initdict))

restdict = defaultdict(list)
for rpar, rfile in restartlist.items():
logger.info("Parameter RESTART: {} \t file is {}".format(rpar, rfile))
logger.info("Parameter RESTART: %s \t file is %s", rpar, rfile)
restdict[rfile].append(rpar)

pprestdict = pprint.PrettyPrinter(indent=4)
Expand Down Expand Up @@ -243,12 +248,12 @@ def import_data(config, appname, gfile, initlist, restartlist, dates):
)

except DateNotFoundError as rwarn:
logger.info("Got warning...")
logger.info("Got warning... %s", rwarn)
for prop in tmp.props:
logger.info("Append prop: {}".format(prop))
restobjects.append(prop)
except KeywordFoundNoDateError as rwarn:
logger.info("Keyword found but not for this date")
logger.info("Keyword found but not for this date %s", rwarn)
raise SystemExit("STOP")
except Exception as message:
raise SystemExit(message)
Expand Down
24 changes: 10 additions & 14 deletions src/xtgeoapp_grd3dmaps/avghc/_get_zonation_filters.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ def zonation(config, grd):
if "zproperty" in config["zonation"] and "zranges" in config["zonation"]:
raise ValueError('Cannot have both "zproperty" and "zranges" in ' '"zonation"')

zonation = np.zeros(grd.dimensions, dtype=np.int32)
usezonation = np.zeros(grd.dimensions, dtype=np.int32)
zoned = OrderedDict()
superzoned = OrderedDict()

Expand All @@ -58,7 +58,7 @@ def zonation(config, grd):
zname = list(zns.keys())[0] # zz.keys()[0]
iranges = list(zns.values())[0]
for ira in iranges:
zonation[myzonation == ira] = izn + 1
usezonation[myzonation == ira] = izn + 1
zoned[zname] = izn + 1

elif "zranges" in config["zonation"]:
Expand All @@ -70,9 +70,9 @@ def zonation(config, grd):
k01 = intv[0] - 1
k02 = intv[1]

logger.info("K01 K02: {} - {}".format(k01, k02))
logger.info("K01 K02: %s - %s", k01, k02)

zonation[:, :, k01:k02] = i + 1
usezonation[:, :, k01:k02] = i + 1
zoned[zname] = i + 1

if "superranges" in config["zonation"]:
Expand All @@ -81,28 +81,24 @@ def zonation(config, grd):
zname = list(zz.keys())[0]
superzoned[zname] = []
intv = list(zz.values())[0]
logger.debug("Superzone spec no {}: {} {}".format(i + 1, zname, intv))
logger.debug("Superzone spec no %s: %s %s", i + 1, zname, intv)
for zn in intv:
superzoned[zname].append(zoned[zn])
else:
logger.info("Did not find any superranges...")

for myz, val in zoned.items():
logger.info("Zonation list: {}: {}".format(myz, val))

logger.debug("Zonation in cell 1, 1, kmin:kmax: {}".format(zonation[0, 0, :]))
logger.info("Zonation list: %s: %s", myz, val)

for key, vals in superzoned.items():
logger.debug("Superzoned {} {}".format(key, vals))
logger.debug("Superzoned %s %s", key, vals)

logger.info("The zoned dict: {}".format(zoned))
logger.info("The superzoned dict: {}".format(superzoned))
logger.info("The zoned dict: %s", zoned)
logger.info("The superzoned dict: %s", superzoned)

zmerged = zoned.copy()
zmerged.update(superzoned)

zmerged["all"] = None

logger.info("The merged dict: {}".format(zmerged))

return zonation, zmerged
return usezonation, zmerged
45 changes: 20 additions & 25 deletions src/xtgeoapp_grd3dmaps/avghc/grid3d_average_map.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@
except ImportError:
__version__ = "0.0.0"

appname = "grid3d_average_map"
APPNAME = "grid3d_average_map"

appdescr = (
APPDESCR = (
"Make average property maps directly from 3D grids. Docs:\n"
+ "https://sdp.statoil.no/wikidocs/XTGeo/apps/"
+ "xtgeoapp_grd3dmaps/html/"
Expand All @@ -41,7 +41,7 @@

def do_parse_args(args):

args = _configparser.parse_args(args, appname, appdescr)
args = _configparser.parse_args(args, APPNAME, APPDESCR)

return args

Expand All @@ -52,53 +52,48 @@ def yamlconfig(inputfile, args):
config = _configparser.propformatting(config)

# override with command line args
config = _configparser.yconfig_override(config, args, appname)
config = _configparser.yconfig_override(config, args, APPNAME)

config = _configparser.yconfig_set_defaults(config, appname)
config = _configparser.yconfig_set_defaults(config, APPNAME)

# in case of YAML input (e.g. zonation from file)
config = _configparser.yconfig_addons(config, appname)

logger.info("Updated config:".format(config))
for name, val in config.items():
logger.info("{}".format(name))
logger.info("{}".format(val))
config = _configparser.yconfig_addons(config, APPNAME)

if args.dumpfile:
_configparser.yconfigdump(config, args.dumpfile)

return config


def get_grid_props_data(config, appname):
def get_grid_props_data(config):
"""Collect the relevant Grid and props data (but not do the import)."""

gfile, initlist, restartlist, dates = _get_grid_props.files_to_import(
config, appname
config, APPNAME
)

xtg.say("Grid file is {}".format(gfile))

xtg.say("Getting INIT file data")
for initpar, initfile in initlist.items():
logger.info("{} file is {}".format(initpar, initfile))
logger.info("%s file is %s", initpar, initfile)

xtg.say("Getting RESTART file data")
for restpar, restfile in restartlist.items():
logger.info("{} file is {}".format(restpar, restfile))
logger.info("%s file is %s", restpar, restfile)

xtg.say("Getting dates")
for date in dates:
logger.info("Date is {}".format(date))
logger.info("Date is %s", date)

return gfile, initlist, restartlist, dates


def import_pdata(config, appname, gfile, initlist, restartlist, dates):
def import_pdata(config, gfile, initlist, restartlist, dates):
"""Import the data, and represent datas as numpies"""

grd, initobjects, restobjects, dates = _get_grid_props.import_data(
config, appname, gfile, initlist, restartlist, dates
config, APPNAME, gfile, initlist, restartlist, dates
)
specd, averaged = _get_grid_props.get_numpies_avgprops(
config, grd, initobjects, restobjects, dates
Expand All @@ -108,10 +103,10 @@ def import_pdata(config, appname, gfile, initlist, restartlist, dates):
return grd, specd, averaged, dates


def import_filters(config, appname, grd):
def import_filters(config, grd):
"""Import the filter data properties, process and return a filter mask"""

filter_mask = _get_grid_props.import_filters(config, appname, grd)
filter_mask = _get_grid_props.import_filters(config, APPNAME, grd)

return filter_mask

Expand Down Expand Up @@ -163,7 +158,7 @@ def compute_avg_and_plot(

def main(args=None):

XTGeoDialog.print_xtgeo_header(appname, __version__)
XTGeoDialog.print_xtgeo_header(APPNAME, __version__)

xtg.say("Parse command line")
args = do_parse_args(args)
Expand All @@ -181,23 +176,23 @@ def main(args=None):

# get the files
xtg.say("Collect files...")
gfile, initlist, restartlist, dates = get_grid_props_data(config, appname)
gfile, initlist, restartlist, dates = get_grid_props_data(config)

# import data from files and return relevant numpies
xtg.say("Import files...")

grd, specd, propd, dates = import_pdata(
config, appname, gfile, initlist, restartlist, dates
config, gfile, initlist, restartlist, dates
)

# get the filter array
filterarray = import_filters(config, appname, grd)
filterarray = import_filters(config, grd)
logger.info("Filter mean value: %s", filterarray.mean())
if filterarray.mean() < 1.0:
xtg.say("Property filters are active")

for prop, val in propd.items():
logger.info("Key is {}, avg value is {}".format(prop, val.mean()))
logger.info("Key is %s, avg value is %s", prop, val.mean())

# Get the zonations
xtg.say("Get zonation info")
Expand Down
Loading

0 comments on commit 0f9f9b7

Please sign in to comment.