reVX.config.turbine_flicker.TurbineFlickerConfig

class TurbineFlickerConfig(config)[source]

Bases: AnalysisConfig

Config framework for turbine flicker calculation

Parameters:

config (str | dict) – Path to config .json or pre-extracted config input dictionary.

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

NAME

REQUIREMENTS

Required keys for config

STR_REP

Mapping of config inputs (keys) to desired replacements (values) in addition to relative file paths as demarcated by ./ and ../

analysis_years

Get the analysis years.

building_layer

Get the building layer name.

building_threshold

Get the threshold for which buildings are identified in the building_layer.

config_dir

Get the directory that the config file is in.

config_keys

List of valid config keys

excl_fpath

Get the exclusions .h5 file path (required).

execution_control

Get the execution control object.

flicker_threshold

Get the threshold at which shadow flicker will lead to an exclusions, values are in hours

grid_cell_size

Get the length (m) of a side of each grid cell in excl_fpath.

hsds

Get hsds flag

hub_height

Get the turbine hub-height for which shadow flicker will be computed.

log_directory

Get the logging directory, look for key "log_directory" in the config.

log_level

Get user-specified "log_level" (DEBUG, INFO, WARNING, etc...).

max_flicker_exclusion_range

Get the max distance (m) that flicker exclusions will extend in any of the cardinal directions.

name

Get the job name, defaults to the output directory name.

out_layer

Get the output layer name under which turbine flicker exclusions will be saved

regulations_fpath

Get regulations .csv path

replace

Get replace flag

res_fpath

Get the resource .h5 file path (required).

resolution

Get the supply curve resolution.

rotor_diameter

Get turbine rotor diameter for which shadow flicker will be computed.

tm_dset

Get the techmap dataset name.

REQUIREMENTS = ('excl_fpath', 'res_fpath', 'hub_height', 'rotor_diameter')

Required keys for config

property excl_fpath

Get the exclusions .h5 file path (required).

property res_fpath

Get the resource .h5 file path (required).

property regulations_fpath

Get regulations .csv path

property building_layer

Get the building layer name.

property hub_height

Get the turbine hub-height for which shadow flicker will be computed.

property rotor_diameter

Get turbine rotor diameter for which shadow flicker will be computed.

property tm_dset

Get the techmap dataset name.

property resolution

Get the supply curve resolution.

property grid_cell_size

Get the length (m) of a side of each grid cell in excl_fpath.

property max_flicker_exclusion_range

Get the max distance (m) that flicker exclusions will extend in any of the cardinal directions.

property building_threshold

Get the threshold for which buildings are identified in the building_layer.

property flicker_threshold

Get the threshold at which shadow flicker will lead to an exclusions, values are in hours

property out_layer

Get the output layer name under which turbine flicker exclusions will be saved

property replace

Get replace flag

property hsds

Get hsds flag

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 ../

property analysis_years

Get the analysis years.

Returns:

analysis_years (list) – List of years to analyze. If this is a single year run, this return value is a single entry list. If no analysis_years are specified, the code will look anticipate a year in the input files.

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
property execution_control

Get the execution control object.

Returns:

_ec (BaseExecutionConfig | EagleConfig) – reV execution config object specific to the execution_control option.

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_directory

Get the logging directory, look for key “log_directory” in the config. :returns: log_directory (str) – Target path for reV log files.

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 the output directory name. :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 the path 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