EbysusParamTable

class PlasmaCalcs.hookups.ebysus.ebysus_io_tools.EbysusParamTable(filename)

Bases: DictlikeFromKeysAndGetitem

params table for Ebysus, from “mf_params.in”-like file.

Base class for Ebysus_eParamTable and Ebysus_mfParamTable.
filename: str
path to file. Internally stored as abspath.
Parsed as follows (ignoring comments (# or ;), trimming whitespace and blank lines):
KEY
SOME WHITESPACE SEPARATED VALUES # repeated any number of times, same size each time.
# repeat any number of times (different key each time). Keys can be in any order.
# do NOT include quotation marks, even for string-valued quantities like file paths.
Subclasses provide more specifics about possible keys.
self.raw stores “raw” parsed info, as dict of {key: values},
where values is a single string for ‘NSPECIES_MAX’,
and a list of lists of values (2D-arraylike) for all other keys.
All values anywhere in self.raw are stored as strings.
self is dict-like; can do self[key] or self.params[key].

Methods

__getitem__(key)

return self.params[key].

__iter__()

raises TypeError; use .keys(), .values(), or .items() instead.

__repr__()

repr(self).

__setitem__(key, value)

set self.params[key] = value.

get(key[, default])

return self[key].

init_from_raw()

do some initialization stuff from self.raw.

init_params()

initialize self.params.

items()

return tuple of (key, value) pairs corresponding to self.keys() and self.values().

keys()

return keys of self.params.

parse_file()

parse file, returning dict of list of lists of values.

values()

return tuple of values corresponding to self.keys().

_assert_ncols_matches_nspecies_max(key)

asserts (ncols for this key) == NSPECIES_MAX, else raise FileContentsConflictError.

Attributes

nspecies_max

alias to self['nspecies_max'], equivalent to self.params['nspecies_max'].

sizes

dict of lengths of keys' values from self, except for nspecies_max.

__getitem__(key)

return self.params[key].

__iter__()

raises TypeError; use .keys(), .values(), or .items() instead.

__repr__()

repr(self).

__setitem__(key, value)

set self.params[key] = value.

_assert_ncols_matches_nspecies_max(key)

asserts (ncols for this key) == NSPECIES_MAX, else raise FileContentsConflictError.

get(key, default=UNSET)

return self[key]. if default is provided and self[key] doesn’t exist, return default.

init_from_raw()

do some initialization stuff from self.raw.

[not implemented here] subclass should implement.
init_params()

initialize self.params. Includes ‘nspecies_max’ key.

All other keys expected to be added by subclass during init_from_raw().
items()

return tuple of (key, value) pairs corresponding to self.keys() and self.values().

keys()

return keys of self.params.

property nspecies_max

alias to self[‘nspecies_max’], equivalent to self.params[‘nspecies_max’].

parse_file()

parse file, returning dict of list of lists of values.

property sizes

dict of lengths of keys’ values from self, except for nspecies_max.

values()

return tuple of values corresponding to self.keys().