2.0.0
What is new and what has changed in pyLife-2.0
The pyLife-2.0 release is planned for end of 2021. No promises, though. This
document lists changes and new features of pyLife-2.0.
General changes
In pyLife-1.x the individual modules often where not playing together really
well, sometimes we had even the same concept multiple times. For the
pyLife-2.0 release we aim to improve that. The concept of the accessor
classes
will be used more extensively.
New features
Rainflow counting
The rainflow counting module has been vastly redesigned
in order to get more flexibility. New possibilities are:
-
Recording of the hysteresis loop information is in a separate class to allow
the recording in a customized way.
See docs of the rainflow counting module for details.
Restructuring the code
We are now using PyScaffold to handle the packaging
files. That's why we have restructured the code base. Basically the only
notable things that have changed is that all the code has been moved from
pylife
to src/pylife
and the documentation has been moved from doc/source
to docs
. Both are the common locations for Python 3.x packages.
Changes that affect your code
-
Strength scattering is now stored as
TS
andTN
, no longer by1/TS
and
1/TN
. This only concerns the naming, the underlying values are still the
same. With this we are following the newer conventions in DIN 50100:2016-12. -
self._validate()
is no longer called with arguments. The argumentsobj
andvalidator
are no longer needed.obj
is now accessible by
self._obj
. The methods ofDataValidator
are now accessible as methods of
PylifeSignal
directly. -
Signal accessor class names are no longer suffixed with
Accessor
-
The
PyLifeSignal
is promoted to the toplevel of thepylife
package. That
means that you have to changefrom pylife import signal ... class Foo(signal.PylifeSignal): ...
to
from pylife import PylifeSignal ... class Foo(PylifeSignal): ...
-
The name of a rainflow matrix series is no longer
frequency
butcycles
. -
The names of the functions
scatteringRange2std
andstd2scatteringRange
have been adjusted to the naming conventions and are now
scattering_range_to_std
andstd_to_scattering_range
. -
The accessor class
CyclicStress
with the accessorcyclic_stress
is gone.
Usepylife.LoadCollective
instead.
Variable names
Currently we are brainstorming on guidelines about variable names. See the
article in the docs about it. It will be
continuously updated.