reVX.config.rpm.RepProfilesConfigGroup
- class RepProfilesConfigGroup(config)[source]
Bases:
BaseConfig
Subclass for handling the RPM config input group for the reVX-RPM representative profiles framework.
- Parameters:
config (dict) – Dictionary with pre-extracted config input group.
Methods
check_files
(flist)Make sure all files in the input file list exist.
check_overwrite_keys
(primary_key, ...)Check for overwrite keys and raise a ConfigError if present
clear
()copy
()fromkeys
([value])Create a new dictionary with keys from iterable and values set to value.
get
(key[, default])Return the value for key if key is in the dictionary, else default.
items
()keys
()pop
(k[,d])If key is not found, d is returned if given, otherwise KeyError is raised
popitem
()Remove and return a (key, value) pair as a 2-tuple.
resolve_path
(path)Resolve a file path represented by the input string.
set_self_dict
(dictlike)Save a dict-like variable as object instance dictionary items.
setdefault
(key[, default])Insert key with a value of default if key is not in the dictionary.
str_replace_and_resolve
(d, str_rep)Perform a deep string replacement and path resolve in d.
update
([E, ]**F)If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]
values
()Attributes
Required keys for config
Mapping of config inputs (keys) to desired replacements (values) in addition to relative file paths as demarcated by ./ and ../
Get the directory that the config file is in.
List of valid config keys
String representation of a dictionary of exclusion LayerMask arguments {layer: {kwarg: value}} where layer is a dataset in excl_fpath and kwarg can be "inclusion_range", "exclude_values", "include_values", "use_as_weights", or "weight".
Filepath to exclusions data (must match the techmap grid), None will not apply exclusions.
reV generation output file for forecast data.
Get user-specified "log_level" (DEBUG, INFO, WARNING, etc...).
Get the number of profiles to get.
Get the job name, defaults to 'rev'.
Pre-existing RPM cluster results .csv with (gid, gen_gid, cluster_id, rank) (required).
Dataset name in the techmap file containing the exclusions-to-resource mapping data.
Filepath to a single-column CSV containing ordered TRG bin edges.
TRG dataset found in cf_fpath that is associated with the TRG bins
- REQUIREMENTS = ('rpm_clusters',)
Required keys for config
- property rpm_clusters
Pre-existing RPM cluster results .csv with (gid, gen_gid, cluster_id, rank) (required).
- property n_profiles
Get the number of profiles to get.
- property exclusions
Filepath to exclusions data (must match the techmap grid), None will not apply exclusions.
- property excl_dict
String representation of a dictionary of exclusion LayerMask arguments {layer: {kwarg: value}} where layer is a dataset in excl_fpath and kwarg can be “inclusion_range”, “exclude_values”, “include_values”, “use_as_weights”, or “weight”.
- property techmap_dset
Dataset name in the techmap file containing the exclusions-to-resource mapping data.
- property trg_bins
Filepath to a single-column CSV containing ordered TRG bin edges.
- property trg_dset
TRG dataset found in cf_fpath that is associated with the TRG bins
- property forecast_fpath
reV generation output file for forecast data. If this is input, profiles will be taken from forecast file instead of the cf file, based on a NN mapping.
- STR_REP = {'REVDIR': '/opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages/reV', 'TESTDATADIR': '/opt/hostedtoolcache/Python/3.8.18/x64/lib/python3.8/site-packages/tests/data'}
Mapping of config inputs (keys) to desired replacements (values) in addition to relative file paths as demarcated by ./ and ../
- static check_files(flist)
Make sure all files in the input file list exist.
- Parameters:
flist (list) – List of files (with paths) to check existance of.
- check_overwrite_keys(primary_key, *overwrite_keys)
Check for overwrite keys and raise a ConfigError if present
- Parameters:
primary_key (str) – Primary key that overwrites overwrite_keys, used for error message
overwrite_keys (str) – Key(s) to overwrite
- clear() None. Remove all items from D.
- property config_dir
Get the directory that the config file is in.
- Returns:
config_dir (str) – Directory path that the config file is in.
- property config_keys
List of valid config keys
- Returns:
list
- copy() a shallow copy of D
- fromkeys(value=None, /)
Create a new dictionary with keys from iterable and values set to value.
- get(key, default=None, /)
Return the value for key if key is in the dictionary, else default.
- items() a set-like object providing a view on D's items
- keys() a set-like object providing a view on D's keys
- property log_level
Get user-specified “log_level” (DEBUG, INFO, WARNING, etc…).
- Returns:
log_level (int) – Python logging module level (integer format) corresponding to the config-specified log level string.
- property name
Get the job name, defaults to ‘rev’.
- Returns:
name (str) – reV job name.
- pop(k[, d]) v, remove specified key and return the corresponding value.
If key is not found, d is returned if given, otherwise KeyError is raised
- popitem()
Remove and return a (key, value) pair as a 2-tuple.
Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.
- resolve_path(path)
Resolve a file path represented by the input string.
This function resolves the input string if it resembles a path. Specifically, the string will be resolved if it starts with “
./
” or “..
”, or it if it contains either “./
” or “..
” somewhere in the string body. Otherwise, the string is returned unchanged, so this function is safe to call on any string, even ones that do not resemble a path.This method delegates the “resolving” logic to
pathlib.Path.resolve()
. This means the path is made absolute, symlinks are resolved, and “..
” components are eliminated. If thepath
input starts with “./
” or “..
”, it is assumed to be w.r.t the config directory, not the run directory.- Parameters:
path (str) – Input file path.
- Returns:
str – The resolved path.
- set_self_dict(dictlike)
Save a dict-like variable as object instance dictionary items.
- Parameters:
dictlike (dict) – Python namespace object to set to this dictionary-emulating class.
- setdefault(key, default=None, /)
Insert key with a value of default if key is not in the dictionary.
Return the value for key if key is in the dictionary, else default.
- str_replace_and_resolve(d, str_rep)
Perform a deep string replacement and path resolve in d.
- Parameters:
d (dict) – Config dictionary potentially containing strings to replace and/or paths to resolve.
str_rep (dict) – Replacement mapping where keys are strings to search for and values are the new values.
- Returns:
d (dict) – Config dictionary with updated strings.
- update([E, ]**F) None. Update D from dict/iterable E and F.
If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]
- values() an object providing a view on D's values