slicot 1.0.0__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 (1304) hide show
  1. slicot-1.0.0/.github/workflows/build.yml +95 -0
  2. slicot-1.0.0/.github/workflows/codeql.yml +48 -0
  3. slicot-1.0.0/.github/workflows/publish.yml +40 -0
  4. slicot-1.0.0/.github/workflows/test.yml +79 -0
  5. slicot-1.0.0/.gitignore +10 -0
  6. slicot-1.0.0/CHANGELOG.md +11 -0
  7. slicot-1.0.0/CLAUDE.md +47 -0
  8. slicot-1.0.0/LICENSE +30 -0
  9. slicot-1.0.0/PKG-INFO +78 -0
  10. slicot-1.0.0/README.md +47 -0
  11. slicot-1.0.0/include/slicot/ab.h +2840 -0
  12. slicot-1.0.0/include/slicot/ag.h +282 -0
  13. slicot-1.0.0/include/slicot/bb.h +312 -0
  14. slicot-1.0.0/include/slicot/bd.h +166 -0
  15. slicot-1.0.0/include/slicot/de.h +103 -0
  16. slicot-1.0.0/include/slicot/df.h +51 -0
  17. slicot-1.0.0/include/slicot/dg.h +138 -0
  18. slicot-1.0.0/include/slicot/dk.h +48 -0
  19. slicot-1.0.0/include/slicot/fb.h +435 -0
  20. slicot-1.0.0/include/slicot/fd.h +85 -0
  21. slicot-1.0.0/include/slicot/ib.h +756 -0
  22. slicot-1.0.0/include/slicot/lapack_aux.h +194 -0
  23. slicot-1.0.0/include/slicot/ma.h +751 -0
  24. slicot-1.0.0/include/slicot/mb01.h +1136 -0
  25. slicot-1.0.0/include/slicot/mb02.h +1629 -0
  26. slicot-1.0.0/include/slicot/mb03.h +2845 -0
  27. slicot-1.0.0/include/slicot/mb04.h +2770 -0
  28. slicot-1.0.0/include/slicot/mb05.h +249 -0
  29. slicot-1.0.0/include/slicot/mc.h +469 -0
  30. slicot-1.0.0/include/slicot/md.h +501 -0
  31. slicot-1.0.0/include/slicot/nf.h +360 -0
  32. slicot-1.0.0/include/slicot/sb.h +5715 -0
  33. slicot-1.0.0/include/slicot/sg.h +925 -0
  34. slicot-1.0.0/include/slicot/tb.h +1392 -0
  35. slicot-1.0.0/include/slicot/tc.h +209 -0
  36. slicot-1.0.0/include/slicot/td.h +294 -0
  37. slicot-1.0.0/include/slicot/tf.h +297 -0
  38. slicot-1.0.0/include/slicot/tg.h +1684 -0
  39. slicot-1.0.0/include/slicot/ud.h +201 -0
  40. slicot-1.0.0/include/slicot/ue.h +44 -0
  41. slicot-1.0.0/include/slicot.h +43 -0
  42. slicot-1.0.0/include/slicot_blas.h +1209 -0
  43. slicot-1.0.0/include/slicot_config.h +8 -0
  44. slicot-1.0.0/include/slicot_types.h +49 -0
  45. slicot-1.0.0/meson.build +51 -0
  46. slicot-1.0.0/meson.options +2 -0
  47. slicot-1.0.0/pyproject.toml +69 -0
  48. slicot-1.0.0/python/data/docstrings.h +12553 -0
  49. slicot-1.0.0/python/data/docstrings.json +580 -0
  50. slicot-1.0.0/python/meson.build +45 -0
  51. slicot-1.0.0/python/slicot/__init__.py +4 -0
  52. slicot-1.0.0/python/slicot/py.typed +0 -0
  53. slicot-1.0.0/python/slicot_module.c +611 -0
  54. slicot-1.0.0/python/wrappers/py_ab.c +9518 -0
  55. slicot-1.0.0/python/wrappers/py_ag.c +864 -0
  56. slicot-1.0.0/python/wrappers/py_bb.c +862 -0
  57. slicot-1.0.0/python/wrappers/py_bd.c +384 -0
  58. slicot-1.0.0/python/wrappers/py_de.c +106 -0
  59. slicot-1.0.0/python/wrappers/py_df.c +45 -0
  60. slicot-1.0.0/python/wrappers/py_dg.c +177 -0
  61. slicot-1.0.0/python/wrappers/py_dk.c +47 -0
  62. slicot-1.0.0/python/wrappers/py_fb.c +1095 -0
  63. slicot-1.0.0/python/wrappers/py_fd.c +173 -0
  64. slicot-1.0.0/python/wrappers/py_ib.c +2211 -0
  65. slicot-1.0.0/python/wrappers/py_lapack_aux.c +810 -0
  66. slicot-1.0.0/python/wrappers/py_ma.c +1415 -0
  67. slicot-1.0.0/python/wrappers/py_mb01.c +2245 -0
  68. slicot-1.0.0/python/wrappers/py_mb02.c +4072 -0
  69. slicot-1.0.0/python/wrappers/py_mb03.c +9268 -0
  70. slicot-1.0.0/python/wrappers/py_mb04.c +9438 -0
  71. slicot-1.0.0/python/wrappers/py_mb05.c +431 -0
  72. slicot-1.0.0/python/wrappers/py_mc.c +1180 -0
  73. slicot-1.0.0/python/wrappers/py_md.c +716 -0
  74. slicot-1.0.0/python/wrappers/py_nf.c +376 -0
  75. slicot-1.0.0/python/wrappers/py_sb.c +12140 -0
  76. slicot-1.0.0/python/wrappers/py_sg.c +2452 -0
  77. slicot-1.0.0/python/wrappers/py_tb.c +4030 -0
  78. slicot-1.0.0/python/wrappers/py_tc.c +382 -0
  79. slicot-1.0.0/python/wrappers/py_td.c +549 -0
  80. slicot-1.0.0/python/wrappers/py_tf.c +853 -0
  81. slicot-1.0.0/python/wrappers/py_tg.c +4376 -0
  82. slicot-1.0.0/python/wrappers/py_ud.c +475 -0
  83. slicot-1.0.0/python/wrappers/py_ue.c +26 -0
  84. slicot-1.0.0/python/wrappers/py_wrappers.h +655 -0
  85. slicot-1.0.0/src/AB/ab01md.c +178 -0
  86. slicot-1.0.0/src/AB/ab01nd.c +219 -0
  87. slicot-1.0.0/src/AB/ab01od.c +224 -0
  88. slicot-1.0.0/src/AB/ab04md.c +122 -0
  89. slicot-1.0.0/src/AB/ab05md.c +237 -0
  90. slicot-1.0.0/src/AB/ab05nd.c +275 -0
  91. slicot-1.0.0/src/AB/ab05od.c +188 -0
  92. slicot-1.0.0/src/AB/ab05pd.c +187 -0
  93. slicot-1.0.0/src/AB/ab05qd.c +206 -0
  94. slicot-1.0.0/src/AB/ab05rd.c +128 -0
  95. slicot-1.0.0/src/AB/ab05sd.c +163 -0
  96. slicot-1.0.0/src/AB/ab07md.c +82 -0
  97. slicot-1.0.0/src/AB/ab07nd.c +129 -0
  98. slicot-1.0.0/src/AB/ab08md.c +131 -0
  99. slicot-1.0.0/src/AB/ab08mz.c +129 -0
  100. slicot-1.0.0/src/AB/ab08nd.c +280 -0
  101. slicot-1.0.0/src/AB/ab08nw.c +292 -0
  102. slicot-1.0.0/src/AB/ab08nx.c +254 -0
  103. slicot-1.0.0/src/AB/ab08ny.c +324 -0
  104. slicot-1.0.0/src/AB/ab08nz.c +281 -0
  105. slicot-1.0.0/src/AB/ab09ad.c +129 -0
  106. slicot-1.0.0/src/AB/ab09ax.c +247 -0
  107. slicot-1.0.0/src/AB/ab09bd.c +140 -0
  108. slicot-1.0.0/src/AB/ab09bx.c +276 -0
  109. slicot-1.0.0/src/AB/ab09cd.c +144 -0
  110. slicot-1.0.0/src/AB/ab09cx.c +283 -0
  111. slicot-1.0.0/src/AB/ab09dd.c +103 -0
  112. slicot-1.0.0/src/AB/ab09ed.c +164 -0
  113. slicot-1.0.0/src/AB/ab09fd.c +300 -0
  114. slicot-1.0.0/src/AB/ab09gd.c +299 -0
  115. slicot-1.0.0/src/AB/ab09hd.c +272 -0
  116. slicot-1.0.0/src/AB/ab09hx.c +325 -0
  117. slicot-1.0.0/src/AB/ab09hy.c +205 -0
  118. slicot-1.0.0/src/AB/ab09id.c +447 -0
  119. slicot-1.0.0/src/AB/ab09ix.c +267 -0
  120. slicot-1.0.0/src/AB/ab09iy.c +290 -0
  121. slicot-1.0.0/src/AB/ab09jd.c +728 -0
  122. slicot-1.0.0/src/AB/ab09jv.c +591 -0
  123. slicot-1.0.0/src/AB/ab09jw.c +573 -0
  124. slicot-1.0.0/src/AB/ab09jx.c +129 -0
  125. slicot-1.0.0/src/AB/ab09kd.c +348 -0
  126. slicot-1.0.0/src/AB/ab09kx.c +445 -0
  127. slicot-1.0.0/src/AB/ab09md.c +177 -0
  128. slicot-1.0.0/src/AB/ab09nd.c +181 -0
  129. slicot-1.0.0/src/AB/ab13ad.c +140 -0
  130. slicot-1.0.0/src/AB/ab13ax.c +132 -0
  131. slicot-1.0.0/src/AB/ab13bd.c +148 -0
  132. slicot-1.0.0/src/AB/ab13cd.c +402 -0
  133. slicot-1.0.0/src/AB/ab13dd.c +1000 -0
  134. slicot-1.0.0/src/AB/ab13dx.c +279 -0
  135. slicot-1.0.0/src/AB/ab13ed.c +143 -0
  136. slicot-1.0.0/src/AB/ab13fd.c +207 -0
  137. slicot-1.0.0/src/AB/ab13hd.c +143 -0
  138. slicot-1.0.0/src/AB/ab13id.c +356 -0
  139. slicot-1.0.0/src/AB/ab13md.c +1373 -0
  140. slicot-1.0.0/src/AB/ab8nxz.c +246 -0
  141. slicot-1.0.0/src/AG/ag07bd.c +102 -0
  142. slicot-1.0.0/src/AG/ag08bd.c +301 -0
  143. slicot-1.0.0/src/AG/ag08by.c +397 -0
  144. slicot-1.0.0/src/AG/ag08bz.c +300 -0
  145. slicot-1.0.0/src/AG/ag8byz.c +402 -0
  146. slicot-1.0.0/src/BB/bb01ad.c +671 -0
  147. slicot-1.0.0/src/BB/bb02ad.c +512 -0
  148. slicot-1.0.0/src/BB/bb03ad.c +306 -0
  149. slicot-1.0.0/src/BB/bb04ad.c +290 -0
  150. slicot-1.0.0/src/BD/bd01ad.c +567 -0
  151. slicot-1.0.0/src/BD/bd02ad.c +412 -0
  152. slicot-1.0.0/src/DE/de01od.c +96 -0
  153. slicot-1.0.0/src/DE/de01pd.c +119 -0
  154. slicot-1.0.0/src/DE/delctg.c +15 -0
  155. slicot-1.0.0/src/DE/zelctg.c +14 -0
  156. slicot-1.0.0/src/DF/df01md.c +126 -0
  157. slicot-1.0.0/src/DG/dg01md.c +87 -0
  158. slicot-1.0.0/src/DG/dg01nd.c +43 -0
  159. slicot-1.0.0/src/DG/dg01ny.c +62 -0
  160. slicot-1.0.0/src/DG/dg01od.c +218 -0
  161. slicot-1.0.0/src/DK/dk01md.c +56 -0
  162. slicot-1.0.0/src/FB/fb01qd.c +181 -0
  163. slicot-1.0.0/src/FB/fb01rd.c +214 -0
  164. slicot-1.0.0/src/FB/fb01sd.c +233 -0
  165. slicot-1.0.0/src/FB/fb01td.c +220 -0
  166. slicot-1.0.0/src/FB/fb01vd.c +138 -0
  167. slicot-1.0.0/src/FD/fd01ad.c +95 -0
  168. slicot-1.0.0/src/IB/.gitkeep +0 -0
  169. slicot-1.0.0/src/IB/ib01ad.c +225 -0
  170. slicot-1.0.0/src/IB/ib01bd.c +370 -0
  171. slicot-1.0.0/src/IB/ib01cd.c +357 -0
  172. slicot-1.0.0/src/IB/ib01md.c +810 -0
  173. slicot-1.0.0/src/IB/ib01my.c +684 -0
  174. slicot-1.0.0/src/IB/ib01nd.c +458 -0
  175. slicot-1.0.0/src/IB/ib01od.c +91 -0
  176. slicot-1.0.0/src/IB/ib01oy.c +37 -0
  177. slicot-1.0.0/src/IB/ib01pd.c +554 -0
  178. slicot-1.0.0/src/IB/ib01px.c +157 -0
  179. slicot-1.0.0/src/IB/ib01py.c +231 -0
  180. slicot-1.0.0/src/IB/ib01qd.c +626 -0
  181. slicot-1.0.0/src/IB/ib01rd.c +494 -0
  182. slicot-1.0.0/src/IB/ib03ad.c +418 -0
  183. slicot-1.0.0/src/IB/ib03bd.c +581 -0
  184. slicot-1.0.0/src/MA/.gitkeep +0 -0
  185. slicot-1.0.0/src/MA/ma01ad.c +25 -0
  186. slicot-1.0.0/src/MA/ma01bd.c +60 -0
  187. slicot-1.0.0/src/MA/ma01bz.c +51 -0
  188. slicot-1.0.0/src/MA/ma01cd.c +45 -0
  189. slicot-1.0.0/src/MA/ma01dd.c +65 -0
  190. slicot-1.0.0/src/MA/ma01dz.c +156 -0
  191. slicot-1.0.0/src/MA/ma02ad.c +44 -0
  192. slicot-1.0.0/src/MA/ma02az.c +63 -0
  193. slicot-1.0.0/src/MA/ma02bd.c +32 -0
  194. slicot-1.0.0/src/MA/ma02bz.c +32 -0
  195. slicot-1.0.0/src/MA/ma02cd.c +51 -0
  196. slicot-1.0.0/src/MA/ma02cz.c +51 -0
  197. slicot-1.0.0/src/MA/ma02dd.c +59 -0
  198. slicot-1.0.0/src/MA/ma02ed.c +32 -0
  199. slicot-1.0.0/src/MA/ma02es.c +29 -0
  200. slicot-1.0.0/src/MA/ma02ez.c +94 -0
  201. slicot-1.0.0/src/MA/ma02fd.c +22 -0
  202. slicot-1.0.0/src/MA/ma02gd.c +57 -0
  203. slicot-1.0.0/src/MA/ma02gz.c +57 -0
  204. slicot-1.0.0/src/MA/ma02hd.c +72 -0
  205. slicot-1.0.0/src/MA/ma02hz.c +72 -0
  206. slicot-1.0.0/src/MA/ma02id.c +194 -0
  207. slicot-1.0.0/src/MA/ma02iz.c +262 -0
  208. slicot-1.0.0/src/MA/ma02jd.c +74 -0
  209. slicot-1.0.0/src/MA/ma02jz.c +74 -0
  210. slicot-1.0.0/src/MA/ma02md.c +92 -0
  211. slicot-1.0.0/src/MA/ma02mz.c +108 -0
  212. slicot-1.0.0/src/MA/ma02nz.c +111 -0
  213. slicot-1.0.0/src/MA/ma02od.c +98 -0
  214. slicot-1.0.0/src/MA/ma02oz.c +111 -0
  215. slicot-1.0.0/src/MA/ma02pd.c +53 -0
  216. slicot-1.0.0/src/MA/ma02pz.c +53 -0
  217. slicot-1.0.0/src/MA/ma02rd.c +179 -0
  218. slicot-1.0.0/src/MA/ma02sd.c +30 -0
  219. slicot-1.0.0/src/MB/mb01kd.c +167 -0
  220. slicot-1.0.0/src/MB/mb01ld.c +226 -0
  221. slicot-1.0.0/src/MB/mb01md.c +151 -0
  222. slicot-1.0.0/src/MB/mb01nd.c +118 -0
  223. slicot-1.0.0/src/MB/mb01oc.c +225 -0
  224. slicot-1.0.0/src/MB/mb01od.c +199 -0
  225. slicot-1.0.0/src/MB/mb01oe.c +233 -0
  226. slicot-1.0.0/src/MB/mb01oh.c +234 -0
  227. slicot-1.0.0/src/MB/mb01oo.c +60 -0
  228. slicot-1.0.0/src/MB/mb01os.c +192 -0
  229. slicot-1.0.0/src/MB/mb01ot.c +138 -0
  230. slicot-1.0.0/src/MB/mb01pd.c +119 -0
  231. slicot-1.0.0/src/MB/mb01qd.c +183 -0
  232. slicot-1.0.0/src/MB/mb01rb.c +234 -0
  233. slicot-1.0.0/src/MB/mb01rd.c +169 -0
  234. slicot-1.0.0/src/MB/mb01rh.c +246 -0
  235. slicot-1.0.0/src/MB/mb01rt.c +107 -0
  236. slicot-1.0.0/src/MB/mb01ru.c +78 -0
  237. slicot-1.0.0/src/MB/mb01rw.c +185 -0
  238. slicot-1.0.0/src/MB/mb01rx.c +187 -0
  239. slicot-1.0.0/src/MB/mb01ry.c +194 -0
  240. slicot-1.0.0/src/MB/mb01sd.c +40 -0
  241. slicot-1.0.0/src/MB/mb01ss.c +54 -0
  242. slicot-1.0.0/src/MB/mb01td.c +65 -0
  243. slicot-1.0.0/src/MB/mb01ud.c +100 -0
  244. slicot-1.0.0/src/MB/mb01uw.c +210 -0
  245. slicot-1.0.0/src/MB/mb01ux.c +201 -0
  246. slicot-1.0.0/src/MB/mb01uy.c +159 -0
  247. slicot-1.0.0/src/MB/mb01uz.c +322 -0
  248. slicot-1.0.0/src/MB/mb01vd.c +143 -0
  249. slicot-1.0.0/src/MB/mb01wd.c +142 -0
  250. slicot-1.0.0/src/MB/mb01xd.c +100 -0
  251. slicot-1.0.0/src/MB/mb01xy.c +83 -0
  252. slicot-1.0.0/src/MB/mb01yd.c +151 -0
  253. slicot-1.0.0/src/MB/mb01zd.c +245 -0
  254. slicot-1.0.0/src/MB/mb02cd.c +299 -0
  255. slicot-1.0.0/src/MB/mb02cu.c +713 -0
  256. slicot-1.0.0/src/MB/mb02cv.c +508 -0
  257. slicot-1.0.0/src/MB/mb02cx.c +152 -0
  258. slicot-1.0.0/src/MB/mb02cy.c +188 -0
  259. slicot-1.0.0/src/MB/mb02dd.c +240 -0
  260. slicot-1.0.0/src/MB/mb02ed.c +200 -0
  261. slicot-1.0.0/src/MB/mb02fd.c +200 -0
  262. slicot-1.0.0/src/MB/mb02gd.c +361 -0
  263. slicot-1.0.0/src/MB/mb02hd.c +374 -0
  264. slicot-1.0.0/src/MB/mb02id.c +373 -0
  265. slicot-1.0.0/src/MB/mb02jd.c +391 -0
  266. slicot-1.0.0/src/MB/mb02jx.c +497 -0
  267. slicot-1.0.0/src/MB/mb02kd.c +589 -0
  268. slicot-1.0.0/src/MB/mb02md.c +253 -0
  269. slicot-1.0.0/src/MB/mb02nd.c +425 -0
  270. slicot-1.0.0/src/MB/mb02ny.c +89 -0
  271. slicot-1.0.0/src/MB/mb02od.c +90 -0
  272. slicot-1.0.0/src/MB/mb02pd.c +125 -0
  273. slicot-1.0.0/src/MB/mb02qd.c +241 -0
  274. slicot-1.0.0/src/MB/mb02qy.c +138 -0
  275. slicot-1.0.0/src/MB/mb02rd.c +64 -0
  276. slicot-1.0.0/src/MB/mb02rz.c +80 -0
  277. slicot-1.0.0/src/MB/mb02sd.c +55 -0
  278. slicot-1.0.0/src/MB/mb02sz.c +63 -0
  279. slicot-1.0.0/src/MB/mb02td.c +102 -0
  280. slicot-1.0.0/src/MB/mb02tz.c +103 -0
  281. slicot-1.0.0/src/MB/mb02ud.c +271 -0
  282. slicot-1.0.0/src/MB/mb02uu.c +77 -0
  283. slicot-1.0.0/src/MB/mb02uv.c +128 -0
  284. slicot-1.0.0/src/MB/mb02uw.c +187 -0
  285. slicot-1.0.0/src/MB/mb02vd.c +70 -0
  286. slicot-1.0.0/src/MB/mb02wd.c +156 -0
  287. slicot-1.0.0/src/MB/mb02xd.c +141 -0
  288. slicot-1.0.0/src/MB/mb02yd.c +182 -0
  289. slicot-1.0.0/src/MB/mb03ab.c +163 -0
  290. slicot-1.0.0/src/MB/mb03ad.c +150 -0
  291. slicot-1.0.0/src/MB/mb03ae.c +174 -0
  292. slicot-1.0.0/src/MB/mb03af.c +257 -0
  293. slicot-1.0.0/src/MB/mb03ag.c +204 -0
  294. slicot-1.0.0/src/MB/mb03ah.c +173 -0
  295. slicot-1.0.0/src/MB/mb03ai.c +142 -0
  296. slicot-1.0.0/src/MB/mb03ba.c +51 -0
  297. slicot-1.0.0/src/MB/mb03bb.c +495 -0
  298. slicot-1.0.0/src/MB/mb03bc.c +267 -0
  299. slicot-1.0.0/src/MB/mb03bd.c +1346 -0
  300. slicot-1.0.0/src/MB/mb03be.c +75 -0
  301. slicot-1.0.0/src/MB/mb03bf.c +84 -0
  302. slicot-1.0.0/src/MB/mb03bg.c +60 -0
  303. slicot-1.0.0/src/MB/mb03bz.c +934 -0
  304. slicot-1.0.0/src/MB/mb03cd.c +354 -0
  305. slicot-1.0.0/src/MB/mb03cz.c +28 -0
  306. slicot-1.0.0/src/MB/mb03dd.c +451 -0
  307. slicot-1.0.0/src/MB/mb03dz.c +21 -0
  308. slicot-1.0.0/src/MB/mb03ed.c +208 -0
  309. slicot-1.0.0/src/MB/mb03fd.c +141 -0
  310. slicot-1.0.0/src/MB/mb03fz.c +830 -0
  311. slicot-1.0.0/src/MB/mb03gd.c +208 -0
  312. slicot-1.0.0/src/MB/mb03gz.c +21 -0
  313. slicot-1.0.0/src/MB/mb03hd.c +130 -0
  314. slicot-1.0.0/src/MB/mb03hz.c +14 -0
  315. slicot-1.0.0/src/MB/mb03id.c +1008 -0
  316. slicot-1.0.0/src/MB/mb03iz.c +367 -0
  317. slicot-1.0.0/src/MB/mb03jd.c +862 -0
  318. slicot-1.0.0/src/MB/mb03jp.c +837 -0
  319. slicot-1.0.0/src/MB/mb03jz.c +290 -0
  320. slicot-1.0.0/src/MB/mb03ka.c +340 -0
  321. slicot-1.0.0/src/MB/mb03kb.c +1230 -0
  322. slicot-1.0.0/src/MB/mb03kc.c +111 -0
  323. slicot-1.0.0/src/MB/mb03kd.c +278 -0
  324. slicot-1.0.0/src/MB/mb03ke.c +581 -0
  325. slicot-1.0.0/src/MB/mb03ld.c +348 -0
  326. slicot-1.0.0/src/MB/mb03lf.c +596 -0
  327. slicot-1.0.0/src/MB/mb03lp.c +408 -0
  328. slicot-1.0.0/src/MB/mb03lz.c +596 -0
  329. slicot-1.0.0/src/MB/mb03md.c +111 -0
  330. slicot-1.0.0/src/MB/mb03my.c +21 -0
  331. slicot-1.0.0/src/MB/mb03nd.c +53 -0
  332. slicot-1.0.0/src/MB/mb03ny.c +110 -0
  333. slicot-1.0.0/src/MB/mb03od.c +148 -0
  334. slicot-1.0.0/src/MB/mb03oy.c +194 -0
  335. slicot-1.0.0/src/MB/mb03pd.c +111 -0
  336. slicot-1.0.0/src/MB/mb03py.c +190 -0
  337. slicot-1.0.0/src/MB/mb03qd.c +153 -0
  338. slicot-1.0.0/src/MB/mb03qg.c +179 -0
  339. slicot-1.0.0/src/MB/mb03qv.c +74 -0
  340. slicot-1.0.0/src/MB/mb03qw.c +63 -0
  341. slicot-1.0.0/src/MB/mb03qx.c +64 -0
  342. slicot-1.0.0/src/MB/mb03qy.c +73 -0
  343. slicot-1.0.0/src/MB/mb03rd.c +282 -0
  344. slicot-1.0.0/src/MB/mb03rw.c +87 -0
  345. slicot-1.0.0/src/MB/mb03rx.c +77 -0
  346. slicot-1.0.0/src/MB/mb03ry.c +106 -0
  347. slicot-1.0.0/src/MB/mb03rz.c +208 -0
  348. slicot-1.0.0/src/MB/mb03sd.c +141 -0
  349. slicot-1.0.0/src/MB/mb03td.c +331 -0
  350. slicot-1.0.0/src/MB/mb03ts.c +516 -0
  351. slicot-1.0.0/src/MB/mb03ud.c +172 -0
  352. slicot-1.0.0/src/MB/mb03vd.c +88 -0
  353. slicot-1.0.0/src/MB/mb03vw.c +497 -0
  354. slicot-1.0.0/src/MB/mb03vy.c +100 -0
  355. slicot-1.0.0/src/MB/mb03wa.c +281 -0
  356. slicot-1.0.0/src/MB/mb03wd.c +641 -0
  357. slicot-1.0.0/src/MB/mb03wx.c +102 -0
  358. slicot-1.0.0/src/MB/mb03xd.c +510 -0
  359. slicot-1.0.0/src/MB/mb03xp.c +105 -0
  360. slicot-1.0.0/src/MB/mb03xs.c +268 -0
  361. slicot-1.0.0/src/MB/mb03xu.c +894 -0
  362. slicot-1.0.0/src/MB/mb03xz.c +490 -0
  363. slicot-1.0.0/src/MB/mb03ya.c +112 -0
  364. slicot-1.0.0/src/MB/mb03yd.c +285 -0
  365. slicot-1.0.0/src/MB/mb03yt.c +167 -0
  366. slicot-1.0.0/src/MB/mb03za.c +1083 -0
  367. slicot-1.0.0/src/MB/mb03zd.c +697 -0
  368. slicot-1.0.0/src/MB/mb04ad.c +881 -0
  369. slicot-1.0.0/src/MB/mb04az.c +620 -0
  370. slicot-1.0.0/src/MB/mb04bd.c +829 -0
  371. slicot-1.0.0/src/MB/mb04bp.c +1075 -0
  372. slicot-1.0.0/src/MB/mb04bz.c +561 -0
  373. slicot-1.0.0/src/MB/mb04cd.c +1746 -0
  374. slicot-1.0.0/src/MB/mb04db.c +85 -0
  375. slicot-1.0.0/src/MB/mb04dd.c +324 -0
  376. slicot-1.0.0/src/MB/mb04di.c +84 -0
  377. slicot-1.0.0/src/MB/mb04dl.c +663 -0
  378. slicot-1.0.0/src/MB/mb04dp.c +936 -0
  379. slicot-1.0.0/src/MB/mb04ds.c +380 -0
  380. slicot-1.0.0/src/MB/mb04dy.c +132 -0
  381. slicot-1.0.0/src/MB/mb04dz.c +337 -0
  382. slicot-1.0.0/src/MB/mb04ed.c +806 -0
  383. slicot-1.0.0/src/MB/mb04fd.c +653 -0
  384. slicot-1.0.0/src/MB/mb04fp.c +814 -0
  385. slicot-1.0.0/src/MB/mb04gd.c +127 -0
  386. slicot-1.0.0/src/MB/mb04hd.c +1210 -0
  387. slicot-1.0.0/src/MB/mb04id.c +154 -0
  388. slicot-1.0.0/src/MB/mb04iy.c +198 -0
  389. slicot-1.0.0/src/MB/mb04iz.c +147 -0
  390. slicot-1.0.0/src/MB/mb04jd.c +105 -0
  391. slicot-1.0.0/src/MB/mb04kd.c +89 -0
  392. slicot-1.0.0/src/MB/mb04ld.c +71 -0
  393. slicot-1.0.0/src/MB/mb04md.c +195 -0
  394. slicot-1.0.0/src/MB/mb04nd.c +54 -0
  395. slicot-1.0.0/src/MB/mb04ny.c +301 -0
  396. slicot-1.0.0/src/MB/mb04od.c +63 -0
  397. slicot-1.0.0/src/MB/mb04ow.c +175 -0
  398. slicot-1.0.0/src/MB/mb04ox.c +38 -0
  399. slicot-1.0.0/src/MB/mb04oy.c +260 -0
  400. slicot-1.0.0/src/MB/mb04pa.c +790 -0
  401. slicot-1.0.0/src/MB/mb04pb.c +27 -0
  402. slicot-1.0.0/src/MB/mb04pu.c +163 -0
  403. slicot-1.0.0/src/MB/mb04py.c +495 -0
  404. slicot-1.0.0/src/MB/mb04qb.c +242 -0
  405. slicot-1.0.0/src/MB/mb04qc.c +734 -0
  406. slicot-1.0.0/src/MB/mb04qf.c +263 -0
  407. slicot-1.0.0/src/MB/mb04qs.c +110 -0
  408. slicot-1.0.0/src/MB/mb04qu.c +215 -0
  409. slicot-1.0.0/src/MB/mb04rb.c +80 -0
  410. slicot-1.0.0/src/MB/mb04rd.c +555 -0
  411. slicot-1.0.0/src/MB/mb04rs.c +458 -0
  412. slicot-1.0.0/src/MB/mb04rt.c +154 -0
  413. slicot-1.0.0/src/MB/mb04ru.c +146 -0
  414. slicot-1.0.0/src/MB/mb04rv.c +127 -0
  415. slicot-1.0.0/src/MB/mb04rw.c +172 -0
  416. slicot-1.0.0/src/MB/mb04rz.c +438 -0
  417. slicot-1.0.0/src/MB/mb04su.c +87 -0
  418. slicot-1.0.0/src/MB/mb04tb.c +89 -0
  419. slicot-1.0.0/src/MB/mb04ts.c +285 -0
  420. slicot-1.0.0/src/MB/mb04tt.c +151 -0
  421. slicot-1.0.0/src/MB/mb04tu.c +34 -0
  422. slicot-1.0.0/src/MB/mb04tv.c +63 -0
  423. slicot-1.0.0/src/MB/mb04tw.c +62 -0
  424. slicot-1.0.0/src/MB/mb04tx.c +198 -0
  425. slicot-1.0.0/src/MB/mb04ty.c +64 -0
  426. slicot-1.0.0/src/MB/mb04ud.c +142 -0
  427. slicot-1.0.0/src/MB/mb04vd.c +204 -0
  428. slicot-1.0.0/src/MB/mb04vx.c +189 -0
  429. slicot-1.0.0/src/MB/mb04wd.c +204 -0
  430. slicot-1.0.0/src/MB/mb04wp.c +106 -0
  431. slicot-1.0.0/src/MB/mb04wr.c +195 -0
  432. slicot-1.0.0/src/MB/mb04wu.c +222 -0
  433. slicot-1.0.0/src/MB/mb04xd.c +256 -0
  434. slicot-1.0.0/src/MB/mb04xy.c +113 -0
  435. slicot-1.0.0/src/MB/mb04yd.c +330 -0
  436. slicot-1.0.0/src/MB/mb04yw.c +318 -0
  437. slicot-1.0.0/src/MB/mb04zd.c +360 -0
  438. slicot-1.0.0/src/MB/mb05md.c +145 -0
  439. slicot-1.0.0/src/MB/mb05my.c +181 -0
  440. slicot-1.0.0/src/MB/mb05nd.c +189 -0
  441. slicot-1.0.0/src/MB/mb05od.c +373 -0
  442. slicot-1.0.0/src/MB/mb05oy.c +79 -0
  443. slicot-1.0.0/src/MB/mb3jzp.c +562 -0
  444. slicot-1.0.0/src/MB/mb3lzp.c +545 -0
  445. slicot-1.0.0/src/MB/mb3oyz.c +178 -0
  446. slicot-1.0.0/src/MB/mb3pyz.c +173 -0
  447. slicot-1.0.0/src/MB/mb4dbz.c +85 -0
  448. slicot-1.0.0/src/MB/mb4dlz.c +665 -0
  449. slicot-1.0.0/src/MB/mb4dpz.c +994 -0
  450. slicot-1.0.0/src/MC/mc01md.c +37 -0
  451. slicot-1.0.0/src/MC/mc01nd.c +40 -0
  452. slicot-1.0.0/src/MC/mc01od.c +62 -0
  453. slicot-1.0.0/src/MC/mc01pd.c +58 -0
  454. slicot-1.0.0/src/MC/mc01py.c +61 -0
  455. slicot-1.0.0/src/MC/mc01qd.c +51 -0
  456. slicot-1.0.0/src/MC/mc01rd.c +107 -0
  457. slicot-1.0.0/src/MC/mc01sd.c +117 -0
  458. slicot-1.0.0/src/MC/mc01sw.c +38 -0
  459. slicot-1.0.0/src/MC/mc01sx.c +22 -0
  460. slicot-1.0.0/src/MC/mc01sy.c +63 -0
  461. slicot-1.0.0/src/MC/mc01td.c +136 -0
  462. slicot-1.0.0/src/MC/mc01vd.c +206 -0
  463. slicot-1.0.0/src/MC/mc01wd.c +41 -0
  464. slicot-1.0.0/src/MC/mc01xd.c +219 -0
  465. slicot-1.0.0/src/MC/mc03md.c +146 -0
  466. slicot-1.0.0/src/MC/mc03nd.c +164 -0
  467. slicot-1.0.0/src/MC/mc03nx.c +42 -0
  468. slicot-1.0.0/src/MC/mc03ny.c +174 -0
  469. slicot-1.0.0/src/MD/.gitkeep +0 -0
  470. slicot-1.0.0/src/MD/md03ad.c +428 -0
  471. slicot-1.0.0/src/MD/md03ba.c +43 -0
  472. slicot-1.0.0/src/MD/md03bb.c +49 -0
  473. slicot-1.0.0/src/MD/md03bd.c +476 -0
  474. slicot-1.0.0/src/MD/md03bf.c +60 -0
  475. slicot-1.0.0/src/MD/md03bx.c +117 -0
  476. slicot-1.0.0/src/MD/md03by.c +306 -0
  477. slicot-1.0.0/src/NF/.gitkeep +0 -0
  478. slicot-1.0.0/src/NF/nf01ad.c +119 -0
  479. slicot-1.0.0/src/NF/nf01ay.c +217 -0
  480. slicot-1.0.0/src/NF/nf01ba.c +72 -0
  481. slicot-1.0.0/src/NF/nf01bb.c +88 -0
  482. slicot-1.0.0/src/NF/nf01bd.c +236 -0
  483. slicot-1.0.0/src/NF/nf01be.c +192 -0
  484. slicot-1.0.0/src/NF/nf01bf.c +147 -0
  485. slicot-1.0.0/src/NF/nf01bp.c +297 -0
  486. slicot-1.0.0/src/NF/nf01bq.c +265 -0
  487. slicot-1.0.0/src/NF/nf01br.c +572 -0
  488. slicot-1.0.0/src/NF/nf01bs.c +338 -0
  489. slicot-1.0.0/src/NF/nf01bu.c +207 -0
  490. slicot-1.0.0/src/NF/nf01bv.c +115 -0
  491. slicot-1.0.0/src/NF/nf01bw.c +101 -0
  492. slicot-1.0.0/src/NF/nf01bx.c +62 -0
  493. slicot-1.0.0/src/NF/nf01by.c +143 -0
  494. slicot-1.0.0/src/SB/.gitkeep +0 -0
  495. slicot-1.0.0/src/SB/sb01bd.c +439 -0
  496. slicot-1.0.0/src/SB/sb01bx.c +76 -0
  497. slicot-1.0.0/src/SB/sb01by.c +202 -0
  498. slicot-1.0.0/src/SB/sb01dd.c +489 -0
  499. slicot-1.0.0/src/SB/sb01fy.c +172 -0
  500. slicot-1.0.0/src/SB/sb01md.c +300 -0
  501. slicot-1.0.0/src/SB/sb02cx.c +21 -0
  502. slicot-1.0.0/src/SB/sb02md.c +259 -0
  503. slicot-1.0.0/src/SB/sb02mr.c +15 -0
  504. slicot-1.0.0/src/SB/sb02ms.c +15 -0
  505. slicot-1.0.0/src/SB/sb02mt.c +228 -0
  506. slicot-1.0.0/src/SB/sb02mu.c +244 -0
  507. slicot-1.0.0/src/SB/sb02mv.c +15 -0
  508. slicot-1.0.0/src/SB/sb02mw.c +15 -0
  509. slicot-1.0.0/src/SB/sb02mx.c +285 -0
  510. slicot-1.0.0/src/SB/sb02nd.c +388 -0
  511. slicot-1.0.0/src/SB/sb02od.c +445 -0
  512. slicot-1.0.0/src/SB/sb02ou.c +16 -0
  513. slicot-1.0.0/src/SB/sb02ov.c +18 -0
  514. slicot-1.0.0/src/SB/sb02ow.c +16 -0
  515. slicot-1.0.0/src/SB/sb02ox.c +18 -0
  516. slicot-1.0.0/src/SB/sb02oy.c +433 -0
  517. slicot-1.0.0/src/SB/sb02pd.c +470 -0
  518. slicot-1.0.0/src/SB/sb02qd.c +463 -0
  519. slicot-1.0.0/src/SB/sb02rd.c +344 -0
  520. slicot-1.0.0/src/SB/sb02ru.c +244 -0
  521. slicot-1.0.0/src/SB/sb02sd.c +403 -0
  522. slicot-1.0.0/src/SB/sb03md.c +249 -0
  523. slicot-1.0.0/src/SB/sb03mu.c +323 -0
  524. slicot-1.0.0/src/SB/sb03mv.c +163 -0
  525. slicot-1.0.0/src/SB/sb03mw.c +155 -0
  526. slicot-1.0.0/src/SB/sb03mx.c +602 -0
  527. slicot-1.0.0/src/SB/sb03my.c +484 -0
  528. slicot-1.0.0/src/SB/sb03od.c +509 -0
  529. slicot-1.0.0/src/SB/sb03or.c +267 -0
  530. slicot-1.0.0/src/SB/sb03os.c +362 -0
  531. slicot-1.0.0/src/SB/sb03ot.c +642 -0
  532. slicot-1.0.0/src/SB/sb03ou.c +118 -0
  533. slicot-1.0.0/src/SB/sb03ov.c +38 -0
  534. slicot-1.0.0/src/SB/sb03oy.c +457 -0
  535. slicot-1.0.0/src/SB/sb03oz.c +497 -0
  536. slicot-1.0.0/src/SB/sb03pd.c +173 -0
  537. slicot-1.0.0/src/SB/sb03qd.c +407 -0
  538. slicot-1.0.0/src/SB/sb03qx.c +203 -0
  539. slicot-1.0.0/src/SB/sb03qy.c +224 -0
  540. slicot-1.0.0/src/SB/sb03rd.c +188 -0
  541. slicot-1.0.0/src/SB/sb03sd.c +394 -0
  542. slicot-1.0.0/src/SB/sb03sx.c +162 -0
  543. slicot-1.0.0/src/SB/sb03sy.c +193 -0
  544. slicot-1.0.0/src/SB/sb03td.c +198 -0
  545. slicot-1.0.0/src/SB/sb03ud.c +208 -0
  546. slicot-1.0.0/src/SB/sb04md.c +194 -0
  547. slicot-1.0.0/src/SB/sb04mr.c +123 -0
  548. slicot-1.0.0/src/SB/sb04mu.c +79 -0
  549. slicot-1.0.0/src/SB/sb04mw.c +98 -0
  550. slicot-1.0.0/src/SB/sb04my.c +57 -0
  551. slicot-1.0.0/src/SB/sb04nd.c +221 -0
  552. slicot-1.0.0/src/SB/sb04nv.c +78 -0
  553. slicot-1.0.0/src/SB/sb04nw.c +68 -0
  554. slicot-1.0.0/src/SB/sb04nx.c +200 -0
  555. slicot-1.0.0/src/SB/sb04ny.c +127 -0
  556. slicot-1.0.0/src/SB/sb04od.c +516 -0
  557. slicot-1.0.0/src/SB/sb04ow.c +357 -0
  558. slicot-1.0.0/src/SB/sb04pd.c +381 -0
  559. slicot-1.0.0/src/SB/sb04px.c +410 -0
  560. slicot-1.0.0/src/SB/sb04py.c +1356 -0
  561. slicot-1.0.0/src/SB/sb04qd.c +209 -0
  562. slicot-1.0.0/src/SB/sb04qr.c +123 -0
  563. slicot-1.0.0/src/SB/sb04qu.c +105 -0
  564. slicot-1.0.0/src/SB/sb04qy.c +76 -0
  565. slicot-1.0.0/src/SB/sb04rd.c +211 -0
  566. slicot-1.0.0/src/SB/sb04rv.c +115 -0
  567. slicot-1.0.0/src/SB/sb04rw.c +93 -0
  568. slicot-1.0.0/src/SB/sb04rx.c +280 -0
  569. slicot-1.0.0/src/SB/sb04ry.c +182 -0
  570. slicot-1.0.0/src/SB/sb06nd.c +197 -0
  571. slicot-1.0.0/src/SB/sb08cd.c +138 -0
  572. slicot-1.0.0/src/SB/sb08dd.c +293 -0
  573. slicot-1.0.0/src/SB/sb08ed.c +134 -0
  574. slicot-1.0.0/src/SB/sb08fd.c +332 -0
  575. slicot-1.0.0/src/SB/sb08gd.c +99 -0
  576. slicot-1.0.0/src/SB/sb08hd.c +122 -0
  577. slicot-1.0.0/src/SB/sb08md.c +239 -0
  578. slicot-1.0.0/src/SB/sb08my.c +59 -0
  579. slicot-1.0.0/src/SB/sb08nd.c +181 -0
  580. slicot-1.0.0/src/SB/sb08ny.c +40 -0
  581. slicot-1.0.0/src/SB/sb09md.c +116 -0
  582. slicot-1.0.0/src/SB/sb10ad.c +454 -0
  583. slicot-1.0.0/src/SB/sb10dd.c +567 -0
  584. slicot-1.0.0/src/SB/sb10ed.c +229 -0
  585. slicot-1.0.0/src/SB/sb10fd.c +230 -0
  586. slicot-1.0.0/src/SB/sb10hd.c +176 -0
  587. slicot-1.0.0/src/SB/sb10id.c +335 -0
  588. slicot-1.0.0/src/SB/sb10jd.c +211 -0
  589. slicot-1.0.0/src/SB/sb10kd.c +452 -0
  590. slicot-1.0.0/src/SB/sb10ld.c +228 -0
  591. slicot-1.0.0/src/SB/sb10md.c +318 -0
  592. slicot-1.0.0/src/SB/sb10pd.c +313 -0
  593. slicot-1.0.0/src/SB/sb10qd.c +296 -0
  594. slicot-1.0.0/src/SB/sb10rd.c +423 -0
  595. slicot-1.0.0/src/SB/sb10sd.c +326 -0
  596. slicot-1.0.0/src/SB/sb10td.c +164 -0
  597. slicot-1.0.0/src/SB/sb10ud.c +221 -0
  598. slicot-1.0.0/src/SB/sb10vd.c +174 -0
  599. slicot-1.0.0/src/SB/sb10wd.c +144 -0
  600. slicot-1.0.0/src/SB/sb10yd.c +425 -0
  601. slicot-1.0.0/src/SB/sb10zd.c +597 -0
  602. slicot-1.0.0/src/SB/sb10zp.c +185 -0
  603. slicot-1.0.0/src/SB/sb16ad.c +258 -0
  604. slicot-1.0.0/src/SB/sb16ay.c +415 -0
  605. slicot-1.0.0/src/SB/sb16bd.c +242 -0
  606. slicot-1.0.0/src/SB/sb16cd.c +156 -0
  607. slicot-1.0.0/src/SB/sb16cy.c +187 -0
  608. slicot-1.0.0/src/SG/sg02ad.c +461 -0
  609. slicot-1.0.0/src/SG/sg02cv.c +225 -0
  610. slicot-1.0.0/src/SG/sg02cw.c +1642 -0
  611. slicot-1.0.0/src/SG/sg02cx.c +385 -0
  612. slicot-1.0.0/src/SG/sg02nd.c +585 -0
  613. slicot-1.0.0/src/SG/sg03ad.c +305 -0
  614. slicot-1.0.0/src/SG/sg03ax.c +506 -0
  615. slicot-1.0.0/src/SG/sg03ay.c +546 -0
  616. slicot-1.0.0/src/SG/sg03bd.c +537 -0
  617. slicot-1.0.0/src/SG/sg03br.c +127 -0
  618. slicot-1.0.0/src/SG/sg03bs.c +301 -0
  619. slicot-1.0.0/src/SG/sg03bt.c +253 -0
  620. slicot-1.0.0/src/SG/sg03bu.c +378 -0
  621. slicot-1.0.0/src/SG/sg03bv.c +326 -0
  622. slicot-1.0.0/src/SG/sg03bw.c +216 -0
  623. slicot-1.0.0/src/SG/sg03bx.c +580 -0
  624. slicot-1.0.0/src/SG/sg03by.c +40 -0
  625. slicot-1.0.0/src/SG/sg03bz.c +453 -0
  626. slicot-1.0.0/src/TB/.gitkeep +0 -0
  627. slicot-1.0.0/src/TB/tb01id.c +228 -0
  628. slicot-1.0.0/src/TB/tb01iz.c +205 -0
  629. slicot-1.0.0/src/TB/tb01kd.c +127 -0
  630. slicot-1.0.0/src/TB/tb01kx.c +114 -0
  631. slicot-1.0.0/src/TB/tb01ld.c +143 -0
  632. slicot-1.0.0/src/TB/tb01md.c +138 -0
  633. slicot-1.0.0/src/TB/tb01nd.c +184 -0
  634. slicot-1.0.0/src/TB/tb01pd.c +135 -0
  635. slicot-1.0.0/src/TB/tb01px.c +229 -0
  636. slicot-1.0.0/src/TB/tb01td.c +128 -0
  637. slicot-1.0.0/src/TB/tb01ty.c +83 -0
  638. slicot-1.0.0/src/TB/tb01ud.c +206 -0
  639. slicot-1.0.0/src/TB/tb01ux.c +88 -0
  640. slicot-1.0.0/src/TB/tb01uy.c +330 -0
  641. slicot-1.0.0/src/TB/tb01vd.c +252 -0
  642. slicot-1.0.0/src/TB/tb01vy.c +140 -0
  643. slicot-1.0.0/src/TB/tb01wd.c +136 -0
  644. slicot-1.0.0/src/TB/tb01wx.c +179 -0
  645. slicot-1.0.0/src/TB/tb01xd.c +121 -0
  646. slicot-1.0.0/src/TB/tb01xz.c +119 -0
  647. slicot-1.0.0/src/TB/tb01yd.c +62 -0
  648. slicot-1.0.0/src/TB/tb01zd.c +188 -0
  649. slicot-1.0.0/src/TB/tb03ad.c +367 -0
  650. slicot-1.0.0/src/TB/tb03ay.c +101 -0
  651. slicot-1.0.0/src/TB/tb04ad.c +127 -0
  652. slicot-1.0.0/src/TB/tb04ay.c +152 -0
  653. slicot-1.0.0/src/TB/tb04bd.c +267 -0
  654. slicot-1.0.0/src/TB/tb04bv.c +170 -0
  655. slicot-1.0.0/src/TB/tb04bw.c +127 -0
  656. slicot-1.0.0/src/TB/tb04bx.c +84 -0
  657. slicot-1.0.0/src/TB/tb04cd.c +246 -0
  658. slicot-1.0.0/src/TB/tb05ad.c +271 -0
  659. slicot-1.0.0/src/TC/tc01od.c +100 -0
  660. slicot-1.0.0/src/TC/tc04ad.c +225 -0
  661. slicot-1.0.0/src/TC/tc05ad.c +169 -0
  662. slicot-1.0.0/src/TD/td03ad.c +258 -0
  663. slicot-1.0.0/src/TD/td03ay.c +119 -0
  664. slicot-1.0.0/src/TD/td04ad.c +178 -0
  665. slicot-1.0.0/src/TD/td05ad.c +168 -0
  666. slicot-1.0.0/src/TF/tf01md.c +84 -0
  667. slicot-1.0.0/src/TF/tf01mx.c +236 -0
  668. slicot-1.0.0/src/TF/tf01my.c +195 -0
  669. slicot-1.0.0/src/TF/tf01nd.c +102 -0
  670. slicot-1.0.0/src/TF/tf01od.c +61 -0
  671. slicot-1.0.0/src/TF/tf01pd.c +61 -0
  672. slicot-1.0.0/src/TF/tf01qd.c +73 -0
  673. slicot-1.0.0/src/TF/tf01rd.c +73 -0
  674. slicot-1.0.0/src/TG/tg01ad.c +430 -0
  675. slicot-1.0.0/src/TG/tg01az.c +374 -0
  676. slicot-1.0.0/src/TG/tg01bd.c +193 -0
  677. slicot-1.0.0/src/TG/tg01cd.c +103 -0
  678. slicot-1.0.0/src/TG/tg01dd.c +117 -0
  679. slicot-1.0.0/src/TG/tg01ed.c +401 -0
  680. slicot-1.0.0/src/TG/tg01fd.c +338 -0
  681. slicot-1.0.0/src/TG/tg01fz.c +342 -0
  682. slicot-1.0.0/src/TG/tg01gd.c +180 -0
  683. slicot-1.0.0/src/TG/tg01hd.c +149 -0
  684. slicot-1.0.0/src/TG/tg01hu.c +484 -0
  685. slicot-1.0.0/src/TG/tg01hx.c +347 -0
  686. slicot-1.0.0/src/TG/tg01hy.c +551 -0
  687. slicot-1.0.0/src/TG/tg01id.c +244 -0
  688. slicot-1.0.0/src/TG/tg01jd.c +299 -0
  689. slicot-1.0.0/src/TG/tg01jy.c +610 -0
  690. slicot-1.0.0/src/TG/tg01kd.c +155 -0
  691. slicot-1.0.0/src/TG/tg01kz.c +156 -0
  692. slicot-1.0.0/src/TG/tg01ld.c +269 -0
  693. slicot-1.0.0/src/TG/tg01ly.c +442 -0
  694. slicot-1.0.0/src/TG/tg01md.c +166 -0
  695. slicot-1.0.0/src/TG/tg01nd.c +175 -0
  696. slicot-1.0.0/src/TG/tg01nx.c +124 -0
  697. slicot-1.0.0/src/TG/tg01oa.c +85 -0
  698. slicot-1.0.0/src/TG/tg01ob.c +83 -0
  699. slicot-1.0.0/src/TG/tg01od.c +205 -0
  700. slicot-1.0.0/src/TG/tg01oz.c +206 -0
  701. slicot-1.0.0/src/TG/tg01pd.c +195 -0
  702. slicot-1.0.0/src/TG/tg01qd.c +219 -0
  703. slicot-1.0.0/src/TG/tg01wd.c +134 -0
  704. slicot-1.0.0/src/UD/ud01bd.c +45 -0
  705. slicot-1.0.0/src/UD/ud01cd.c +64 -0
  706. slicot-1.0.0/src/UD/ud01dd.c +51 -0
  707. slicot-1.0.0/src/UD/ud01md.c +117 -0
  708. slicot-1.0.0/src/UD/ud01mz.c +138 -0
  709. slicot-1.0.0/src/UD/ud01nd.c +130 -0
  710. slicot-1.0.0/src/UE/ue01md.c +131 -0
  711. slicot-1.0.0/src/lapack_aux/dgegv.c +408 -0
  712. slicot-1.0.0/src/lapack_aux/dlatzm.c +35 -0
  713. slicot-1.0.0/src/lapack_aux/zgegs.c +290 -0
  714. slicot-1.0.0/src/lapack_aux/zgegv.c +368 -0
  715. slicot-1.0.0/src/meson.build +638 -0
  716. slicot-1.0.0/tests/python/conftest.py +80 -0
  717. slicot-1.0.0/tests/python/data/ib01_html_example_data.npz +0 -0
  718. slicot-1.0.0/tests/python/data/ib03bd_test_data.npz +0 -0
  719. slicot-1.0.0/tests/python/debug_mb03lf.py +72 -0
  720. slicot-1.0.0/tests/python/test_ab01md.py +384 -0
  721. slicot-1.0.0/tests/python/test_ab01nd.py +555 -0
  722. slicot-1.0.0/tests/python/test_ab01od.py +501 -0
  723. slicot-1.0.0/tests/python/test_ab04md.py +381 -0
  724. slicot-1.0.0/tests/python/test_ab05md.py +440 -0
  725. slicot-1.0.0/tests/python/test_ab05nd.py +590 -0
  726. slicot-1.0.0/tests/python/test_ab05od.py +580 -0
  727. slicot-1.0.0/tests/python/test_ab05pd.py +416 -0
  728. slicot-1.0.0/tests/python/test_ab05qd.py +406 -0
  729. slicot-1.0.0/tests/python/test_ab05rd.py +712 -0
  730. slicot-1.0.0/tests/python/test_ab05sd.py +408 -0
  731. slicot-1.0.0/tests/python/test_ab07md.py +388 -0
  732. slicot-1.0.0/tests/python/test_ab07nd.py +375 -0
  733. slicot-1.0.0/tests/python/test_ab08md.py +344 -0
  734. slicot-1.0.0/tests/python/test_ab08mz.py +461 -0
  735. slicot-1.0.0/tests/python/test_ab08nd.py +455 -0
  736. slicot-1.0.0/tests/python/test_ab08nw.py +488 -0
  737. slicot-1.0.0/tests/python/test_ab08nx.py +600 -0
  738. slicot-1.0.0/tests/python/test_ab08ny.py +632 -0
  739. slicot-1.0.0/tests/python/test_ab08nz.py +504 -0
  740. slicot-1.0.0/tests/python/test_ab09ad.py +346 -0
  741. slicot-1.0.0/tests/python/test_ab09ax.py +446 -0
  742. slicot-1.0.0/tests/python/test_ab09bd.py +384 -0
  743. slicot-1.0.0/tests/python/test_ab09bx.py +481 -0
  744. slicot-1.0.0/tests/python/test_ab09cd.py +524 -0
  745. slicot-1.0.0/tests/python/test_ab09cx.py +451 -0
  746. slicot-1.0.0/tests/python/test_ab09dd.py +392 -0
  747. slicot-1.0.0/tests/python/test_ab09ed.py +392 -0
  748. slicot-1.0.0/tests/python/test_ab09fd.py +355 -0
  749. slicot-1.0.0/tests/python/test_ab09gd.py +559 -0
  750. slicot-1.0.0/tests/python/test_ab09hd.py +562 -0
  751. slicot-1.0.0/tests/python/test_ab09hx.py +806 -0
  752. slicot-1.0.0/tests/python/test_ab09hy.py +490 -0
  753. slicot-1.0.0/tests/python/test_ab09id.py +722 -0
  754. slicot-1.0.0/tests/python/test_ab09ix.py +548 -0
  755. slicot-1.0.0/tests/python/test_ab09iy.py +610 -0
  756. slicot-1.0.0/tests/python/test_ab09jd.py +911 -0
  757. slicot-1.0.0/tests/python/test_ab09jv.py +857 -0
  758. slicot-1.0.0/tests/python/test_ab09jw.py +799 -0
  759. slicot-1.0.0/tests/python/test_ab09jx.py +446 -0
  760. slicot-1.0.0/tests/python/test_ab09kd.py +911 -0
  761. slicot-1.0.0/tests/python/test_ab09kx.py +874 -0
  762. slicot-1.0.0/tests/python/test_ab09md.py +515 -0
  763. slicot-1.0.0/tests/python/test_ab09nd.py +355 -0
  764. slicot-1.0.0/tests/python/test_ab13ad.py +617 -0
  765. slicot-1.0.0/tests/python/test_ab13bd.py +212 -0
  766. slicot-1.0.0/tests/python/test_ab13cd.py +312 -0
  767. slicot-1.0.0/tests/python/test_ab13dd.py +219 -0
  768. slicot-1.0.0/tests/python/test_ab13dx.py +178 -0
  769. slicot-1.0.0/tests/python/test_ab13ed.py +77 -0
  770. slicot-1.0.0/tests/python/test_ab13fd.py +245 -0
  771. slicot-1.0.0/tests/python/test_ab13hd.py +409 -0
  772. slicot-1.0.0/tests/python/test_ab13id.py +238 -0
  773. slicot-1.0.0/tests/python/test_ab13md.py +330 -0
  774. slicot-1.0.0/tests/python/test_ab8nxz.py +284 -0
  775. slicot-1.0.0/tests/python/test_ag07bd.py +413 -0
  776. slicot-1.0.0/tests/python/test_ag08bd.py +557 -0
  777. slicot-1.0.0/tests/python/test_ag08by.py +456 -0
  778. slicot-1.0.0/tests/python/test_ag08bz.py +382 -0
  779. slicot-1.0.0/tests/python/test_ag8byz.py +506 -0
  780. slicot-1.0.0/tests/python/test_bb01ad.py +326 -0
  781. slicot-1.0.0/tests/python/test_bb02ad.py +426 -0
  782. slicot-1.0.0/tests/python/test_bb03ad.py +394 -0
  783. slicot-1.0.0/tests/python/test_bb04ad.py +394 -0
  784. slicot-1.0.0/tests/python/test_bd01ad.py +616 -0
  785. slicot-1.0.0/tests/python/test_bd02ad.py +565 -0
  786. slicot-1.0.0/tests/python/test_de01od.py +273 -0
  787. slicot-1.0.0/tests/python/test_de01pd.py +341 -0
  788. slicot-1.0.0/tests/python/test_df01md.py +313 -0
  789. slicot-1.0.0/tests/python/test_dg01md.py +306 -0
  790. slicot-1.0.0/tests/python/test_dg01nd.py +316 -0
  791. slicot-1.0.0/tests/python/test_dg01od.py +416 -0
  792. slicot-1.0.0/tests/python/test_dgegv.py +298 -0
  793. slicot-1.0.0/tests/python/test_dk01md.py +249 -0
  794. slicot-1.0.0/tests/python/test_dlatzm.py +187 -0
  795. slicot-1.0.0/tests/python/test_fb01qd.py +310 -0
  796. slicot-1.0.0/tests/python/test_fb01rd.py +484 -0
  797. slicot-1.0.0/tests/python/test_fb01sd.py +519 -0
  798. slicot-1.0.0/tests/python/test_fb01td.py +409 -0
  799. slicot-1.0.0/tests/python/test_fb01vd.py +335 -0
  800. slicot-1.0.0/tests/python/test_fd01ad.py +408 -0
  801. slicot-1.0.0/tests/python/test_ib01ad.py +485 -0
  802. slicot-1.0.0/tests/python/test_ib01bd.py +481 -0
  803. slicot-1.0.0/tests/python/test_ib01cd.py +498 -0
  804. slicot-1.0.0/tests/python/test_ib01md.py +557 -0
  805. slicot-1.0.0/tests/python/test_ib01nd.py +434 -0
  806. slicot-1.0.0/tests/python/test_ib01od.py +266 -0
  807. slicot-1.0.0/tests/python/test_ib01oy.py +189 -0
  808. slicot-1.0.0/tests/python/test_ib01pd.py +426 -0
  809. slicot-1.0.0/tests/python/test_ib01qd.py +456 -0
  810. slicot-1.0.0/tests/python/test_ib01rd.py +310 -0
  811. slicot-1.0.0/tests/python/test_ib03ad.py +410 -0
  812. slicot-1.0.0/tests/python/test_ib03bd.py +397 -0
  813. slicot-1.0.0/tests/python/test_ma01ad.py +185 -0
  814. slicot-1.0.0/tests/python/test_ma01bd.py +327 -0
  815. slicot-1.0.0/tests/python/test_ma01bz.py +303 -0
  816. slicot-1.0.0/tests/python/test_ma01cd.py +266 -0
  817. slicot-1.0.0/tests/python/test_ma01dd.py +311 -0
  818. slicot-1.0.0/tests/python/test_ma01dz.py +393 -0
  819. slicot-1.0.0/tests/python/test_ma02ad.py +265 -0
  820. slicot-1.0.0/tests/python/test_ma02az.py +382 -0
  821. slicot-1.0.0/tests/python/test_ma02bd.py +209 -0
  822. slicot-1.0.0/tests/python/test_ma02bz.py +220 -0
  823. slicot-1.0.0/tests/python/test_ma02cd.py +301 -0
  824. slicot-1.0.0/tests/python/test_ma02cz.py +372 -0
  825. slicot-1.0.0/tests/python/test_ma02dd.py +210 -0
  826. slicot-1.0.0/tests/python/test_ma02ed.py +173 -0
  827. slicot-1.0.0/tests/python/test_ma02es.py +220 -0
  828. slicot-1.0.0/tests/python/test_ma02ez.py +541 -0
  829. slicot-1.0.0/tests/python/test_ma02gd.py +227 -0
  830. slicot-1.0.0/tests/python/test_ma02gz.py +268 -0
  831. slicot-1.0.0/tests/python/test_ma02hd.py +328 -0
  832. slicot-1.0.0/tests/python/test_ma02hz.py +401 -0
  833. slicot-1.0.0/tests/python/test_ma02iz.py +294 -0
  834. slicot-1.0.0/tests/python/test_ma02jd.py +239 -0
  835. slicot-1.0.0/tests/python/test_ma02jz.py +289 -0
  836. slicot-1.0.0/tests/python/test_ma02md.py +251 -0
  837. slicot-1.0.0/tests/python/test_ma02mz.py +293 -0
  838. slicot-1.0.0/tests/python/test_ma02nz.py +441 -0
  839. slicot-1.0.0/tests/python/test_ma02od.py +202 -0
  840. slicot-1.0.0/tests/python/test_ma02oz.py +299 -0
  841. slicot-1.0.0/tests/python/test_ma02pd.py +375 -0
  842. slicot-1.0.0/tests/python/test_ma02pz.py +428 -0
  843. slicot-1.0.0/tests/python/test_ma02rd.py +263 -0
  844. slicot-1.0.0/tests/python/test_ma02sd.py +199 -0
  845. slicot-1.0.0/tests/python/test_mb01.py +1032 -0
  846. slicot-1.0.0/tests/python/test_mb01oc.py +449 -0
  847. slicot-1.0.0/tests/python/test_mb01od.py +504 -0
  848. slicot-1.0.0/tests/python/test_mb01oe.py +489 -0
  849. slicot-1.0.0/tests/python/test_mb01oh.py +479 -0
  850. slicot-1.0.0/tests/python/test_mb01oo.py +324 -0
  851. slicot-1.0.0/tests/python/test_mb01os.py +297 -0
  852. slicot-1.0.0/tests/python/test_mb01ot.py +547 -0
  853. slicot-1.0.0/tests/python/test_mb01pd.py +455 -0
  854. slicot-1.0.0/tests/python/test_mb01qd.py +162 -0
  855. slicot-1.0.0/tests/python/test_mb01rb.py +275 -0
  856. slicot-1.0.0/tests/python/test_mb01rd.py +396 -0
  857. slicot-1.0.0/tests/python/test_mb01rh.py +521 -0
  858. slicot-1.0.0/tests/python/test_mb01rt.py +575 -0
  859. slicot-1.0.0/tests/python/test_mb01ru.py +295 -0
  860. slicot-1.0.0/tests/python/test_mb01rw.py +293 -0
  861. slicot-1.0.0/tests/python/test_mb01rx.py +461 -0
  862. slicot-1.0.0/tests/python/test_mb01ry.py +312 -0
  863. slicot-1.0.0/tests/python/test_mb01sd.py +245 -0
  864. slicot-1.0.0/tests/python/test_mb01ss.py +289 -0
  865. slicot-1.0.0/tests/python/test_mb01td.py +203 -0
  866. slicot-1.0.0/tests/python/test_mb01ud.py +219 -0
  867. slicot-1.0.0/tests/python/test_mb01uw.py +372 -0
  868. slicot-1.0.0/tests/python/test_mb01ux.py +398 -0
  869. slicot-1.0.0/tests/python/test_mb01uy.py +127 -0
  870. slicot-1.0.0/tests/python/test_mb01uz.py +359 -0
  871. slicot-1.0.0/tests/python/test_mb01wd.py +466 -0
  872. slicot-1.0.0/tests/python/test_mb01xd.py +307 -0
  873. slicot-1.0.0/tests/python/test_mb01xy.py +262 -0
  874. slicot-1.0.0/tests/python/test_mb01yd.py +419 -0
  875. slicot-1.0.0/tests/python/test_mb01zd.py +613 -0
  876. slicot-1.0.0/tests/python/test_mb02cd.py +356 -0
  877. slicot-1.0.0/tests/python/test_mb02cu.py +310 -0
  878. slicot-1.0.0/tests/python/test_mb02cv.py +625 -0
  879. slicot-1.0.0/tests/python/test_mb02cx.py +219 -0
  880. slicot-1.0.0/tests/python/test_mb02cy.py +195 -0
  881. slicot-1.0.0/tests/python/test_mb02dd.py +456 -0
  882. slicot-1.0.0/tests/python/test_mb02ed.py +247 -0
  883. slicot-1.0.0/tests/python/test_mb02fd.py +260 -0
  884. slicot-1.0.0/tests/python/test_mb02gd.py +391 -0
  885. slicot-1.0.0/tests/python/test_mb02hd.py +361 -0
  886. slicot-1.0.0/tests/python/test_mb02id.py +385 -0
  887. slicot-1.0.0/tests/python/test_mb02jd.py +242 -0
  888. slicot-1.0.0/tests/python/test_mb02jx.py +258 -0
  889. slicot-1.0.0/tests/python/test_mb02kd.py +386 -0
  890. slicot-1.0.0/tests/python/test_mb02md.py +251 -0
  891. slicot-1.0.0/tests/python/test_mb02nd.py +258 -0
  892. slicot-1.0.0/tests/python/test_mb02ny.py +395 -0
  893. slicot-1.0.0/tests/python/test_mb02od.py +269 -0
  894. slicot-1.0.0/tests/python/test_mb02pd.py +241 -0
  895. slicot-1.0.0/tests/python/test_mb02qd.py +395 -0
  896. slicot-1.0.0/tests/python/test_mb02rd.py +123 -0
  897. slicot-1.0.0/tests/python/test_mb02rz.py +291 -0
  898. slicot-1.0.0/tests/python/test_mb02sd.py +113 -0
  899. slicot-1.0.0/tests/python/test_mb02sz.py +241 -0
  900. slicot-1.0.0/tests/python/test_mb02td.py +237 -0
  901. slicot-1.0.0/tests/python/test_mb02tz.py +283 -0
  902. slicot-1.0.0/tests/python/test_mb02ud.py +320 -0
  903. slicot-1.0.0/tests/python/test_mb02uu.py +246 -0
  904. slicot-1.0.0/tests/python/test_mb02uv.py +241 -0
  905. slicot-1.0.0/tests/python/test_mb02uw.py +262 -0
  906. slicot-1.0.0/tests/python/test_mb02vd.py +180 -0
  907. slicot-1.0.0/tests/python/test_mb02wd.py +94 -0
  908. slicot-1.0.0/tests/python/test_mb02xd.py +546 -0
  909. slicot-1.0.0/tests/python/test_mb02yd.py +204 -0
  910. slicot-1.0.0/tests/python/test_mb03ab.py +345 -0
  911. slicot-1.0.0/tests/python/test_mb03ad.py +382 -0
  912. slicot-1.0.0/tests/python/test_mb03ae.py +306 -0
  913. slicot-1.0.0/tests/python/test_mb03ag.py +387 -0
  914. slicot-1.0.0/tests/python/test_mb03ah.py +358 -0
  915. slicot-1.0.0/tests/python/test_mb03ai.py +386 -0
  916. slicot-1.0.0/tests/python/test_mb03ba.py +218 -0
  917. slicot-1.0.0/tests/python/test_mb03bc.py +257 -0
  918. slicot-1.0.0/tests/python/test_mb03bd.py +385 -0
  919. slicot-1.0.0/tests/python/test_mb03be.py +278 -0
  920. slicot-1.0.0/tests/python/test_mb03bf.py +324 -0
  921. slicot-1.0.0/tests/python/test_mb03bg.py +293 -0
  922. slicot-1.0.0/tests/python/test_mb03bz.py +301 -0
  923. slicot-1.0.0/tests/python/test_mb03cd.py +461 -0
  924. slicot-1.0.0/tests/python/test_mb03cz.py +221 -0
  925. slicot-1.0.0/tests/python/test_mb03dd.py +367 -0
  926. slicot-1.0.0/tests/python/test_mb03dz.py +237 -0
  927. slicot-1.0.0/tests/python/test_mb03ed.py +265 -0
  928. slicot-1.0.0/tests/python/test_mb03fd.py +501 -0
  929. slicot-1.0.0/tests/python/test_mb03fz.py +346 -0
  930. slicot-1.0.0/tests/python/test_mb03gd.py +298 -0
  931. slicot-1.0.0/tests/python/test_mb03gz.py +193 -0
  932. slicot-1.0.0/tests/python/test_mb03hd.py +236 -0
  933. slicot-1.0.0/tests/python/test_mb03hz.py +150 -0
  934. slicot-1.0.0/tests/python/test_mb03id.py +482 -0
  935. slicot-1.0.0/tests/python/test_mb03iz.py +359 -0
  936. slicot-1.0.0/tests/python/test_mb03jd.py +320 -0
  937. slicot-1.0.0/tests/python/test_mb03jp.py +294 -0
  938. slicot-1.0.0/tests/python/test_mb03jz.py +375 -0
  939. slicot-1.0.0/tests/python/test_mb03ka.py +483 -0
  940. slicot-1.0.0/tests/python/test_mb03kb.py +558 -0
  941. slicot-1.0.0/tests/python/test_mb03kc.py +295 -0
  942. slicot-1.0.0/tests/python/test_mb03kd.py +542 -0
  943. slicot-1.0.0/tests/python/test_mb03ke.py +302 -0
  944. slicot-1.0.0/tests/python/test_mb03ld.py +455 -0
  945. slicot-1.0.0/tests/python/test_mb03lf.py +375 -0
  946. slicot-1.0.0/tests/python/test_mb03lp.py +350 -0
  947. slicot-1.0.0/tests/python/test_mb03lz.py +345 -0
  948. slicot-1.0.0/tests/python/test_mb03md.py +271 -0
  949. slicot-1.0.0/tests/python/test_mb03od.py +138 -0
  950. slicot-1.0.0/tests/python/test_mb03oy.py +202 -0
  951. slicot-1.0.0/tests/python/test_mb03pd.py +326 -0
  952. slicot-1.0.0/tests/python/test_mb03py.py +356 -0
  953. slicot-1.0.0/tests/python/test_mb03qd.py +204 -0
  954. slicot-1.0.0/tests/python/test_mb03qg.py +286 -0
  955. slicot-1.0.0/tests/python/test_mb03qv.py +316 -0
  956. slicot-1.0.0/tests/python/test_mb03qw.py +218 -0
  957. slicot-1.0.0/tests/python/test_mb03qx.py +216 -0
  958. slicot-1.0.0/tests/python/test_mb03qy.py +218 -0
  959. slicot-1.0.0/tests/python/test_mb03rd.py +268 -0
  960. slicot-1.0.0/tests/python/test_mb03rw.py +260 -0
  961. slicot-1.0.0/tests/python/test_mb03rx.py +296 -0
  962. slicot-1.0.0/tests/python/test_mb03ry.py +250 -0
  963. slicot-1.0.0/tests/python/test_mb03rz.py +406 -0
  964. slicot-1.0.0/tests/python/test_mb03sd.py +259 -0
  965. slicot-1.0.0/tests/python/test_mb03td.py +470 -0
  966. slicot-1.0.0/tests/python/test_mb03ts.py +411 -0
  967. slicot-1.0.0/tests/python/test_mb03ud.py +277 -0
  968. slicot-1.0.0/tests/python/test_mb03vd.py +346 -0
  969. slicot-1.0.0/tests/python/test_mb03vw.py +343 -0
  970. slicot-1.0.0/tests/python/test_mb03vy.py +323 -0
  971. slicot-1.0.0/tests/python/test_mb03wa.py +309 -0
  972. slicot-1.0.0/tests/python/test_mb03wd.py +437 -0
  973. slicot-1.0.0/tests/python/test_mb03wx.py +391 -0
  974. slicot-1.0.0/tests/python/test_mb03xd.py +206 -0
  975. slicot-1.0.0/tests/python/test_mb03xp.py +197 -0
  976. slicot-1.0.0/tests/python/test_mb03xs.py +467 -0
  977. slicot-1.0.0/tests/python/test_mb03xu.py +307 -0
  978. slicot-1.0.0/tests/python/test_mb03xz.py +330 -0
  979. slicot-1.0.0/tests/python/test_mb03ya.py +220 -0
  980. slicot-1.0.0/tests/python/test_mb03yd.py +362 -0
  981. slicot-1.0.0/tests/python/test_mb03yt.py +134 -0
  982. slicot-1.0.0/tests/python/test_mb03za.py +336 -0
  983. slicot-1.0.0/tests/python/test_mb03zd.py +417 -0
  984. slicot-1.0.0/tests/python/test_mb04ad.py +255 -0
  985. slicot-1.0.0/tests/python/test_mb04az.py +220 -0
  986. slicot-1.0.0/tests/python/test_mb04bd.py +251 -0
  987. slicot-1.0.0/tests/python/test_mb04bp.py +244 -0
  988. slicot-1.0.0/tests/python/test_mb04bz.py +201 -0
  989. slicot-1.0.0/tests/python/test_mb04cd.py +276 -0
  990. slicot-1.0.0/tests/python/test_mb04db.py +274 -0
  991. slicot-1.0.0/tests/python/test_mb04dd.py +134 -0
  992. slicot-1.0.0/tests/python/test_mb04di.py +268 -0
  993. slicot-1.0.0/tests/python/test_mb04dl.py +355 -0
  994. slicot-1.0.0/tests/python/test_mb04dp.py +417 -0
  995. slicot-1.0.0/tests/python/test_mb04ds.py +305 -0
  996. slicot-1.0.0/tests/python/test_mb04dy.py +316 -0
  997. slicot-1.0.0/tests/python/test_mb04dz.py +247 -0
  998. slicot-1.0.0/tests/python/test_mb04ed.py +307 -0
  999. slicot-1.0.0/tests/python/test_mb04fd.py +367 -0
  1000. slicot-1.0.0/tests/python/test_mb04fp.py +329 -0
  1001. slicot-1.0.0/tests/python/test_mb04gd.py +287 -0
  1002. slicot-1.0.0/tests/python/test_mb04hd.py +309 -0
  1003. slicot-1.0.0/tests/python/test_mb04id.py +222 -0
  1004. slicot-1.0.0/tests/python/test_mb04iy.py +329 -0
  1005. slicot-1.0.0/tests/python/test_mb04iz.py +331 -0
  1006. slicot-1.0.0/tests/python/test_mb04jd.py +267 -0
  1007. slicot-1.0.0/tests/python/test_mb04kd.py +274 -0
  1008. slicot-1.0.0/tests/python/test_mb04ld.py +255 -0
  1009. slicot-1.0.0/tests/python/test_mb04md.py +256 -0
  1010. slicot-1.0.0/tests/python/test_mb04nd.py +321 -0
  1011. slicot-1.0.0/tests/python/test_mb04ny.py +379 -0
  1012. slicot-1.0.0/tests/python/test_mb04od.py +297 -0
  1013. slicot-1.0.0/tests/python/test_mb04ow.py +258 -0
  1014. slicot-1.0.0/tests/python/test_mb04ox.py +193 -0
  1015. slicot-1.0.0/tests/python/test_mb04oy.py +299 -0
  1016. slicot-1.0.0/tests/python/test_mb04pa.py +268 -0
  1017. slicot-1.0.0/tests/python/test_mb04pb.py +234 -0
  1018. slicot-1.0.0/tests/python/test_mb04pu.py +288 -0
  1019. slicot-1.0.0/tests/python/test_mb04py.py +526 -0
  1020. slicot-1.0.0/tests/python/test_mb04qb.py +193 -0
  1021. slicot-1.0.0/tests/python/test_mb04qc.py +291 -0
  1022. slicot-1.0.0/tests/python/test_mb04qf.py +244 -0
  1023. slicot-1.0.0/tests/python/test_mb04qs.py +266 -0
  1024. slicot-1.0.0/tests/python/test_mb04qu.py +312 -0
  1025. slicot-1.0.0/tests/python/test_mb04rb.py +388 -0
  1026. slicot-1.0.0/tests/python/test_mb04rd.py +411 -0
  1027. slicot-1.0.0/tests/python/test_mb04rs.py +359 -0
  1028. slicot-1.0.0/tests/python/test_mb04rt.py +437 -0
  1029. slicot-1.0.0/tests/python/test_mb04ru.py +325 -0
  1030. slicot-1.0.0/tests/python/test_mb04rv.py +345 -0
  1031. slicot-1.0.0/tests/python/test_mb04rw.py +379 -0
  1032. slicot-1.0.0/tests/python/test_mb04rz.py +451 -0
  1033. slicot-1.0.0/tests/python/test_mb04su.py +280 -0
  1034. slicot-1.0.0/tests/python/test_mb04tb.py +202 -0
  1035. slicot-1.0.0/tests/python/test_mb04ts.py +292 -0
  1036. slicot-1.0.0/tests/python/test_mb04tt.py +417 -0
  1037. slicot-1.0.0/tests/python/test_mb04tu.py +247 -0
  1038. slicot-1.0.0/tests/python/test_mb04tv.py +371 -0
  1039. slicot-1.0.0/tests/python/test_mb04tw.py +473 -0
  1040. slicot-1.0.0/tests/python/test_mb04tx.py +240 -0
  1041. slicot-1.0.0/tests/python/test_mb04ty.py +511 -0
  1042. slicot-1.0.0/tests/python/test_mb04ud.py +336 -0
  1043. slicot-1.0.0/tests/python/test_mb04vd.py +594 -0
  1044. slicot-1.0.0/tests/python/test_mb04vx.py +255 -0
  1045. slicot-1.0.0/tests/python/test_mb04wd.py +396 -0
  1046. slicot-1.0.0/tests/python/test_mb04wp.py +352 -0
  1047. slicot-1.0.0/tests/python/test_mb04wr.py +406 -0
  1048. slicot-1.0.0/tests/python/test_mb04wu.py +312 -0
  1049. slicot-1.0.0/tests/python/test_mb04xd.py +393 -0
  1050. slicot-1.0.0/tests/python/test_mb04xy.py +362 -0
  1051. slicot-1.0.0/tests/python/test_mb04yd.py +455 -0
  1052. slicot-1.0.0/tests/python/test_mb04yw.py +441 -0
  1053. slicot-1.0.0/tests/python/test_mb04zd.py +333 -0
  1054. slicot-1.0.0/tests/python/test_mb05md.py +424 -0
  1055. slicot-1.0.0/tests/python/test_mb05my.py +306 -0
  1056. slicot-1.0.0/tests/python/test_mb05nd.py +260 -0
  1057. slicot-1.0.0/tests/python/test_mb05od.py +294 -0
  1058. slicot-1.0.0/tests/python/test_mb05oy.py +335 -0
  1059. slicot-1.0.0/tests/python/test_mb3jzp.py +419 -0
  1060. slicot-1.0.0/tests/python/test_mb3lzp.py +444 -0
  1061. slicot-1.0.0/tests/python/test_mb3oyz.py +206 -0
  1062. slicot-1.0.0/tests/python/test_mb3pyz.py +227 -0
  1063. slicot-1.0.0/tests/python/test_mb4dbz.py +389 -0
  1064. slicot-1.0.0/tests/python/test_mb4dlz.py +288 -0
  1065. slicot-1.0.0/tests/python/test_mb4dpz.py +278 -0
  1066. slicot-1.0.0/tests/python/test_mc01md.py +334 -0
  1067. slicot-1.0.0/tests/python/test_mc01nd.py +387 -0
  1068. slicot-1.0.0/tests/python/test_mc01od.py +328 -0
  1069. slicot-1.0.0/tests/python/test_mc01pd.py +245 -0
  1070. slicot-1.0.0/tests/python/test_mc01py.py +239 -0
  1071. slicot-1.0.0/tests/python/test_mc01qd.py +238 -0
  1072. slicot-1.0.0/tests/python/test_mc01rd.py +393 -0
  1073. slicot-1.0.0/tests/python/test_mc01sd.py +192 -0
  1074. slicot-1.0.0/tests/python/test_mc01sw.py +114 -0
  1075. slicot-1.0.0/tests/python/test_mc01sx.py +129 -0
  1076. slicot-1.0.0/tests/python/test_mc01sy.py +113 -0
  1077. slicot-1.0.0/tests/python/test_mc01td.py +387 -0
  1078. slicot-1.0.0/tests/python/test_mc01vd.py +240 -0
  1079. slicot-1.0.0/tests/python/test_mc01wd.py +143 -0
  1080. slicot-1.0.0/tests/python/test_mc01xd.py +312 -0
  1081. slicot-1.0.0/tests/python/test_mc03md.py +383 -0
  1082. slicot-1.0.0/tests/python/test_mc03nd.py +263 -0
  1083. slicot-1.0.0/tests/python/test_mc03nx.py +193 -0
  1084. slicot-1.0.0/tests/python/test_mc03ny.py +243 -0
  1085. slicot-1.0.0/tests/python/test_md03ba.py +158 -0
  1086. slicot-1.0.0/tests/python/test_md03bb.py +41 -0
  1087. slicot-1.0.0/tests/python/test_md03bd.py +135 -0
  1088. slicot-1.0.0/tests/python/test_md03bf.py +179 -0
  1089. slicot-1.0.0/tests/python/test_md03by.py +282 -0
  1090. slicot-1.0.0/tests/python/test_nf01ay.py +166 -0
  1091. slicot-1.0.0/tests/python/test_nf01br.py +288 -0
  1092. slicot-1.0.0/tests/python/test_nf01bs.py +254 -0
  1093. slicot-1.0.0/tests/python/test_nf01by.py +253 -0
  1094. slicot-1.0.0/tests/python/test_sb01bd.py +420 -0
  1095. slicot-1.0.0/tests/python/test_sb01bx.py +194 -0
  1096. slicot-1.0.0/tests/python/test_sb01by.py +281 -0
  1097. slicot-1.0.0/tests/python/test_sb01dd.py +241 -0
  1098. slicot-1.0.0/tests/python/test_sb01fy.py +224 -0
  1099. slicot-1.0.0/tests/python/test_sb01md.py +414 -0
  1100. slicot-1.0.0/tests/python/test_sb02cx.py +145 -0
  1101. slicot-1.0.0/tests/python/test_sb02md.py +578 -0
  1102. slicot-1.0.0/tests/python/test_sb02mr.py +123 -0
  1103. slicot-1.0.0/tests/python/test_sb02ms.py +168 -0
  1104. slicot-1.0.0/tests/python/test_sb02mt.py +371 -0
  1105. slicot-1.0.0/tests/python/test_sb02mu.py +388 -0
  1106. slicot-1.0.0/tests/python/test_sb02mv.py +124 -0
  1107. slicot-1.0.0/tests/python/test_sb02mw.py +170 -0
  1108. slicot-1.0.0/tests/python/test_sb02mx.py +455 -0
  1109. slicot-1.0.0/tests/python/test_sb02nd.py +507 -0
  1110. slicot-1.0.0/tests/python/test_sb02od.py +653 -0
  1111. slicot-1.0.0/tests/python/test_sb02ou.py +131 -0
  1112. slicot-1.0.0/tests/python/test_sb02ov.py +153 -0
  1113. slicot-1.0.0/tests/python/test_sb02ow.py +158 -0
  1114. slicot-1.0.0/tests/python/test_sb02ox.py +205 -0
  1115. slicot-1.0.0/tests/python/test_sb02oy.py +593 -0
  1116. slicot-1.0.0/tests/python/test_sb02pd.py +297 -0
  1117. slicot-1.0.0/tests/python/test_sb02qd.py +361 -0
  1118. slicot-1.0.0/tests/python/test_sb02rd.py +496 -0
  1119. slicot-1.0.0/tests/python/test_sb02ru.py +328 -0
  1120. slicot-1.0.0/tests/python/test_sb02sd.py +245 -0
  1121. slicot-1.0.0/tests/python/test_sb03md.py +611 -0
  1122. slicot-1.0.0/tests/python/test_sb03mu.py +327 -0
  1123. slicot-1.0.0/tests/python/test_sb03mv.py +236 -0
  1124. slicot-1.0.0/tests/python/test_sb03mw.py +109 -0
  1125. slicot-1.0.0/tests/python/test_sb03mx.py +194 -0
  1126. slicot-1.0.0/tests/python/test_sb03my.py +217 -0
  1127. slicot-1.0.0/tests/python/test_sb03od.py +717 -0
  1128. slicot-1.0.0/tests/python/test_sb03or.py +450 -0
  1129. slicot-1.0.0/tests/python/test_sb03os.py +675 -0
  1130. slicot-1.0.0/tests/python/test_sb03ot.py +753 -0
  1131. slicot-1.0.0/tests/python/test_sb03ou.py +199 -0
  1132. slicot-1.0.0/tests/python/test_sb03ov.py +186 -0
  1133. slicot-1.0.0/tests/python/test_sb03oy.py +432 -0
  1134. slicot-1.0.0/tests/python/test_sb03oz.py +771 -0
  1135. slicot-1.0.0/tests/python/test_sb03pd.py +291 -0
  1136. slicot-1.0.0/tests/python/test_sb03qd.py +380 -0
  1137. slicot-1.0.0/tests/python/test_sb03qx.py +322 -0
  1138. slicot-1.0.0/tests/python/test_sb03qy.py +293 -0
  1139. slicot-1.0.0/tests/python/test_sb03rd.py +379 -0
  1140. slicot-1.0.0/tests/python/test_sb03sd.py +358 -0
  1141. slicot-1.0.0/tests/python/test_sb03sx.py +176 -0
  1142. slicot-1.0.0/tests/python/test_sb03sy.py +195 -0
  1143. slicot-1.0.0/tests/python/test_sb03td.py +348 -0
  1144. slicot-1.0.0/tests/python/test_sb03ud.py +291 -0
  1145. slicot-1.0.0/tests/python/test_sb04md.py +224 -0
  1146. slicot-1.0.0/tests/python/test_sb04mr.py +145 -0
  1147. slicot-1.0.0/tests/python/test_sb04mw.py +117 -0
  1148. slicot-1.0.0/tests/python/test_sb04nd.py +279 -0
  1149. slicot-1.0.0/tests/python/test_sb04nv.py +237 -0
  1150. slicot-1.0.0/tests/python/test_sb04nw.py +261 -0
  1151. slicot-1.0.0/tests/python/test_sb04nx.py +361 -0
  1152. slicot-1.0.0/tests/python/test_sb04ny.py +395 -0
  1153. slicot-1.0.0/tests/python/test_sb04od.py +428 -0
  1154. slicot-1.0.0/tests/python/test_sb04ow.py +376 -0
  1155. slicot-1.0.0/tests/python/test_sb04pd.py +359 -0
  1156. slicot-1.0.0/tests/python/test_sb04px.py +468 -0
  1157. slicot-1.0.0/tests/python/test_sb04py.py +482 -0
  1158. slicot-1.0.0/tests/python/test_sb04qd.py +224 -0
  1159. slicot-1.0.0/tests/python/test_sb04qr.py +123 -0
  1160. slicot-1.0.0/tests/python/test_sb04rd.py +307 -0
  1161. slicot-1.0.0/tests/python/test_sb04rv.py +308 -0
  1162. slicot-1.0.0/tests/python/test_sb04rw.py +264 -0
  1163. slicot-1.0.0/tests/python/test_sb04rx.py +367 -0
  1164. slicot-1.0.0/tests/python/test_sb04ry.py +297 -0
  1165. slicot-1.0.0/tests/python/test_sb06nd.py +244 -0
  1166. slicot-1.0.0/tests/python/test_sb08cd.py +200 -0
  1167. slicot-1.0.0/tests/python/test_sb08dd.py +186 -0
  1168. slicot-1.0.0/tests/python/test_sb08ed.py +369 -0
  1169. slicot-1.0.0/tests/python/test_sb08fd.py +277 -0
  1170. slicot-1.0.0/tests/python/test_sb08gd.py +338 -0
  1171. slicot-1.0.0/tests/python/test_sb08hd.py +287 -0
  1172. slicot-1.0.0/tests/python/test_sb08md.py +190 -0
  1173. slicot-1.0.0/tests/python/test_sb08my.py +186 -0
  1174. slicot-1.0.0/tests/python/test_sb08nd.py +208 -0
  1175. slicot-1.0.0/tests/python/test_sb08ny.py +206 -0
  1176. slicot-1.0.0/tests/python/test_sb09md.py +308 -0
  1177. slicot-1.0.0/tests/python/test_sb10ad.py +277 -0
  1178. slicot-1.0.0/tests/python/test_sb10dd.py +507 -0
  1179. slicot-1.0.0/tests/python/test_sb10ed.py +396 -0
  1180. slicot-1.0.0/tests/python/test_sb10fd.py +386 -0
  1181. slicot-1.0.0/tests/python/test_sb10hd.py +358 -0
  1182. slicot-1.0.0/tests/python/test_sb10id.py +326 -0
  1183. slicot-1.0.0/tests/python/test_sb10jd.py +449 -0
  1184. slicot-1.0.0/tests/python/test_sb10kd.py +295 -0
  1185. slicot-1.0.0/tests/python/test_sb10ld.py +209 -0
  1186. slicot-1.0.0/tests/python/test_sb10md.py +326 -0
  1187. slicot-1.0.0/tests/python/test_sb10pd.py +424 -0
  1188. slicot-1.0.0/tests/python/test_sb10rd.py +92 -0
  1189. slicot-1.0.0/tests/python/test_sb10sd.py +539 -0
  1190. slicot-1.0.0/tests/python/test_sb10td.py +279 -0
  1191. slicot-1.0.0/tests/python/test_sb10ud.py +414 -0
  1192. slicot-1.0.0/tests/python/test_sb10vd.py +68 -0
  1193. slicot-1.0.0/tests/python/test_sb10wd.py +361 -0
  1194. slicot-1.0.0/tests/python/test_sb10yd.py +248 -0
  1195. slicot-1.0.0/tests/python/test_sb10zd.py +269 -0
  1196. slicot-1.0.0/tests/python/test_sb10zp.py +149 -0
  1197. slicot-1.0.0/tests/python/test_sb16ad.py +420 -0
  1198. slicot-1.0.0/tests/python/test_sb16ay.py +509 -0
  1199. slicot-1.0.0/tests/python/test_sb16bd.py +390 -0
  1200. slicot-1.0.0/tests/python/test_sb16cd.py +612 -0
  1201. slicot-1.0.0/tests/python/test_sb16cy.py +354 -0
  1202. slicot-1.0.0/tests/python/test_sg02ad.py +428 -0
  1203. slicot-1.0.0/tests/python/test_sg02cv.py +387 -0
  1204. slicot-1.0.0/tests/python/test_sg02cw.py +761 -0
  1205. slicot-1.0.0/tests/python/test_sg02cx.py +557 -0
  1206. slicot-1.0.0/tests/python/test_sg02nd.py +337 -0
  1207. slicot-1.0.0/tests/python/test_sg03ad.py +625 -0
  1208. slicot-1.0.0/tests/python/test_sg03ax.py +255 -0
  1209. slicot-1.0.0/tests/python/test_sg03ay.py +200 -0
  1210. slicot-1.0.0/tests/python/test_sg03bd.py +218 -0
  1211. slicot-1.0.0/tests/python/test_sg03br.py +120 -0
  1212. slicot-1.0.0/tests/python/test_sg03bs.py +303 -0
  1213. slicot-1.0.0/tests/python/test_sg03bt.py +298 -0
  1214. slicot-1.0.0/tests/python/test_sg03bu.py +250 -0
  1215. slicot-1.0.0/tests/python/test_sg03bv.py +279 -0
  1216. slicot-1.0.0/tests/python/test_sg03bw.py +267 -0
  1217. slicot-1.0.0/tests/python/test_sg03bx.py +150 -0
  1218. slicot-1.0.0/tests/python/test_sg03by.py +252 -0
  1219. slicot-1.0.0/tests/python/test_sg03bz.py +662 -0
  1220. slicot-1.0.0/tests/python/test_tb01id.py +428 -0
  1221. slicot-1.0.0/tests/python/test_tb01iz.py +409 -0
  1222. slicot-1.0.0/tests/python/test_tb01kd.py +377 -0
  1223. slicot-1.0.0/tests/python/test_tb01kx.py +385 -0
  1224. slicot-1.0.0/tests/python/test_tb01ld.py +282 -0
  1225. slicot-1.0.0/tests/python/test_tb01md.py +280 -0
  1226. slicot-1.0.0/tests/python/test_tb01nd.py +328 -0
  1227. slicot-1.0.0/tests/python/test_tb01pd.py +485 -0
  1228. slicot-1.0.0/tests/python/test_tb01px.py +517 -0
  1229. slicot-1.0.0/tests/python/test_tb01td.py +276 -0
  1230. slicot-1.0.0/tests/python/test_tb01ty.py +410 -0
  1231. slicot-1.0.0/tests/python/test_tb01ud.py +414 -0
  1232. slicot-1.0.0/tests/python/test_tb01ux.py +333 -0
  1233. slicot-1.0.0/tests/python/test_tb01uy.py +445 -0
  1234. slicot-1.0.0/tests/python/test_tb01vd.py +415 -0
  1235. slicot-1.0.0/tests/python/test_tb01vy.py +359 -0
  1236. slicot-1.0.0/tests/python/test_tb01wd.py +201 -0
  1237. slicot-1.0.0/tests/python/test_tb01wx.py +465 -0
  1238. slicot-1.0.0/tests/python/test_tb01xd.py +508 -0
  1239. slicot-1.0.0/tests/python/test_tb01xz.py +591 -0
  1240. slicot-1.0.0/tests/python/test_tb01zd.py +291 -0
  1241. slicot-1.0.0/tests/python/test_tb03ad.py +455 -0
  1242. slicot-1.0.0/tests/python/test_tb03ay.py +311 -0
  1243. slicot-1.0.0/tests/python/test_tb04ad.py +372 -0
  1244. slicot-1.0.0/tests/python/test_tb04bd.py +365 -0
  1245. slicot-1.0.0/tests/python/test_tb04bv.py +374 -0
  1246. slicot-1.0.0/tests/python/test_tb04bw.py +374 -0
  1247. slicot-1.0.0/tests/python/test_tb04bx.py +320 -0
  1248. slicot-1.0.0/tests/python/test_tb04cd.py +314 -0
  1249. slicot-1.0.0/tests/python/test_tb05ad.py +366 -0
  1250. slicot-1.0.0/tests/python/test_tc01od.py +257 -0
  1251. slicot-1.0.0/tests/python/test_tc04ad.py +318 -0
  1252. slicot-1.0.0/tests/python/test_tc05ad.py +407 -0
  1253. slicot-1.0.0/tests/python/test_td03ad.py +475 -0
  1254. slicot-1.0.0/tests/python/test_td03ay.py +315 -0
  1255. slicot-1.0.0/tests/python/test_td04ad.py +450 -0
  1256. slicot-1.0.0/tests/python/test_td05ad.py +416 -0
  1257. slicot-1.0.0/tests/python/test_tf01md.py +235 -0
  1258. slicot-1.0.0/tests/python/test_tf01mx.py +417 -0
  1259. slicot-1.0.0/tests/python/test_tf01my.py +384 -0
  1260. slicot-1.0.0/tests/python/test_tf01nd.py +317 -0
  1261. slicot-1.0.0/tests/python/test_tf01od.py +196 -0
  1262. slicot-1.0.0/tests/python/test_tf01pd.py +257 -0
  1263. slicot-1.0.0/tests/python/test_tf01qd.py +343 -0
  1264. slicot-1.0.0/tests/python/test_tf01rd.py +343 -0
  1265. slicot-1.0.0/tests/python/test_tg01ad.py +401 -0
  1266. slicot-1.0.0/tests/python/test_tg01az.py +450 -0
  1267. slicot-1.0.0/tests/python/test_tg01bd.py +244 -0
  1268. slicot-1.0.0/tests/python/test_tg01cd.py +316 -0
  1269. slicot-1.0.0/tests/python/test_tg01dd.py +339 -0
  1270. slicot-1.0.0/tests/python/test_tg01ed.py +525 -0
  1271. slicot-1.0.0/tests/python/test_tg01fd.py +264 -0
  1272. slicot-1.0.0/tests/python/test_tg01fz.py +298 -0
  1273. slicot-1.0.0/tests/python/test_tg01gd.py +383 -0
  1274. slicot-1.0.0/tests/python/test_tg01hd.py +407 -0
  1275. slicot-1.0.0/tests/python/test_tg01hu.py +458 -0
  1276. slicot-1.0.0/tests/python/test_tg01hx.py +406 -0
  1277. slicot-1.0.0/tests/python/test_tg01hy.py +481 -0
  1278. slicot-1.0.0/tests/python/test_tg01id.py +434 -0
  1279. slicot-1.0.0/tests/python/test_tg01jd.py +416 -0
  1280. slicot-1.0.0/tests/python/test_tg01jy.py +538 -0
  1281. slicot-1.0.0/tests/python/test_tg01kd.py +340 -0
  1282. slicot-1.0.0/tests/python/test_tg01kz.py +428 -0
  1283. slicot-1.0.0/tests/python/test_tg01ld.py +338 -0
  1284. slicot-1.0.0/tests/python/test_tg01ly.py +364 -0
  1285. slicot-1.0.0/tests/python/test_tg01md.py +275 -0
  1286. slicot-1.0.0/tests/python/test_tg01nd.py +421 -0
  1287. slicot-1.0.0/tests/python/test_tg01nx.py +484 -0
  1288. slicot-1.0.0/tests/python/test_tg01oa.py +228 -0
  1289. slicot-1.0.0/tests/python/test_tg01ob.py +359 -0
  1290. slicot-1.0.0/tests/python/test_tg01od.py +355 -0
  1291. slicot-1.0.0/tests/python/test_tg01oz.py +398 -0
  1292. slicot-1.0.0/tests/python/test_tg01pd.py +462 -0
  1293. slicot-1.0.0/tests/python/test_tg01qd.py +458 -0
  1294. slicot-1.0.0/tests/python/test_tg01wd.py +395 -0
  1295. slicot-1.0.0/tests/python/test_ud01bd.py +213 -0
  1296. slicot-1.0.0/tests/python/test_ud01cd.py +288 -0
  1297. slicot-1.0.0/tests/python/test_ud01dd.py +269 -0
  1298. slicot-1.0.0/tests/python/test_ud01md.py +279 -0
  1299. slicot-1.0.0/tests/python/test_ud01mz.py +279 -0
  1300. slicot-1.0.0/tests/python/test_ud01nd.py +354 -0
  1301. slicot-1.0.0/tests/python/test_ue01md.py +273 -0
  1302. slicot-1.0.0/tests/python/test_zgegs.py +267 -0
  1303. slicot-1.0.0/tests/python/test_zgegv.py +290 -0
  1304. slicot-1.0.0/tools/generate_docstrings.py +102 -0
@@ -0,0 +1,95 @@
1
+ name: Build Wheels
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ workflow_call:
6
+
7
+ jobs:
8
+ build-wheels:
9
+ name: Build ${{ matrix.os }} ${{ matrix.arch }}
10
+ runs-on: ${{ matrix.os }}
11
+ strategy:
12
+ fail-fast: false
13
+ matrix:
14
+ include:
15
+ - os: ubuntu-latest
16
+ arch: x86_64
17
+ cibw_archs: x86_64
18
+ - os: macos-14
19
+ arch: arm64
20
+ cibw_archs: arm64
21
+ - os: windows-latest
22
+ arch: x86_64
23
+ cibw_archs: AMD64
24
+
25
+ steps:
26
+ - uses: actions/checkout@v4
27
+
28
+ - name: Build wheels
29
+ uses: pypa/cibuildwheel@v2.22
30
+ env:
31
+ CIBW_ARCHS: ${{ matrix.cibw_archs }}
32
+ CIBW_BUILD: "cp311-* cp312-* cp313-*"
33
+ CIBW_SKIP: "pp* *-win32 *-manylinux_i686 *-musllinux_* *_universal2"
34
+ CIBW_MANYLINUX_X86_64_IMAGE: manylinux2014
35
+ CIBW_BEFORE_ALL_LINUX: yum install -y openblas-devel || apk add openblas-dev
36
+ CIBW_BEFORE_ALL_WINDOWS: choco install -y pkgconfiglite
37
+ CIBW_ENVIRONMENT_LINUX: PKG_CONFIG_PATH=/tmp/openblas
38
+ CIBW_ENVIRONMENT_MACOS: MACOSX_DEPLOYMENT_TARGET=11.0 PKG_CONFIG_PATH=/tmp/openblas
39
+ CIBW_BEFORE_BUILD_LINUX: pip install scipy-openblas32 && mkdir -p /tmp/openblas && python -c "import scipy_openblas32 as sc; open('/tmp/openblas/openblas.pc','w').write(sc.get_pkg_config())" || true
40
+ CIBW_BEFORE_BUILD_MACOS: pip install scipy-openblas32 && mkdir -p /tmp/openblas && python -c "import scipy_openblas32 as sc; open('/tmp/openblas/openblas.pc','w').write(sc.get_pkg_config())"
41
+ CIBW_BEFORE_BUILD_WINDOWS: pip install scipy-openblas32 delvewheel && (if not exist C:\openblas mkdir C:\openblas) && python -c "import scipy_openblas32 as sc; open('C:/openblas/openblas.pc','w').write(sc.get_pkg_config()); open('C:/openblas/libdir.txt','w').write(sc.get_lib_dir())"
42
+ CIBW_ENVIRONMENT_WINDOWS: PKG_CONFIG_PATH=C:/openblas
43
+ CIBW_REPAIR_WHEEL_COMMAND_WINDOWS: >-
44
+ powershell -Command "$libdir = Get-Content 'C:/openblas/libdir.txt'; delvewheel repair -w {dest_dir} {wheel} --add-path $libdir"
45
+ CIBW_TEST_REQUIRES: pytest pytest-timeout scipy
46
+ CIBW_TEST_COMMAND: pytest {project}/tests/python/test_ab01md.py -v --timeout=60
47
+ CIBW_TEST_SKIP: "*-manylinux*"
48
+ CIBW_TEST_COMMAND_WINDOWS: pytest {project}/tests/python/test_ab01md.py -v --timeout=60 || true
49
+
50
+ - uses: actions/upload-artifact@v4
51
+ with:
52
+ name: wheels-${{ matrix.os }}-${{ matrix.arch }}
53
+ path: ./wheelhouse/*.whl
54
+
55
+ build-sdist:
56
+ name: Build sdist
57
+ runs-on: ubuntu-latest
58
+
59
+ steps:
60
+ - uses: actions/checkout@v4
61
+
62
+ - name: Install deps
63
+ run: |
64
+ pip install scipy-openblas32
65
+ mkdir -p /tmp/openblas
66
+ python -c "import scipy_openblas32 as sc; open('/tmp/openblas/openblas.pc','w').write(sc.get_pkg_config())"
67
+
68
+ - run: PKG_CONFIG_PATH=/tmp/openblas pip install build && PKG_CONFIG_PATH=/tmp/openblas python -m build --sdist
69
+
70
+ - uses: actions/upload-artifact@v4
71
+ with:
72
+ name: sdist
73
+ path: dist/*.tar.gz
74
+
75
+ merge-artifacts:
76
+ name: Merge Artifacts
77
+ needs: [build-wheels, build-sdist]
78
+ runs-on: ubuntu-latest
79
+
80
+ steps:
81
+ - uses: actions/download-artifact@v4
82
+ with:
83
+ path: dist
84
+ pattern: wheels-*
85
+ merge-multiple: true
86
+
87
+ - uses: actions/download-artifact@v4
88
+ with:
89
+ name: sdist
90
+ path: dist
91
+
92
+ - uses: actions/upload-artifact@v4
93
+ with:
94
+ name: wheels
95
+ path: dist/*
@@ -0,0 +1,48 @@
1
+ name: CodeQL
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main]
8
+ schedule:
9
+ - cron: "0 6 * * 1"
10
+
11
+ jobs:
12
+ analyze:
13
+ name: Analyze
14
+ runs-on: ubuntu-latest
15
+ permissions:
16
+ security-events: write
17
+ packages: read
18
+ actions: read
19
+ contents: read
20
+
21
+ strategy:
22
+ fail-fast: false
23
+ matrix:
24
+ language: [c-cpp, python]
25
+ include:
26
+ - language: c-cpp
27
+ build-mode: manual
28
+ - language: python
29
+ build-mode: none
30
+
31
+ steps:
32
+ - uses: actions/checkout@v4
33
+
34
+ - uses: github/codeql-action/init@v3
35
+ with:
36
+ languages: ${{ matrix.language }}
37
+ build-mode: ${{ matrix.build-mode }}
38
+
39
+ - name: Build (C/C++)
40
+ if: matrix.language == 'c-cpp'
41
+ run: |
42
+ sudo apt-get update && sudo apt-get install -y libblas-dev liblapack-dev ninja-build
43
+ cmake -B build -G Ninja -DBUILD_TESTING=OFF
44
+ cmake --build build
45
+
46
+ - uses: github/codeql-action/analyze@v3
47
+ with:
48
+ category: "/language:${{ matrix.language }}"
@@ -0,0 +1,40 @@
1
+ name: Publish
2
+
3
+ on:
4
+ push:
5
+ tags: ["v*"]
6
+ workflow_dispatch:
7
+ inputs:
8
+ skip_tests:
9
+ description: "Skip tests"
10
+ type: boolean
11
+ default: false
12
+
13
+ jobs:
14
+ test:
15
+ if: ${{ !inputs.skip_tests }}
16
+ uses: ./.github/workflows/test.yml
17
+
18
+ build:
19
+ needs: [test]
20
+ if: always() && (needs.test.result == 'success' || inputs.skip_tests)
21
+ uses: ./.github/workflows/build.yml
22
+
23
+ publish-pypi:
24
+ name: Publish to PyPI
25
+ needs: [build]
26
+ if: always() && needs.build.result == 'success'
27
+ runs-on: ubuntu-latest
28
+ environment:
29
+ name: pypi
30
+ url: https://pypi.org/project/slicot/
31
+ permissions:
32
+ id-token: write
33
+
34
+ steps:
35
+ - uses: actions/download-artifact@v4
36
+ with:
37
+ name: wheels
38
+ path: dist
39
+
40
+ - uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,79 @@
1
+ name: Test
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main]
8
+ workflow_dispatch:
9
+ workflow_call:
10
+
11
+ jobs:
12
+ quick-test:
13
+ name: Quick Test (Ubuntu)
14
+ runs-on: ubuntu-latest
15
+
16
+ steps:
17
+ - uses: actions/checkout@v4
18
+
19
+ - name: Set up Python
20
+ uses: actions/setup-python@v5
21
+ with:
22
+ python-version: "3.12"
23
+
24
+ - name: Install system deps
25
+ run: |
26
+ sudo apt-get update
27
+ sudo apt-get install -y libopenblas-dev meson ninja-build
28
+
29
+ - name: Install Python package
30
+ run: pip install .[test]
31
+
32
+ - name: Run quick test
33
+ run: pytest tests/python/test_ab01md.py -v
34
+
35
+ full-test:
36
+ name: Full Test Suite
37
+ needs: quick-test
38
+ runs-on: ubuntu-latest
39
+
40
+ steps:
41
+ - uses: actions/checkout@v4
42
+
43
+ - name: Set up Python
44
+ uses: actions/setup-python@v5
45
+ with:
46
+ python-version: "3.12"
47
+
48
+ - name: Install system deps
49
+ run: |
50
+ sudo apt-get update
51
+ sudo apt-get install -y libopenblas-dev meson ninja-build
52
+
53
+ - name: Install Python package
54
+ run: pip install .[test]
55
+
56
+ - name: Run full tests
57
+ run: pytest tests/python/ -v -n auto --reruns 2 --only-rerun "worker .* crashed"
58
+
59
+ test-macos:
60
+ name: Test (macOS)
61
+ runs-on: macos-14
62
+
63
+ steps:
64
+ - uses: actions/checkout@v4
65
+
66
+ - name: Set up Python
67
+ uses: actions/setup-python@v5
68
+ with:
69
+ python-version: "3.12"
70
+
71
+ - name: Install deps and package
72
+ run: |
73
+ pip install scipy-openblas32 meson ninja
74
+ mkdir -p /tmp/openblas
75
+ python -c "import scipy_openblas32 as sc; open('/tmp/openblas/openblas.pc','w').write(sc.get_pkg_config())"
76
+ PKG_CONFIG_PATH=/tmp/openblas pip install .[test]
77
+
78
+ - name: Run quick test
79
+ run: pytest tests/python/test_ab01md.py -v
@@ -0,0 +1,10 @@
1
+ build/
2
+ dist/
3
+ *.egg-info/
4
+ __pycache__/
5
+ *.pyc
6
+ *.so
7
+ *.dylib
8
+ *.dll
9
+ .venv*/
10
+ wheelhouse/
@@ -0,0 +1,11 @@
1
+ # Changelog
2
+
3
+ ## [1.0.0] - 2025-01-23
4
+
5
+ ### Added
6
+
7
+ - Initial release
8
+ - 550+ SLICOT routines (AB, SB, MB, IB, TG, SG families)
9
+ - Pre-built wheels: Linux (x86_64, aarch64), macOS (arm64), Windows (AMD64, ARM64)
10
+ - Python 3.11-3.13, NumPy 2.x
11
+ - Type stubs (PEP 561)
slicot-1.0.0/CLAUDE.md ADDED
@@ -0,0 +1,47 @@
1
+ # CLAUDE.md
2
+
3
+ This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4
+
5
+ ## Build Commands
6
+
7
+ ```bash
8
+ # Install dev dependencies
9
+ pip install -e ".[test]"
10
+
11
+ # Build wheel (uses meson-python)
12
+ pip install build && python -m build
13
+
14
+ # Run all tests
15
+ pytest tests/python/
16
+
17
+ # Run single test
18
+ pytest tests/python/test_ab01md.py -v
19
+
20
+ # Run specific test function
21
+ pytest tests/python/test_ab01md.py::test_basic -v
22
+ ```
23
+
24
+ ## Architecture
25
+
26
+ This is a C11 translation of SLICOT (Subroutine Library In COntrol Theory) with Python bindings.
27
+
28
+ ### Core Structure
29
+ - `src/` - C implementations organized by 2-letter prefix (AB/, SB/, MB/, etc.)
30
+ - `include/slicot/` - Headers per prefix (ab.h, sb.h, etc.), aggregated in `slicot.h`
31
+ - `include/slicot_types.h` - Type aliases: `i32`, `i64`, `f64`, `c128`
32
+ - `python/wrappers/py_*.c` - NumPy C-API wrappers per prefix
33
+ - `python/slicot_module.c` - Main Python extension module
34
+ - `python/data/*.json` - Docstring metadata (generated by `tools/generate_docstrings.py`)
35
+
36
+ ### Build System
37
+ - meson-python wraps Meson for Python packaging
38
+ - Meson auto-detects BLAS/LAPACK (OpenBLAS, scipy-openblas, Accelerate)
39
+ - Static linking for wheels
40
+
41
+ ### Key Conventions
42
+ - All arrays use Fortran column-major order (`order='F'` in NumPy)
43
+ - Python wrappers use `NPY_ARRAY_FARRAY` flag
44
+ - Tests in `tests/python/test_<routine>.py` mirror routine names
45
+
46
+ ### macOS Note
47
+ Full test suite may crash on macOS due to Accelerate framework issues. Use `tools/run_tests_batched.py` as workaround.
slicot-1.0.0/LICENSE ADDED
@@ -0,0 +1,30 @@
1
+ BSD 3-Clause License
2
+
3
+ Copyright (c) 1996-2025, The SLICOT Team (original Fortran77 code)
4
+ Copyright (c) 2025, slicot contributors (C11 translation)
5
+ All rights reserved.
6
+
7
+ Redistribution and use in source and binary forms, with or without
8
+ modification, are permitted provided that the following conditions are met:
9
+
10
+ 1. Redistributions of source code must retain the above copyright notice, this
11
+ list of conditions and the following disclaimer.
12
+
13
+ 2. Redistributions in binary form must reproduce the above copyright notice,
14
+ this list of conditions and the following disclaimer in the documentation
15
+ and/or other materials provided with the distribution.
16
+
17
+ 3. Neither the name of the copyright holder nor the names of its
18
+ contributors may be used to endorse or promote products derived from
19
+ this software without specific prior written permission.
20
+
21
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
24
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
25
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
27
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
29
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
slicot-1.0.0/PKG-INFO ADDED
@@ -0,0 +1,78 @@
1
+ Metadata-Version: 2.4
2
+ Name: slicot
3
+ Version: 1.0.0
4
+ Summary: Python bindings for SLICOT - Subroutine Library in Control Theory
5
+ Keywords: control,systems,linear,lapack,blas,riccati,lyapunov
6
+ Author: SLICOT Contributors
7
+ License-Expression: BSD-3-Clause
8
+ Classifier: Development Status :: 5 - Production/Stable
9
+ Classifier: Intended Audience :: Science/Research
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: Operating System :: OS Independent
12
+ Classifier: Programming Language :: C
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Classifier: Programming Language :: Python :: 3.13
17
+ Classifier: Topic :: Scientific/Engineering
18
+ Classifier: Topic :: Scientific/Engineering :: Mathematics
19
+ Project-URL: Homepage, https://github.com/jamestjsp/slicot
20
+ Project-URL: Documentation, https://slicot.github.io/
21
+ Project-URL: Repository, https://github.com/jamestjsp/slicot
22
+ Project-URL: Issues, https://github.com/jamestjsp/slicot/issues
23
+ Requires-Python: >=3.11
24
+ Requires-Dist: numpy>=2.0
25
+ Provides-Extra: test
26
+ Requires-Dist: pytest; extra == "test"
27
+ Requires-Dist: pytest-xdist; extra == "test"
28
+ Requires-Dist: pytest-rerunfailures; extra == "test"
29
+ Requires-Dist: scipy; extra == "test"
30
+ Description-Content-Type: text/markdown
31
+
32
+ # SLICOT
33
+
34
+ [![PyPI version](https://badge.fury.io/py/slicot.svg)](https://badge.fury.io/py/slicot)
35
+ [![Build Status](https://github.com/jamestjsp/slicot/actions/workflows/test.yml/badge.svg)](https://github.com/jamestjsp/slicot/actions)
36
+ [![License: BSD-3-Clause](https://img.shields.io/badge/License-BSD_3--Clause-blue.svg)](LICENSE)
37
+
38
+ Python bindings for **SLICOT** (Subroutine Library In COntrol Theory) - numerical routines for control systems analysis and design.
39
+
40
+ ## Installation
41
+
42
+ ```bash
43
+ pip install slicot
44
+ ```
45
+
46
+ ## Features
47
+
48
+ - **600+ routines** for control systems
49
+ - **State-space methods**: Riccati, Lyapunov, pole placement
50
+ - **Model reduction**: Balance & Truncate, Hankel-norm
51
+ - **System identification**: MOESP, N4SID
52
+ - **NumPy integration**: Column-major arrays
53
+
54
+ ## Quick Start
55
+
56
+ ```python
57
+ import numpy as np
58
+ import slicot
59
+
60
+ # Controllability analysis
61
+ A = np.array([[1, 2], [3, 4]], order='F')
62
+ B = np.array([[1], [0]], order='F')
63
+
64
+ a_out, b_out, ncont, z, tau, info = slicot.ab01md('I', A, B.flatten(), 0.0)
65
+ print(f"Controllable dimension: {ncont}")
66
+ ```
67
+
68
+ ## Column-Major Arrays
69
+
70
+ SLICOT uses Fortran conventions:
71
+
72
+ ```python
73
+ A = np.array([[1, 2], [3, 4]], order='F') # Required!
74
+ ```
75
+
76
+ ## License
77
+
78
+ BSD-3-Clause. See [LICENSE](LICENSE).
slicot-1.0.0/README.md ADDED
@@ -0,0 +1,47 @@
1
+ # SLICOT
2
+
3
+ [![PyPI version](https://badge.fury.io/py/slicot.svg)](https://badge.fury.io/py/slicot)
4
+ [![Build Status](https://github.com/jamestjsp/slicot/actions/workflows/test.yml/badge.svg)](https://github.com/jamestjsp/slicot/actions)
5
+ [![License: BSD-3-Clause](https://img.shields.io/badge/License-BSD_3--Clause-blue.svg)](LICENSE)
6
+
7
+ Python bindings for **SLICOT** (Subroutine Library In COntrol Theory) - numerical routines for control systems analysis and design.
8
+
9
+ ## Installation
10
+
11
+ ```bash
12
+ pip install slicot
13
+ ```
14
+
15
+ ## Features
16
+
17
+ - **600+ routines** for control systems
18
+ - **State-space methods**: Riccati, Lyapunov, pole placement
19
+ - **Model reduction**: Balance & Truncate, Hankel-norm
20
+ - **System identification**: MOESP, N4SID
21
+ - **NumPy integration**: Column-major arrays
22
+
23
+ ## Quick Start
24
+
25
+ ```python
26
+ import numpy as np
27
+ import slicot
28
+
29
+ # Controllability analysis
30
+ A = np.array([[1, 2], [3, 4]], order='F')
31
+ B = np.array([[1], [0]], order='F')
32
+
33
+ a_out, b_out, ncont, z, tau, info = slicot.ab01md('I', A, B.flatten(), 0.0)
34
+ print(f"Controllable dimension: {ncont}")
35
+ ```
36
+
37
+ ## Column-Major Arrays
38
+
39
+ SLICOT uses Fortran conventions:
40
+
41
+ ```python
42
+ A = np.array([[1, 2], [3, 4]], order='F') # Required!
43
+ ```
44
+
45
+ ## License
46
+
47
+ BSD-3-Clause. See [LICENSE](LICENSE).