PyPyNum 1.12.1__tar.gz → 1.13.1__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.
- {pypynum-1.12.1 → pypynum-1.13.1}/PKG-INFO +90 -45
- {pypynum-1.12.1 → pypynum-1.13.1}/PyPyNum.egg-info/PKG-INFO +90 -45
- {pypynum-1.12.1 → pypynum-1.13.1}/PyPyNum.egg-info/SOURCES.txt +1 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/Matrix.py +3 -3
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/README.md +89 -44
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/__init__.py +2 -1
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/equations.py +4 -5
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/errors.py +4 -0
- pypynum-1.13.1/pypynum/interp.py +118 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/maths.py +27 -18
- pypynum-1.13.1/pypynum/multiprec.py +575 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/polynomial.py +76 -9
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/random.py +1 -1
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/test.py +0 -11
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/tools.py +33 -31
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/types.py +1 -1
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/zh_cn.py +46 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/setup.py +1 -1
- pypynum-1.12.1/pypynum/multiprec.py +0 -303
- {pypynum-1.12.1 → pypynum-1.13.1}/PyPyNum.egg-info/dependency_links.txt +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/PyPyNum.egg-info/top_level.txt +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/Array.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/FourierT.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/Geometry.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/Graph.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/Group.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/Logic.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/NeuralN.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/PyPyNum.png +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/Quaternion.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/Symbolics.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/Tensor.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/Tree.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/Vector.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/chars.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/cipher.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/confs.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/constants.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/dists.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/file.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/image.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/numbers.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/plotting.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/pprinters.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/regression.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/sequence.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/stattest.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/this.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/ufuncs.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/pypynum/utils.py +0 -0
- {pypynum-1.12.1 → pypynum-1.13.1}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: PyPyNum
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.13.1
|
|
4
4
|
Summary: PyPyNum is a Python library for math & science computations, covering algebra, calculus, stats, with data structures like matrices, vectors, tensors. It offers numerical tools, programs, and supports computational ops, functions, processing, simulation, & visualization in data science & ML, crucial for research, engineering, & data processing.
|
|
5
5
|
Home-page: https://github.com/PythonSJL/PyPyNum
|
|
6
6
|
Author: Shen Jiayi
|
|
@@ -234,7 +234,7 @@ processing.</font><font color = red>[Python>=3.4]</font>
|
|
|
234
234
|
[](https://pepy.tech/project/pypynum)
|
|
235
235
|
[](https://pepy.tech/project/pypynum)
|
|
236
236
|
|
|
237
|
-
## Version -> 1.
|
|
237
|
+
## Version -> 1.13.1 | PyPI -> https://pypi.org/project/PyPyNum/ | Gitee -> https://www.gitee.com/PythonSJL/PyPyNum | GitHub -> https://github.com/PythonSJL/PyPyNum
|
|
238
238
|
|
|
239
239
|

|
|
240
240
|
|
|
@@ -251,8 +251,8 @@ The logo cannot be displayed on PyPI, it can be viewed in Gitee or GitHub.
|
|
|
251
251
|
supports other types of Python interpreters
|
|
252
252
|
+ 不定期更新版本,增加更多实用功能
|
|
253
253
|
+ Update versions periodically to add more practical features
|
|
254
|
-
+ 如需联系,请添加QQ号2261748025
|
|
255
|
-
+ If you need to contact, please add QQ number 2261748025 (Py𝙿𝚢𝚝𝚑𝚘𝚗-水晶兰)
|
|
254
|
+
+ 如需联系,请添加QQ号2261748025(Py𝙿𝚢𝚝𝚑𝚘𝚗-水晶兰),或者通过我的邮箱2261748025@qq.com
|
|
255
|
+
+ If you need to contact, please add QQ number 2261748025 (Py𝙿𝚢𝚝𝚑𝚘𝚗-水晶兰), or through my email 2261748025@qq.com
|
|
256
256
|
|
|
257
257
|
### 子模块的名称与功能简介
|
|
258
258
|
|
|
@@ -274,6 +274,7 @@ The logo cannot be displayed on PyPI, it can be viewed in Gitee or GitHub.
|
|
|
274
274
|
| `pypynum.Graph` | 图论算法 Graph Theory Algorithm |
|
|
275
275
|
| `pypynum.Group` | 群论算法 Group Theory Algorithm |
|
|
276
276
|
| `pypynum.image` | 图像处理 Image processing |
|
|
277
|
+
| `pypynum.interp` | 数据插值 Data Interpolation |
|
|
277
278
|
| `pypynum.Logic` | 逻辑电路设计 Logic circuit design |
|
|
278
279
|
| `pypynum.maths` | 通用数学函数 General mathematical functions |
|
|
279
280
|
| `pypynum.Matrix` | 矩阵运算 Matrix operation |
|
|
@@ -338,22 +339,48 @@ Python interpreter and run it!
|
|
|
338
339
|
```
|
|
339
340
|
!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
|
|
340
341
|
|
|
341
|
-
|
|
342
|
+
修正了MPComplex的错误并且新增了部分用
|
|
343
|
+
于计算三角函数的方法
|
|
342
344
|
|
|
343
|
-
|
|
345
|
+
Corrected errors in MPComplex
|
|
346
|
+
and added some methods for
|
|
347
|
+
calculating trigonometric
|
|
348
|
+
functions
|
|
344
349
|
|
|
345
350
|
!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
|
|
346
351
|
|
|
347
|
-
|
|
352
|
+
增加了levenshtein_distance函数
|
|
348
353
|
|
|
349
|
-
|
|
354
|
+
Added levenshtein_distance function
|
|
350
355
|
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
356
|
+
|
|
357
|
+
Help on function levenshtein_distance in module pypynum.tools:
|
|
358
|
+
|
|
359
|
+
levenshtein_distance(s1: str, s2: str) -> int
|
|
360
|
+
Introduction
|
|
361
|
+
==========
|
|
362
|
+
Calculate the Levenshtein distance between two strings.
|
|
363
|
+
|
|
364
|
+
The Levenshtein distance is a measure of the difference between two strings. It is defined as the minimum number
|
|
365
|
+
of single-character edits (i.e., insertions, deletions or substitutions) required to change one string into the
|
|
366
|
+
other.
|
|
367
|
+
|
|
368
|
+
Example
|
|
369
|
+
==========
|
|
370
|
+
>>> levenshtein_distance("kitten", "sitting")
|
|
371
|
+
3
|
|
372
|
+
>>>
|
|
373
|
+
:param s1: First string to compare.
|
|
374
|
+
:param s2: Second string to compare.
|
|
375
|
+
:return: The Levenshtein distance between the two strings.
|
|
376
|
+
|
|
377
|
+
!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
|
|
378
|
+
|
|
379
|
+
注意:以后的版本中的自述文件将更改为纯英文
|
|
380
|
+
|
|
381
|
+
Attention: The self description
|
|
382
|
+
file in future versions will be
|
|
383
|
+
changed to pure English
|
|
357
384
|
|
|
358
385
|
!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
|
|
359
386
|
```
|
|
@@ -594,6 +621,13 @@ PyPyNum
|
|
|
594
621
|
│ │ └── PNG(object)/__init__(self: Any) -> None
|
|
595
622
|
│ └── FUNCTION
|
|
596
623
|
│ └── crc(data: Any, length: Any, init: Any, xor: Any) -> Any
|
|
624
|
+
├── interp
|
|
625
|
+
│ ├── CLASS
|
|
626
|
+
│ └── FUNCTION
|
|
627
|
+
│ ├── bicubic(x: Any) -> Any
|
|
628
|
+
│ ├── contribute(src: Any, x: Any, y: Any, channels: Any) -> Any
|
|
629
|
+
│ ├── interp1d(data: typing.Union[list, tuple], length: int) -> list
|
|
630
|
+
│ └── interp2d(src: Any, new_height: Any, new_width: Any, channels: Any, round_res: Any, min_val: Any, max_val: Any) -> Any
|
|
597
631
|
├── maths
|
|
598
632
|
│ ├── CLASS
|
|
599
633
|
│ └── FUNCTION
|
|
@@ -630,7 +664,7 @@ PyPyNum
|
|
|
630
664
|
│ ├── csch(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
631
665
|
│ ├── cumprod(lst: typing.Union[list, tuple]) -> list
|
|
632
666
|
│ ├── cumsum(lst: typing.Union[list, tuple]) -> list
|
|
633
|
-
│ ├── deriv(f: Any, x:
|
|
667
|
+
│ ├── deriv(f: Any, x: float, h: float, method: str, args: Any, kwargs: Any) -> Any
|
|
634
668
|
│ ├── erf(x: typing.Union[int, float]) -> float
|
|
635
669
|
│ ├── exgcd(a: int, b: int) -> tuple
|
|
636
670
|
│ ├── exp(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
@@ -682,21 +716,28 @@ PyPyNum
|
|
|
682
716
|
│ └── zeta(alpha: typing.Union[int, float, complex]) -> typing.Union[int, float, complex]
|
|
683
717
|
├── multiprec
|
|
684
718
|
│ ├── CLASS
|
|
719
|
+
│ │ └── MPComplex(object)/__init__(self: Any, real: Any, imag: Any, sigfigs: Any) -> Any
|
|
685
720
|
│ └── FUNCTION
|
|
721
|
+
│ ├── _remove_trailing_zeros(value: typing.Any) -> str
|
|
722
|
+
│ ├── _setprec(sigfigs: int) -> Any
|
|
723
|
+
│ ├── asmpc(real: typing.Union[int, float, str, decimal.Decimal, complex, pypynum.multiprec.MPComplex], imag: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> pypynum.multiprec.MPComplex
|
|
686
724
|
│ ├── frac2dec(frac: fractions.Fraction, sigfigs: int) -> decimal.Decimal
|
|
687
|
-
│ ├──
|
|
688
|
-
│ ├──
|
|
689
|
-
│ ├──
|
|
690
|
-
│ ├──
|
|
725
|
+
│ ├── mp_acos(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
726
|
+
│ ├── mp_asin(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
727
|
+
│ ├── mp_atan(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
728
|
+
│ ├── mp_atan2(y: typing.Union[int, float, str, decimal.Decimal], x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
729
|
+
│ ├── mp_cos(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
730
|
+
│ ├── mp_cosh(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
691
731
|
│ ├── mp_e(sigfigs: int, method: str) -> decimal.Decimal
|
|
692
|
-
│ ├── mp_exp(x: typing.Union[int, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
|
|
693
|
-
│ ├──
|
|
694
|
-
│ ├──
|
|
732
|
+
│ ├── mp_exp(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
|
|
733
|
+
│ ├── mp_fresnel_c(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
734
|
+
│ ├── mp_fresnel_s(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
735
|
+
│ ├── mp_ln(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
|
|
736
|
+
│ ├── mp_log(x: typing.Union[int, float, str, decimal.Decimal], base: typing.Union[int, float, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
|
|
695
737
|
│ ├── mp_phi(sigfigs: int, method: str) -> decimal.Decimal
|
|
696
738
|
│ ├── mp_pi(sigfigs: int, method: str) -> decimal.Decimal
|
|
697
|
-
│ ├── mp_sin(x: typing.Union[int, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
698
|
-
│
|
|
699
|
-
│ └── setprec(sigfigs: int) -> Any
|
|
739
|
+
│ ├── mp_sin(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
740
|
+
│ └── mp_sinh(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
700
741
|
├── numbers
|
|
701
742
|
│ ├── CLASS
|
|
702
743
|
│ └── FUNCTION
|
|
@@ -718,10 +759,14 @@ PyPyNum
|
|
|
718
759
|
│ ├── CLASS
|
|
719
760
|
│ │ └── Polynomial(object)/__init__(self: Any, terms: Any) -> Any
|
|
720
761
|
│ └── FUNCTION
|
|
762
|
+
│ ├── chebgauss(n: Any) -> Any
|
|
763
|
+
│ ├── chebpoly(n: Any, single: Any) -> Any
|
|
721
764
|
│ ├── from_coeffs(coeffs: Any) -> Any
|
|
722
765
|
│ ├── from_coords(coords: Any) -> Any
|
|
723
|
-
│ ├──
|
|
724
|
-
│ ├──
|
|
766
|
+
│ ├── laggauss(n: Any) -> Any
|
|
767
|
+
│ ├── lagpoly(n: Any, single: Any) -> Any
|
|
768
|
+
│ ├── leggauss(n: Any) -> Any
|
|
769
|
+
│ ├── legpoly(n: Any, single: Any) -> Any
|
|
725
770
|
│ └── poly(terms: Any) -> Any
|
|
726
771
|
├── pprinters
|
|
727
772
|
│ ├── CLASS
|
|
@@ -777,7 +822,7 @@ PyPyNum
|
|
|
777
822
|
│ ├── generate_primes(limit: int) -> list
|
|
778
823
|
│ ├── generate_semiprimes(limit: int) -> list
|
|
779
824
|
│ ├── geomspace(start: typing.Union[int, float], stop: typing.Union[int, float], number: int) -> list
|
|
780
|
-
│ ├──
|
|
825
|
+
│ ├── levenshtein_distance(s1: str, s2: str) -> int
|
|
781
826
|
│ ├── linspace(start: typing.Union[int, float], stop: typing.Union[int, float], number: int) -> list
|
|
782
827
|
│ ├── magic_square(n: Any) -> Any
|
|
783
828
|
│ ├── primality(n: int, iter_num: int) -> bool
|
|
@@ -870,16 +915,22 @@ PyPyNum
|
|
|
870
915
|
├── 多精度余弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
871
916
|
├── 多精度双曲余弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
872
917
|
├── 多精度双曲正弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
918
|
+
├── 多精度反余弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
873
919
|
├── 多精度反正切(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
920
|
+
├── 多精度反正弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
874
921
|
├── 多精度圆周率(有效位数: int, 方法: str) -> decimal.Decimal
|
|
922
|
+
├── 多精度复数(实部: typing.Union[int, float, str, decimal.Decimal], 虚部: typing.Union[int, float, str, decimal.Decimal], 有效位数: int) -> pypynum.multiprec.MPComplex
|
|
875
923
|
├── 多精度对数(真数: typing.Union[int, float], 底数: typing.Union[int, float], 有效位数: int, 使用内置方法: bool) -> decimal.Decimal
|
|
876
924
|
├── 多精度方位角(y: typing.Union[int, float], x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
877
925
|
├── 多精度欧拉数(有效位数: int, 方法: str) -> decimal.Decimal
|
|
878
926
|
├── 多精度正弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
879
927
|
├── 多精度自然对数(真数: typing.Union[int, float], 有效位数: int, 使用内置方法: bool) -> decimal.Decimal
|
|
880
928
|
├── 多精度自然指数(指数: typing.Union[int, float], 有效位数: int, 使用内置方法: bool) -> decimal.Decimal
|
|
929
|
+
├── 多精度菲涅耳余弦积分(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
930
|
+
├── 多精度菲涅耳正弦积分(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
881
931
|
├── 多精度黄金分割率(有效位数: int, 方法: str) -> decimal.Decimal
|
|
882
932
|
├── 多项式方程(系数: list) -> list
|
|
933
|
+
├── 字符串转整数(字符串: str) -> int
|
|
883
934
|
├── 导数(函数: Any, 参数: float, 步长: float, 额外参数: Any, 额外关键字参数: Any) -> float
|
|
884
935
|
├── 峰度(数据: typing.List[float], 费希尔: bool) -> float
|
|
885
936
|
├── 希尔256密码(文本: bytes, 密钥: list, 解密: bool) -> bytes
|
|
@@ -893,6 +944,8 @@ PyPyNum
|
|
|
893
944
|
├── 数组(数据: list, 检查: bool) -> pypynum.Array.Array
|
|
894
945
|
├── 整数转上标(标准字符串: str) -> str
|
|
895
946
|
├── 整数转下标(标准字符串: str) -> str
|
|
947
|
+
├── 整数转单词(整数: int) -> str
|
|
948
|
+
├── 整数转罗马数(整数: int, 上划线: bool) -> str
|
|
896
949
|
├── 方差(数据: typing.List[float], 自由度: int) -> float
|
|
897
950
|
├── 普莱费尔密码(文本: str, 密钥: str, 解密: bool) -> str
|
|
898
951
|
├── 最大公约数(args: int) -> int
|
|
@@ -904,6 +957,7 @@ PyPyNum
|
|
|
904
957
|
├── 正切(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
905
958
|
├── 正割(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
906
959
|
├── 正弦(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
960
|
+
├── 浮点数转分数(数值: float, 是否带分数: bool, 误差: float) -> tuple
|
|
907
961
|
├── 相关系数(x: typing.List[float], y: typing.List[float]) -> float
|
|
908
962
|
├── 积分(函数: Any, 积分开始: float, 积分结束: float, 积分点数: int, 额外参数: Any, 额外关键字参数: Any) -> float
|
|
909
963
|
├── 积累乘积(数据: typing.List[float]) -> float
|
|
@@ -916,6 +970,7 @@ PyPyNum
|
|
|
916
970
|
├── 线性方程组(左边: list, 右边: list) -> list
|
|
917
971
|
├── 组合数(总数: int, 选取数: int) -> int
|
|
918
972
|
├── 维吉尼亚密码(文本: str, 密钥: str, 解密: bool) -> str
|
|
973
|
+
├── 罗马数转整数(罗马数: str) -> int
|
|
919
974
|
├── 自然对数(真数: typing.Union[int, float]) -> typing.Union[int, float]
|
|
920
975
|
├── 自然指数(指数: typing.Union[int, float]) -> typing.Union[int, float]
|
|
921
976
|
├── 莫尔斯密码(文本: str, 解密: bool) -> str
|
|
@@ -926,6 +981,7 @@ PyPyNum
|
|
|
926
981
|
├── 贝塞尔I0(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
927
982
|
├── 贝塞尔Iv(v: typing.Union[int, float], x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
928
983
|
├── 负一整数次幂(指数: int) -> int
|
|
984
|
+
├── 转为多精度复数(实部: typing.Union[int, float, str, decimal.Decimal, complex, pypynum.multiprec.MPComplex], 虚部: typing.Union[int, float, str, decimal.Decimal], 有效位数: int) -> pypynum.multiprec.MPComplex
|
|
929
985
|
├── 转换为列表(数据: Any) -> list
|
|
930
986
|
├── 转换为数组(数据: Any) -> pypynum.Array.Array
|
|
931
987
|
├── 连续乘积(下界: int, 上界: int, 函数: typing.Callable) -> float
|
|
@@ -1147,8 +1203,8 @@ print(equations.poly_eq(p))
|
|
|
1147
1203
|
print(equations.lin_eq(*m))
|
|
1148
1204
|
|
|
1149
1205
|
"""
|
|
1150
|
-
[(-1.5615528128088307-6.5209667308287455e-24j)
|
|
1151
|
-
[
|
|
1206
|
+
[(-1.5615528128088307-6.5209667308287455e-24j), (1.0000000000000007+3.241554513744382e-25j), (2.5615528128088294+4.456233626665941e-24j)]
|
|
1207
|
+
[1.6666666666666665, -0.6666666666666666, -0.4444444444444444]
|
|
1152
1208
|
"""
|
|
1153
1209
|
|
|
1154
1210
|
print(maths.cot(constants.pi / 3))
|
|
@@ -1248,10 +1304,10 @@ print(random.randint(0, 9, [2, 3, 4]))
|
|
|
1248
1304
|
print(random.uniform(0, 9, [2, 3, 4]))
|
|
1249
1305
|
|
|
1250
1306
|
"""
|
|
1251
|
-
[[[
|
|
1252
|
-
[[[0.
|
|
1253
|
-
[[[
|
|
1254
|
-
[[[
|
|
1307
|
+
[[[0.015128082827448793, -0.731558889632968, -0.23379102528494308, 0.5923285646572862], [0.6389462900078073, -1.6347914510943111, 2.3694029836271726, -0.568526047386569], [-1.4229328154353735, 0.45185125607678145, -0.4003256267251042, -1.1425679894907612]], [[1.2876668616276734, 0.934232416262927, -1.4096609242818299, 0.2683613962988281], [0.3503627719719857, 1.9613965063102903, -2.0790609695353077, -0.10339725500993839], [-0.9334087233797456, 1.1394611182611, 1.3341558691128073, -0.3838574172857678]]]
|
|
1308
|
+
[[[0.8274205130045614, 0.27524584776494854, 0.715710895889572, 0.5807271906102146], [0.21742840470887725, 0.04577819370109826, 0.873689463957162, 0.04119770233167375], [0.554823367037196, 0.5901404246422433, 0.21342393541488192, 0.2979716283166385]], [[0.6045948602408673, 0.265586003384665, 0.9646655285283718, 0.9873208424367568], [0.16916505841642293, 0.15942804932580645, 0.679004396069304, 0.4586819952716237], [0.6058239213086706, 0.37021967026096103, 0.0015603885735545608, 0.8432925281217005]]]
|
|
1309
|
+
[[[7, 2, 9, 7], [0, 5, 1, 3], [9, 1, 0, 2]], [[1, 2, 7, 5], [5, 7, 4, 1], [2, 5, 7, 9]]]
|
|
1310
|
+
[[[1.6682230173222767, 0.5174279535822173, 6.202024157209834, 5.097176032335483], [3.44538825088208, 3.7119354081208025, 4.584800897579607, 8.294514147889751], [7.201908571787272, 4.96544760729807, 5.896259095293225, 3.215472062129558]], [[6.352678024277219, 6.894646335413341, 2.0445980257056333, 1.5835361381716893], [6.363077167625872, 8.831103031792672, 6.229821243776864, 0.5639371628314593], [7.639545178199688, 8.079077083978365, 8.063058392021144, 8.673394953496695]]]
|
|
1255
1311
|
"""
|
|
1256
1312
|
|
|
1257
1313
|
print(regression.lin_reg(list(range(5)), [2, 4, 6, 7, 8]))
|
|
@@ -1276,19 +1332,8 @@ print(tools.linspace(0, 2.8, 8))
|
|
|
1276
1332
|
[0.0, 0.39999999999999997, 0.7999999999999999, 1.2, 1.5999999999999999, 1.9999999999999998, 2.4, 2.8]
|
|
1277
1333
|
"""
|
|
1278
1334
|
|
|
1279
|
-
# 提示:
|
|
1280
|
-
#
|
|
1281
|
-
# 测试已成功通过并结束。
|
|
1282
|
-
#
|
|
1283
|
-
# 这些测试只是这个包功能的一部分。
|
|
1284
|
-
#
|
|
1285
|
-
# 更多的功能需要自己探索和尝试!
|
|
1286
|
-
#
|
|
1287
1335
|
# Tip:
|
|
1288
|
-
#
|
|
1289
1336
|
# The test has been successfully passed and ended.
|
|
1290
|
-
#
|
|
1291
1337
|
# These tests are only part of the functionality of this package.
|
|
1292
|
-
#
|
|
1293
1338
|
# More features need to be explored and tried by yourself!
|
|
1294
1339
|
```
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: PyPyNum
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.13.1
|
|
4
4
|
Summary: PyPyNum is a Python library for math & science computations, covering algebra, calculus, stats, with data structures like matrices, vectors, tensors. It offers numerical tools, programs, and supports computational ops, functions, processing, simulation, & visualization in data science & ML, crucial for research, engineering, & data processing.
|
|
5
5
|
Home-page: https://github.com/PythonSJL/PyPyNum
|
|
6
6
|
Author: Shen Jiayi
|
|
@@ -234,7 +234,7 @@ processing.</font><font color = red>[Python>=3.4]</font>
|
|
|
234
234
|
[](https://pepy.tech/project/pypynum)
|
|
235
235
|
[](https://pepy.tech/project/pypynum)
|
|
236
236
|
|
|
237
|
-
## Version -> 1.
|
|
237
|
+
## Version -> 1.13.1 | PyPI -> https://pypi.org/project/PyPyNum/ | Gitee -> https://www.gitee.com/PythonSJL/PyPyNum | GitHub -> https://github.com/PythonSJL/PyPyNum
|
|
238
238
|
|
|
239
239
|

|
|
240
240
|
|
|
@@ -251,8 +251,8 @@ The logo cannot be displayed on PyPI, it can be viewed in Gitee or GitHub.
|
|
|
251
251
|
supports other types of Python interpreters
|
|
252
252
|
+ 不定期更新版本,增加更多实用功能
|
|
253
253
|
+ Update versions periodically to add more practical features
|
|
254
|
-
+ 如需联系,请添加QQ号2261748025
|
|
255
|
-
+ If you need to contact, please add QQ number 2261748025 (Py𝙿𝚢𝚝𝚑𝚘𝚗-水晶兰)
|
|
254
|
+
+ 如需联系,请添加QQ号2261748025(Py𝙿𝚢𝚝𝚑𝚘𝚗-水晶兰),或者通过我的邮箱2261748025@qq.com
|
|
255
|
+
+ If you need to contact, please add QQ number 2261748025 (Py𝙿𝚢𝚝𝚑𝚘𝚗-水晶兰), or through my email 2261748025@qq.com
|
|
256
256
|
|
|
257
257
|
### 子模块的名称与功能简介
|
|
258
258
|
|
|
@@ -274,6 +274,7 @@ The logo cannot be displayed on PyPI, it can be viewed in Gitee or GitHub.
|
|
|
274
274
|
| `pypynum.Graph` | 图论算法 Graph Theory Algorithm |
|
|
275
275
|
| `pypynum.Group` | 群论算法 Group Theory Algorithm |
|
|
276
276
|
| `pypynum.image` | 图像处理 Image processing |
|
|
277
|
+
| `pypynum.interp` | 数据插值 Data Interpolation |
|
|
277
278
|
| `pypynum.Logic` | 逻辑电路设计 Logic circuit design |
|
|
278
279
|
| `pypynum.maths` | 通用数学函数 General mathematical functions |
|
|
279
280
|
| `pypynum.Matrix` | 矩阵运算 Matrix operation |
|
|
@@ -338,22 +339,48 @@ Python interpreter and run it!
|
|
|
338
339
|
```
|
|
339
340
|
!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
|
|
340
341
|
|
|
341
|
-
|
|
342
|
+
修正了MPComplex的错误并且新增了部分用
|
|
343
|
+
于计算三角函数的方法
|
|
342
344
|
|
|
343
|
-
|
|
345
|
+
Corrected errors in MPComplex
|
|
346
|
+
and added some methods for
|
|
347
|
+
calculating trigonometric
|
|
348
|
+
functions
|
|
344
349
|
|
|
345
350
|
!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
|
|
346
351
|
|
|
347
|
-
|
|
352
|
+
增加了levenshtein_distance函数
|
|
348
353
|
|
|
349
|
-
|
|
354
|
+
Added levenshtein_distance function
|
|
350
355
|
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
356
|
+
|
|
357
|
+
Help on function levenshtein_distance in module pypynum.tools:
|
|
358
|
+
|
|
359
|
+
levenshtein_distance(s1: str, s2: str) -> int
|
|
360
|
+
Introduction
|
|
361
|
+
==========
|
|
362
|
+
Calculate the Levenshtein distance between two strings.
|
|
363
|
+
|
|
364
|
+
The Levenshtein distance is a measure of the difference between two strings. It is defined as the minimum number
|
|
365
|
+
of single-character edits (i.e., insertions, deletions or substitutions) required to change one string into the
|
|
366
|
+
other.
|
|
367
|
+
|
|
368
|
+
Example
|
|
369
|
+
==========
|
|
370
|
+
>>> levenshtein_distance("kitten", "sitting")
|
|
371
|
+
3
|
|
372
|
+
>>>
|
|
373
|
+
:param s1: First string to compare.
|
|
374
|
+
:param s2: Second string to compare.
|
|
375
|
+
:return: The Levenshtein distance between the two strings.
|
|
376
|
+
|
|
377
|
+
!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
|
|
378
|
+
|
|
379
|
+
注意:以后的版本中的自述文件将更改为纯英文
|
|
380
|
+
|
|
381
|
+
Attention: The self description
|
|
382
|
+
file in future versions will be
|
|
383
|
+
changed to pure English
|
|
357
384
|
|
|
358
385
|
!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=
|
|
359
386
|
```
|
|
@@ -594,6 +621,13 @@ PyPyNum
|
|
|
594
621
|
│ │ └── PNG(object)/__init__(self: Any) -> None
|
|
595
622
|
│ └── FUNCTION
|
|
596
623
|
│ └── crc(data: Any, length: Any, init: Any, xor: Any) -> Any
|
|
624
|
+
├── interp
|
|
625
|
+
│ ├── CLASS
|
|
626
|
+
│ └── FUNCTION
|
|
627
|
+
│ ├── bicubic(x: Any) -> Any
|
|
628
|
+
│ ├── contribute(src: Any, x: Any, y: Any, channels: Any) -> Any
|
|
629
|
+
│ ├── interp1d(data: typing.Union[list, tuple], length: int) -> list
|
|
630
|
+
│ └── interp2d(src: Any, new_height: Any, new_width: Any, channels: Any, round_res: Any, min_val: Any, max_val: Any) -> Any
|
|
597
631
|
├── maths
|
|
598
632
|
│ ├── CLASS
|
|
599
633
|
│ └── FUNCTION
|
|
@@ -630,7 +664,7 @@ PyPyNum
|
|
|
630
664
|
│ ├── csch(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
631
665
|
│ ├── cumprod(lst: typing.Union[list, tuple]) -> list
|
|
632
666
|
│ ├── cumsum(lst: typing.Union[list, tuple]) -> list
|
|
633
|
-
│ ├── deriv(f: Any, x:
|
|
667
|
+
│ ├── deriv(f: Any, x: float, h: float, method: str, args: Any, kwargs: Any) -> Any
|
|
634
668
|
│ ├── erf(x: typing.Union[int, float]) -> float
|
|
635
669
|
│ ├── exgcd(a: int, b: int) -> tuple
|
|
636
670
|
│ ├── exp(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
@@ -682,21 +716,28 @@ PyPyNum
|
|
|
682
716
|
│ └── zeta(alpha: typing.Union[int, float, complex]) -> typing.Union[int, float, complex]
|
|
683
717
|
├── multiprec
|
|
684
718
|
│ ├── CLASS
|
|
719
|
+
│ │ └── MPComplex(object)/__init__(self: Any, real: Any, imag: Any, sigfigs: Any) -> Any
|
|
685
720
|
│ └── FUNCTION
|
|
721
|
+
│ ├── _remove_trailing_zeros(value: typing.Any) -> str
|
|
722
|
+
│ ├── _setprec(sigfigs: int) -> Any
|
|
723
|
+
│ ├── asmpc(real: typing.Union[int, float, str, decimal.Decimal, complex, pypynum.multiprec.MPComplex], imag: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> pypynum.multiprec.MPComplex
|
|
686
724
|
│ ├── frac2dec(frac: fractions.Fraction, sigfigs: int) -> decimal.Decimal
|
|
687
|
-
│ ├──
|
|
688
|
-
│ ├──
|
|
689
|
-
│ ├──
|
|
690
|
-
│ ├──
|
|
725
|
+
│ ├── mp_acos(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
726
|
+
│ ├── mp_asin(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
727
|
+
│ ├── mp_atan(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
728
|
+
│ ├── mp_atan2(y: typing.Union[int, float, str, decimal.Decimal], x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
729
|
+
│ ├── mp_cos(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
730
|
+
│ ├── mp_cosh(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
691
731
|
│ ├── mp_e(sigfigs: int, method: str) -> decimal.Decimal
|
|
692
|
-
│ ├── mp_exp(x: typing.Union[int, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
|
|
693
|
-
│ ├──
|
|
694
|
-
│ ├──
|
|
732
|
+
│ ├── mp_exp(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
|
|
733
|
+
│ ├── mp_fresnel_c(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
734
|
+
│ ├── mp_fresnel_s(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
735
|
+
│ ├── mp_ln(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
|
|
736
|
+
│ ├── mp_log(x: typing.Union[int, float, str, decimal.Decimal], base: typing.Union[int, float, str, decimal.Decimal], sigfigs: int, builtin: bool) -> decimal.Decimal
|
|
695
737
|
│ ├── mp_phi(sigfigs: int, method: str) -> decimal.Decimal
|
|
696
738
|
│ ├── mp_pi(sigfigs: int, method: str) -> decimal.Decimal
|
|
697
|
-
│ ├── mp_sin(x: typing.Union[int, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
698
|
-
│
|
|
699
|
-
│ └── setprec(sigfigs: int) -> Any
|
|
739
|
+
│ ├── mp_sin(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
740
|
+
│ └── mp_sinh(x: typing.Union[int, float, str, decimal.Decimal], sigfigs: int) -> decimal.Decimal
|
|
700
741
|
├── numbers
|
|
701
742
|
│ ├── CLASS
|
|
702
743
|
│ └── FUNCTION
|
|
@@ -718,10 +759,14 @@ PyPyNum
|
|
|
718
759
|
│ ├── CLASS
|
|
719
760
|
│ │ └── Polynomial(object)/__init__(self: Any, terms: Any) -> Any
|
|
720
761
|
│ └── FUNCTION
|
|
762
|
+
│ ├── chebgauss(n: Any) -> Any
|
|
763
|
+
│ ├── chebpoly(n: Any, single: Any) -> Any
|
|
721
764
|
│ ├── from_coeffs(coeffs: Any) -> Any
|
|
722
765
|
│ ├── from_coords(coords: Any) -> Any
|
|
723
|
-
│ ├──
|
|
724
|
-
│ ├──
|
|
766
|
+
│ ├── laggauss(n: Any) -> Any
|
|
767
|
+
│ ├── lagpoly(n: Any, single: Any) -> Any
|
|
768
|
+
│ ├── leggauss(n: Any) -> Any
|
|
769
|
+
│ ├── legpoly(n: Any, single: Any) -> Any
|
|
725
770
|
│ └── poly(terms: Any) -> Any
|
|
726
771
|
├── pprinters
|
|
727
772
|
│ ├── CLASS
|
|
@@ -777,7 +822,7 @@ PyPyNum
|
|
|
777
822
|
│ ├── generate_primes(limit: int) -> list
|
|
778
823
|
│ ├── generate_semiprimes(limit: int) -> list
|
|
779
824
|
│ ├── geomspace(start: typing.Union[int, float], stop: typing.Union[int, float], number: int) -> list
|
|
780
|
-
│ ├──
|
|
825
|
+
│ ├── levenshtein_distance(s1: str, s2: str) -> int
|
|
781
826
|
│ ├── linspace(start: typing.Union[int, float], stop: typing.Union[int, float], number: int) -> list
|
|
782
827
|
│ ├── magic_square(n: Any) -> Any
|
|
783
828
|
│ ├── primality(n: int, iter_num: int) -> bool
|
|
@@ -870,16 +915,22 @@ PyPyNum
|
|
|
870
915
|
├── 多精度余弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
871
916
|
├── 多精度双曲余弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
872
917
|
├── 多精度双曲正弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
918
|
+
├── 多精度反余弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
873
919
|
├── 多精度反正切(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
920
|
+
├── 多精度反正弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
874
921
|
├── 多精度圆周率(有效位数: int, 方法: str) -> decimal.Decimal
|
|
922
|
+
├── 多精度复数(实部: typing.Union[int, float, str, decimal.Decimal], 虚部: typing.Union[int, float, str, decimal.Decimal], 有效位数: int) -> pypynum.multiprec.MPComplex
|
|
875
923
|
├── 多精度对数(真数: typing.Union[int, float], 底数: typing.Union[int, float], 有效位数: int, 使用内置方法: bool) -> decimal.Decimal
|
|
876
924
|
├── 多精度方位角(y: typing.Union[int, float], x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
877
925
|
├── 多精度欧拉数(有效位数: int, 方法: str) -> decimal.Decimal
|
|
878
926
|
├── 多精度正弦(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
879
927
|
├── 多精度自然对数(真数: typing.Union[int, float], 有效位数: int, 使用内置方法: bool) -> decimal.Decimal
|
|
880
928
|
├── 多精度自然指数(指数: typing.Union[int, float], 有效位数: int, 使用内置方法: bool) -> decimal.Decimal
|
|
929
|
+
├── 多精度菲涅耳余弦积分(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
930
|
+
├── 多精度菲涅耳正弦积分(x: typing.Union[int, float], 有效位数: int) -> decimal.Decimal
|
|
881
931
|
├── 多精度黄金分割率(有效位数: int, 方法: str) -> decimal.Decimal
|
|
882
932
|
├── 多项式方程(系数: list) -> list
|
|
933
|
+
├── 字符串转整数(字符串: str) -> int
|
|
883
934
|
├── 导数(函数: Any, 参数: float, 步长: float, 额外参数: Any, 额外关键字参数: Any) -> float
|
|
884
935
|
├── 峰度(数据: typing.List[float], 费希尔: bool) -> float
|
|
885
936
|
├── 希尔256密码(文本: bytes, 密钥: list, 解密: bool) -> bytes
|
|
@@ -893,6 +944,8 @@ PyPyNum
|
|
|
893
944
|
├── 数组(数据: list, 检查: bool) -> pypynum.Array.Array
|
|
894
945
|
├── 整数转上标(标准字符串: str) -> str
|
|
895
946
|
├── 整数转下标(标准字符串: str) -> str
|
|
947
|
+
├── 整数转单词(整数: int) -> str
|
|
948
|
+
├── 整数转罗马数(整数: int, 上划线: bool) -> str
|
|
896
949
|
├── 方差(数据: typing.List[float], 自由度: int) -> float
|
|
897
950
|
├── 普莱费尔密码(文本: str, 密钥: str, 解密: bool) -> str
|
|
898
951
|
├── 最大公约数(args: int) -> int
|
|
@@ -904,6 +957,7 @@ PyPyNum
|
|
|
904
957
|
├── 正切(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
905
958
|
├── 正割(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
906
959
|
├── 正弦(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
960
|
+
├── 浮点数转分数(数值: float, 是否带分数: bool, 误差: float) -> tuple
|
|
907
961
|
├── 相关系数(x: typing.List[float], y: typing.List[float]) -> float
|
|
908
962
|
├── 积分(函数: Any, 积分开始: float, 积分结束: float, 积分点数: int, 额外参数: Any, 额外关键字参数: Any) -> float
|
|
909
963
|
├── 积累乘积(数据: typing.List[float]) -> float
|
|
@@ -916,6 +970,7 @@ PyPyNum
|
|
|
916
970
|
├── 线性方程组(左边: list, 右边: list) -> list
|
|
917
971
|
├── 组合数(总数: int, 选取数: int) -> int
|
|
918
972
|
├── 维吉尼亚密码(文本: str, 密钥: str, 解密: bool) -> str
|
|
973
|
+
├── 罗马数转整数(罗马数: str) -> int
|
|
919
974
|
├── 自然对数(真数: typing.Union[int, float]) -> typing.Union[int, float]
|
|
920
975
|
├── 自然指数(指数: typing.Union[int, float]) -> typing.Union[int, float]
|
|
921
976
|
├── 莫尔斯密码(文本: str, 解密: bool) -> str
|
|
@@ -926,6 +981,7 @@ PyPyNum
|
|
|
926
981
|
├── 贝塞尔I0(x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
927
982
|
├── 贝塞尔Iv(v: typing.Union[int, float], x: typing.Union[int, float]) -> typing.Union[int, float]
|
|
928
983
|
├── 负一整数次幂(指数: int) -> int
|
|
984
|
+
├── 转为多精度复数(实部: typing.Union[int, float, str, decimal.Decimal, complex, pypynum.multiprec.MPComplex], 虚部: typing.Union[int, float, str, decimal.Decimal], 有效位数: int) -> pypynum.multiprec.MPComplex
|
|
929
985
|
├── 转换为列表(数据: Any) -> list
|
|
930
986
|
├── 转换为数组(数据: Any) -> pypynum.Array.Array
|
|
931
987
|
├── 连续乘积(下界: int, 上界: int, 函数: typing.Callable) -> float
|
|
@@ -1147,8 +1203,8 @@ print(equations.poly_eq(p))
|
|
|
1147
1203
|
print(equations.lin_eq(*m))
|
|
1148
1204
|
|
|
1149
1205
|
"""
|
|
1150
|
-
[(-1.5615528128088307-6.5209667308287455e-24j)
|
|
1151
|
-
[
|
|
1206
|
+
[(-1.5615528128088307-6.5209667308287455e-24j), (1.0000000000000007+3.241554513744382e-25j), (2.5615528128088294+4.456233626665941e-24j)]
|
|
1207
|
+
[1.6666666666666665, -0.6666666666666666, -0.4444444444444444]
|
|
1152
1208
|
"""
|
|
1153
1209
|
|
|
1154
1210
|
print(maths.cot(constants.pi / 3))
|
|
@@ -1248,10 +1304,10 @@ print(random.randint(0, 9, [2, 3, 4]))
|
|
|
1248
1304
|
print(random.uniform(0, 9, [2, 3, 4]))
|
|
1249
1305
|
|
|
1250
1306
|
"""
|
|
1251
|
-
[[[
|
|
1252
|
-
[[[0.
|
|
1253
|
-
[[[
|
|
1254
|
-
[[[
|
|
1307
|
+
[[[0.015128082827448793, -0.731558889632968, -0.23379102528494308, 0.5923285646572862], [0.6389462900078073, -1.6347914510943111, 2.3694029836271726, -0.568526047386569], [-1.4229328154353735, 0.45185125607678145, -0.4003256267251042, -1.1425679894907612]], [[1.2876668616276734, 0.934232416262927, -1.4096609242818299, 0.2683613962988281], [0.3503627719719857, 1.9613965063102903, -2.0790609695353077, -0.10339725500993839], [-0.9334087233797456, 1.1394611182611, 1.3341558691128073, -0.3838574172857678]]]
|
|
1308
|
+
[[[0.8274205130045614, 0.27524584776494854, 0.715710895889572, 0.5807271906102146], [0.21742840470887725, 0.04577819370109826, 0.873689463957162, 0.04119770233167375], [0.554823367037196, 0.5901404246422433, 0.21342393541488192, 0.2979716283166385]], [[0.6045948602408673, 0.265586003384665, 0.9646655285283718, 0.9873208424367568], [0.16916505841642293, 0.15942804932580645, 0.679004396069304, 0.4586819952716237], [0.6058239213086706, 0.37021967026096103, 0.0015603885735545608, 0.8432925281217005]]]
|
|
1309
|
+
[[[7, 2, 9, 7], [0, 5, 1, 3], [9, 1, 0, 2]], [[1, 2, 7, 5], [5, 7, 4, 1], [2, 5, 7, 9]]]
|
|
1310
|
+
[[[1.6682230173222767, 0.5174279535822173, 6.202024157209834, 5.097176032335483], [3.44538825088208, 3.7119354081208025, 4.584800897579607, 8.294514147889751], [7.201908571787272, 4.96544760729807, 5.896259095293225, 3.215472062129558]], [[6.352678024277219, 6.894646335413341, 2.0445980257056333, 1.5835361381716893], [6.363077167625872, 8.831103031792672, 6.229821243776864, 0.5639371628314593], [7.639545178199688, 8.079077083978365, 8.063058392021144, 8.673394953496695]]]
|
|
1255
1311
|
"""
|
|
1256
1312
|
|
|
1257
1313
|
print(regression.lin_reg(list(range(5)), [2, 4, 6, 7, 8]))
|
|
@@ -1276,19 +1332,8 @@ print(tools.linspace(0, 2.8, 8))
|
|
|
1276
1332
|
[0.0, 0.39999999999999997, 0.7999999999999999, 1.2, 1.5999999999999999, 1.9999999999999998, 2.4, 2.8]
|
|
1277
1333
|
"""
|
|
1278
1334
|
|
|
1279
|
-
# 提示:
|
|
1280
|
-
#
|
|
1281
|
-
# 测试已成功通过并结束。
|
|
1282
|
-
#
|
|
1283
|
-
# 这些测试只是这个包功能的一部分。
|
|
1284
|
-
#
|
|
1285
|
-
# 更多的功能需要自己探索和尝试!
|
|
1286
|
-
#
|
|
1287
1335
|
# Tip:
|
|
1288
|
-
#
|
|
1289
1336
|
# The test has been successfully passed and ended.
|
|
1290
|
-
#
|
|
1291
1337
|
# These tests are only part of the functionality of this package.
|
|
1292
|
-
#
|
|
1293
1338
|
# More features need to be explored and tried by yourself!
|
|
1294
1339
|
```
|
|
@@ -356,7 +356,7 @@ def hessenberg(matrix: Matrix) -> tuple:
|
|
|
356
356
|
continue
|
|
357
357
|
h = 0.0
|
|
358
358
|
for k in range(0, i):
|
|
359
|
-
a[i, k]
|
|
359
|
+
a[i, k] *= scale_inv
|
|
360
360
|
rr, ii = a[i, k].real, a[i, k].imag
|
|
361
361
|
h += rr * rr + ii * ii
|
|
362
362
|
f = a[i, i - 1]
|
|
@@ -373,7 +373,7 @@ def hessenberg(matrix: Matrix) -> tuple:
|
|
|
373
373
|
h = 1 / sqrt(h)
|
|
374
374
|
t[i] *= h
|
|
375
375
|
for k in range(0, i - 1):
|
|
376
|
-
a[i, k]
|
|
376
|
+
a[i, k] *= h
|
|
377
377
|
for j in range(0, i):
|
|
378
378
|
g = t[i].conjugate() * a[j, i - 1]
|
|
379
379
|
for k in range(0, i - 1):
|
|
@@ -547,7 +547,7 @@ def eigen(matrix: Matrix) -> tuple:
|
|
|
547
547
|
|
|
548
548
|
|
|
549
549
|
def svd(matrix: Matrix) -> tuple:
|
|
550
|
-
print("\
|
|
550
|
+
print("\nWarning: The SVD function may have calculation errors\n")
|
|
551
551
|
e0, u = eigen(matrix @ matrix.t())
|
|
552
552
|
u = Matrix([_[::-1] for _ in u])
|
|
553
553
|
e1, v = eigen(matrix.t() @ matrix)
|