PySDKit 0.4.41__tar.gz → 0.4.42__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. {pysdkit-0.4.41 → pysdkit-0.4.42}/PKG-INFO +3 -4
  2. {pysdkit-0.4.41 → pysdkit-0.4.42}/PySDKit.egg-info/PKG-INFO +3 -4
  3. {pysdkit-0.4.41 → pysdkit-0.4.42}/PySDKit.egg-info/SOURCES.txt +1 -0
  4. {pysdkit-0.4.41 → pysdkit-0.4.42}/README.md +1 -1
  5. {pysdkit-0.4.41 → pysdkit-0.4.42}/pyproject.toml +3 -3
  6. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/__init__.py +7 -1
  7. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_alif/__init__.py +3 -1
  8. pysdkit-0.4.42/pysdkit/_apmd/__init__.py +6 -0
  9. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_apmd/apmd.py +0 -4
  10. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/__init__.py +1 -3
  11. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/_find_extrema.py +0 -3
  12. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/_prepare_points.py +0 -3
  13. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/_splines.py +0 -3
  14. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/ceemdan.py +1 -3
  15. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/eemd.py +0 -3
  16. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/efd.py +1 -3
  17. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/emd.py +0 -4
  18. pysdkit-0.4.42/pysdkit/_emd/hht/__init__.py +6 -0
  19. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/hht/frequency.py +1 -4
  20. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/hht/hht.py +1 -3
  21. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/memd.py +0 -3
  22. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/remd.py +1 -3
  23. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/semd.py +0 -4
  24. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd/tvf_emd.py +1 -3
  25. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd2d/__init__.py +1 -3
  26. pysdkit-0.4.42/pysdkit/_emd2d/bemd.py +4 -0
  27. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd2d/bmemd.py +0 -4
  28. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_emd2d/emd2d.py +1 -3
  29. pysdkit-0.4.42/pysdkit/_esmd/__init__.py +36 -0
  30. pysdkit-0.4.42/pysdkit/_esmd/esmd.py +638 -0
  31. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_ewt/__init__.py +1 -3
  32. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_ewt/ewt.py +0 -3
  33. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_ewt/ewt2d.py +0 -4
  34. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_faemd/__init__.py +1 -3
  35. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_faemd/extrema.py +1 -4
  36. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_faemd/faemd.py +1 -3
  37. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_faemd/faemd2d.py +1 -3
  38. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_faemd/faemd3d.py +1 -3
  39. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_faemd/filter.py +0 -4
  40. pysdkit-0.4.42/pysdkit/_fmd/__init__.py +6 -0
  41. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_fmd/fmd.py +1 -3
  42. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_fmd/nfmd.py +1 -3
  43. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_gdmd/__init__.py +1 -8
  44. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_gdmd/agncmd.py +1 -4
  45. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_gdmd/gdmd.py +1 -4
  46. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_gdmd/ivgnmd.py +1 -4
  47. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_gdmd/vgnmd.py +1 -4
  48. pysdkit-0.4.42/pysdkit/_hvd/__init__.py +6 -0
  49. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_hvd/hvd.py +1 -3
  50. pysdkit-0.4.42/pysdkit/_itd/__init__.py +6 -0
  51. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_itd/itd.py +1 -3
  52. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_jmd/__init__.py +1 -3
  53. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_jmd/jmd.py +0 -4
  54. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_jmd/mjmd.py +0 -4
  55. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_jmd/sjmd.py +0 -4
  56. pysdkit-0.4.42/pysdkit/_lmd/__init__.py +8 -0
  57. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_lmd/lmd.py +1 -3
  58. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_lmd/rlmd.py +1 -4
  59. pysdkit-0.4.42/pysdkit/_osd/__init__.py +6 -0
  60. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_osd/swd.py +405 -408
  61. pysdkit-0.4.42/pysdkit/_ssa/__init__.py +6 -0
  62. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_ssa/ssa.py +1 -3
  63. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd/__init__.py +1 -3
  64. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd/acmd.py +1 -3
  65. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd/avmd.py +1 -3
  66. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd/ba_acmd.py +1 -3
  67. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd/mvmd.py +1 -3
  68. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd/ovmd.py +0 -4
  69. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd/stvmd.py +0 -4
  70. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd/svmd.py +0 -4
  71. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd/vmd_c.py +1 -3
  72. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd/vmd_f.py +1 -3
  73. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd/vme.py +1 -3
  74. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd2d/__init__.py +1 -3
  75. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd2d/cvmd2d.py +1 -4
  76. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd2d/vmd2d.py +1 -3
  77. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vncmd/__init__.py +1 -3
  78. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vncmd/avncmd.py +0 -4
  79. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vncmd/incmd.py +1 -3
  80. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vncmd/vncmd.py +0 -4
  81. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/data/__init__.py +1 -3
  82. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/data/_add_noise.py +1 -3
  83. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/data/_cube.py +1 -4
  84. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/data/_generator.py +1 -3
  85. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/data/_image.py +1 -4
  86. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/data/_models.py +1 -3
  87. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/data/_test_univariate.py +1 -3
  88. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/data/_time_series.py +1 -4
  89. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/entropy/__init__.py +1 -3
  90. pysdkit-0.4.42/pysdkit/entropy/_approxiamte_entropy.py +6 -0
  91. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/entropy/_permutation_entropy.py +1 -3
  92. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/entropy/_sample_entropy.py +1 -3
  93. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/models/__init__.py +1 -3
  94. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/models/_base.py +1 -3
  95. pysdkit-0.4.42/pysdkit/models/_kmeans.py +4 -0
  96. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/models/_knn.py +1 -3
  97. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/models/_pca.py +1 -3
  98. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/plot/__init__.py +0 -3
  99. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/plot/_fourier_spectra.py +1 -3
  100. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/plot/_functions.py +0 -3
  101. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/plot/_plot_images.py +1 -3
  102. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/plot/_plot_imfs.py +1 -8
  103. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/plot/_plot_signal.py +1 -3
  104. pysdkit-0.4.42/pysdkit/tests/data/__init__.py +4 -0
  105. pysdkit-0.4.42/pysdkit/tests/data/test_generator_cube.py +4 -0
  106. pysdkit-0.4.42/pysdkit/tests/data/test_generator_image.py +4 -0
  107. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/data/test_generator_signal.py +1 -3
  108. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/data/test_generator_univariate_signal.py +1 -3
  109. pysdkit-0.4.42/pysdkit/tests/models/__init__.py +4 -0
  110. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/models/test_knn.py +1 -3
  111. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/models/test_pca.py +1 -3
  112. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/run_all.py +0 -4
  113. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_agncmd.py +1 -4
  114. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_alif.py +1 -1
  115. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_apmd.py +1 -1
  116. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_bmemd.py +1 -1
  117. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_cvmd2d.py +2 -3
  118. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_emd.py +1 -3
  119. pysdkit-0.4.42/pysdkit/tests/test_esmd.py +244 -0
  120. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_ewt.py +1 -3
  121. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_ewt2d.py +1 -3
  122. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_faemd2d.py +3 -1
  123. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_faemd3d.py +3 -1
  124. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_gdmd.py +2 -3
  125. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_ivgnmd.py +2 -3
  126. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_jmd.py +1 -1
  127. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_lmd.py +2 -3
  128. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_moving_decomp.py +1 -3
  129. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_ovmd.py +1 -1
  130. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_rlmd.py +2 -3
  131. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_semd.py +1 -1
  132. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_sjmd.py +1 -1
  133. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_ssa.py +1 -3
  134. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_stvmd.py +1 -3
  135. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_svmd.py +1 -3
  136. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_swd.py +2 -3
  137. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_vgnmd.py +2 -3
  138. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_vmd.py +1 -3
  139. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_vmd2d.py +1 -3
  140. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_vncmd.py +1 -5
  141. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tsa/__init__.py +0 -3
  142. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tsa/_dtw.py +1 -3
  143. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tsa/_moving_decomp.py +1 -3
  144. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tsa/_mstl.py +1 -3
  145. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tsa/_stl.py +1 -3
  146. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/utils/__init__.py +1 -3
  147. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/utils/_correlation.py +1 -4
  148. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/utils/_differ.py +1 -3
  149. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/utils/_function.py +1 -5
  150. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/utils/_hilbert.py +1 -3
  151. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/utils/_instantaneous.py +1 -4
  152. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/utils/_mirror.py +1 -3
  153. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/utils/_process.py +0 -4
  154. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/utils/_smooth1d.py +1 -3
  155. pysdkit-0.4.41/pysdkit/_apmd/__init__.py +0 -8
  156. pysdkit-0.4.41/pysdkit/_emd/hht/__init__.py +0 -8
  157. pysdkit-0.4.41/pysdkit/_emd2d/bemd.py +0 -6
  158. pysdkit-0.4.41/pysdkit/_esmd/__init__.py +0 -6
  159. pysdkit-0.4.41/pysdkit/_esmd/esmd.py +0 -13
  160. pysdkit-0.4.41/pysdkit/_fmd/__init__.py +0 -8
  161. pysdkit-0.4.41/pysdkit/_hvd/__init__.py +0 -8
  162. pysdkit-0.4.41/pysdkit/_itd/__init__.py +0 -8
  163. pysdkit-0.4.41/pysdkit/_lmd/__init__.py +0 -10
  164. pysdkit-0.4.41/pysdkit/_osd/__init__.py +0 -23
  165. pysdkit-0.4.41/pysdkit/_ssa/__init__.py +0 -8
  166. pysdkit-0.4.41/pysdkit/entropy/_approxiamte_entropy.py +0 -8
  167. pysdkit-0.4.41/pysdkit/models/_kmeans.py +0 -6
  168. pysdkit-0.4.41/pysdkit/tests/data/__init__.py +0 -2
  169. pysdkit-0.4.41/pysdkit/tests/data/test_generator_cube.py +0 -6
  170. pysdkit-0.4.41/pysdkit/tests/data/test_generator_image.py +0 -6
  171. pysdkit-0.4.41/pysdkit/tests/models/__init__.py +0 -2
  172. {pysdkit-0.4.41 → pysdkit-0.4.42}/LICENSE +0 -0
  173. {pysdkit-0.4.41 → pysdkit-0.4.42}/PySDKit.egg-info/dependency_links.txt +0 -0
  174. {pysdkit-0.4.41 → pysdkit-0.4.42}/PySDKit.egg-info/requires.txt +0 -0
  175. {pysdkit-0.4.41 → pysdkit-0.4.42}/PySDKit.egg-info/top_level.txt +0 -0
  176. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_alif/alif.py +0 -0
  177. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_alif/data/__init__.py +0 -0
  178. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_alif/data/prefixed_double_filter.npy +0 -0
  179. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_alif/iterative_filtering.py +0 -0
  180. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/_vmd/base.py +0 -0
  181. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/data/texture.txt +0 -0
  182. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/__init__.py +0 -0
  183. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_avncmd.py +0 -0
  184. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_ceemdan.py +0 -0
  185. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_eemd.py +0 -0
  186. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_faemd.py +0 -0
  187. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_itd.py +0 -0
  188. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_mstl.py +0 -0
  189. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/tests/test_stl.py +0 -0
  190. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/utils/_diagnalization.py +0 -0
  191. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/utils/_fft.py +0 -0
  192. {pysdkit-0.4.41 → pysdkit-0.4.42}/pysdkit/utils/_kernel_matrix.py +0 -0
  193. {pysdkit-0.4.41 → pysdkit-0.4.42}/setup.cfg +0 -0
@@ -1,10 +1,9 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PySDKit
3
- Version: 0.4.41
3
+ Version: 0.4.42
4
4
  Summary: A Python library for signal decomposition algorithms with a unified interface.
5
5
  Author: josefinez, Deeksha Manjunath, Yuan Feng, JacktheFowler
6
- Author-email: Whenxuan Wang <wwhenxuan@gmail.com>, RuiZhe Wang <3133986068@qq.com>, WenTong Zhao <23049200290@stu.xidian.edu.cn>
7
- Maintainer-email: Whenxuan Wang <wwhenxuan@gmail.com>
6
+ Author-email: Whenxuan Wang <wwhenxuan@gmail.com>, RuiZhe Wang <3133986068@qq.com>, Rongkun Zhu <mrpigzrk@gmail.com>, Kai Wu <kwu@xidian.edu.cn>, Lei Wang <wang_lei4759@163.com>, WenTong Zhao <23049200290@stu.xidian.edu.cn>
8
7
  License: MIT License
9
8
 
10
9
  Copyright (c) 2019 Whenxuan Wang
@@ -189,7 +188,7 @@ plot_IMFs_amplitude_spectra(IMFs, smooth="exp") # use exp smooth
189
188
  | [`JMD`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/_jmd/jmd.py) (Jump Plus AM-FM Mode Decomposition) | [[paper]](https://arxiv.org/abs/2407.07800) | [[code]](https://www.mathworks.com/matlabcentral/fileexchange/169388-jump-plus-am-fm-mode-decomposition-jmd?s_tid=prof_contriblnk) | ️✔️ |
190
189
  | [`MJMD`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/_jmd/mjmd.py) (Multivariate Jump Plus AM-FM Mode Decomposition) | [[paper]](https://arxiv.org/abs/2407.07800) | [[code]](https://www.mathworks.com/matlabcentral/fileexchange/169393-multivariate-jump-plus-am-fm-mode-decomposition-mjmd?s_tid=prof_contriblnk) | ✔️ |
191
190
  | [`SJMD`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/_jmd/sjmd.py) / `SMJMD` (Successive Jump and Mode Decomposition) | [[paper]](https://arxiv.org/abs/2504.08453) | [[code]]() | ✔️ |
192
- | [`ESMD`]() (Extreme-Point Symmetric Mode Decomposition) | [[paper]](https://arxiv.org/abs/1303.6540) | [[code]](https://github.com/WuShichao/esmd) | ✖️ |
191
+ | [`ESMD`]() (Extreme-Point Symmetric Mode Decomposition) | [[paper]](https://arxiv.org/abs/1303.6540) | [[code]](https://github.com/WuShichao/esmd) | ✔️ |
193
192
  | [`STNBMD`]() (Short-Time Narrow-Band Mode Decomposition) | [[paper]](https://www.sciencedirect.com/science/article/pii/S0022460X16002443?via%3Dihub) | [[code]](https://ww2.mathworks.cn/matlabcentral/fileexchange/56226-short-time-narrow-band-mode-decomposition-stnbmd-toolbox) | ✖️ |
194
193
  | [`SWD`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/_osd/swd.py) (Swarm Decomposition) | [[paper]](https://doi.org/10.1016/j.sigpro.2016.09.004) | [[code]](https://github.com/gkaposto/Swarm-Decomposition) | ✔️ |
195
194
  | [`STL`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/tsa/_stl.py) (Seasonal-Trend decomposition using LOESS) | [[paper]](https://www.nniiem.ru/file/news/2016/stl-statistical-model.pdf) | [[code]](https://www.statsmodels.org/stable/examples/notebooks/generated/stl_decomposition.html) | ✔️ |
@@ -1,10 +1,9 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PySDKit
3
- Version: 0.4.41
3
+ Version: 0.4.42
4
4
  Summary: A Python library for signal decomposition algorithms with a unified interface.
5
5
  Author: josefinez, Deeksha Manjunath, Yuan Feng, JacktheFowler
6
- Author-email: Whenxuan Wang <wwhenxuan@gmail.com>, RuiZhe Wang <3133986068@qq.com>, WenTong Zhao <23049200290@stu.xidian.edu.cn>
7
- Maintainer-email: Whenxuan Wang <wwhenxuan@gmail.com>
6
+ Author-email: Whenxuan Wang <wwhenxuan@gmail.com>, RuiZhe Wang <3133986068@qq.com>, Rongkun Zhu <mrpigzrk@gmail.com>, Kai Wu <kwu@xidian.edu.cn>, Lei Wang <wang_lei4759@163.com>, WenTong Zhao <23049200290@stu.xidian.edu.cn>
8
7
  License: MIT License
9
8
 
10
9
  Copyright (c) 2019 Whenxuan Wang
@@ -189,7 +188,7 @@ plot_IMFs_amplitude_spectra(IMFs, smooth="exp") # use exp smooth
189
188
  | [`JMD`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/_jmd/jmd.py) (Jump Plus AM-FM Mode Decomposition) | [[paper]](https://arxiv.org/abs/2407.07800) | [[code]](https://www.mathworks.com/matlabcentral/fileexchange/169388-jump-plus-am-fm-mode-decomposition-jmd?s_tid=prof_contriblnk) | ️✔️ |
190
189
  | [`MJMD`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/_jmd/mjmd.py) (Multivariate Jump Plus AM-FM Mode Decomposition) | [[paper]](https://arxiv.org/abs/2407.07800) | [[code]](https://www.mathworks.com/matlabcentral/fileexchange/169393-multivariate-jump-plus-am-fm-mode-decomposition-mjmd?s_tid=prof_contriblnk) | ✔️ |
191
190
  | [`SJMD`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/_jmd/sjmd.py) / `SMJMD` (Successive Jump and Mode Decomposition) | [[paper]](https://arxiv.org/abs/2504.08453) | [[code]]() | ✔️ |
192
- | [`ESMD`]() (Extreme-Point Symmetric Mode Decomposition) | [[paper]](https://arxiv.org/abs/1303.6540) | [[code]](https://github.com/WuShichao/esmd) | ✖️ |
191
+ | [`ESMD`]() (Extreme-Point Symmetric Mode Decomposition) | [[paper]](https://arxiv.org/abs/1303.6540) | [[code]](https://github.com/WuShichao/esmd) | ✔️ |
193
192
  | [`STNBMD`]() (Short-Time Narrow-Band Mode Decomposition) | [[paper]](https://www.sciencedirect.com/science/article/pii/S0022460X16002443?via%3Dihub) | [[code]](https://ww2.mathworks.cn/matlabcentral/fileexchange/56226-short-time-narrow-band-mode-decomposition-stnbmd-toolbox) | ✖️ |
194
193
  | [`SWD`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/_osd/swd.py) (Swarm Decomposition) | [[paper]](https://doi.org/10.1016/j.sigpro.2016.09.004) | [[code]](https://github.com/gkaposto/Swarm-Decomposition) | ✔️ |
195
194
  | [`STL`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/tsa/_stl.py) (Seasonal-Trend decomposition using LOESS) | [[paper]](https://www.nniiem.ru/file/news/2016/stl-statistical-model.pdf) | [[code]](https://www.statsmodels.org/stable/examples/notebooks/generated/stl_decomposition.html) | ✔️ |
@@ -121,6 +121,7 @@ pysdkit/tests/test_ceemdan.py
121
121
  pysdkit/tests/test_cvmd2d.py
122
122
  pysdkit/tests/test_eemd.py
123
123
  pysdkit/tests/test_emd.py
124
+ pysdkit/tests/test_esmd.py
124
125
  pysdkit/tests/test_ewt.py
125
126
  pysdkit/tests/test_ewt2d.py
126
127
  pysdkit/tests/test_faemd.py
@@ -135,7 +135,7 @@ plot_IMFs_amplitude_spectra(IMFs, smooth="exp") # use exp smooth
135
135
  | [`JMD`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/_jmd/jmd.py) (Jump Plus AM-FM Mode Decomposition) | [[paper]](https://arxiv.org/abs/2407.07800) | [[code]](https://www.mathworks.com/matlabcentral/fileexchange/169388-jump-plus-am-fm-mode-decomposition-jmd?s_tid=prof_contriblnk) | ️✔️ |
136
136
  | [`MJMD`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/_jmd/mjmd.py) (Multivariate Jump Plus AM-FM Mode Decomposition) | [[paper]](https://arxiv.org/abs/2407.07800) | [[code]](https://www.mathworks.com/matlabcentral/fileexchange/169393-multivariate-jump-plus-am-fm-mode-decomposition-mjmd?s_tid=prof_contriblnk) | ✔️ |
137
137
  | [`SJMD`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/_jmd/sjmd.py) / `SMJMD` (Successive Jump and Mode Decomposition) | [[paper]](https://arxiv.org/abs/2504.08453) | [[code]]() | ✔️ |
138
- | [`ESMD`]() (Extreme-Point Symmetric Mode Decomposition) | [[paper]](https://arxiv.org/abs/1303.6540) | [[code]](https://github.com/WuShichao/esmd) | ✖️ |
138
+ | [`ESMD`]() (Extreme-Point Symmetric Mode Decomposition) | [[paper]](https://arxiv.org/abs/1303.6540) | [[code]](https://github.com/WuShichao/esmd) | ✔️ |
139
139
  | [`STNBMD`]() (Short-Time Narrow-Band Mode Decomposition) | [[paper]](https://www.sciencedirect.com/science/article/pii/S0022460X16002443?via%3Dihub) | [[code]](https://ww2.mathworks.cn/matlabcentral/fileexchange/56226-short-time-narrow-band-mode-decomposition-stnbmd-toolbox) | ✖️ |
140
140
  | [`SWD`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/_osd/swd.py) (Swarm Decomposition) | [[paper]](https://doi.org/10.1016/j.sigpro.2016.09.004) | [[code]](https://github.com/gkaposto/Swarm-Decomposition) | ✔️ |
141
141
  | [`STL`](https://github.com/wwhenxuan/PySDKit/blob/main/pysdkit/tsa/_stl.py) (Seasonal-Trend decomposition using LOESS) | [[paper]](https://www.nniiem.ru/file/news/2016/stl-statistical-model.pdf) | [[code]](https://www.statsmodels.org/stable/examples/notebooks/generated/stl_decomposition.html) | ✔️ |
@@ -12,15 +12,15 @@ requires-python = ">=3.8"
12
12
  authors = [
13
13
  { name = "Whenxuan Wang", email = "wwhenxuan@gmail.com" },
14
14
  { name = "RuiZhe Wang", email = "3133986068@qq.com" },
15
+ { name = "Rongkun Zhu", email = "mrpigzrk@gmail.com"},
16
+ { name = "Kai Wu", email = "kwu@xidian.edu.cn"},
17
+ { name = "Lei Wang", email = "wang_lei4759@163.com"},
15
18
  { name = "josefinez" },
16
19
  { name = "Deeksha Manjunath" },
17
20
  { name = "Yuan Feng" },
18
21
  { name = "WenTong Zhao", email = "23049200290@stu.xidian.edu.cn" },
19
22
  { name = "JacktheFowler" },
20
23
  ]
21
- maintainers = [
22
- { name = "Whenxuan Wang", email = "wwhenxuan@gmail.com" },
23
- ]
24
24
  keywords = [
25
25
  "signal decomposition",
26
26
  "signal processing",
@@ -2,7 +2,7 @@
2
2
  A Python library for signal decomposition algorithms.
3
3
  """
4
4
 
5
- __version__ = "0.4.41"
5
+ __version__ = "0.4.42"
6
6
 
7
7
  # Empirical Mode Decomposition
8
8
  from ._emd import EMD
@@ -43,6 +43,9 @@ from ._hvd import HVD
43
43
  # Intrinsic Time-Scale Decomposition
44
44
  from ._itd import ITD
45
45
 
46
+ # Extreme-Point Symmetric Mode Decomposition
47
+ from ._esmd import ESMD, esmd
48
+
46
49
  # Local Mean Decomposition
47
50
  from ._lmd import LMD
48
51
 
@@ -178,6 +181,7 @@ Empirical Mode Decomposition 2D for images | EMD2D
178
181
  Bidimensional Multivariate EMD | BMEMD
179
182
  Hilbert Vibration Decomposition | HVD
180
183
  Intrinsic Time-Scale Decomposition | ITD
184
+ Extreme-Point Symmetric Mode Decomposition | ESMD
181
185
  Local Mean Decomposition | LMD
182
186
  Robust Local Mean Decomposition | RLMD
183
187
  Singular Spectral Analysis | SSA
@@ -230,6 +234,8 @@ __all__ = [
230
234
  "BMEMD",
231
235
  "HVD",
232
236
  "ITD",
237
+ "ESMD",
238
+ "esmd",
233
239
  "LMD",
234
240
  "RLMD",
235
241
  "SSA",
@@ -1,5 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
- """Adaptive Local Iterative Filtering (ALIF) package."""
2
+ """
3
+ alif package exports.
4
+ """
3
5
 
4
6
  from .alif import ALIF
5
7
  from .iterative_filtering import IterativeFiltering
@@ -0,0 +1,6 @@
1
+ # -*- coding: utf-8 -*-
2
+ """
3
+ Adaptive Polymorphic Mode Decomposition (APMD).
4
+ """
5
+
6
+ from .apmd import APMD
@@ -1,9 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/07/20
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
6
-
7
3
  Adaptive Polymorphic Mode Decomposition (APMD).
8
4
 
9
5
  Huang Z. and Liu J., Digital Signal Processing, 161:104913, 2025.
@@ -1,8 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/02/03 18:36:18
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
3
+ Empirical Mode Decomposition family (EMD, EEMD, CEEMDAN, …).
6
4
  """
7
5
 
8
6
  from ._splines import akima, cubic, pchip, cubic_hermite, cubic_spline_3pts
@@ -1,8 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on Sat Mar 5 21:38:26 2024
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
6
3
  The following code is mainly used to find extreme points in the EMD algorithm
7
4
 
8
5
  Code taken from https://github.com/laszukdawid/PyEMD/blob/master/PyEMD/EMD.py
@@ -1,8 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on Sat Mar 8 22:53:11 2024
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
6
3
  The following code is mainly used to Performs extrapolation on edges by adding extra extrema in the EMD algorithm
7
4
 
8
5
  Code taken from https://github.com/laszukdawid/PyEMD/blob/master/PyEMD/EMD.py
@@ -1,8 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on Sat Mar 5 22:09:45 2024
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
6
3
  The following code is mainly used to find extreme points in the EMD algorithm
7
4
  """
8
5
 
@@ -1,8 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/02/04 15:19:08
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
3
+ Complete Ensemble Empirical Mode Decomposition with Adaptive Noise
6
4
  """
7
5
 
8
6
  import numpy as np
@@ -1,8 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/02/03 18:36:18
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
6
3
  Code taken from https://github.com/laszukdawid/PyEMD/blob/master/PyEMD/EMD.py
7
4
  """
8
5
 
@@ -1,8 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/04/16 22:51:55
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
3
+ Empirical Fourier Decomposition
6
4
  """
7
5
 
8
6
  import numpy as np
@@ -1,9 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on Sat Mar 4 21:58:54 2024
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
6
-
7
3
  Code taken from https://github.com/laszukdawid/PyEMD/blob/master/PyEMD/EMD.py
8
4
  """
9
5
 
@@ -0,0 +1,6 @@
1
+ # -*- coding: utf-8 -*-
2
+ """
3
+ Hilbert–Huang Transform helpers.
4
+ """
5
+
6
+ from .hht import HHT
@@ -1,9 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/02/06 10:30:01
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
6
- Hilbert-transform for demodulation
3
+ Perform Hilbert transform along the last axis of input signal.
7
4
  """
8
5
 
9
6
  import numpy as np
@@ -1,8 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/02/06 10:29:05
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
3
+ Perform Hilbert-Huang transform on the input signal
6
4
  """
7
5
 
8
6
  import numpy as np
@@ -1,8 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/02/04 13:10:33
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
6
3
  We refactored from https://github.com/mariogrune/MEMD-Python-
7
4
  """
8
5
 
@@ -1,8 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/02/05 13:15:49
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
3
+ Robust Empirical Mode Decomposition
6
4
  """
7
5
 
8
6
  import numpy as np
@@ -1,9 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2026/08/01
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
6
-
7
3
  Serial-EMD (SEMD): fast multi-signal EMD via 1-D serialization.
8
4
 
9
5
  Zhang, J., Feng, F., Marti-Puig, P., Caiafa, C. F., Sun, Z., Duan, F.,
@@ -1,8 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/02/01 22:06:04
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
3
+ Time Varying Filter based Empirical Mode Decomposition
6
4
  """
7
5
 
8
6
  import warnings
@@ -1,8 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/02/03 18:36:49
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
3
+ Bidimensional EMD variants (EMD2D, BMEMD, …).
6
4
  """
7
5
 
8
6
  from .emd2d import EMD2D
@@ -0,0 +1,4 @@
1
+ # -*- coding: utf-8 -*-
2
+ """
3
+ Bemd module.
4
+ """
@@ -1,9 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/02/05 13:18:18
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
6
-
7
3
  Bidimensional Multivariate Empirical Mode Decomposition (BMEMD)
8
4
 
9
5
  Xia, Y., Zhang, B., Pei, W., and Mandic, D. P. (2019).
@@ -1,8 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  """
3
- Created on 2025/02/04 13:13:52
4
- @author: Whenxuan Wang
5
- @email: wwhenxuan@gmail.com
3
+ **Empirical Mode Decomposition 2D** for images data.
6
4
  """
7
5
 
8
6
  import numpy as np
@@ -0,0 +1,36 @@
1
+ # -*- coding: utf-8 -*-
2
+ """
3
+ Extreme-Point Symmetric Mode Decomposition (ESMD).
4
+ """
5
+
6
+ from .esmd import (
7
+ ESMD,
8
+ esmd,
9
+ find_extrema,
10
+ mean_curve,
11
+ sift_mode,
12
+ decompose_fixed_sift,
13
+ variance_ratio,
14
+ scan_variance_ratios,
15
+ instantaneous_amplitude,
16
+ instantaneous_frequency,
17
+ total_energy,
18
+ make_esmd_example3,
19
+ load_wind_demo,
20
+ )
21
+
22
+ __all__ = [
23
+ "ESMD",
24
+ "esmd",
25
+ "find_extrema",
26
+ "mean_curve",
27
+ "sift_mode",
28
+ "decompose_fixed_sift",
29
+ "variance_ratio",
30
+ "scan_variance_ratios",
31
+ "instantaneous_amplitude",
32
+ "instantaneous_frequency",
33
+ "total_energy",
34
+ "make_esmd_example3",
35
+ "load_wind_demo",
36
+ ]