linalg.pyi 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. from typing import Any
  2. import numpy as np
  3. import numpy.typing as npt
  4. from numpy.linalg._linalg import (
  5. QRResult, EigResult, EighResult, SVDResult, SlogdetResult
  6. )
  7. from typing_extensions import assert_type
  8. AR_i8: npt.NDArray[np.int64]
  9. AR_f8: npt.NDArray[np.float64]
  10. AR_c16: npt.NDArray[np.complex128]
  11. AR_O: npt.NDArray[np.object_]
  12. AR_m: npt.NDArray[np.timedelta64]
  13. AR_S: npt.NDArray[np.str_]
  14. AR_b: npt.NDArray[np.bool]
  15. assert_type(np.linalg.tensorsolve(AR_i8, AR_i8), npt.NDArray[np.float64])
  16. assert_type(np.linalg.tensorsolve(AR_i8, AR_f8), npt.NDArray[np.floating[Any]])
  17. assert_type(np.linalg.tensorsolve(AR_c16, AR_f8), npt.NDArray[np.complexfloating[Any, Any]])
  18. assert_type(np.linalg.solve(AR_i8, AR_i8), npt.NDArray[np.float64])
  19. assert_type(np.linalg.solve(AR_i8, AR_f8), npt.NDArray[np.floating[Any]])
  20. assert_type(np.linalg.solve(AR_c16, AR_f8), npt.NDArray[np.complexfloating[Any, Any]])
  21. assert_type(np.linalg.tensorinv(AR_i8), npt.NDArray[np.float64])
  22. assert_type(np.linalg.tensorinv(AR_f8), npt.NDArray[np.floating[Any]])
  23. assert_type(np.linalg.tensorinv(AR_c16), npt.NDArray[np.complexfloating[Any, Any]])
  24. assert_type(np.linalg.inv(AR_i8), npt.NDArray[np.float64])
  25. assert_type(np.linalg.inv(AR_f8), npt.NDArray[np.floating[Any]])
  26. assert_type(np.linalg.inv(AR_c16), npt.NDArray[np.complexfloating[Any, Any]])
  27. assert_type(np.linalg.matrix_power(AR_i8, -1), npt.NDArray[Any])
  28. assert_type(np.linalg.matrix_power(AR_f8, 0), npt.NDArray[Any])
  29. assert_type(np.linalg.matrix_power(AR_c16, 1), npt.NDArray[Any])
  30. assert_type(np.linalg.matrix_power(AR_O, 2), npt.NDArray[Any])
  31. assert_type(np.linalg.cholesky(AR_i8), npt.NDArray[np.float64])
  32. assert_type(np.linalg.cholesky(AR_f8), npt.NDArray[np.floating[Any]])
  33. assert_type(np.linalg.cholesky(AR_c16), npt.NDArray[np.complexfloating[Any, Any]])
  34. assert_type(np.linalg.outer(AR_i8, AR_i8), npt.NDArray[np.signedinteger[Any]])
  35. assert_type(np.linalg.outer(AR_f8, AR_f8), npt.NDArray[np.floating[Any]])
  36. assert_type(np.linalg.outer(AR_c16, AR_c16), npt.NDArray[np.complexfloating[Any, Any]])
  37. assert_type(np.linalg.outer(AR_b, AR_b), npt.NDArray[np.bool])
  38. assert_type(np.linalg.outer(AR_O, AR_O), npt.NDArray[np.object_])
  39. assert_type(np.linalg.outer(AR_i8, AR_m), npt.NDArray[np.timedelta64])
  40. assert_type(np.linalg.qr(AR_i8), QRResult)
  41. assert_type(np.linalg.qr(AR_f8), QRResult)
  42. assert_type(np.linalg.qr(AR_c16), QRResult)
  43. assert_type(np.linalg.eigvals(AR_i8), npt.NDArray[np.float64] | npt.NDArray[np.complex128])
  44. assert_type(np.linalg.eigvals(AR_f8), npt.NDArray[np.floating[Any]] | npt.NDArray[np.complexfloating[Any, Any]])
  45. assert_type(np.linalg.eigvals(AR_c16), npt.NDArray[np.complexfloating[Any, Any]])
  46. assert_type(np.linalg.eigvalsh(AR_i8), npt.NDArray[np.float64])
  47. assert_type(np.linalg.eigvalsh(AR_f8), npt.NDArray[np.floating[Any]])
  48. assert_type(np.linalg.eigvalsh(AR_c16), npt.NDArray[np.floating[Any]])
  49. assert_type(np.linalg.eig(AR_i8), EigResult)
  50. assert_type(np.linalg.eig(AR_f8), EigResult)
  51. assert_type(np.linalg.eig(AR_c16), EigResult)
  52. assert_type(np.linalg.eigh(AR_i8), EighResult)
  53. assert_type(np.linalg.eigh(AR_f8), EighResult)
  54. assert_type(np.linalg.eigh(AR_c16), EighResult)
  55. assert_type(np.linalg.svd(AR_i8), SVDResult)
  56. assert_type(np.linalg.svd(AR_f8), SVDResult)
  57. assert_type(np.linalg.svd(AR_c16), SVDResult)
  58. assert_type(np.linalg.svd(AR_i8, compute_uv=False), npt.NDArray[np.float64])
  59. assert_type(np.linalg.svd(AR_f8, compute_uv=False), npt.NDArray[np.floating[Any]])
  60. assert_type(np.linalg.svd(AR_c16, compute_uv=False), npt.NDArray[np.floating[Any]])
  61. assert_type(np.linalg.cond(AR_i8), Any)
  62. assert_type(np.linalg.cond(AR_f8), Any)
  63. assert_type(np.linalg.cond(AR_c16), Any)
  64. assert_type(np.linalg.matrix_rank(AR_i8), Any)
  65. assert_type(np.linalg.matrix_rank(AR_f8), Any)
  66. assert_type(np.linalg.matrix_rank(AR_c16), Any)
  67. assert_type(np.linalg.pinv(AR_i8), npt.NDArray[np.float64])
  68. assert_type(np.linalg.pinv(AR_f8), npt.NDArray[np.floating[Any]])
  69. assert_type(np.linalg.pinv(AR_c16), npt.NDArray[np.complexfloating[Any, Any]])
  70. assert_type(np.linalg.slogdet(AR_i8), SlogdetResult)
  71. assert_type(np.linalg.slogdet(AR_f8), SlogdetResult)
  72. assert_type(np.linalg.slogdet(AR_c16), SlogdetResult)
  73. assert_type(np.linalg.det(AR_i8), Any)
  74. assert_type(np.linalg.det(AR_f8), Any)
  75. assert_type(np.linalg.det(AR_c16), Any)
  76. assert_type(np.linalg.lstsq(AR_i8, AR_i8), tuple[npt.NDArray[np.float64], npt.NDArray[np.float64], np.int32, npt.NDArray[np.float64]])
  77. assert_type(np.linalg.lstsq(AR_i8, AR_f8), tuple[npt.NDArray[np.floating[Any]], npt.NDArray[np.floating[Any]], np.int32, npt.NDArray[np.floating[Any]]])
  78. assert_type(np.linalg.lstsq(AR_f8, AR_c16), tuple[npt.NDArray[np.complexfloating[Any, Any]], npt.NDArray[np.floating[Any]], np.int32, npt.NDArray[np.floating[Any]]])
  79. assert_type(np.linalg.norm(AR_i8), np.floating[Any])
  80. assert_type(np.linalg.norm(AR_f8), np.floating[Any])
  81. assert_type(np.linalg.norm(AR_c16), np.floating[Any])
  82. assert_type(np.linalg.norm(AR_S), np.floating[Any])
  83. assert_type(np.linalg.norm(AR_f8, axis=0), Any)
  84. assert_type(np.linalg.matrix_norm(AR_i8), np.floating[Any])
  85. assert_type(np.linalg.matrix_norm(AR_f8), np.floating[Any])
  86. assert_type(np.linalg.matrix_norm(AR_c16), np.floating[Any])
  87. assert_type(np.linalg.matrix_norm(AR_S), np.floating[Any])
  88. assert_type(np.linalg.vector_norm(AR_i8), np.floating[Any])
  89. assert_type(np.linalg.vector_norm(AR_f8), np.floating[Any])
  90. assert_type(np.linalg.vector_norm(AR_c16), np.floating[Any])
  91. assert_type(np.linalg.vector_norm(AR_S), np.floating[Any])
  92. assert_type(np.linalg.multi_dot([AR_i8, AR_i8]), Any)
  93. assert_type(np.linalg.multi_dot([AR_i8, AR_f8]), Any)
  94. assert_type(np.linalg.multi_dot([AR_f8, AR_c16]), Any)
  95. assert_type(np.linalg.multi_dot([AR_O, AR_O]), Any)
  96. assert_type(np.linalg.multi_dot([AR_m, AR_m]), Any)
  97. assert_type(np.linalg.cross(AR_i8, AR_i8), npt.NDArray[np.signedinteger[Any]])
  98. assert_type(np.linalg.cross(AR_f8, AR_f8), npt.NDArray[np.floating[Any]])
  99. assert_type(np.linalg.cross(AR_c16, AR_c16), npt.NDArray[np.complexfloating[Any, Any]])
  100. assert_type(np.linalg.matmul(AR_i8, AR_i8), npt.NDArray[np.signedinteger[Any]])
  101. assert_type(np.linalg.matmul(AR_f8, AR_f8), npt.NDArray[np.floating[Any]])
  102. assert_type(np.linalg.matmul(AR_c16, AR_c16), npt.NDArray[np.complexfloating[Any, Any]])