Change log ========== * v4.7.2 - [Added (4.7.2a4)] :func:`irfpy.util.nptools.rtp` accepts the latitude option. - [Debug (4.7.2a4)] :func:`irfpy.util.nptools.rtp` accepts the multi dimensional array. * v4.7.1 - [Added (4.7.1a2)] :func:`irfpy.util.nptools.rtp` accepts the primary and secondary axes. - [Added (4.7.1a4,7,17)] :mod:`irfpy.util.skymap` for easy frame conversion of skymap - [Added (4.7.1a6)] :mod:`irfpy.util.sphere` for sphere geometry - [Added (4.7.1a14,15)] :mod:`irfpy.util.surface` and :mod:`irfpy.util.emission` for surface interaction geometry - [Added (4.7.1a19)] :mod:`irfpy.util.iotool` for I/O syntax sugar. Function to get mtime simply. - [Debug (4.7.1a18)] Fix bug in :mod:`irfpy.util.polarframe` due to imcompatible upgrade in Numpy 1.24 * v4.7.0 - [Added (4.6.3a2)] Attempt to use pipenv with ease. - [Refactored (4.6.3a3)] Many deprecated usages were modified. - [Added (4.6.3a4)] :func:`irfpy.util.time_panel.reform2` was implemented. - [Removed (4.6.3a5)] The :mod:`irfpy.util.tk` module was removed from __all__ environment, because import error have been raised for vanilla python environemtn (e.g., venv). - [Changed (4.7.0a2)] The test cases for :mod:`irfpy.util.datacenter` was not thread-safe (test cases could not parallelized). By following the temporary directory creation method to standard python way, the test cases can be run in parallel. * v4.6.2 (2022-08-30) - [Added] Function to calculate the orbital period (:func:`irfpy.util.physics.orbital_period`) - [Added] Function to calculate the orbital semi-major axis (:func:`irfpy.util.physics.orbital_semi_major_axis`) - mm. * v4.6.1 (2022-05-16) - [Added] Script check (:mod:`irfpy.util.check`) - [Fixed] Multi-dimensional calculation in :func:`irfpy.util.utc.mat2dt` - So many changes. Not carefully tracked... See the gitlab :) * v4.6.0 (2020-09-29) - [Changed] Support of change of defintion in time epoch for Matplotlib (v3.3.0). Now works both in older and newer versions. - [Added] :func:`irfpy.util.unitq.asarray` to convert a list of unit-full quantity to a unit-full array. - [Added] :func:`irfpy.util.maxwell.differential_flux_u` and :class:`irfpy.util.maxwell.DifferentialFlux`. - [Added] :mod:`irfpy.util.energyspectrum` support ``nan`` values. - [Fixed] :mod:`irfpy.util.energyspectrum` mass information was not propagated. * v4.5.2 (2020-04-07) - [Added] Mean free path calculations in :mod:`irfpy.util.physics` - [Added] Maxwell distribution integrator is implemented in :func:`irfpy.util.maxwell.flux_integrated`. Integral with limited velocity bound is also supported. * v4.5.1 (2020-04-02) - [Fixed] Test cases for :mod:`irfpy.util.confidence` - [Fixed] Some scripts to adopt to Jenkins new server for irfpy production. * v4.5.0 (2020-03-27) - [Added] Optional docker support - [Changed] :class:`irfpy.util.datacenter.BaseDataCenter` by default returns the copied data, not the reference of the original. This may cause a performance loss, but much safer for further data processing. Due to this change, the version of the irfpy.util should be ``4.5.0``. - [Changed] :mod:`irfpy.util.confidence` revised. - [Fixed] Several update of depending packages (scipy, sympy) made several tests failed. Fixed. * v4.4.16 (2019-06-17) - [Added] Vectorize confident level for low-count rate signal. :mod:`irfpy.util.confidence` * v4.4.15 (2019-06-06) - [Added] Confident level for low-count rate signal. :mod:`irfpy.util.confidence` - [Added] Log information for :class:`irfpy.util.ringcache.RingCache` - [Added] Histogram in polar coordinate (:class:`irfpy.util.polarframe.RegularGridContainer`) support the getter method. - [Fixed] Wrong behavior of funcions in :mod:`irfpy.util.span` * v4.4.14 (2019-03-13) - [Added] A new functionality of finding nearest data's index in an array. :func:`irfpy.util.nptools.nearest_index` and other two relevant functions. - [Added] New method to return linear interpolation in the time series data (:meth:`irfpy.util.timeseries.ScalarSeries.linear_interpolate`) - [Added] New method to calculate the xyz from lonlat (:meth:`irfpy.util.nptools.lonlat2xyz`) - [Added] New class of :class:`irfpy.util.ringcache.RingCache` - [Added] Tests for :mod:`irfpy.util.energyspectra`. - [Document] Add document. * v4.4.13 (2018-10-31) - [Changed] Algorithm calculating the differential flux for Maxwellian :meth:`irfpy.util.energyspectrum.maxwellDifferentialFluxGrid` was changed for better performance and for better precision. - [Added] Differential flux -> pressure calculation confirmed :meth:`irfpy.util.energyspectrum.DifferentialFluxGrid.pressure_tensor`. - [Added] Euler angle class and some functionality, :class:`irfpy.util.eulerangle.EulerAngleZXZ`. - [Added] Differential flux in log scale. - :class:`irfpy.util.maxwell.LnDifferentialFlux` - :class:`irfpy.util.energyspectrum.LogDifferentialFluxGrid` - :func:`irfpy.util.energyspectrum.maxwellLogDifferentialFluxGrid` - [Added] Integrator is implemented for :class:`irfpy.util.polarframe.RegularGridVolumeContainer`. - [Added] :meth:`irfpy.util.nptools.trim_epsilon` to trim the very small floating point (usually due to numerical errors). * v4.4.12 (2018-09-25) - [Added] __str__() support for :class:`irfpy.util.gridsphere.SimpleGridSphere`. - [Added] New function for checking version. :func:`irfpy.util.version.requires`. - [Fixed] :class:`irfpy.util.gridsphere.SimpleGridSphere` raises ValueError when getting nan longitude or latitude. - [Document] Updated (:mod:`irfpy.util.gridsphere`) * v4.4.11 (2018-09-18) - [Added] DataCenter (:mod:`irfpy.util.datacenter`) supports - warning in case no files for given settings. * v4.4.10 (2018-09-14) - [Added] DataCenter (:mod:`irfpy.util.datacenter`) supports - name of the data center - string expression of data center - length as number of files * v4.4.9 (2018-08-23) - [Added] Several functions in intesection module. Vectorized isvisible and etc. - [Added] Several functions in cone module. - [Added] A new global function :func:`irfpy.util.irflab_wrapper.irfpy_init` to load the irfpy modules (all installed, all subpackages). - [Added] A method :meth:`irfpy.util.ringcache.SimpleRingCache.__contains__` - [Fixed] Minor bugs (== None to is None) * v4.4.8 (2018-03-06) - [Fixed] Improvement of :mod:`irfpy.util.datacenter` module. * v4.4.7 - [Added] Support of non-``ObjectSeries`` class object for ``irfpy.util.datacenter.BaseDataCenter.read_file``. - [Added] More functionalities in class:`irfpy.util.datacenter.BaseDataCenter` - [Changed] Raise ``IrfpyException`` if the ``ObjectSeries`` does not contain any data, instead of ``IndexError``. - [Fixed] Support of no-data in a file for :class:`irfpy.util.timeseriesdb.FazzyDB`. * v4.4.6 (2018-02-20) - [Added] New class :mod:`irfpy.util.timeseries.ObjectSeries` - [Added] New class :mod:`irfpy.util.datacenter.BaseDataCenter` - [Changed] irflab automatically setup logging and irfpy logger * v4.4.5 (2018-02-12) - [Changed] Logging strategy has changed. - [Fixed] numpy 1.14 print format support for doctest. * v4.4.4 (2017-12-14) - [Added] Module for minifloat (Martin Wieser) :mod:`irfpy.util.minifloat` * v4.4.3 (2017-10-25) - [Added] Function to return a list of evenly separated time, :func:`irfpy.util.utc.dtlinspace` - [Added] Function to return the unjumped array :func:`irfpy.util.nptools.unjump_periodic` - [Added] Check if a specific target is visible from a observer with existence of a sphere. :func:`irfpy.util.intersection.isvisible` - [Added] Calculators of escape speed :func:`irfpy.util.physics.escape_speed`. - [Added] Scalar field with domain infinity (returnening nan if out of domain) is added. :class:`ScalarField3DInftyNan` - [Added] Vector field with domain infinity (returnening nan if out of domain) is added. :class:`Vector3dField3DInftyNan` - [Added] :func:`irfpy.util.nptools.rtp` function. - [Added] :func:`irfpy.util.plttools.subplot_coords` and :func:`irfpy.util.plttools.subplot_rect` functions. * v4.4.2 (2017-08-16) - [Added] A new class :class:`irfpy.util.timeseries.TimeStepScalarField3D` - [Added] Infinity field class, :class:`irfpy.util.fields.ScalarField3DInfty` - [Added] 2D scalar field class, :class:`irfpy.util.fields.ScalarField2D` - [Added] 3D field operators, getters, and interpolations (:mod:`irfpy.util.fields`) - [Added] Ballistic module with cartesian position and velocity :class:`irfpy.util.ballistic.Trajector3D`. - [Added] New keyword in :class:`irfpy.util.fields.GridScalarField3D` to allow masked array. - [Added] Ballistic module to calculate the distance and the time as a function of parameter |theta|. - [Added] Relative tolerance support for RKF5 backtracing. - [Added] Kinetic energy calculator extended for proton and electrons. - :func:`irfpy.util.physics.kinetic_energy_proton` - :func:`irfpy.util.physics.kinetic_energy_electron` - [Added] Support of default value for the RC file. - [Fixed] Script tessellate_plot now re-works. - [Document] Sphinx warnings reduced. * v4.4.1 - [Added] Hard sphere collision module (:mod:`irfpy.util.collision`) is added. Some sample files follow in scripts/script_apps170608_collision folder. - [Added] nptools.isascending() and isdescending() function support 0- and 1-size array. - [Added] Time interval module support left-right time - [Changed] ``irflab`` functionality enhanced. - [Changed] irfpy.util.timeseriesdb.Db() had super-inefficient algorithm of inverse lookup. Fixed. - [Document] Many comments improved. * v4.4.0 - **The priority order of the file names for the setup file (:class:`irfpy.util.irfpyrc.Rc`) has been changed non-backward compatible way.** - Start of Windows support (though not well tested). * v4.3.0 - **Critical bug: :class:`irfpy.util.timeseriesdb.DB` fix reslting errors in the inverted conversion. This could affect almost all the database using the :class:`irfpy.util.timeseriesdb.FazzyDB`. It was fixed.** - Intermediate file system helpers. - Compression level support for :func:`irfpy.util.filepairv.filepair`. * v4.2.5 - New functionality of ``from irflab import *`` - New functionality of parameter calculation for plasmas. - New functionality of Kepler motion (theoretical trajectory). - Document update - (dev) irfpy full support * v4.2.4 (2016-08-04) - nptools.min_where and max_where for conditional minimum and maximum. - Debug: tdict.TimeDict.clipped returns zero-size instance if the self is zero-sized. - Debug: Sphinx 1.4 support - Style: Relative import disabled, to be absolute import - Style: Suppress DEBUG information - System: irfpy.irf.se support. * v4.2.3 (2016-01-27) - Improved runge-kutta method. - AIC code. * v4.2.2 (2015-11-13) - Windows support for .irfpyrc - Field functionality. - Gravity potential calculation. * v4.2.1 (2015-07-17) - More functionality in :class:`irfpy.util.tdict.TimeDict`. * v4.2.0 (2015-07-16) - Debug the functionality in :meth:`irfpy.util.tdict.TimeDict.clipped`. - Some cosmetics. * v4.1.3 (2015-05-02) - New functions of :func:`irfpy.util.polarframe.rtp2xyz` and its inverse function. - More methods in :class:`irfpy.util.timeseries.ScalarSeries` and ``Vector3dSeries``. - Documentation and __str__ function for :class:`irfpy.util.timeseriesdb.DB` and ``FuzzyDB``. * v4.1.2 (2015-04-30) - Change module name: :mod:`irfpy.util.fluxtools`. - Change exception classes names: :class:`irfpy.util.exception.IrfpyException`. - Change error classes names: :class:`irfpy.util.exception.IrfpyError`. - Can raise exception for configuration files: :meth:`irfpy.util.irfpyrc.Rc.get`. * v4.1.1 (2015-04-19) - New functionality: Isotropy module - New functionality: nptools.squeeze_right and _left. * v4.1.0 (2015-04-08) - Remove deprecated modules. - Documents significantly updated. - Jenkins related script into bin - * v4.0.0 (2015-04-01) - A major version up. - Namespace changed to ``irfpy`` * v3.1.6 (2015-03-31) - Better documentation. * v3.1.5 (2015-03-31) - Implement :mod:`irfpy.util.likelihood` - Support Maxwell fitting :mod:`irfpy.util.energyspectrum` and :mod:`irfpy.util.fluxtool` * v3.1.4 (2015-03-30) - Improve functionalities in :mod:`irfpy.util.gridsphere` modules. * v3.1.3 (2015-03-26) - Implement energy spectrum, flux related modules. * v3.1.2 (2015-01-26) - New modules related to velocity distribution functions, :mod:`irfpy.util.fluxtool`, :mod:`irfpy.util.vdf` - Refactoring of :mod:`irfpy.util.energyspectrum` - New functions in :mod:`irfpy.util.physics` handking pressure and temperature. - New function in :mod:`irfpy.util.utc`, to handle date string to matplotlib number conversion. - Better documentation * v3.1.1 (2015-01-12) - Buildout system update. Now wheel should be installed globally. - irfpy template v3.0.7 standard. * v3.1.0 (2015-01-12) - Refactor :class:`irfpy.util.energyspectrum.DifferentialFluxGrid`. Now only the ascending orders are allowed. - New module, :mod:`irfpy.util.polarframe` to handle polar system. - Add functionalies. :mod:`irfpy.util.nptools`. Ascending/Descending checkers. * v3.0.9 (2015-01-12) - New module, :mod:`irfpy.util.nptools` for numpy helper tools. - New functionalities (3-D visualization/maxwell generator) for :mod:`irfpy.util.energyspectrum`. * v3.0.8 (2014-11-30) - trange and dtrange functionality in :mod:`irfpy.util.utc`. * v3.0.7 (2014-11-21) - Moment calculation in general way with energy spectrum class. :mod:`irfpy.util.energyspectrum`. - Confirm :func:`irfpy.util.time_panel.reform` works with datetime objects. - Documentation in :mod:`irfpy.util.leapflog` * v3.0.6 (2014-10-15) - Implement :mod:`irfpy.util.kappa` module. - Add integral along dipole field (:mod:`irfpy.util.dipole`) - Fix error in :mod:`irfpy.util.tesseratedsphere` module. * v3.0.5 (2014-08-08) - Implement :mod:`irfpy.util.filepairv` module. - Deprecate :mod:`irfpy.util.filepair` module. * v3.0.4 (2014-07-09) - Implementation of :mod:`irfpy.util.tdict` module - Refactor of :mod:`irfpy.util.timeseriesdb`. * v3.0.3 (2014-06-22) - Debug in :mod:`irfpy.util.timeseriesdb` to get range filenames. * v3.0.2 (2014-06-22) - Further implementation in :mod:`irfpy.util.timeseriesdb` * v3.0.1 (2014-06-20) - New class for fazzy database (:class:`irfpy.util.timeseriesdb.FazzyDB`) * v3.0.0 (2014-05-28) - Python3 support (only) - Clear license by APL - Many functionality change... * v2.5 (2013-12-24) - :mod:`irfpy.util.constant` module support unit-full and -less values. - :mod:`irfpy.util.filepair` module support non-gziped plain file version. - New module :mod:`irfpy.util.options`. - New modules related to special relativistics. - :mod:`irfpy.util.lorenztrans` - :mod:`irfpy.util.sprel` - New modules related to spectrum - :mod:`irfpy.util.planck`. - :mod:`irfpy.util.solarspectra`. - In script/snippet folder. - :mod:`irfpy.util.maxwell` module includes values on grids generator. - New module for sensor table implementation, :mod:`irfpy.util.sensortable`. - New module supporting TK and irfpy GUI framework. :mod:`irfpy.util.tk`. - Extend the :mod:`irfpy.util.formula` to be :mod:`irfpy.util.physics`. - API of the unit changed to quantities, and :mod:`irfpy.util.unitq`. - Script related to negative ions. - Script related to LTSV. - Vector related modules are deprecated. (outer, norm, etc.) - Coverage support - Preparation for Python3 support (classic integer division removed) - Documentation * v2.4 (2013-05-26) - Add :mod:`irfpy.util.datafile` module for irfpy-standard simple data file system. - Add :mod:`irfpy.util.filepair` module for original-cache data file pair system. - Add :mod:`irfpy.util.streamline` for stream line integration (vector field). - Add :mod:`irfpy.util.dipole` module for dipole-related calculation. - Add :mod:`irfpy.util.fields` module for field (scalar/vector). - Add :mod:`irfpy.util.graminan` for graminan. - Add :mod:`irfpy.util.keplernumeric` for Kepler motion. - Add :mod:`irfpy.util.leapflog` for leapflog integration. - Add :mod:`irfpy.util.quaternion` for quaternion. - Add :mod:`irfpy.util.span` for utilities on span/interval. - Add :mod:`irfpy.util.sputtering` for sputtering related functions. - Add :mod:`irfpy.util.with_context` for functionality related to with-statement. - Add :meth:`irfpy.util.maxwell.flux_precip` to calculate precipitation flux. - Update :mod:`irfpy.util.timeseries`. - Update :mod:`irfpy.util.gridsphere`. Performance improvement. - Add :meth:`irfpy.util.maxwell.flux_precip`. - New deploy/installation system using buildout/bootstrap.py and fab. * v2.3 (2012-08-09) - Add :func:`irfpy.util.utc.dt2mat` to convert to matlab time. - Add :mod:`irfpy.util.gridsphere`. - Add :func:`irfpy.util.intersection.los_limb_sphere`. - Add :mod:`irfpy.util.triangle2d` for 2-D triangle and polygon. - Add buildout support (preliminary) - Disable support of distutils (setup.py in src/ removed) * v2.2.2 (2012-08-03) - Fix a test case failure for python2.7. * v2.2.1 (2011-12-23) - In v2.2, ``setup.py`` has wrong version number. Fixed. - No other changes from v2.2 * v2.2 (2011-12-23) - New module :mod:`timeseries` to handle time-series floating values. - Sphinx system update. * v2.1 (2011-11-04) - Add third party module, ``unum``, and customized code. - Maxwell distribution refactoring and further development. * v2.0 (2011-08-24) - Add third party module, ``ordereddict``. - PEP8 support * v1.10 (2011-07-29) - Add third party module, ``interval``. - Support using ``nosetests``. - In :mod:`irfpy.util.timeseriesdb`, enable caching sorted key. - Enahnce :mod:`irfpy.util.utc` matlab time support - Improve user interface for :mod:`irfpy.util.julday`. - Add constructor from different type. - Index access to :class:`irfpy.util.julday.JdSeries`. - Add ``datetime.datetime`` list retriever. - ``datetime.datetime`` retriever in :class:`irfpy.util.julday.JdObject`. * v1.9 (2011-04-18) - New feature of timeseries database, useful for separated data file set. - Update sphinx documentation system. - Update unittest script. * v1.8 (2011-03-23) - Implement Rc() class in pyanarc module for general use. - Deprecate explicit use of RcFile() class in pyanarc module. - Add unittest for pyanarc module. - Add domain specification for integralation in bipower module. * v1.7 (2011-02-23) - Knee accessor in bipower module. - Documentation of rc file. * v1.6.4 (2011-02-22) - Quick fix of the version information for v1.6.3. * v1.6.3 (2011-02-22) - Quick fix of the version information for v1.6.2. * v1.6.2 (2011-02-22) - Add module version, but forget to update the version number in module. * v1.6.1 (2011-02-22) - Bi-power fitting only support np.array. * v1.6 (2011-02-08) - Bi-power law support. New module :mod:`irfpy.util.bipower`. * v1.5 and before - Before organizing version log. For developer ------------- A good resource of change log writing can be found at http://keepachangelog.com/en/0.3.0/ Try to use either of [Added] [Changed] [Deprecated] [Removed] [Fixed] [Security].