Closed
Description
Problem
Rename module name singlediode_methods.py
and refactor pvsystem.singlediode
singlediode_methods.py
is a long name for a module- the suffix "methods" is ambiguous, superfluous, and not descriptive
- the other modules have meaningful names that correspond loosely to the modeling steps described at Sandia PVPMC
- there needs to be a discussion regarding possibly refactoring
pvsystem.singlediode
- having a module shadow a method from a different module might be confusing or maybe it's not a problem?
- has there already been discussion on breaking
singlediode
up, refactoring, or renaming it?
Proposed Solution
Rename module singlediode_methods.py
to just singlediode.py
and consider refactoring pvsystem.singlediode
- rename the module from
singlediode_methods.py
to justsinglediode.py
- change all references in the code where appropriate
- change all references in the comments and documentation where appropriate
- start a discussion on the repercussions to the
singlediode()
methods inpvsystem.py
alternatives
- rename the module something else like
dc_energy.py
,pvmodules.py
, orpvcells.py
- do nothing
- rename the module to
singlediode.py
and leavepvsystem.singlediode()
alone - rename the module to
singlediode.py
and movepvsystem.singlediode()
tosinglediode.singlediode()
which is a more established pattern, right?
Additional context
- this is a follow on to ENH: implementing pvsyst recombination loss current for CdTe and a:Si #504
- comments in move lambertw to singlediode-methods module #497
- also related to singlediode is slow #408, ENH: add methods and tests for a explicit IV curve calculation of single-diode model #409, and Single diode model helper function to wrap Lambert w and other methods #410