ruby-lapack 1.3

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 (3419) hide show
  1. data/COPYING +56 -0
  2. data/GPL +340 -0
  3. data/README.rdoc +61 -0
  4. data/Rakefile +115 -0
  5. data/dev/common.rb +9 -0
  6. data/dev/defs/cbbcsd +297 -0
  7. data/dev/defs/cbdsqr +196 -0
  8. data/dev/defs/cgbbrd +174 -0
  9. data/dev/defs/cgbcon +114 -0
  10. data/dev/defs/cgbequ +121 -0
  11. data/dev/defs/cgbequb +128 -0
  12. data/dev/defs/cgbrfs +182 -0
  13. data/dev/defs/cgbrfsx +418 -0
  14. data/dev/defs/cgbsv +134 -0
  15. data/dev/defs/cgbsvx +356 -0
  16. data/dev/defs/cgbsvxx +539 -0
  17. data/dev/defs/cgbtf2 +110 -0
  18. data/dev/defs/cgbtrf +109 -0
  19. data/dev/defs/cgbtrs +106 -0
  20. data/dev/defs/cgebak +95 -0
  21. data/dev/defs/cgebal +125 -0
  22. data/dev/defs/cgebd2 +162 -0
  23. data/dev/defs/cgebrd +178 -0
  24. data/dev/defs/cgecon +90 -0
  25. data/dev/defs/cgeequ +107 -0
  26. data/dev/defs/cgeequb +114 -0
  27. data/dev/defs/cgees +169 -0
  28. data/dev/defs/cgeesx +209 -0
  29. data/dev/defs/cgeev +154 -0
  30. data/dev/defs/cgeevx +263 -0
  31. data/dev/defs/cgegs +204 -0
  32. data/dev/defs/cgegv +261 -0
  33. data/dev/defs/cgehd2 +115 -0
  34. data/dev/defs/cgehrd +136 -0
  35. data/dev/defs/cgelq2 +89 -0
  36. data/dev/defs/cgelqf +113 -0
  37. data/dev/defs/cgels +157 -0
  38. data/dev/defs/cgelsd +211 -0
  39. data/dev/defs/cgelss +156 -0
  40. data/dev/defs/cgelsx +155 -0
  41. data/dev/defs/cgelsy +188 -0
  42. data/dev/defs/cgeql2 +91 -0
  43. data/dev/defs/cgeqlf +116 -0
  44. data/dev/defs/cgeqp3 +127 -0
  45. data/dev/defs/cgeqpf +118 -0
  46. data/dev/defs/cgeqr2 +89 -0
  47. data/dev/defs/cgeqr2p +89 -0
  48. data/dev/defs/cgeqrf +114 -0
  49. data/dev/defs/cgeqrfp +114 -0
  50. data/dev/defs/cgerfs +164 -0
  51. data/dev/defs/cgerfsx +394 -0
  52. data/dev/defs/cgerq2 +91 -0
  53. data/dev/defs/cgerqf +116 -0
  54. data/dev/defs/cgesc2 +87 -0
  55. data/dev/defs/cgesdd +203 -0
  56. data/dev/defs/cgesv +97 -0
  57. data/dev/defs/cgesvd +195 -0
  58. data/dev/defs/cgesvx +333 -0
  59. data/dev/defs/cgesvxx +519 -0
  60. data/dev/defs/cgetc2 +82 -0
  61. data/dev/defs/cgetf2 +76 -0
  62. data/dev/defs/cgetrf +76 -0
  63. data/dev/defs/cgetri +86 -0
  64. data/dev/defs/cgetrs +91 -0
  65. data/dev/defs/cggbak +119 -0
  66. data/dev/defs/cggbal +144 -0
  67. data/dev/defs/cgges +247 -0
  68. data/dev/defs/cggesx +311 -0
  69. data/dev/defs/cggev +197 -0
  70. data/dev/defs/cggevx +353 -0
  71. data/dev/defs/cggglm +160 -0
  72. data/dev/defs/cgghrd +171 -0
  73. data/dev/defs/cgglse +157 -0
  74. data/dev/defs/cggqrf +195 -0
  75. data/dev/defs/cggrqf +194 -0
  76. data/dev/defs/cggsvd +324 -0
  77. data/dev/defs/cggsvp +240 -0
  78. data/dev/defs/cgtcon +112 -0
  79. data/dev/defs/cgtrfs +193 -0
  80. data/dev/defs/cgtsv +97 -0
  81. data/dev/defs/cgtsvx +275 -0
  82. data/dev/defs/cgttrf +97 -0
  83. data/dev/defs/cgttrs +119 -0
  84. data/dev/defs/cgtts2 +108 -0
  85. data/dev/defs/chbev +124 -0
  86. data/dev/defs/chbevd +194 -0
  87. data/dev/defs/chbevx +234 -0
  88. data/dev/defs/chbgst +137 -0
  89. data/dev/defs/chbgv +163 -0
  90. data/dev/defs/chbgvd +231 -0
  91. data/dev/defs/chbgvx +265 -0
  92. data/dev/defs/chbtrd +132 -0
  93. data/dev/defs/checon +91 -0
  94. data/dev/defs/cheequb +87 -0
  95. data/dev/defs/cheev +111 -0
  96. data/dev/defs/cheevd +178 -0
  97. data/dev/defs/cheevr +325 -0
  98. data/dev/defs/cheevx +225 -0
  99. data/dev/defs/chegs2 +96 -0
  100. data/dev/defs/chegst +96 -0
  101. data/dev/defs/chegv +155 -0
  102. data/dev/defs/chegvd +222 -0
  103. data/dev/defs/chegvx +270 -0
  104. data/dev/defs/cherfs +170 -0
  105. data/dev/defs/cherfsx +380 -0
  106. data/dev/defs/chesv +147 -0
  107. data/dev/defs/chesvx +261 -0
  108. data/dev/defs/chesvxx +481 -0
  109. data/dev/defs/chetd2 +143 -0
  110. data/dev/defs/chetf2 +141 -0
  111. data/dev/defs/chetrd +162 -0
  112. data/dev/defs/chetrf +151 -0
  113. data/dev/defs/chetri +83 -0
  114. data/dev/defs/chetrs +90 -0
  115. data/dev/defs/chetrs2 +97 -0
  116. data/dev/defs/chfrk +138 -0
  117. data/dev/defs/chgeqz +258 -0
  118. data/dev/defs/chla_transtype +32 -0
  119. data/dev/defs/chpcon +85 -0
  120. data/dev/defs/chpev +110 -0
  121. data/dev/defs/chpevd +179 -0
  122. data/dev/defs/chpevx +204 -0
  123. data/dev/defs/chpgst +80 -0
  124. data/dev/defs/chpgv +145 -0
  125. data/dev/defs/chpgvd +221 -0
  126. data/dev/defs/chpgvx +247 -0
  127. data/dev/defs/chprfs +156 -0
  128. data/dev/defs/chpsv +134 -0
  129. data/dev/defs/chpsvx +248 -0
  130. data/dev/defs/chptrd +118 -0
  131. data/dev/defs/chptrf +120 -0
  132. data/dev/defs/chptri +77 -0
  133. data/dev/defs/chptrs +84 -0
  134. data/dev/defs/chsein +217 -0
  135. data/dev/defs/chseqr +263 -0
  136. data/dev/defs/cla_gbamv +154 -0
  137. data/dev/defs/cla_gbrcond_c +146 -0
  138. data/dev/defs/cla_gbrcond_x +140 -0
  139. data/dev/defs/cla_gbrfsx_extended +391 -0
  140. data/dev/defs/cla_gbrpvgrw +94 -0
  141. data/dev/defs/cla_geamv +142 -0
  142. data/dev/defs/cla_gercond_c +128 -0
  143. data/dev/defs/cla_gercond_x +122 -0
  144. data/dev/defs/cla_gerfsx_extended +376 -0
  145. data/dev/defs/cla_heamv +142 -0
  146. data/dev/defs/cla_hercond_c +125 -0
  147. data/dev/defs/cla_hercond_x +119 -0
  148. data/dev/defs/cla_herfsx_extended +375 -0
  149. data/dev/defs/cla_herpvgrw +105 -0
  150. data/dev/defs/cla_lin_berr +79 -0
  151. data/dev/defs/cla_porcond_c +116 -0
  152. data/dev/defs/cla_porcond_x +110 -0
  153. data/dev/defs/cla_porfsx_extended +366 -0
  154. data/dev/defs/cla_porpvgrw +85 -0
  155. data/dev/defs/cla_rpvgrw +76 -0
  156. data/dev/defs/cla_syamv +142 -0
  157. data/dev/defs/cla_syrcond_c +125 -0
  158. data/dev/defs/cla_syrcond_x +119 -0
  159. data/dev/defs/cla_syrfsx_extended +375 -0
  160. data/dev/defs/cla_syrpvgrw +105 -0
  161. data/dev/defs/cla_wwaddw +53 -0
  162. data/dev/defs/clabrd +187 -0
  163. data/dev/defs/clacgv +44 -0
  164. data/dev/defs/clacn2 +91 -0
  165. data/dev/defs/clacon +75 -0
  166. data/dev/defs/clacp2 +78 -0
  167. data/dev/defs/clacpy +78 -0
  168. data/dev/defs/clacrm +88 -0
  169. data/dev/defs/clacrt +73 -0
  170. data/dev/defs/cladiv +37 -0
  171. data/dev/defs/claed0 +121 -0
  172. data/dev/defs/claed7 +237 -0
  173. data/dev/defs/claed8 +211 -0
  174. data/dev/defs/claein +117 -0
  175. data/dev/defs/claesy +81 -0
  176. data/dev/defs/claev2 +83 -0
  177. data/dev/defs/clag2z +73 -0
  178. data/dev/defs/clags2 +116 -0
  179. data/dev/defs/clagtm +115 -0
  180. data/dev/defs/clahef +127 -0
  181. data/dev/defs/clahqr +159 -0
  182. data/dev/defs/clahr2 +153 -0
  183. data/dev/defs/clahrd +141 -0
  184. data/dev/defs/claic1 +101 -0
  185. data/dev/defs/clals0 +251 -0
  186. data/dev/defs/clalsa +267 -0
  187. data/dev/defs/clalsd +160 -0
  188. data/dev/defs/clangb +92 -0
  189. data/dev/defs/clange +84 -0
  190. data/dev/defs/clangt +77 -0
  191. data/dev/defs/clanhb +99 -0
  192. data/dev/defs/clanhe +93 -0
  193. data/dev/defs/clanhf +211 -0
  194. data/dev/defs/clanhp +85 -0
  195. data/dev/defs/clanhs +78 -0
  196. data/dev/defs/clanht +69 -0
  197. data/dev/defs/clansb +97 -0
  198. data/dev/defs/clansp +83 -0
  199. data/dev/defs/clansy +92 -0
  200. data/dev/defs/clantb +108 -0
  201. data/dev/defs/clantp +93 -0
  202. data/dev/defs/clantr +109 -0
  203. data/dev/defs/clapll +67 -0
  204. data/dev/defs/clapmr +73 -0
  205. data/dev/defs/clapmt +73 -0
  206. data/dev/defs/claqgb +124 -0
  207. data/dev/defs/claqge +107 -0
  208. data/dev/defs/claqhb +105 -0
  209. data/dev/defs/claqhe +98 -0
  210. data/dev/defs/claqhp +89 -0
  211. data/dev/defs/claqp2 +115 -0
  212. data/dev/defs/claqps +146 -0
  213. data/dev/defs/claqr0 +203 -0
  214. data/dev/defs/claqr1 +66 -0
  215. data/dev/defs/claqr2 +243 -0
  216. data/dev/defs/claqr3 +238 -0
  217. data/dev/defs/claqr4 +203 -0
  218. data/dev/defs/claqr5 +221 -0
  219. data/dev/defs/claqsb +105 -0
  220. data/dev/defs/claqsp +89 -0
  221. data/dev/defs/claqsy +98 -0
  222. data/dev/defs/clar1v +199 -0
  223. data/dev/defs/clar2v +88 -0
  224. data/dev/defs/clarcm +88 -0
  225. data/dev/defs/clarf +97 -0
  226. data/dev/defs/clarfb +139 -0
  227. data/dev/defs/clarfg +71 -0
  228. data/dev/defs/clarfgp +69 -0
  229. data/dev/defs/clarft +133 -0
  230. data/dev/defs/clarfx +88 -0
  231. data/dev/defs/clargv +88 -0
  232. data/dev/defs/clarnv +63 -0
  233. data/dev/defs/clarrv +259 -0
  234. data/dev/defs/clarscl2 +61 -0
  235. data/dev/defs/clartg +66 -0
  236. data/dev/defs/clartv +82 -0
  237. data/dev/defs/clarz +111 -0
  238. data/dev/defs/clarzb +150 -0
  239. data/dev/defs/clarzt +151 -0
  240. data/dev/defs/clascl +102 -0
  241. data/dev/defs/clascl2 +61 -0
  242. data/dev/defs/claset +77 -0
  243. data/dev/defs/clasr +169 -0
  244. data/dev/defs/classq +71 -0
  245. data/dev/defs/claswp +81 -0
  246. data/dev/defs/clasyf +127 -0
  247. data/dev/defs/clatbs +206 -0
  248. data/dev/defs/clatdf +133 -0
  249. data/dev/defs/clatps +193 -0
  250. data/dev/defs/clatrd +168 -0
  251. data/dev/defs/clatrs +202 -0
  252. data/dev/defs/clatrz +106 -0
  253. data/dev/defs/clatzm +124 -0
  254. data/dev/defs/clauu2 +68 -0
  255. data/dev/defs/clauum +68 -0
  256. data/dev/defs/cpbcon +99 -0
  257. data/dev/defs/cpbequ +96 -0
  258. data/dev/defs/cpbrfs +166 -0
  259. data/dev/defs/cpbstf +116 -0
  260. data/dev/defs/cpbsv +136 -0
  261. data/dev/defs/cpbsvx +314 -0
  262. data/dev/defs/cpbtf2 +105 -0
  263. data/dev/defs/cpbtrf +103 -0
  264. data/dev/defs/cpbtrs +98 -0
  265. data/dev/defs/cpftrf +183 -0
  266. data/dev/defs/cpftri +175 -0
  267. data/dev/defs/cpftrs +185 -0
  268. data/dev/defs/cpocon +87 -0
  269. data/dev/defs/cpoequ +80 -0
  270. data/dev/defs/cpoequb +80 -0
  271. data/dev/defs/cporfs +160 -0
  272. data/dev/defs/cporfsx +371 -0
  273. data/dev/defs/cposv +105 -0
  274. data/dev/defs/cposvx +281 -0
  275. data/dev/defs/cposvxx +471 -0
  276. data/dev/defs/cpotf2 +75 -0
  277. data/dev/defs/cpotrf +73 -0
  278. data/dev/defs/cpotri +67 -0
  279. data/dev/defs/cpotrs +79 -0
  280. data/dev/defs/cppcon +85 -0
  281. data/dev/defs/cppequ +82 -0
  282. data/dev/defs/cpprfs +146 -0
  283. data/dev/defs/cppsv +115 -0
  284. data/dev/defs/cppsvx +283 -0
  285. data/dev/defs/cpptrf +81 -0
  286. data/dev/defs/cpptri +58 -0
  287. data/dev/defs/cpptrs +84 -0
  288. data/dev/defs/cpstf2 +108 -0
  289. data/dev/defs/cpstrf +108 -0
  290. data/dev/defs/cptcon +84 -0
  291. data/dev/defs/cpteqr +116 -0
  292. data/dev/defs/cptrfs +161 -0
  293. data/dev/defs/cptsv +89 -0
  294. data/dev/defs/cptsvx +210 -0
  295. data/dev/defs/cpttrf +59 -0
  296. data/dev/defs/cpttrs +98 -0
  297. data/dev/defs/cptts2 +89 -0
  298. data/dev/defs/crot +72 -0
  299. data/dev/defs/cspcon +85 -0
  300. data/dev/defs/cspmv +121 -0
  301. data/dev/defs/cspr +98 -0
  302. data/dev/defs/csprfs +156 -0
  303. data/dev/defs/cspsv +134 -0
  304. data/dev/defs/cspsvx +248 -0
  305. data/dev/defs/csptrf +121 -0
  306. data/dev/defs/csptri +77 -0
  307. data/dev/defs/csptrs +84 -0
  308. data/dev/defs/csrscl +49 -0
  309. data/dev/defs/cstedc +191 -0
  310. data/dev/defs/cstegr +233 -0
  311. data/dev/defs/cstein +159 -0
  312. data/dev/defs/cstemr +302 -0
  313. data/dev/defs/csteqr +103 -0
  314. data/dev/defs/csycon +91 -0
  315. data/dev/defs/csyconv +90 -0
  316. data/dev/defs/csyequb +104 -0
  317. data/dev/defs/csymv +126 -0
  318. data/dev/defs/csyr +102 -0
  319. data/dev/defs/csyrfs +170 -0
  320. data/dev/defs/csyrfsx +380 -0
  321. data/dev/defs/csysv +149 -0
  322. data/dev/defs/csysvx +261 -0
  323. data/dev/defs/csysvxx +485 -0
  324. data/dev/defs/csyswapr +70 -0
  325. data/dev/defs/csytf2 +140 -0
  326. data/dev/defs/csytrf +156 -0
  327. data/dev/defs/csytri +83 -0
  328. data/dev/defs/csytri2 +110 -0
  329. data/dev/defs/csytri2x +90 -0
  330. data/dev/defs/csytrs +90 -0
  331. data/dev/defs/csytrs2 +97 -0
  332. data/dev/defs/ctbcon +109 -0
  333. data/dev/defs/ctbrfs +164 -0
  334. data/dev/defs/ctbtrs +113 -0
  335. data/dev/defs/ctfsm +259 -0
  336. data/dev/defs/ctftri +183 -0
  337. data/dev/defs/ctfttp +172 -0
  338. data/dev/defs/ctfttr +182 -0
  339. data/dev/defs/ctgevc +194 -0
  340. data/dev/defs/ctgex2 +158 -0
  341. data/dev/defs/ctgexc +176 -0
  342. data/dev/defs/ctgsen +406 -0
  343. data/dev/defs/ctgsja +344 -0
  344. data/dev/defs/ctgsna +282 -0
  345. data/dev/defs/ctgsy2 +235 -0
  346. data/dev/defs/ctgsyl +273 -0
  347. data/dev/defs/ctpcon +95 -0
  348. data/dev/defs/ctprfs +150 -0
  349. data/dev/defs/ctptri +79 -0
  350. data/dev/defs/ctptrs +98 -0
  351. data/dev/defs/ctpttf +172 -0
  352. data/dev/defs/ctpttr +73 -0
  353. data/dev/defs/ctrcon +103 -0
  354. data/dev/defs/ctrevc +188 -0
  355. data/dev/defs/ctrexc +99 -0
  356. data/dev/defs/ctrrfs +158 -0
  357. data/dev/defs/ctrsen +234 -0
  358. data/dev/defs/ctrsna +223 -0
  359. data/dev/defs/ctrsyl +126 -0
  360. data/dev/defs/ctrti2 +76 -0
  361. data/dev/defs/ctrtri +75 -0
  362. data/dev/defs/ctrtrs +107 -0
  363. data/dev/defs/ctrttf +181 -0
  364. data/dev/defs/ctrttp +72 -0
  365. data/dev/defs/ctzrqf +104 -0
  366. data/dev/defs/ctzrzf +128 -0
  367. data/dev/defs/cunbdb +270 -0
  368. data/dev/defs/cuncsd +283 -0
  369. data/dev/defs/cung2l +85 -0
  370. data/dev/defs/cung2r +85 -0
  371. data/dev/defs/cungbr +129 -0
  372. data/dev/defs/cunghr +97 -0
  373. data/dev/defs/cungl2 +84 -0
  374. data/dev/defs/cunglq +100 -0
  375. data/dev/defs/cungql +101 -0
  376. data/dev/defs/cungqr +101 -0
  377. data/dev/defs/cungr2 +85 -0
  378. data/dev/defs/cungrq +101 -0
  379. data/dev/defs/cungtr +95 -0
  380. data/dev/defs/cunm2l +130 -0
  381. data/dev/defs/cunm2r +130 -0
  382. data/dev/defs/cunmbr +179 -0
  383. data/dev/defs/cunmhr +157 -0
  384. data/dev/defs/cunml2 +130 -0
  385. data/dev/defs/cunmlq +143 -0
  386. data/dev/defs/cunmql +143 -0
  387. data/dev/defs/cunmqr +143 -0
  388. data/dev/defs/cunmr2 +130 -0
  389. data/dev/defs/cunmr3 +152 -0
  390. data/dev/defs/cunmrq +143 -0
  391. data/dev/defs/cunmrz +157 -0
  392. data/dev/defs/cunmtr +152 -0
  393. data/dev/defs/cupgtr +87 -0
  394. data/dev/defs/cupmtr +120 -0
  395. data/dev/defs/dbbcsd +297 -0
  396. data/dev/defs/dbdsdc +194 -0
  397. data/dev/defs/dbdsqr +203 -0
  398. data/dev/defs/ddisna +84 -0
  399. data/dev/defs/dgbbrd +167 -0
  400. data/dev/defs/dgbcon +114 -0
  401. data/dev/defs/dgbequ +121 -0
  402. data/dev/defs/dgbequb +128 -0
  403. data/dev/defs/dgbrfs +182 -0
  404. data/dev/defs/dgbrfsx +418 -0
  405. data/dev/defs/dgbsv +134 -0
  406. data/dev/defs/dgbsvx +353 -0
  407. data/dev/defs/dgbsvxx +536 -0
  408. data/dev/defs/dgbtf2 +110 -0
  409. data/dev/defs/dgbtrf +109 -0
  410. data/dev/defs/dgbtrs +106 -0
  411. data/dev/defs/dgebak +95 -0
  412. data/dev/defs/dgebal +125 -0
  413. data/dev/defs/dgebd2 +162 -0
  414. data/dev/defs/dgebrd +178 -0
  415. data/dev/defs/dgecon +90 -0
  416. data/dev/defs/dgeequ +107 -0
  417. data/dev/defs/dgeequb +114 -0
  418. data/dev/defs/dgees +188 -0
  419. data/dev/defs/dgeesx +251 -0
  420. data/dev/defs/dgeev +166 -0
  421. data/dev/defs/dgeevx +282 -0
  422. data/dev/defs/dgegs +207 -0
  423. data/dev/defs/dgegv +286 -0
  424. data/dev/defs/dgehd2 +115 -0
  425. data/dev/defs/dgehrd +136 -0
  426. data/dev/defs/dgejsv +862 -0
  427. data/dev/defs/dgelq2 +89 -0
  428. data/dev/defs/dgelqf +113 -0
  429. data/dev/defs/dgels +158 -0
  430. data/dev/defs/dgelsd +193 -0
  431. data/dev/defs/dgelss +149 -0
  432. data/dev/defs/dgelsx +148 -0
  433. data/dev/defs/dgelsy +181 -0
  434. data/dev/defs/dgeql2 +91 -0
  435. data/dev/defs/dgeqlf +116 -0
  436. data/dev/defs/dgeqp3 +120 -0
  437. data/dev/defs/dgeqpf +111 -0
  438. data/dev/defs/dgeqr2 +89 -0
  439. data/dev/defs/dgeqr2p +89 -0
  440. data/dev/defs/dgeqrf +114 -0
  441. data/dev/defs/dgeqrfp +114 -0
  442. data/dev/defs/dgerfs +164 -0
  443. data/dev/defs/dgerfsx +394 -0
  444. data/dev/defs/dgerq2 +91 -0
  445. data/dev/defs/dgerqf +116 -0
  446. data/dev/defs/dgesc2 +86 -0
  447. data/dev/defs/dgesdd +197 -0
  448. data/dev/defs/dgesv +97 -0
  449. data/dev/defs/dgesvd +188 -0
  450. data/dev/defs/dgesvj +308 -0
  451. data/dev/defs/dgesvx +333 -0
  452. data/dev/defs/dgesvxx +516 -0
  453. data/dev/defs/dgetc2 +82 -0
  454. data/dev/defs/dgetf2 +76 -0
  455. data/dev/defs/dgetrf +76 -0
  456. data/dev/defs/dgetri +86 -0
  457. data/dev/defs/dgetrs +91 -0
  458. data/dev/defs/dggbak +119 -0
  459. data/dev/defs/dggbal +145 -0
  460. data/dev/defs/dgges +261 -0
  461. data/dev/defs/dggesx +342 -0
  462. data/dev/defs/dggev +206 -0
  463. data/dev/defs/dggevx +371 -0
  464. data/dev/defs/dggglm +160 -0
  465. data/dev/defs/dgghrd +174 -0
  466. data/dev/defs/dgglse +157 -0
  467. data/dev/defs/dggqrf +195 -0
  468. data/dev/defs/dggrqf +194 -0
  469. data/dev/defs/dggsvd +319 -0
  470. data/dev/defs/dggsvp +233 -0
  471. data/dev/defs/dgsvj0 +200 -0
  472. data/dev/defs/dgsvj1 +220 -0
  473. data/dev/defs/dgtcon +119 -0
  474. data/dev/defs/dgtrfs +193 -0
  475. data/dev/defs/dgtsv +100 -0
  476. data/dev/defs/dgtsvx +275 -0
  477. data/dev/defs/dgttrf +97 -0
  478. data/dev/defs/dgttrs +119 -0
  479. data/dev/defs/dgtts2 +106 -0
  480. data/dev/defs/dhgeqz +282 -0
  481. data/dev/defs/dhsein +234 -0
  482. data/dev/defs/dhseqr +279 -0
  483. data/dev/defs/disnan +29 -0
  484. data/dev/defs/dla_gbamv +152 -0
  485. data/dev/defs/dla_gbrcond +152 -0
  486. data/dev/defs/dla_gbrfsx_extended +393 -0
  487. data/dev/defs/dla_gbrpvgrw +90 -0
  488. data/dev/defs/dla_geamv +142 -0
  489. data/dev/defs/dla_gercond +134 -0
  490. data/dev/defs/dla_gerfsx_extended +379 -0
  491. data/dev/defs/dla_lin_berr +78 -0
  492. data/dev/defs/dla_porcond +122 -0
  493. data/dev/defs/dla_porfsx_extended +366 -0
  494. data/dev/defs/dla_porpvgrw +81 -0
  495. data/dev/defs/dla_rpvgrw +72 -0
  496. data/dev/defs/dla_syamv +142 -0
  497. data/dev/defs/dla_syrcond +131 -0
  498. data/dev/defs/dla_syrfsx_extended +375 -0
  499. data/dev/defs/dla_syrpvgrw +101 -0
  500. data/dev/defs/dla_wwaddw +53 -0
  501. data/dev/defs/dlabad +43 -0
  502. data/dev/defs/dlabrd +186 -0
  503. data/dev/defs/dlacn2 +96 -0
  504. data/dev/defs/dlacon +80 -0
  505. data/dev/defs/dlacpy +78 -0
  506. data/dev/defs/dladiv +57 -0
  507. data/dev/defs/dlae2 +66 -0
  508. data/dev/defs/dlaebz +292 -0
  509. data/dev/defs/dlaed0 +147 -0
  510. data/dev/defs/dlaed1 +141 -0
  511. data/dev/defs/dlaed2 +194 -0
  512. data/dev/defs/dlaed3 +167 -0
  513. data/dev/defs/dlaed4 +113 -0
  514. data/dev/defs/dlaed5 +78 -0
  515. data/dev/defs/dlaed6 +101 -0
  516. data/dev/defs/dlaed7 +241 -0
  517. data/dev/defs/dlaed8 +227 -0
  518. data/dev/defs/dlaed9 +137 -0
  519. data/dev/defs/dlaeda +147 -0
  520. data/dev/defs/dlaein +141 -0
  521. data/dev/defs/dlaev2 +83 -0
  522. data/dev/defs/dlaexc +107 -0
  523. data/dev/defs/dlag2 +123 -0
  524. data/dev/defs/dlag2s +81 -0
  525. data/dev/defs/dlags2 +108 -0
  526. data/dev/defs/dlagtf +128 -0
  527. data/dev/defs/dlagtm +115 -0
  528. data/dev/defs/dlagts +135 -0
  529. data/dev/defs/dlagv2 +128 -0
  530. data/dev/defs/dlahqr +172 -0
  531. data/dev/defs/dlahr2 +153 -0
  532. data/dev/defs/dlahrd +141 -0
  533. data/dev/defs/dlaic1 +101 -0
  534. data/dev/defs/dlaln2 +187 -0
  535. data/dev/defs/dlals0 +250 -0
  536. data/dev/defs/dlalsa +268 -0
  537. data/dev/defs/dlalsd +152 -0
  538. data/dev/defs/dlamrg +66 -0
  539. data/dev/defs/dlaneg +87 -0
  540. data/dev/defs/dlangb +93 -0
  541. data/dev/defs/dlange +84 -0
  542. data/dev/defs/dlangt +77 -0
  543. data/dev/defs/dlanhs +78 -0
  544. data/dev/defs/dlansb +97 -0
  545. data/dev/defs/dlansf +178 -0
  546. data/dev/defs/dlansp +83 -0
  547. data/dev/defs/dlanst +69 -0
  548. data/dev/defs/dlansy +92 -0
  549. data/dev/defs/dlantb +108 -0
  550. data/dev/defs/dlantp +93 -0
  551. data/dev/defs/dlantr +109 -0
  552. data/dev/defs/dlanv2 +84 -0
  553. data/dev/defs/dlapll +69 -0
  554. data/dev/defs/dlapmr +73 -0
  555. data/dev/defs/dlapmt +73 -0
  556. data/dev/defs/dlapy2 +30 -0
  557. data/dev/defs/dlapy3 +34 -0
  558. data/dev/defs/dlaqgb +124 -0
  559. data/dev/defs/dlaqge +107 -0
  560. data/dev/defs/dlaqp2 +115 -0
  561. data/dev/defs/dlaqps +146 -0
  562. data/dev/defs/dlaqr0 +225 -0
  563. data/dev/defs/dlaqr1 +79 -0
  564. data/dev/defs/dlaqr2 +252 -0
  565. data/dev/defs/dlaqr3 +247 -0
  566. data/dev/defs/dlaqr4 +225 -0
  567. data/dev/defs/dlaqr5 +230 -0
  568. data/dev/defs/dlaqsb +105 -0
  569. data/dev/defs/dlaqsp +89 -0
  570. data/dev/defs/dlaqsy +98 -0
  571. data/dev/defs/dlaqtr +134 -0
  572. data/dev/defs/dlar1v +199 -0
  573. data/dev/defs/dlar2v +86 -0
  574. data/dev/defs/dlarf +93 -0
  575. data/dev/defs/dlarfb +139 -0
  576. data/dev/defs/dlarfg +71 -0
  577. data/dev/defs/dlarfgp +69 -0
  578. data/dev/defs/dlarft +133 -0
  579. data/dev/defs/dlarfx +89 -0
  580. data/dev/defs/dlargv +74 -0
  581. data/dev/defs/dlarnv +61 -0
  582. data/dev/defs/dlarra +106 -0
  583. data/dev/defs/dlarrb +167 -0
  584. data/dev/defs/dlarrc +99 -0
  585. data/dev/defs/dlarrd +290 -0
  586. data/dev/defs/dlarre +265 -0
  587. data/dev/defs/dlarrf +168 -0
  588. data/dev/defs/dlarrj +138 -0
  589. data/dev/defs/dlarrk +108 -0
  590. data/dev/defs/dlarrr +62 -0
  591. data/dev/defs/dlarrv +259 -0
  592. data/dev/defs/dlarscl2 +61 -0
  593. data/dev/defs/dlartg +64 -0
  594. data/dev/defs/dlartgp +62 -0
  595. data/dev/defs/dlartgs +57 -0
  596. data/dev/defs/dlartv +82 -0
  597. data/dev/defs/dlaruv +59 -0
  598. data/dev/defs/dlarz +109 -0
  599. data/dev/defs/dlarzb +150 -0
  600. data/dev/defs/dlarzt +151 -0
  601. data/dev/defs/dlas2 +71 -0
  602. data/dev/defs/dlascl +102 -0
  603. data/dev/defs/dlascl2 +61 -0
  604. data/dev/defs/dlasd0 +133 -0
  605. data/dev/defs/dlasd1 +180 -0
  606. data/dev/defs/dlasd2 +254 -0
  607. data/dev/defs/dlasd3 +213 -0
  608. data/dev/defs/dlasd4 +123 -0
  609. data/dev/defs/dlasd5 +88 -0
  610. data/dev/defs/dlasd6 +300 -0
  611. data/dev/defs/dlasd7 +264 -0
  612. data/dev/defs/dlasd8 +144 -0
  613. data/dev/defs/dlasda +276 -0
  614. data/dev/defs/dlasdq +187 -0
  615. data/dev/defs/dlasdt +76 -0
  616. data/dev/defs/dlaset +81 -0
  617. data/dev/defs/dlasq1 +75 -0
  618. data/dev/defs/dlasq2 +73 -0
  619. data/dev/defs/dlasq3 +141 -0
  620. data/dev/defs/dlasq4 +107 -0
  621. data/dev/defs/dlasq5 +100 -0
  622. data/dev/defs/dlasq6 +90 -0
  623. data/dev/defs/dlasr +169 -0
  624. data/dev/defs/dlasrt +53 -0
  625. data/dev/defs/dlassq +68 -0
  626. data/dev/defs/dlasv2 +100 -0
  627. data/dev/defs/dlaswp +81 -0
  628. data/dev/defs/dlasy2 +145 -0
  629. data/dev/defs/dlasyf +126 -0
  630. data/dev/defs/dlat2s +83 -0
  631. data/dev/defs/dlatbs +206 -0
  632. data/dev/defs/dlatdf +131 -0
  633. data/dev/defs/dlatps +192 -0
  634. data/dev/defs/dlatrd +168 -0
  635. data/dev/defs/dlatrs +202 -0
  636. data/dev/defs/dlatrz +106 -0
  637. data/dev/defs/dlatzm +123 -0
  638. data/dev/defs/dlauu2 +68 -0
  639. data/dev/defs/dlauum +68 -0
  640. data/dev/defs/dopgtr +87 -0
  641. data/dev/defs/dopmtr +120 -0
  642. data/dev/defs/dorbdb +270 -0
  643. data/dev/defs/dorcsd +264 -0
  644. data/dev/defs/dorg2l +85 -0
  645. data/dev/defs/dorg2r +85 -0
  646. data/dev/defs/dorgbr +129 -0
  647. data/dev/defs/dorghr +97 -0
  648. data/dev/defs/dorgl2 +84 -0
  649. data/dev/defs/dorglq +100 -0
  650. data/dev/defs/dorgql +101 -0
  651. data/dev/defs/dorgqr +101 -0
  652. data/dev/defs/dorgr2 +85 -0
  653. data/dev/defs/dorgrq +101 -0
  654. data/dev/defs/dorgtr +95 -0
  655. data/dev/defs/dorm2l +130 -0
  656. data/dev/defs/dorm2r +130 -0
  657. data/dev/defs/dormbr +176 -0
  658. data/dev/defs/dormhr +157 -0
  659. data/dev/defs/dorml2 +130 -0
  660. data/dev/defs/dormlq +143 -0
  661. data/dev/defs/dormql +143 -0
  662. data/dev/defs/dormqr +143 -0
  663. data/dev/defs/dormr2 +130 -0
  664. data/dev/defs/dormr3 +152 -0
  665. data/dev/defs/dormrq +143 -0
  666. data/dev/defs/dormrz +157 -0
  667. data/dev/defs/dormtr +152 -0
  668. data/dev/defs/dpbcon +98 -0
  669. data/dev/defs/dpbequ +96 -0
  670. data/dev/defs/dpbrfs +166 -0
  671. data/dev/defs/dpbstf +115 -0
  672. data/dev/defs/dpbsv +136 -0
  673. data/dev/defs/dpbsvx +314 -0
  674. data/dev/defs/dpbtf2 +105 -0
  675. data/dev/defs/dpbtrf +103 -0
  676. data/dev/defs/dpbtrs +98 -0
  677. data/dev/defs/dpftrf +161 -0
  678. data/dev/defs/dpftri +154 -0
  679. data/dev/defs/dpftrs +164 -0
  680. data/dev/defs/dpocon +87 -0
  681. data/dev/defs/dpoequ +80 -0
  682. data/dev/defs/dpoequb +80 -0
  683. data/dev/defs/dporfs +160 -0
  684. data/dev/defs/dporfsx +370 -0
  685. data/dev/defs/dposv +105 -0
  686. data/dev/defs/dposvx +281 -0
  687. data/dev/defs/dposvxx +468 -0
  688. data/dev/defs/dpotf2 +75 -0
  689. data/dev/defs/dpotrf +73 -0
  690. data/dev/defs/dpotri +67 -0
  691. data/dev/defs/dpotrs +79 -0
  692. data/dev/defs/dppcon +85 -0
  693. data/dev/defs/dppequ +82 -0
  694. data/dev/defs/dpprfs +146 -0
  695. data/dev/defs/dppsv +115 -0
  696. data/dev/defs/dppsvx +283 -0
  697. data/dev/defs/dpptrf +81 -0
  698. data/dev/defs/dpptri +58 -0
  699. data/dev/defs/dpptrs +84 -0
  700. data/dev/defs/dpstf2 +108 -0
  701. data/dev/defs/dpstrf +108 -0
  702. data/dev/defs/dptcon +84 -0
  703. data/dev/defs/dpteqr +117 -0
  704. data/dev/defs/dptrfs +141 -0
  705. data/dev/defs/dptsv +89 -0
  706. data/dev/defs/dptsvx +203 -0
  707. data/dev/defs/dpttrf +59 -0
  708. data/dev/defs/dpttrs +88 -0
  709. data/dev/defs/dptts2 +77 -0
  710. data/dev/defs/drscl +49 -0
  711. data/dev/defs/dsbev +117 -0
  712. data/dev/defs/dsbevd +169 -0
  713. data/dev/defs/dsbevx +231 -0
  714. data/dev/defs/dsbgst +130 -0
  715. data/dev/defs/dsbgv +156 -0
  716. data/dev/defs/dsbgvd +206 -0
  717. data/dev/defs/dsbgvx +259 -0
  718. data/dev/defs/dsbtrd +132 -0
  719. data/dev/defs/dsfrk +134 -0
  720. data/dev/defs/dsgesv +170 -0
  721. data/dev/defs/dspcon +92 -0
  722. data/dev/defs/dspev +103 -0
  723. data/dev/defs/dspevd +155 -0
  724. data/dev/defs/dspevx +197 -0
  725. data/dev/defs/dspgst +80 -0
  726. data/dev/defs/dspgv +139 -0
  727. data/dev/defs/dspgvd +188 -0
  728. data/dev/defs/dspgvx +241 -0
  729. data/dev/defs/dsposv +173 -0
  730. data/dev/defs/dsprfs +156 -0
  731. data/dev/defs/dspsv +134 -0
  732. data/dev/defs/dspsvx +249 -0
  733. data/dev/defs/dsptrd +118 -0
  734. data/dev/defs/dsptrf +120 -0
  735. data/dev/defs/dsptri +77 -0
  736. data/dev/defs/dsptrs +84 -0
  737. data/dev/defs/dstebz +229 -0
  738. data/dev/defs/dstedc +165 -0
  739. data/dev/defs/dstegr +233 -0
  740. data/dev/defs/dstein +152 -0
  741. data/dev/defs/dstemr +285 -0
  742. data/dev/defs/dsteqr +103 -0
  743. data/dev/defs/dsterf +54 -0
  744. data/dev/defs/dstev +88 -0
  745. data/dev/defs/dstevd +138 -0
  746. data/dev/defs/dstevr +273 -0
  747. data/dev/defs/dstevx +193 -0
  748. data/dev/defs/dsycon +98 -0
  749. data/dev/defs/dsyconv +90 -0
  750. data/dev/defs/dsyequb +104 -0
  751. data/dev/defs/dsyev +104 -0
  752. data/dev/defs/dsyevd +157 -0
  753. data/dev/defs/dsyevr +300 -0
  754. data/dev/defs/dsyevx +218 -0
  755. data/dev/defs/dsygs2 +96 -0
  756. data/dev/defs/dsygst +96 -0
  757. data/dev/defs/dsygv +148 -0
  758. data/dev/defs/dsygvd +197 -0
  759. data/dev/defs/dsygvx +263 -0
  760. data/dev/defs/dsyrfs +170 -0
  761. data/dev/defs/dsyrfsx +380 -0
  762. data/dev/defs/dsysv +149 -0
  763. data/dev/defs/dsysvx +261 -0
  764. data/dev/defs/dsysvxx +481 -0
  765. data/dev/defs/dsyswapr +70 -0
  766. data/dev/defs/dsytd2 +142 -0
  767. data/dev/defs/dsytf2 +143 -0
  768. data/dev/defs/dsytrd +162 -0
  769. data/dev/defs/dsytrf +156 -0
  770. data/dev/defs/dsytri +83 -0
  771. data/dev/defs/dsytri2 +110 -0
  772. data/dev/defs/dsytri2x +90 -0
  773. data/dev/defs/dsytrs +90 -0
  774. data/dev/defs/dsytrs2 +97 -0
  775. data/dev/defs/dtbcon +109 -0
  776. data/dev/defs/dtbrfs +164 -0
  777. data/dev/defs/dtbtrs +113 -0
  778. data/dev/defs/dtfsm +243 -0
  779. data/dev/defs/dtftri +163 -0
  780. data/dev/defs/dtfttp +151 -0
  781. data/dev/defs/dtfttr +176 -0
  782. data/dev/defs/dtgevc +265 -0
  783. data/dev/defs/dtgex2 +191 -0
  784. data/dev/defs/dtgexc +190 -0
  785. data/dev/defs/dtgsen +422 -0
  786. data/dev/defs/dtgsja +343 -0
  787. data/dev/defs/dtgsna +354 -0
  788. data/dev/defs/dtgsy2 +252 -0
  789. data/dev/defs/dtgsyl +274 -0
  790. data/dev/defs/dtpcon +95 -0
  791. data/dev/defs/dtprfs +150 -0
  792. data/dev/defs/dtptri +79 -0
  793. data/dev/defs/dtptrs +98 -0
  794. data/dev/defs/dtpttf +151 -0
  795. data/dev/defs/dtpttr +73 -0
  796. data/dev/defs/dtrcon +103 -0
  797. data/dev/defs/dtrevc +191 -0
  798. data/dev/defs/dtrexc +113 -0
  799. data/dev/defs/dtrrfs +158 -0
  800. data/dev/defs/dtrsen +284 -0
  801. data/dev/defs/dtrsna +239 -0
  802. data/dev/defs/dtrsyl +133 -0
  803. data/dev/defs/dtrti2 +76 -0
  804. data/dev/defs/dtrtri +75 -0
  805. data/dev/defs/dtrtrs +107 -0
  806. data/dev/defs/dtrttf +171 -0
  807. data/dev/defs/dtrttp +72 -0
  808. data/dev/defs/dtzrqf +104 -0
  809. data/dev/defs/dtzrzf +128 -0
  810. data/dev/defs/dzsum1 +49 -0
  811. data/dev/defs/icmax1 +55 -0
  812. data/dev/defs/ieeeck +49 -0
  813. data/dev/defs/ilaclc +46 -0
  814. data/dev/defs/ilaclr +46 -0
  815. data/dev/defs/iladiag +30 -0
  816. data/dev/defs/iladlc +46 -0
  817. data/dev/defs/iladlr +46 -0
  818. data/dev/defs/ilaenv +133 -0
  819. data/dev/defs/ilaprec +33 -0
  820. data/dev/defs/ilaslc +46 -0
  821. data/dev/defs/ilaslr +46 -0
  822. data/dev/defs/ilatrans +32 -0
  823. data/dev/defs/ilauplo +30 -0
  824. data/dev/defs/ilaver +35 -0
  825. data/dev/defs/ilazlc +46 -0
  826. data/dev/defs/ilazlr +46 -0
  827. data/dev/defs/iparmq +177 -0
  828. data/dev/defs/izmax1 +55 -0
  829. data/dev/defs/lsamen +50 -0
  830. data/dev/defs/sbbcsd +297 -0
  831. data/dev/defs/sbdsdc +192 -0
  832. data/dev/defs/sbdsqr +203 -0
  833. data/dev/defs/scsum1 +49 -0
  834. data/dev/defs/sdisna +84 -0
  835. data/dev/defs/sgbbrd +167 -0
  836. data/dev/defs/sgbcon +114 -0
  837. data/dev/defs/sgbequ +121 -0
  838. data/dev/defs/sgbequb +128 -0
  839. data/dev/defs/sgbrfs +182 -0
  840. data/dev/defs/sgbrfsx +419 -0
  841. data/dev/defs/sgbsv +134 -0
  842. data/dev/defs/sgbsvx +356 -0
  843. data/dev/defs/sgbsvxx +539 -0
  844. data/dev/defs/sgbtf2 +110 -0
  845. data/dev/defs/sgbtrf +109 -0
  846. data/dev/defs/sgbtrs +106 -0
  847. data/dev/defs/sgebak +95 -0
  848. data/dev/defs/sgebal +125 -0
  849. data/dev/defs/sgebd2 +162 -0
  850. data/dev/defs/sgebrd +178 -0
  851. data/dev/defs/sgecon +90 -0
  852. data/dev/defs/sgeequ +107 -0
  853. data/dev/defs/sgeequb +114 -0
  854. data/dev/defs/sgees +188 -0
  855. data/dev/defs/sgeesx +251 -0
  856. data/dev/defs/sgeev +166 -0
  857. data/dev/defs/sgeevx +282 -0
  858. data/dev/defs/sgegs +207 -0
  859. data/dev/defs/sgegv +286 -0
  860. data/dev/defs/sgehd2 +115 -0
  861. data/dev/defs/sgehrd +136 -0
  862. data/dev/defs/sgejsv +860 -0
  863. data/dev/defs/sgelq2 +89 -0
  864. data/dev/defs/sgelqf +113 -0
  865. data/dev/defs/sgels +158 -0
  866. data/dev/defs/sgelsd +194 -0
  867. data/dev/defs/sgelss +149 -0
  868. data/dev/defs/sgelsx +148 -0
  869. data/dev/defs/sgelsy +181 -0
  870. data/dev/defs/sgeql2 +91 -0
  871. data/dev/defs/sgeqlf +116 -0
  872. data/dev/defs/sgeqp3 +120 -0
  873. data/dev/defs/sgeqpf +111 -0
  874. data/dev/defs/sgeqr2 +89 -0
  875. data/dev/defs/sgeqr2p +89 -0
  876. data/dev/defs/sgeqrf +114 -0
  877. data/dev/defs/sgeqrfp +114 -0
  878. data/dev/defs/sgerfs +164 -0
  879. data/dev/defs/sgerfsx +394 -0
  880. data/dev/defs/sgerq2 +91 -0
  881. data/dev/defs/sgerqf +116 -0
  882. data/dev/defs/sgesc2 +86 -0
  883. data/dev/defs/sgesdd +197 -0
  884. data/dev/defs/sgesv +97 -0
  885. data/dev/defs/sgesvd +188 -0
  886. data/dev/defs/sgesvj +304 -0
  887. data/dev/defs/sgesvx +333 -0
  888. data/dev/defs/sgesvxx +519 -0
  889. data/dev/defs/sgetc2 +82 -0
  890. data/dev/defs/sgetf2 +76 -0
  891. data/dev/defs/sgetrf +76 -0
  892. data/dev/defs/sgetri +86 -0
  893. data/dev/defs/sgetrs +91 -0
  894. data/dev/defs/sggbak +119 -0
  895. data/dev/defs/sggbal +144 -0
  896. data/dev/defs/sgges +261 -0
  897. data/dev/defs/sggesx +342 -0
  898. data/dev/defs/sggev +206 -0
  899. data/dev/defs/sggevx +371 -0
  900. data/dev/defs/sggglm +160 -0
  901. data/dev/defs/sgghrd +174 -0
  902. data/dev/defs/sgglse +157 -0
  903. data/dev/defs/sggqrf +195 -0
  904. data/dev/defs/sggrqf +194 -0
  905. data/dev/defs/sggsvd +319 -0
  906. data/dev/defs/sggsvp +233 -0
  907. data/dev/defs/sgsvj0 +200 -0
  908. data/dev/defs/sgsvj1 +220 -0
  909. data/dev/defs/sgtcon +119 -0
  910. data/dev/defs/sgtrfs +193 -0
  911. data/dev/defs/sgtsv +100 -0
  912. data/dev/defs/sgtsvx +275 -0
  913. data/dev/defs/sgttrf +97 -0
  914. data/dev/defs/sgttrs +119 -0
  915. data/dev/defs/sgtts2 +106 -0
  916. data/dev/defs/shgeqz +282 -0
  917. data/dev/defs/shsein +234 -0
  918. data/dev/defs/shseqr +279 -0
  919. data/dev/defs/sisnan +29 -0
  920. data/dev/defs/sla_gbamv +152 -0
  921. data/dev/defs/sla_gbrcond +152 -0
  922. data/dev/defs/sla_gbrfsx_extended +391 -0
  923. data/dev/defs/sla_gbrpvgrw +90 -0
  924. data/dev/defs/sla_geamv +142 -0
  925. data/dev/defs/sla_gercond +134 -0
  926. data/dev/defs/sla_gerfsx_extended +376 -0
  927. data/dev/defs/sla_lin_berr +78 -0
  928. data/dev/defs/sla_porcond +122 -0
  929. data/dev/defs/sla_porfsx_extended +363 -0
  930. data/dev/defs/sla_porpvgrw +81 -0
  931. data/dev/defs/sla_rpvgrw +72 -0
  932. data/dev/defs/sla_syamv +142 -0
  933. data/dev/defs/sla_syrcond +131 -0
  934. data/dev/defs/sla_syrfsx_extended +372 -0
  935. data/dev/defs/sla_syrpvgrw +101 -0
  936. data/dev/defs/sla_wwaddw +53 -0
  937. data/dev/defs/slabad +43 -0
  938. data/dev/defs/slabrd +186 -0
  939. data/dev/defs/slacn2 +96 -0
  940. data/dev/defs/slacon +80 -0
  941. data/dev/defs/slacpy +78 -0
  942. data/dev/defs/sladiv +57 -0
  943. data/dev/defs/slae2 +66 -0
  944. data/dev/defs/slaebz +292 -0
  945. data/dev/defs/slaed0 +147 -0
  946. data/dev/defs/slaed1 +141 -0
  947. data/dev/defs/slaed2 +194 -0
  948. data/dev/defs/slaed3 +167 -0
  949. data/dev/defs/slaed4 +113 -0
  950. data/dev/defs/slaed5 +78 -0
  951. data/dev/defs/slaed6 +101 -0
  952. data/dev/defs/slaed7 +241 -0
  953. data/dev/defs/slaed8 +227 -0
  954. data/dev/defs/slaed9 +137 -0
  955. data/dev/defs/slaeda +147 -0
  956. data/dev/defs/slaein +141 -0
  957. data/dev/defs/slaev2 +83 -0
  958. data/dev/defs/slaexc +107 -0
  959. data/dev/defs/slag2 +123 -0
  960. data/dev/defs/slag2d +74 -0
  961. data/dev/defs/slags2 +108 -0
  962. data/dev/defs/slagtf +128 -0
  963. data/dev/defs/slagtm +115 -0
  964. data/dev/defs/slagts +135 -0
  965. data/dev/defs/slagv2 +128 -0
  966. data/dev/defs/slahqr +172 -0
  967. data/dev/defs/slahr2 +153 -0
  968. data/dev/defs/slahrd +142 -0
  969. data/dev/defs/slaic1 +101 -0
  970. data/dev/defs/slaln2 +187 -0
  971. data/dev/defs/slals0 +250 -0
  972. data/dev/defs/slalsa +268 -0
  973. data/dev/defs/slalsd +150 -0
  974. data/dev/defs/slamrg +66 -0
  975. data/dev/defs/slaneg +87 -0
  976. data/dev/defs/slangb +93 -0
  977. data/dev/defs/slange +84 -0
  978. data/dev/defs/slangt +77 -0
  979. data/dev/defs/slanhs +78 -0
  980. data/dev/defs/slansb +97 -0
  981. data/dev/defs/slansf +179 -0
  982. data/dev/defs/slansp +83 -0
  983. data/dev/defs/slanst +69 -0
  984. data/dev/defs/slansy +92 -0
  985. data/dev/defs/slantb +108 -0
  986. data/dev/defs/slantp +93 -0
  987. data/dev/defs/slantr +109 -0
  988. data/dev/defs/slanv2 +84 -0
  989. data/dev/defs/slapll +69 -0
  990. data/dev/defs/slapmr +73 -0
  991. data/dev/defs/slapmt +73 -0
  992. data/dev/defs/slapy2 +30 -0
  993. data/dev/defs/slapy3 +34 -0
  994. data/dev/defs/slaqgb +124 -0
  995. data/dev/defs/slaqge +107 -0
  996. data/dev/defs/slaqp2 +115 -0
  997. data/dev/defs/slaqps +146 -0
  998. data/dev/defs/slaqr0 +225 -0
  999. data/dev/defs/slaqr1 +79 -0
  1000. data/dev/defs/slaqr2 +252 -0
  1001. data/dev/defs/slaqr3 +247 -0
  1002. data/dev/defs/slaqr4 +225 -0
  1003. data/dev/defs/slaqr5 +230 -0
  1004. data/dev/defs/slaqsb +105 -0
  1005. data/dev/defs/slaqsp +89 -0
  1006. data/dev/defs/slaqsy +98 -0
  1007. data/dev/defs/slaqtr +134 -0
  1008. data/dev/defs/slar1v +199 -0
  1009. data/dev/defs/slar2v +86 -0
  1010. data/dev/defs/slarf +93 -0
  1011. data/dev/defs/slarfb +139 -0
  1012. data/dev/defs/slarfg +71 -0
  1013. data/dev/defs/slarfgp +69 -0
  1014. data/dev/defs/slarft +133 -0
  1015. data/dev/defs/slarfx +89 -0
  1016. data/dev/defs/slargv +74 -0
  1017. data/dev/defs/slarnv +61 -0
  1018. data/dev/defs/slarra +106 -0
  1019. data/dev/defs/slarrb +167 -0
  1020. data/dev/defs/slarrc +99 -0
  1021. data/dev/defs/slarrd +290 -0
  1022. data/dev/defs/slarre +265 -0
  1023. data/dev/defs/slarrf +165 -0
  1024. data/dev/defs/slarrj +138 -0
  1025. data/dev/defs/slarrk +108 -0
  1026. data/dev/defs/slarrr +62 -0
  1027. data/dev/defs/slarrv +259 -0
  1028. data/dev/defs/slarscl2 +61 -0
  1029. data/dev/defs/slartg +64 -0
  1030. data/dev/defs/slartgp +62 -0
  1031. data/dev/defs/slartgs +57 -0
  1032. data/dev/defs/slartv +82 -0
  1033. data/dev/defs/slaruv +59 -0
  1034. data/dev/defs/slarz +109 -0
  1035. data/dev/defs/slarzb +150 -0
  1036. data/dev/defs/slarzt +151 -0
  1037. data/dev/defs/slas2 +71 -0
  1038. data/dev/defs/slascl +102 -0
  1039. data/dev/defs/slascl2 +61 -0
  1040. data/dev/defs/slasd0 +131 -0
  1041. data/dev/defs/slasd1 +179 -0
  1042. data/dev/defs/slasd2 +254 -0
  1043. data/dev/defs/slasd3 +213 -0
  1044. data/dev/defs/slasd4 +123 -0
  1045. data/dev/defs/slasd5 +88 -0
  1046. data/dev/defs/slasd6 +300 -0
  1047. data/dev/defs/slasd7 +264 -0
  1048. data/dev/defs/slasd8 +144 -0
  1049. data/dev/defs/slasda +275 -0
  1050. data/dev/defs/slasdq +187 -0
  1051. data/dev/defs/slasdt +76 -0
  1052. data/dev/defs/slaset +81 -0
  1053. data/dev/defs/slasq1 +75 -0
  1054. data/dev/defs/slasq2 +73 -0
  1055. data/dev/defs/slasq3 +141 -0
  1056. data/dev/defs/slasq4 +107 -0
  1057. data/dev/defs/slasq5 +100 -0
  1058. data/dev/defs/slasq6 +90 -0
  1059. data/dev/defs/slasr +169 -0
  1060. data/dev/defs/slasrt +53 -0
  1061. data/dev/defs/slassq +68 -0
  1062. data/dev/defs/slasv2 +100 -0
  1063. data/dev/defs/slaswp +81 -0
  1064. data/dev/defs/slasy2 +145 -0
  1065. data/dev/defs/slasyf +126 -0
  1066. data/dev/defs/slatbs +206 -0
  1067. data/dev/defs/slatdf +131 -0
  1068. data/dev/defs/slatps +192 -0
  1069. data/dev/defs/slatrd +168 -0
  1070. data/dev/defs/slatrs +202 -0
  1071. data/dev/defs/slatrz +106 -0
  1072. data/dev/defs/slatzm +123 -0
  1073. data/dev/defs/slauu2 +68 -0
  1074. data/dev/defs/slauum +68 -0
  1075. data/dev/defs/sopgtr +87 -0
  1076. data/dev/defs/sopmtr +120 -0
  1077. data/dev/defs/sorbdb +270 -0
  1078. data/dev/defs/sorcsd +264 -0
  1079. data/dev/defs/sorg2l +85 -0
  1080. data/dev/defs/sorg2r +85 -0
  1081. data/dev/defs/sorgbr +129 -0
  1082. data/dev/defs/sorghr +97 -0
  1083. data/dev/defs/sorgl2 +84 -0
  1084. data/dev/defs/sorglq +100 -0
  1085. data/dev/defs/sorgql +101 -0
  1086. data/dev/defs/sorgqr +101 -0
  1087. data/dev/defs/sorgr2 +85 -0
  1088. data/dev/defs/sorgrq +101 -0
  1089. data/dev/defs/sorgtr +95 -0
  1090. data/dev/defs/sorm2l +130 -0
  1091. data/dev/defs/sorm2r +130 -0
  1092. data/dev/defs/sormbr +176 -0
  1093. data/dev/defs/sormhr +157 -0
  1094. data/dev/defs/sorml2 +130 -0
  1095. data/dev/defs/sormlq +143 -0
  1096. data/dev/defs/sormql +143 -0
  1097. data/dev/defs/sormqr +143 -0
  1098. data/dev/defs/sormr2 +130 -0
  1099. data/dev/defs/sormr3 +152 -0
  1100. data/dev/defs/sormrq +143 -0
  1101. data/dev/defs/sormrz +157 -0
  1102. data/dev/defs/sormtr +152 -0
  1103. data/dev/defs/spbcon +98 -0
  1104. data/dev/defs/spbequ +96 -0
  1105. data/dev/defs/spbrfs +166 -0
  1106. data/dev/defs/spbstf +115 -0
  1107. data/dev/defs/spbsv +136 -0
  1108. data/dev/defs/spbsvx +314 -0
  1109. data/dev/defs/spbtf2 +105 -0
  1110. data/dev/defs/spbtrf +103 -0
  1111. data/dev/defs/spbtrs +98 -0
  1112. data/dev/defs/spftrf +161 -0
  1113. data/dev/defs/spftri +154 -0
  1114. data/dev/defs/spftrs +164 -0
  1115. data/dev/defs/spocon +87 -0
  1116. data/dev/defs/spoequ +80 -0
  1117. data/dev/defs/spoequb +80 -0
  1118. data/dev/defs/sporfs +160 -0
  1119. data/dev/defs/sporfsx +370 -0
  1120. data/dev/defs/sposv +105 -0
  1121. data/dev/defs/sposvx +281 -0
  1122. data/dev/defs/sposvxx +471 -0
  1123. data/dev/defs/spotf2 +75 -0
  1124. data/dev/defs/spotrf +73 -0
  1125. data/dev/defs/spotri +67 -0
  1126. data/dev/defs/spotrs +79 -0
  1127. data/dev/defs/sppcon +85 -0
  1128. data/dev/defs/sppequ +82 -0
  1129. data/dev/defs/spprfs +146 -0
  1130. data/dev/defs/sppsv +115 -0
  1131. data/dev/defs/sppsvx +283 -0
  1132. data/dev/defs/spptrf +81 -0
  1133. data/dev/defs/spptri +58 -0
  1134. data/dev/defs/spptrs +84 -0
  1135. data/dev/defs/spstf2 +108 -0
  1136. data/dev/defs/spstrf +108 -0
  1137. data/dev/defs/sptcon +84 -0
  1138. data/dev/defs/spteqr +117 -0
  1139. data/dev/defs/sptrfs +141 -0
  1140. data/dev/defs/sptsv +89 -0
  1141. data/dev/defs/sptsvx +203 -0
  1142. data/dev/defs/spttrf +59 -0
  1143. data/dev/defs/spttrs +88 -0
  1144. data/dev/defs/sptts2 +77 -0
  1145. data/dev/defs/srscl +49 -0
  1146. data/dev/defs/ssbev +117 -0
  1147. data/dev/defs/ssbevd +169 -0
  1148. data/dev/defs/ssbevx +231 -0
  1149. data/dev/defs/ssbgst +130 -0
  1150. data/dev/defs/ssbgv +156 -0
  1151. data/dev/defs/ssbgvd +206 -0
  1152. data/dev/defs/ssbgvx +259 -0
  1153. data/dev/defs/ssbtrd +132 -0
  1154. data/dev/defs/ssfrk +134 -0
  1155. data/dev/defs/sspcon +92 -0
  1156. data/dev/defs/sspev +103 -0
  1157. data/dev/defs/sspevd +154 -0
  1158. data/dev/defs/sspevx +197 -0
  1159. data/dev/defs/sspgst +80 -0
  1160. data/dev/defs/sspgv +139 -0
  1161. data/dev/defs/sspgvd +188 -0
  1162. data/dev/defs/sspgvx +241 -0
  1163. data/dev/defs/ssprfs +156 -0
  1164. data/dev/defs/sspsv +134 -0
  1165. data/dev/defs/sspsvx +249 -0
  1166. data/dev/defs/ssptrd +118 -0
  1167. data/dev/defs/ssptrf +120 -0
  1168. data/dev/defs/ssptri +77 -0
  1169. data/dev/defs/ssptrs +84 -0
  1170. data/dev/defs/sstebz +229 -0
  1171. data/dev/defs/sstedc +164 -0
  1172. data/dev/defs/sstegr +233 -0
  1173. data/dev/defs/sstein +152 -0
  1174. data/dev/defs/sstemr +285 -0
  1175. data/dev/defs/ssteqr +103 -0
  1176. data/dev/defs/ssterf +54 -0
  1177. data/dev/defs/sstev +88 -0
  1178. data/dev/defs/sstevd +138 -0
  1179. data/dev/defs/sstevr +275 -0
  1180. data/dev/defs/sstevx +193 -0
  1181. data/dev/defs/ssycon +98 -0
  1182. data/dev/defs/ssyconv +90 -0
  1183. data/dev/defs/ssyequb +104 -0
  1184. data/dev/defs/ssyev +104 -0
  1185. data/dev/defs/ssyevd +157 -0
  1186. data/dev/defs/ssyevr +302 -0
  1187. data/dev/defs/ssyevx +218 -0
  1188. data/dev/defs/ssygs2 +96 -0
  1189. data/dev/defs/ssygst +96 -0
  1190. data/dev/defs/ssygv +148 -0
  1191. data/dev/defs/ssygvd +197 -0
  1192. data/dev/defs/ssygvx +263 -0
  1193. data/dev/defs/ssyrfs +170 -0
  1194. data/dev/defs/ssyrfsx +380 -0
  1195. data/dev/defs/ssysv +149 -0
  1196. data/dev/defs/ssysvx +261 -0
  1197. data/dev/defs/ssysvxx +484 -0
  1198. data/dev/defs/ssyswapr +70 -0
  1199. data/dev/defs/ssytd2 +142 -0
  1200. data/dev/defs/ssytf2 +143 -0
  1201. data/dev/defs/ssytrd +162 -0
  1202. data/dev/defs/ssytrf +156 -0
  1203. data/dev/defs/ssytri +83 -0
  1204. data/dev/defs/ssytri2 +110 -0
  1205. data/dev/defs/ssytri2x +90 -0
  1206. data/dev/defs/ssytrs +90 -0
  1207. data/dev/defs/ssytrs2 +97 -0
  1208. data/dev/defs/stbcon +109 -0
  1209. data/dev/defs/stbrfs +164 -0
  1210. data/dev/defs/stbtrs +113 -0
  1211. data/dev/defs/stfsm +243 -0
  1212. data/dev/defs/stftri +163 -0
  1213. data/dev/defs/stfttp +151 -0
  1214. data/dev/defs/stfttr +174 -0
  1215. data/dev/defs/stgevc +265 -0
  1216. data/dev/defs/stgex2 +191 -0
  1217. data/dev/defs/stgexc +190 -0
  1218. data/dev/defs/stgsen +421 -0
  1219. data/dev/defs/stgsja +343 -0
  1220. data/dev/defs/stgsna +354 -0
  1221. data/dev/defs/stgsy2 +252 -0
  1222. data/dev/defs/stgsyl +274 -0
  1223. data/dev/defs/stpcon +95 -0
  1224. data/dev/defs/stprfs +150 -0
  1225. data/dev/defs/stptri +79 -0
  1226. data/dev/defs/stptrs +98 -0
  1227. data/dev/defs/stpttf +151 -0
  1228. data/dev/defs/stpttr +73 -0
  1229. data/dev/defs/strcon +103 -0
  1230. data/dev/defs/strevc +191 -0
  1231. data/dev/defs/strexc +113 -0
  1232. data/dev/defs/strrfs +158 -0
  1233. data/dev/defs/strsen +284 -0
  1234. data/dev/defs/strsna +239 -0
  1235. data/dev/defs/strsyl +133 -0
  1236. data/dev/defs/strti2 +76 -0
  1237. data/dev/defs/strtri +75 -0
  1238. data/dev/defs/strtrs +107 -0
  1239. data/dev/defs/strttf +171 -0
  1240. data/dev/defs/strttp +72 -0
  1241. data/dev/defs/stzrqf +104 -0
  1242. data/dev/defs/stzrzf +128 -0
  1243. data/dev/defs/xerbla +40 -0
  1244. data/dev/defs/xerbla_array +65 -0
  1245. data/dev/defs/zbbcsd +297 -0
  1246. data/dev/defs/zbdsqr +196 -0
  1247. data/dev/defs/zcgesv +176 -0
  1248. data/dev/defs/zcposv +182 -0
  1249. data/dev/defs/zdrscl +49 -0
  1250. data/dev/defs/zgbbrd +174 -0
  1251. data/dev/defs/zgbcon +114 -0
  1252. data/dev/defs/zgbequ +121 -0
  1253. data/dev/defs/zgbequb +128 -0
  1254. data/dev/defs/zgbrfs +182 -0
  1255. data/dev/defs/zgbrfsx +418 -0
  1256. data/dev/defs/zgbsv +134 -0
  1257. data/dev/defs/zgbsvx +356 -0
  1258. data/dev/defs/zgbsvxx +536 -0
  1259. data/dev/defs/zgbtf2 +110 -0
  1260. data/dev/defs/zgbtrf +109 -0
  1261. data/dev/defs/zgbtrs +106 -0
  1262. data/dev/defs/zgebak +95 -0
  1263. data/dev/defs/zgebal +125 -0
  1264. data/dev/defs/zgebd2 +162 -0
  1265. data/dev/defs/zgebrd +178 -0
  1266. data/dev/defs/zgecon +90 -0
  1267. data/dev/defs/zgeequ +107 -0
  1268. data/dev/defs/zgeequb +114 -0
  1269. data/dev/defs/zgees +170 -0
  1270. data/dev/defs/zgeesx +209 -0
  1271. data/dev/defs/zgeev +154 -0
  1272. data/dev/defs/zgeevx +263 -0
  1273. data/dev/defs/zgegs +205 -0
  1274. data/dev/defs/zgegv +261 -0
  1275. data/dev/defs/zgehd2 +115 -0
  1276. data/dev/defs/zgehrd +136 -0
  1277. data/dev/defs/zgelq2 +89 -0
  1278. data/dev/defs/zgelqf +113 -0
  1279. data/dev/defs/zgels +157 -0
  1280. data/dev/defs/zgelsd +211 -0
  1281. data/dev/defs/zgelss +156 -0
  1282. data/dev/defs/zgelsx +155 -0
  1283. data/dev/defs/zgelsy +188 -0
  1284. data/dev/defs/zgeql2 +91 -0
  1285. data/dev/defs/zgeqlf +116 -0
  1286. data/dev/defs/zgeqp3 +127 -0
  1287. data/dev/defs/zgeqpf +118 -0
  1288. data/dev/defs/zgeqr2 +89 -0
  1289. data/dev/defs/zgeqr2p +89 -0
  1290. data/dev/defs/zgeqrf +114 -0
  1291. data/dev/defs/zgeqrfp +114 -0
  1292. data/dev/defs/zgerfs +164 -0
  1293. data/dev/defs/zgerfsx +394 -0
  1294. data/dev/defs/zgerq2 +91 -0
  1295. data/dev/defs/zgerqf +116 -0
  1296. data/dev/defs/zgesc2 +87 -0
  1297. data/dev/defs/zgesdd +203 -0
  1298. data/dev/defs/zgesv +97 -0
  1299. data/dev/defs/zgesvd +195 -0
  1300. data/dev/defs/zgesvx +333 -0
  1301. data/dev/defs/zgesvxx +516 -0
  1302. data/dev/defs/zgetc2 +82 -0
  1303. data/dev/defs/zgetf2 +76 -0
  1304. data/dev/defs/zgetrf +76 -0
  1305. data/dev/defs/zgetri +86 -0
  1306. data/dev/defs/zgetrs +91 -0
  1307. data/dev/defs/zggbak +119 -0
  1308. data/dev/defs/zggbal +144 -0
  1309. data/dev/defs/zgges +247 -0
  1310. data/dev/defs/zggesx +311 -0
  1311. data/dev/defs/zggev +197 -0
  1312. data/dev/defs/zggevx +353 -0
  1313. data/dev/defs/zggglm +160 -0
  1314. data/dev/defs/zgghrd +171 -0
  1315. data/dev/defs/zgglse +157 -0
  1316. data/dev/defs/zggqrf +195 -0
  1317. data/dev/defs/zggrqf +194 -0
  1318. data/dev/defs/zggsvd +324 -0
  1319. data/dev/defs/zggsvp +240 -0
  1320. data/dev/defs/zgtcon +112 -0
  1321. data/dev/defs/zgtrfs +193 -0
  1322. data/dev/defs/zgtsv +97 -0
  1323. data/dev/defs/zgtsvx +275 -0
  1324. data/dev/defs/zgttrf +97 -0
  1325. data/dev/defs/zgttrs +119 -0
  1326. data/dev/defs/zgtts2 +108 -0
  1327. data/dev/defs/zhbev +124 -0
  1328. data/dev/defs/zhbevd +194 -0
  1329. data/dev/defs/zhbevx +234 -0
  1330. data/dev/defs/zhbgst +137 -0
  1331. data/dev/defs/zhbgv +163 -0
  1332. data/dev/defs/zhbgvd +231 -0
  1333. data/dev/defs/zhbgvx +265 -0
  1334. data/dev/defs/zhbtrd +132 -0
  1335. data/dev/defs/zhecon +91 -0
  1336. data/dev/defs/zheequb +87 -0
  1337. data/dev/defs/zheev +111 -0
  1338. data/dev/defs/zheevd +178 -0
  1339. data/dev/defs/zheevr +325 -0
  1340. data/dev/defs/zheevx +225 -0
  1341. data/dev/defs/zhegs2 +96 -0
  1342. data/dev/defs/zhegst +96 -0
  1343. data/dev/defs/zhegv +155 -0
  1344. data/dev/defs/zhegvd +222 -0
  1345. data/dev/defs/zhegvx +270 -0
  1346. data/dev/defs/zherfs +170 -0
  1347. data/dev/defs/zherfsx +380 -0
  1348. data/dev/defs/zhesv +147 -0
  1349. data/dev/defs/zhesvx +261 -0
  1350. data/dev/defs/zhesvxx +478 -0
  1351. data/dev/defs/zhetd2 +143 -0
  1352. data/dev/defs/zhetf2 +141 -0
  1353. data/dev/defs/zhetrd +162 -0
  1354. data/dev/defs/zhetrf +151 -0
  1355. data/dev/defs/zhetri +83 -0
  1356. data/dev/defs/zhetrs +90 -0
  1357. data/dev/defs/zhetrs2 +97 -0
  1358. data/dev/defs/zhfrk +138 -0
  1359. data/dev/defs/zhgeqz +258 -0
  1360. data/dev/defs/zhpcon +85 -0
  1361. data/dev/defs/zhpev +110 -0
  1362. data/dev/defs/zhpevd +180 -0
  1363. data/dev/defs/zhpevx +204 -0
  1364. data/dev/defs/zhpgst +80 -0
  1365. data/dev/defs/zhpgv +145 -0
  1366. data/dev/defs/zhpgvd +221 -0
  1367. data/dev/defs/zhpgvx +247 -0
  1368. data/dev/defs/zhprfs +156 -0
  1369. data/dev/defs/zhpsv +134 -0
  1370. data/dev/defs/zhpsvx +248 -0
  1371. data/dev/defs/zhptrd +118 -0
  1372. data/dev/defs/zhptrf +120 -0
  1373. data/dev/defs/zhptri +77 -0
  1374. data/dev/defs/zhptrs +84 -0
  1375. data/dev/defs/zhsein +217 -0
  1376. data/dev/defs/zhseqr +263 -0
  1377. data/dev/defs/zla_gbamv +154 -0
  1378. data/dev/defs/zla_gbrcond_c +146 -0
  1379. data/dev/defs/zla_gbrcond_x +140 -0
  1380. data/dev/defs/zla_gbrfsx_extended +391 -0
  1381. data/dev/defs/zla_gbrpvgrw +94 -0
  1382. data/dev/defs/zla_geamv +142 -0
  1383. data/dev/defs/zla_gercond_c +128 -0
  1384. data/dev/defs/zla_gercond_x +122 -0
  1385. data/dev/defs/zla_gerfsx_extended +378 -0
  1386. data/dev/defs/zla_heamv +142 -0
  1387. data/dev/defs/zla_hercond_c +125 -0
  1388. data/dev/defs/zla_hercond_x +119 -0
  1389. data/dev/defs/zla_herfsx_extended +375 -0
  1390. data/dev/defs/zla_herpvgrw +105 -0
  1391. data/dev/defs/zla_lin_berr +79 -0
  1392. data/dev/defs/zla_porcond_c +116 -0
  1393. data/dev/defs/zla_porcond_x +110 -0
  1394. data/dev/defs/zla_porfsx_extended +366 -0
  1395. data/dev/defs/zla_porpvgrw +85 -0
  1396. data/dev/defs/zla_rpvgrw +76 -0
  1397. data/dev/defs/zla_syamv +142 -0
  1398. data/dev/defs/zla_syrcond_c +125 -0
  1399. data/dev/defs/zla_syrcond_x +119 -0
  1400. data/dev/defs/zla_syrfsx_extended +375 -0
  1401. data/dev/defs/zla_syrpvgrw +105 -0
  1402. data/dev/defs/zla_wwaddw +53 -0
  1403. data/dev/defs/zlabrd +187 -0
  1404. data/dev/defs/zlacgv +44 -0
  1405. data/dev/defs/zlacn2 +91 -0
  1406. data/dev/defs/zlacon +75 -0
  1407. data/dev/defs/zlacp2 +78 -0
  1408. data/dev/defs/zlacpy +78 -0
  1409. data/dev/defs/zlacrm +88 -0
  1410. data/dev/defs/zlacrt +73 -0
  1411. data/dev/defs/zladiv +37 -0
  1412. data/dev/defs/zlaed0 +121 -0
  1413. data/dev/defs/zlaed7 +237 -0
  1414. data/dev/defs/zlaed8 +211 -0
  1415. data/dev/defs/zlaein +117 -0
  1416. data/dev/defs/zlaesy +81 -0
  1417. data/dev/defs/zlaev2 +83 -0
  1418. data/dev/defs/zlag2c +82 -0
  1419. data/dev/defs/zlags2 +116 -0
  1420. data/dev/defs/zlagtm +115 -0
  1421. data/dev/defs/zlahef +127 -0
  1422. data/dev/defs/zlahqr +159 -0
  1423. data/dev/defs/zlahr2 +153 -0
  1424. data/dev/defs/zlahrd +141 -0
  1425. data/dev/defs/zlaic1 +101 -0
  1426. data/dev/defs/zlals0 +251 -0
  1427. data/dev/defs/zlalsa +267 -0
  1428. data/dev/defs/zlalsd +160 -0
  1429. data/dev/defs/zlangb +92 -0
  1430. data/dev/defs/zlange +84 -0
  1431. data/dev/defs/zlangt +77 -0
  1432. data/dev/defs/zlanhb +99 -0
  1433. data/dev/defs/zlanhe +93 -0
  1434. data/dev/defs/zlanhf +211 -0
  1435. data/dev/defs/zlanhp +85 -0
  1436. data/dev/defs/zlanhs +78 -0
  1437. data/dev/defs/zlanht +69 -0
  1438. data/dev/defs/zlansb +97 -0
  1439. data/dev/defs/zlansp +83 -0
  1440. data/dev/defs/zlansy +92 -0
  1441. data/dev/defs/zlantb +108 -0
  1442. data/dev/defs/zlantp +93 -0
  1443. data/dev/defs/zlantr +109 -0
  1444. data/dev/defs/zlapll +67 -0
  1445. data/dev/defs/zlapmr +73 -0
  1446. data/dev/defs/zlapmt +73 -0
  1447. data/dev/defs/zlaqgb +124 -0
  1448. data/dev/defs/zlaqge +107 -0
  1449. data/dev/defs/zlaqhb +105 -0
  1450. data/dev/defs/zlaqhe +98 -0
  1451. data/dev/defs/zlaqhp +89 -0
  1452. data/dev/defs/zlaqp2 +115 -0
  1453. data/dev/defs/zlaqps +141 -0
  1454. data/dev/defs/zlaqr0 +203 -0
  1455. data/dev/defs/zlaqr1 +66 -0
  1456. data/dev/defs/zlaqr2 +243 -0
  1457. data/dev/defs/zlaqr3 +238 -0
  1458. data/dev/defs/zlaqr4 +203 -0
  1459. data/dev/defs/zlaqr5 +221 -0
  1460. data/dev/defs/zlaqsb +105 -0
  1461. data/dev/defs/zlaqsp +89 -0
  1462. data/dev/defs/zlaqsy +98 -0
  1463. data/dev/defs/zlar1v +199 -0
  1464. data/dev/defs/zlar2v +88 -0
  1465. data/dev/defs/zlarcm +88 -0
  1466. data/dev/defs/zlarf +97 -0
  1467. data/dev/defs/zlarfb +139 -0
  1468. data/dev/defs/zlarfg +71 -0
  1469. data/dev/defs/zlarfgp +69 -0
  1470. data/dev/defs/zlarft +133 -0
  1471. data/dev/defs/zlarfx +88 -0
  1472. data/dev/defs/zlargv +88 -0
  1473. data/dev/defs/zlarnv +63 -0
  1474. data/dev/defs/zlarrv +259 -0
  1475. data/dev/defs/zlarscl2 +61 -0
  1476. data/dev/defs/zlartg +66 -0
  1477. data/dev/defs/zlartv +82 -0
  1478. data/dev/defs/zlarz +111 -0
  1479. data/dev/defs/zlarzb +150 -0
  1480. data/dev/defs/zlarzt +151 -0
  1481. data/dev/defs/zlascl +102 -0
  1482. data/dev/defs/zlascl2 +61 -0
  1483. data/dev/defs/zlaset +77 -0
  1484. data/dev/defs/zlasr +169 -0
  1485. data/dev/defs/zlassq +71 -0
  1486. data/dev/defs/zlaswp +81 -0
  1487. data/dev/defs/zlasyf +127 -0
  1488. data/dev/defs/zlat2c +85 -0
  1489. data/dev/defs/zlatbs +206 -0
  1490. data/dev/defs/zlatdf +133 -0
  1491. data/dev/defs/zlatps +193 -0
  1492. data/dev/defs/zlatrd +168 -0
  1493. data/dev/defs/zlatrs +202 -0
  1494. data/dev/defs/zlatrz +106 -0
  1495. data/dev/defs/zlatzm +124 -0
  1496. data/dev/defs/zlauu2 +68 -0
  1497. data/dev/defs/zlauum +68 -0
  1498. data/dev/defs/zpbcon +99 -0
  1499. data/dev/defs/zpbequ +96 -0
  1500. data/dev/defs/zpbrfs +166 -0
  1501. data/dev/defs/zpbstf +116 -0
  1502. data/dev/defs/zpbsv +136 -0
  1503. data/dev/defs/zpbsvx +314 -0
  1504. data/dev/defs/zpbtf2 +105 -0
  1505. data/dev/defs/zpbtrf +103 -0
  1506. data/dev/defs/zpbtrs +98 -0
  1507. data/dev/defs/zpftrf +182 -0
  1508. data/dev/defs/zpftri +175 -0
  1509. data/dev/defs/zpftrs +185 -0
  1510. data/dev/defs/zpocon +87 -0
  1511. data/dev/defs/zpoequ +80 -0
  1512. data/dev/defs/zpoequb +80 -0
  1513. data/dev/defs/zporfs +160 -0
  1514. data/dev/defs/zporfsx +370 -0
  1515. data/dev/defs/zposv +105 -0
  1516. data/dev/defs/zposvx +281 -0
  1517. data/dev/defs/zposvxx +468 -0
  1518. data/dev/defs/zpotf2 +75 -0
  1519. data/dev/defs/zpotrf +73 -0
  1520. data/dev/defs/zpotri +67 -0
  1521. data/dev/defs/zpotrs +79 -0
  1522. data/dev/defs/zppcon +85 -0
  1523. data/dev/defs/zppequ +82 -0
  1524. data/dev/defs/zpprfs +146 -0
  1525. data/dev/defs/zppsv +115 -0
  1526. data/dev/defs/zppsvx +283 -0
  1527. data/dev/defs/zpptrf +81 -0
  1528. data/dev/defs/zpptri +58 -0
  1529. data/dev/defs/zpptrs +84 -0
  1530. data/dev/defs/zpstf2 +108 -0
  1531. data/dev/defs/zpstrf +108 -0
  1532. data/dev/defs/zptcon +84 -0
  1533. data/dev/defs/zpteqr +116 -0
  1534. data/dev/defs/zptrfs +161 -0
  1535. data/dev/defs/zptsv +89 -0
  1536. data/dev/defs/zptsvx +210 -0
  1537. data/dev/defs/zpttrf +59 -0
  1538. data/dev/defs/zpttrs +98 -0
  1539. data/dev/defs/zptts2 +89 -0
  1540. data/dev/defs/zrot +72 -0
  1541. data/dev/defs/zspcon +85 -0
  1542. data/dev/defs/zspmv +119 -0
  1543. data/dev/defs/zspr +98 -0
  1544. data/dev/defs/zsprfs +156 -0
  1545. data/dev/defs/zspsv +134 -0
  1546. data/dev/defs/zspsvx +248 -0
  1547. data/dev/defs/zsptrf +121 -0
  1548. data/dev/defs/zsptri +77 -0
  1549. data/dev/defs/zsptrs +84 -0
  1550. data/dev/defs/zstedc +192 -0
  1551. data/dev/defs/zstegr +233 -0
  1552. data/dev/defs/zstein +159 -0
  1553. data/dev/defs/zstemr +302 -0
  1554. data/dev/defs/zsteqr +103 -0
  1555. data/dev/defs/zsycon +91 -0
  1556. data/dev/defs/zsyconv +90 -0
  1557. data/dev/defs/zsyequb +104 -0
  1558. data/dev/defs/zsymv +126 -0
  1559. data/dev/defs/zsyr +102 -0
  1560. data/dev/defs/zsyrfs +170 -0
  1561. data/dev/defs/zsyrfsx +380 -0
  1562. data/dev/defs/zsysv +149 -0
  1563. data/dev/defs/zsysvx +261 -0
  1564. data/dev/defs/zsysvxx +482 -0
  1565. data/dev/defs/zsyswapr +70 -0
  1566. data/dev/defs/zsytf2 +140 -0
  1567. data/dev/defs/zsytrf +156 -0
  1568. data/dev/defs/zsytri +83 -0
  1569. data/dev/defs/zsytri2 +111 -0
  1570. data/dev/defs/zsytri2x +90 -0
  1571. data/dev/defs/zsytrs +90 -0
  1572. data/dev/defs/zsytrs2 +97 -0
  1573. data/dev/defs/ztbcon +109 -0
  1574. data/dev/defs/ztbrfs +164 -0
  1575. data/dev/defs/ztbtrs +113 -0
  1576. data/dev/defs/ztfsm +259 -0
  1577. data/dev/defs/ztftri +183 -0
  1578. data/dev/defs/ztfttp +172 -0
  1579. data/dev/defs/ztfttr +182 -0
  1580. data/dev/defs/ztgevc +194 -0
  1581. data/dev/defs/ztgex2 +158 -0
  1582. data/dev/defs/ztgexc +176 -0
  1583. data/dev/defs/ztgsen +406 -0
  1584. data/dev/defs/ztgsja +344 -0
  1585. data/dev/defs/ztgsna +282 -0
  1586. data/dev/defs/ztgsy2 +235 -0
  1587. data/dev/defs/ztgsyl +273 -0
  1588. data/dev/defs/ztpcon +95 -0
  1589. data/dev/defs/ztprfs +150 -0
  1590. data/dev/defs/ztptri +79 -0
  1591. data/dev/defs/ztptrs +98 -0
  1592. data/dev/defs/ztpttf +172 -0
  1593. data/dev/defs/ztpttr +73 -0
  1594. data/dev/defs/ztrcon +103 -0
  1595. data/dev/defs/ztrevc +188 -0
  1596. data/dev/defs/ztrexc +99 -0
  1597. data/dev/defs/ztrrfs +158 -0
  1598. data/dev/defs/ztrsen +234 -0
  1599. data/dev/defs/ztrsna +223 -0
  1600. data/dev/defs/ztrsyl +126 -0
  1601. data/dev/defs/ztrti2 +76 -0
  1602. data/dev/defs/ztrtri +75 -0
  1603. data/dev/defs/ztrtrs +107 -0
  1604. data/dev/defs/ztrttf +181 -0
  1605. data/dev/defs/ztrttp +72 -0
  1606. data/dev/defs/ztzrqf +104 -0
  1607. data/dev/defs/ztzrzf +128 -0
  1608. data/dev/defs/zunbdb +270 -0
  1609. data/dev/defs/zuncsd +283 -0
  1610. data/dev/defs/zung2l +85 -0
  1611. data/dev/defs/zung2r +85 -0
  1612. data/dev/defs/zungbr +129 -0
  1613. data/dev/defs/zunghr +97 -0
  1614. data/dev/defs/zungl2 +84 -0
  1615. data/dev/defs/zunglq +100 -0
  1616. data/dev/defs/zungql +101 -0
  1617. data/dev/defs/zungqr +101 -0
  1618. data/dev/defs/zungr2 +85 -0
  1619. data/dev/defs/zungrq +101 -0
  1620. data/dev/defs/zungtr +95 -0
  1621. data/dev/defs/zunm2l +130 -0
  1622. data/dev/defs/zunm2r +130 -0
  1623. data/dev/defs/zunmbr +177 -0
  1624. data/dev/defs/zunmhr +157 -0
  1625. data/dev/defs/zunml2 +130 -0
  1626. data/dev/defs/zunmlq +143 -0
  1627. data/dev/defs/zunmql +143 -0
  1628. data/dev/defs/zunmqr +143 -0
  1629. data/dev/defs/zunmr2 +130 -0
  1630. data/dev/defs/zunmr3 +152 -0
  1631. data/dev/defs/zunmrq +143 -0
  1632. data/dev/defs/zunmrz +157 -0
  1633. data/dev/defs/zunmtr +152 -0
  1634. data/dev/defs/zupgtr +87 -0
  1635. data/dev/defs/zupmtr +120 -0
  1636. data/dev/make_csrc.rb +857 -0
  1637. data/dev/mkdoc.rb +265 -0
  1638. data/dev/parse.rb +1972 -0
  1639. data/doc/bd.html +16 -0
  1640. data/doc/c.html +36 -0
  1641. data/doc/cbd.html +161 -0
  1642. data/doc/cgb.html +1865 -0
  1643. data/doc/cge.html +5261 -0
  1644. data/doc/cgg.html +2027 -0
  1645. data/doc/cgt.html +711 -0
  1646. data/doc/chb.html +1031 -0
  1647. data/doc/che.html +3165 -0
  1648. data/doc/chg.html +201 -0
  1649. data/doc/chp.html +1696 -0
  1650. data/doc/chs.html +386 -0
  1651. data/doc/cpb.html +994 -0
  1652. data/doc/cpo.html +1520 -0
  1653. data/doc/cpp.html +770 -0
  1654. data/doc/cpt.html +706 -0
  1655. data/doc/csp.html +905 -0
  1656. data/doc/cst.html +742 -0
  1657. data/doc/csy.html +2194 -0
  1658. data/doc/ctb.html +284 -0
  1659. data/doc/ctg.html +1544 -0
  1660. data/doc/ctp.html +553 -0
  1661. data/doc/ctr.html +1281 -0
  1662. data/doc/ctz.html +211 -0
  1663. data/doc/cun.html +2553 -0
  1664. data/doc/cup.html +166 -0
  1665. data/doc/d.html +35 -0
  1666. data/doc/dbd.html +304 -0
  1667. data/doc/ddi.html +87 -0
  1668. data/doc/dgb.html +1857 -0
  1669. data/doc/dge.html +7267 -0
  1670. data/doc/dgg.html +2102 -0
  1671. data/doc/dgt.html +713 -0
  1672. data/doc/dhg.html +225 -0
  1673. data/doc/dhs.html +414 -0
  1674. data/doc/di.html +14 -0
  1675. data/doc/dop.html +166 -0
  1676. data/doc/dor.html +2540 -0
  1677. data/doc/dpb.html +992 -0
  1678. data/doc/dpo.html +1517 -0
  1679. data/doc/dpp.html +770 -0
  1680. data/doc/dpt.html +675 -0
  1681. data/doc/dsb.html +995 -0
  1682. data/doc/dsp.html +1777 -0
  1683. data/doc/dst.html +1422 -0
  1684. data/doc/dsy.html +3433 -0
  1685. data/doc/dtb.html +284 -0
  1686. data/doc/dtg.html +1730 -0
  1687. data/doc/dtp.html +532 -0
  1688. data/doc/dtr.html +1346 -0
  1689. data/doc/dtz.html +211 -0
  1690. data/doc/gb.html +16 -0
  1691. data/doc/ge.html +16 -0
  1692. data/doc/gg.html +16 -0
  1693. data/doc/gt.html +16 -0
  1694. data/doc/hb.html +14 -0
  1695. data/doc/he.html +14 -0
  1696. data/doc/hg.html +16 -0
  1697. data/doc/hp.html +14 -0
  1698. data/doc/hs.html +16 -0
  1699. data/doc/index.html +53 -0
  1700. data/doc/op.html +14 -0
  1701. data/doc/or.html +14 -0
  1702. data/doc/others.html +1142 -0
  1703. data/doc/pb.html +16 -0
  1704. data/doc/po.html +16 -0
  1705. data/doc/pp.html +16 -0
  1706. data/doc/pt.html +16 -0
  1707. data/doc/s.html +35 -0
  1708. data/doc/sb.html +14 -0
  1709. data/doc/sbd.html +303 -0
  1710. data/doc/sdi.html +87 -0
  1711. data/doc/sgb.html +1863 -0
  1712. data/doc/sge.html +7263 -0
  1713. data/doc/sgg.html +2102 -0
  1714. data/doc/sgt.html +713 -0
  1715. data/doc/shg.html +225 -0
  1716. data/doc/shs.html +414 -0
  1717. data/doc/sop.html +166 -0
  1718. data/doc/sor.html +2540 -0
  1719. data/doc/sp.html +16 -0
  1720. data/doc/spb.html +992 -0
  1721. data/doc/spo.html +1520 -0
  1722. data/doc/spp.html +770 -0
  1723. data/doc/spt.html +675 -0
  1724. data/doc/ssb.html +995 -0
  1725. data/doc/ssp.html +1647 -0
  1726. data/doc/sst.html +1423 -0
  1727. data/doc/ssy.html +3438 -0
  1728. data/doc/st.html +16 -0
  1729. data/doc/stb.html +284 -0
  1730. data/doc/stg.html +1729 -0
  1731. data/doc/stp.html +532 -0
  1732. data/doc/str.html +1346 -0
  1733. data/doc/stz.html +211 -0
  1734. data/doc/sy.html +16 -0
  1735. data/doc/tb.html +16 -0
  1736. data/doc/tg.html +16 -0
  1737. data/doc/tp.html +16 -0
  1738. data/doc/tr.html +16 -0
  1739. data/doc/tz.html +16 -0
  1740. data/doc/un.html +14 -0
  1741. data/doc/up.html +14 -0
  1742. data/doc/z.html +36 -0
  1743. data/doc/zbd.html +161 -0
  1744. data/doc/zgb.html +1862 -0
  1745. data/doc/zge.html +5258 -0
  1746. data/doc/zgg.html +2027 -0
  1747. data/doc/zgt.html +711 -0
  1748. data/doc/zhb.html +1031 -0
  1749. data/doc/zhe.html +3162 -0
  1750. data/doc/zhg.html +201 -0
  1751. data/doc/zhp.html +1697 -0
  1752. data/doc/zhs.html +386 -0
  1753. data/doc/zpb.html +994 -0
  1754. data/doc/zpo.html +1517 -0
  1755. data/doc/zpp.html +770 -0
  1756. data/doc/zpt.html +706 -0
  1757. data/doc/zsp.html +905 -0
  1758. data/doc/zst.html +743 -0
  1759. data/doc/zsy.html +2191 -0
  1760. data/doc/ztb.html +284 -0
  1761. data/doc/ztg.html +1544 -0
  1762. data/doc/ztp.html +553 -0
  1763. data/doc/ztr.html +1281 -0
  1764. data/doc/ztz.html +211 -0
  1765. data/doc/zun.html +2553 -0
  1766. data/doc/zup.html +166 -0
  1767. data/ext/cbbcsd.c +279 -0
  1768. data/ext/cbdsqr.c +178 -0
  1769. data/ext/cgbbrd.c +153 -0
  1770. data/ext/cgbcon.c +94 -0
  1771. data/ext/cgbequ.c +94 -0
  1772. data/ext/cgbequb.c +92 -0
  1773. data/ext/cgbrfs.c +157 -0
  1774. data/ext/cgbrfsx.c +245 -0
  1775. data/ext/cgbsv.c +111 -0
  1776. data/ext/cgbsvx.c +282 -0
  1777. data/ext/cgbsvxx.c +285 -0
  1778. data/ext/cgbtf2.c +89 -0
  1779. data/ext/cgbtrf.c +89 -0
  1780. data/ext/cgbtrs.c +107 -0
  1781. data/ext/cgebak.c +97 -0
  1782. data/ext/cgebal.c +87 -0
  1783. data/ext/cgebd2.c +108 -0
  1784. data/ext/cgebrd.c +123 -0
  1785. data/ext/cgecon.c +74 -0
  1786. data/ext/cgeequ.c +84 -0
  1787. data/ext/cgeequb.c +84 -0
  1788. data/ext/cgees.c +138 -0
  1789. data/ext/cgeesx.c +148 -0
  1790. data/ext/cgeev.c +128 -0
  1791. data/ext/cgeevx.c +169 -0
  1792. data/ext/cgegs.c +162 -0
  1793. data/ext/cgegv.c +167 -0
  1794. data/ext/cgehd2.c +88 -0
  1795. data/ext/cgehrd.c +103 -0
  1796. data/ext/cgelq2.c +82 -0
  1797. data/ext/cgelqf.c +99 -0
  1798. data/ext/cgels.c +133 -0
  1799. data/ext/cgelsd.c +150 -0
  1800. data/ext/cgelss.c +147 -0
  1801. data/ext/cgelsx.c +135 -0
  1802. data/ext/cgelsy.c +162 -0
  1803. data/ext/cgeql2.c +84 -0
  1804. data/ext/cgeqlf.c +99 -0
  1805. data/ext/cgeqp3.c +125 -0
  1806. data/ext/cgeqpf.c +110 -0
  1807. data/ext/cgeqr2.c +84 -0
  1808. data/ext/cgeqr2p.c +84 -0
  1809. data/ext/cgeqrf.c +99 -0
  1810. data/ext/cgeqrfp.c +99 -0
  1811. data/ext/cgerfs.c +149 -0
  1812. data/ext/cgerfsx.c +215 -0
  1813. data/ext/cgerq2.c +82 -0
  1814. data/ext/cgerqf.c +99 -0
  1815. data/ext/cgesc2.c +104 -0
  1816. data/ext/cgesdd.c +131 -0
  1817. data/ext/cgesv.c +103 -0
  1818. data/ext/cgesvd.c +142 -0
  1819. data/ext/cgesvx.c +274 -0
  1820. data/ext/cgesvxx.c +277 -0
  1821. data/ext/cgetc2.c +85 -0
  1822. data/ext/cgetf2.c +81 -0
  1823. data/ext/cgetrf.c +81 -0
  1824. data/ext/cgetri.c +99 -0
  1825. data/ext/cgetrs.c +99 -0
  1826. data/ext/cggbak.c +109 -0
  1827. data/ext/cggbal.c +124 -0
  1828. data/ext/cgges.c +188 -0
  1829. data/ext/cggesx.c +226 -0
  1830. data/ext/cggev.c +167 -0
  1831. data/ext/cggevx.c +222 -0
  1832. data/ext/cggglm.c +152 -0
  1833. data/ext/cgghrd.c +163 -0
  1834. data/ext/cgglse.c +167 -0
  1835. data/ext/cggqrf.c +133 -0
  1836. data/ext/cggrqf.c +137 -0
  1837. data/ext/cggsvd.c +180 -0
  1838. data/ext/cggsvp.c +170 -0
  1839. data/ext/cgtcon.c +117 -0
  1840. data/ext/cgtrfs.c +205 -0
  1841. data/ext/cgtsv.c +138 -0
  1842. data/ext/cgtsvx.c +252 -0
  1843. data/ext/cgttrf.c +128 -0
  1844. data/ext/cgttrs.c +133 -0
  1845. data/ext/cgtts2.c +130 -0
  1846. data/ext/chbev.c +106 -0
  1847. data/ext/chbevd.c +154 -0
  1848. data/ext/chbevx.c +156 -0
  1849. data/ext/chbgst.c +116 -0
  1850. data/ext/chbgv.c +136 -0
  1851. data/ext/chbgvd.c +184 -0
  1852. data/ext/chbgvx.c +185 -0
  1853. data/ext/chbtrd.c +126 -0
  1854. data/ext/checon.c +83 -0
  1855. data/ext/cheequb.c +78 -0
  1856. data/ext/cheev.c +106 -0
  1857. data/ext/cheevd.c +139 -0
  1858. data/ext/cheevr.c +186 -0
  1859. data/ext/cheevx.c +156 -0
  1860. data/ext/chegs2.c +91 -0
  1861. data/ext/chegst.c +91 -0
  1862. data/ext/chegv.c +136 -0
  1863. data/ext/chegvd.c +169 -0
  1864. data/ext/chegvx.c +186 -0
  1865. data/ext/cherfs.c +149 -0
  1866. data/ext/cherfsx.c +214 -0
  1867. data/ext/chesv.c +119 -0
  1868. data/ext/chesvx.c +179 -0
  1869. data/ext/chesvxx.c +254 -0
  1870. data/ext/chetd2.c +97 -0
  1871. data/ext/chetf2.c +81 -0
  1872. data/ext/chetrd.c +109 -0
  1873. data/ext/chetrf.c +93 -0
  1874. data/ext/chetri.c +88 -0
  1875. data/ext/chetrs.c +99 -0
  1876. data/ext/chetrs2.c +102 -0
  1877. data/ext/chfrk.c +105 -0
  1878. data/ext/chgeqz.c +204 -0
  1879. data/ext/chla_transtype.c +47 -0
  1880. data/ext/chpcon.c +81 -0
  1881. data/ext/chpev.c +101 -0
  1882. data/ext/chpevd.c +149 -0
  1883. data/ext/chpevx.c +140 -0
  1884. data/ext/chpgst.c +90 -0
  1885. data/ext/chpgv.c +128 -0
  1886. data/ext/chpgvd.c +166 -0
  1887. data/ext/chpgvx.c +166 -0
  1888. data/ext/chprfs.c +145 -0
  1889. data/ext/chpsv.c +106 -0
  1890. data/ext/chpsvx.c +159 -0
  1891. data/ext/chptrd.c +96 -0
  1892. data/ext/chptrf.c +80 -0
  1893. data/ext/chptri.c +85 -0
  1894. data/ext/chptrs.c +97 -0
  1895. data/ext/chsein.c +181 -0
  1896. data/ext/chseqr.c +141 -0
  1897. data/ext/cla_gbamv.c +123 -0
  1898. data/ext/cla_gbrcond_c.c +138 -0
  1899. data/ext/cla_gbrcond_x.c +134 -0
  1900. data/ext/cla_gbrfsx_extended.c +291 -0
  1901. data/ext/cla_gbrpvgrw.c +83 -0
  1902. data/ext/cla_geamv.c +113 -0
  1903. data/ext/cla_gercond_c.c +130 -0
  1904. data/ext/cla_gercond_x.c +126 -0
  1905. data/ext/cla_gerfsx_extended.c +277 -0
  1906. data/ext/cla_heamv.c +112 -0
  1907. data/ext/cla_hercond_c.c +130 -0
  1908. data/ext/cla_hercond_x.c +126 -0
  1909. data/ext/cla_herfsx_extended.c +279 -0
  1910. data/ext/cla_herpvgrw.c +103 -0
  1911. data/ext/cla_lin_berr.c +80 -0
  1912. data/ext/cla_porcond_c.c +118 -0
  1913. data/ext/cla_porcond_x.c +114 -0
  1914. data/ext/cla_porfsx_extended.c +267 -0
  1915. data/ext/cla_porpvgrw.c +91 -0
  1916. data/ext/cla_rpvgrw.c +75 -0
  1917. data/ext/cla_syamv.c +111 -0
  1918. data/ext/cla_syrcond_c.c +130 -0
  1919. data/ext/cla_syrcond_x.c +126 -0
  1920. data/ext/cla_syrfsx_extended.c +279 -0
  1921. data/ext/cla_syrpvgrw.c +103 -0
  1922. data/ext/cla_wwaddw.c +98 -0
  1923. data/ext/clabrd.c +128 -0
  1924. data/ext/clacgv.c +71 -0
  1925. data/ext/clacn2.c +99 -0
  1926. data/ext/clacon.c +76 -0
  1927. data/ext/clacp2.c +73 -0
  1928. data/ext/clacpy.c +73 -0
  1929. data/ext/clacrm.c +86 -0
  1930. data/ext/clacrt.c +104 -0
  1931. data/ext/cladiv.c +53 -0
  1932. data/ext/claed0.c +130 -0
  1933. data/ext/claed7.c +243 -0
  1934. data/ext/claed8.c +194 -0
  1935. data/ext/claein.c +109 -0
  1936. data/ext/claesy.c +70 -0
  1937. data/ext/claev2.c +67 -0
  1938. data/ext/clag2z.c +72 -0
  1939. data/ext/clags2.c +88 -0
  1940. data/ext/clagtm.c +128 -0
  1941. data/ext/clahef.c +93 -0
  1942. data/ext/clahqr.c +131 -0
  1943. data/ext/clahr2.c +108 -0
  1944. data/ext/clahrd.c +108 -0
  1945. data/ext/claic1.c +86 -0
  1946. data/ext/clals0.c +197 -0
  1947. data/ext/clalsa.c +266 -0
  1948. data/ext/clalsd.c +141 -0
  1949. data/ext/clangb.c +72 -0
  1950. data/ext/clange.c +70 -0
  1951. data/ext/clangt.c +83 -0
  1952. data/ext/clanhb.c +74 -0
  1953. data/ext/clanhe.c +68 -0
  1954. data/ext/clanhf.c +76 -0
  1955. data/ext/clanhp.c +70 -0
  1956. data/ext/clanhs.c +66 -0
  1957. data/ext/clanht.c +71 -0
  1958. data/ext/clansb.c +74 -0
  1959. data/ext/clansp.c +70 -0
  1960. data/ext/clansy.c +68 -0
  1961. data/ext/clantb.c +76 -0
  1962. data/ext/clantp.c +76 -0
  1963. data/ext/clantr.c +78 -0
  1964. data/ext/clapll.c +101 -0
  1965. data/ext/clapmr.c +93 -0
  1966. data/ext/clapmt.c +97 -0
  1967. data/ext/claqgb.c +113 -0
  1968. data/ext/claqge.c +105 -0
  1969. data/ext/claqhb.c +93 -0
  1970. data/ext/claqhe.c +93 -0
  1971. data/ext/claqhp.c +90 -0
  1972. data/ext/claqp2.c +154 -0
  1973. data/ext/claqps.c +204 -0
  1974. data/ext/claqr0.c +141 -0
  1975. data/ext/claqr1.c +72 -0
  1976. data/ext/claqr2.c +170 -0
  1977. data/ext/claqr3.c +170 -0
  1978. data/ext/claqr4.c +141 -0
  1979. data/ext/claqr5.c +175 -0
  1980. data/ext/claqsb.c +97 -0
  1981. data/ext/claqsp.c +90 -0
  1982. data/ext/claqsy.c +93 -0
  1983. data/ext/clar1v.c +169 -0
  1984. data/ext/clar2v.c +145 -0
  1985. data/ext/clarcm.c +82 -0
  1986. data/ext/clarf.c +98 -0
  1987. data/ext/clarfb.c +119 -0
  1988. data/ext/clarfg.c +80 -0
  1989. data/ext/clarfgp.c +80 -0
  1990. data/ext/clarft.c +101 -0
  1991. data/ext/clarfx.c +90 -0
  1992. data/ext/clargv.c +110 -0
  1993. data/ext/clarnv.c +79 -0
  1994. data/ext/clarrv.c +267 -0
  1995. data/ext/clarscl2.c +78 -0
  1996. data/ext/clartg.c +59 -0
  1997. data/ext/clartv.c +126 -0
  1998. data/ext/clarz.c +102 -0
  1999. data/ext/clarzb.c +123 -0
  2000. data/ext/clarzt.c +101 -0
  2001. data/ext/clascl.c +93 -0
  2002. data/ext/clascl2.c +78 -0
  2003. data/ext/claset.c +84 -0
  2004. data/ext/clasr.c +106 -0
  2005. data/ext/classq.c +66 -0
  2006. data/ext/claswp.c +90 -0
  2007. data/ext/clasyf.c +93 -0
  2008. data/ext/clatbs.c +126 -0
  2009. data/ext/clatdf.c +115 -0
  2010. data/ext/clatps.c +120 -0
  2011. data/ext/clatrd.c +101 -0
  2012. data/ext/clatrs.c +122 -0
  2013. data/ext/clatrz.c +83 -0
  2014. data/ext/clatzm.c +128 -0
  2015. data/ext/clauu2.c +73 -0
  2016. data/ext/clauum.c +73 -0
  2017. data/ext/cpbcon.c +78 -0
  2018. data/ext/cpbequ.c +79 -0
  2019. data/ext/cpbrfs.c +141 -0
  2020. data/ext/cpbstf.c +77 -0
  2021. data/ext/cpbsv.c +103 -0
  2022. data/ext/cpbsvx.c +197 -0
  2023. data/ext/cpbtf2.c +77 -0
  2024. data/ext/cpbtrf.c +77 -0
  2025. data/ext/cpbtrs.c +91 -0
  2026. data/ext/cpftrf.c +78 -0
  2027. data/ext/cpftri.c +78 -0
  2028. data/ext/cpftrs.c +93 -0
  2029. data/ext/cpocon.c +74 -0
  2030. data/ext/cpoequ.c +71 -0
  2031. data/ext/cpoequb.c +71 -0
  2032. data/ext/cporfs.c +137 -0
  2033. data/ext/cporfsx.c +202 -0
  2034. data/ext/cposv.c +99 -0
  2035. data/ext/cposvx.c +193 -0
  2036. data/ext/cposvxx.c +231 -0
  2037. data/ext/cpotf2.c +73 -0
  2038. data/ext/cpotrf.c +73 -0
  2039. data/ext/cpotri.c +73 -0
  2040. data/ext/cpotrs.c +87 -0
  2041. data/ext/cppcon.c +74 -0
  2042. data/ext/cppequ.c +75 -0
  2043. data/ext/cpprfs.c +135 -0
  2044. data/ext/cppsv.c +100 -0
  2045. data/ext/cppsvx.c +187 -0
  2046. data/ext/cpptrf.c +74 -0
  2047. data/ext/cpptri.c +74 -0
  2048. data/ext/cpptrs.c +89 -0
  2049. data/ext/cpstf2.c +91 -0
  2050. data/ext/cpstrf.c +91 -0
  2051. data/ext/cptcon.c +77 -0
  2052. data/ext/cpteqr.c +122 -0
  2053. data/ext/cptrfs.c +157 -0
  2054. data/ext/cptsv.c +115 -0
  2055. data/ext/cptsvx.c +167 -0
  2056. data/ext/cpttrf.c +89 -0
  2057. data/ext/cpttrs.c +97 -0
  2058. data/ext/cptts2.c +94 -0
  2059. data/ext/crot.c +103 -0
  2060. data/ext/cspcon.c +81 -0
  2061. data/ext/cspmv.c +111 -0
  2062. data/ext/cspr.c +92 -0
  2063. data/ext/csprfs.c +145 -0
  2064. data/ext/cspsv.c +106 -0
  2065. data/ext/cspsvx.c +159 -0
  2066. data/ext/csptrf.c +80 -0
  2067. data/ext/csptri.c +85 -0
  2068. data/ext/csptrs.c +97 -0
  2069. data/ext/csrscl.c +75 -0
  2070. data/ext/cstedc.c +173 -0
  2071. data/ext/cstegr.c +184 -0
  2072. data/ext/cstein.c +130 -0
  2073. data/ext/cstemr.c +189 -0
  2074. data/ext/csteqr.c +122 -0
  2075. data/ext/csycon.c +83 -0
  2076. data/ext/csyconv.c +80 -0
  2077. data/ext/csyequb.c +78 -0
  2078. data/ext/csymv.c +111 -0
  2079. data/ext/csyr.c +91 -0
  2080. data/ext/csyrfs.c +149 -0
  2081. data/ext/csyrfsx.c +214 -0
  2082. data/ext/csysv.c +125 -0
  2083. data/ext/csysvx.c +179 -0
  2084. data/ext/csysvxx.c +254 -0
  2085. data/ext/csyswapr.c +78 -0
  2086. data/ext/csytf2.c +81 -0
  2087. data/ext/csytrf.c +93 -0
  2088. data/ext/csytri.c +88 -0
  2089. data/ext/csytri2.c +104 -0
  2090. data/ext/csytri2x.c +92 -0
  2091. data/ext/csytrs.c +99 -0
  2092. data/ext/csytrs2.c +102 -0
  2093. data/ext/ctbcon.c +82 -0
  2094. data/ext/ctbrfs.c +123 -0
  2095. data/ext/ctbtrs.c +99 -0
  2096. data/ext/ctfsm.c +107 -0
  2097. data/ext/ctftri.c +82 -0
  2098. data/ext/ctfttp.c +75 -0
  2099. data/ext/ctfttr.c +76 -0
  2100. data/ext/ctgevc.c +152 -0
  2101. data/ext/ctgex2.c +167 -0
  2102. data/ext/ctgexc.c +168 -0
  2103. data/ext/ctgsen.c +240 -0
  2104. data/ext/ctgsja.c +223 -0
  2105. data/ext/ctgsna.c +160 -0
  2106. data/ext/ctgsy2.c +172 -0
  2107. data/ext/ctgsyl.c +186 -0
  2108. data/ext/ctpcon.c +78 -0
  2109. data/ext/ctprfs.c +119 -0
  2110. data/ext/ctptri.c +78 -0
  2111. data/ext/ctptrs.c +97 -0
  2112. data/ext/ctpttf.c +75 -0
  2113. data/ext/ctpttr.c +72 -0
  2114. data/ext/ctrcon.c +78 -0
  2115. data/ext/ctrevc.c +150 -0
  2116. data/ext/ctrexc.c +107 -0
  2117. data/ext/ctrrfs.c +119 -0
  2118. data/ext/ctrsen.c +150 -0
  2119. data/ext/ctrsna.c +133 -0
  2120. data/ext/ctrsyl.c +112 -0
  2121. data/ext/ctrti2.c +77 -0
  2122. data/ext/ctrtri.c +77 -0
  2123. data/ext/ctrtrs.c +95 -0
  2124. data/ext/ctrttf.c +73 -0
  2125. data/ext/ctrttp.c +69 -0
  2126. data/ext/ctzrqf.c +79 -0
  2127. data/ext/ctzrzf.c +97 -0
  2128. data/ext/cunbdb.c +228 -0
  2129. data/ext/cuncsd.c +200 -0
  2130. data/ext/cung2l.c +88 -0
  2131. data/ext/cung2r.c +88 -0
  2132. data/ext/cungbr.c +111 -0
  2133. data/ext/cunghr.c +107 -0
  2134. data/ext/cungl2.c +86 -0
  2135. data/ext/cunglq.c +103 -0
  2136. data/ext/cungql.c +103 -0
  2137. data/ext/cungqr.c +103 -0
  2138. data/ext/cungr2.c +86 -0
  2139. data/ext/cungrq.c +103 -0
  2140. data/ext/cungtr.c +103 -0
  2141. data/ext/cunm2l.c +110 -0
  2142. data/ext/cunm2r.c +110 -0
  2143. data/ext/cunmbr.c +135 -0
  2144. data/ext/cunmhr.c +129 -0
  2145. data/ext/cunml2.c +106 -0
  2146. data/ext/cunmlq.c +121 -0
  2147. data/ext/cunmql.c +125 -0
  2148. data/ext/cunmqr.c +125 -0
  2149. data/ext/cunmr2.c +106 -0
  2150. data/ext/cunmr3.c +110 -0
  2151. data/ext/cunmrq.c +121 -0
  2152. data/ext/cunmrz.c +125 -0
  2153. data/ext/cunmtr.c +125 -0
  2154. data/ext/cupgtr.c +87 -0
  2155. data/ext/cupmtr.c +112 -0
  2156. data/ext/dbbcsd.c +283 -0
  2157. data/ext/dbdsdc.c +147 -0
  2158. data/ext/dbdsqr.c +178 -0
  2159. data/ext/ddisna.c +71 -0
  2160. data/ext/dgbbrd.c +150 -0
  2161. data/ext/dgbcon.c +94 -0
  2162. data/ext/dgbequ.c +94 -0
  2163. data/ext/dgbequb.c +92 -0
  2164. data/ext/dgbrfs.c +157 -0
  2165. data/ext/dgbrfsx.c +245 -0
  2166. data/ext/dgbsv.c +111 -0
  2167. data/ext/dgbsvx.c +282 -0
  2168. data/ext/dgbsvxx.c +285 -0
  2169. data/ext/dgbtf2.c +89 -0
  2170. data/ext/dgbtrf.c +89 -0
  2171. data/ext/dgbtrs.c +107 -0
  2172. data/ext/dgebak.c +97 -0
  2173. data/ext/dgebal.c +87 -0
  2174. data/ext/dgebd2.c +108 -0
  2175. data/ext/dgebrd.c +123 -0
  2176. data/ext/dgecon.c +74 -0
  2177. data/ext/dgeequ.c +84 -0
  2178. data/ext/dgeequb.c +84 -0
  2179. data/ext/dgees.c +144 -0
  2180. data/ext/dgeesx.c +166 -0
  2181. data/ext/dgeev.c +133 -0
  2182. data/ext/dgeevx.c +177 -0
  2183. data/ext/dgegs.c +167 -0
  2184. data/ext/dgegv.c +167 -0
  2185. data/ext/dgehd2.c +88 -0
  2186. data/ext/dgehrd.c +103 -0
  2187. data/ext/dgejsv.c +155 -0
  2188. data/ext/dgelq2.c +82 -0
  2189. data/ext/dgelqf.c +99 -0
  2190. data/ext/dgels.c +133 -0
  2191. data/ext/dgelsd.c +145 -0
  2192. data/ext/dgelss.c +144 -0
  2193. data/ext/dgelsx.c +132 -0
  2194. data/ext/dgelsy.c +159 -0
  2195. data/ext/dgeql2.c +84 -0
  2196. data/ext/dgeqlf.c +99 -0
  2197. data/ext/dgeqp3.c +122 -0
  2198. data/ext/dgeqpf.c +107 -0
  2199. data/ext/dgeqr2.c +84 -0
  2200. data/ext/dgeqr2p.c +84 -0
  2201. data/ext/dgeqrf.c +99 -0
  2202. data/ext/dgeqrfp.c +99 -0
  2203. data/ext/dgerfs.c +149 -0
  2204. data/ext/dgerfsx.c +215 -0
  2205. data/ext/dgerq2.c +82 -0
  2206. data/ext/dgerqf.c +99 -0
  2207. data/ext/dgesc2.c +104 -0
  2208. data/ext/dgesdd.c +128 -0
  2209. data/ext/dgesv.c +103 -0
  2210. data/ext/dgesvd.c +139 -0
  2211. data/ext/dgesvj.c +152 -0
  2212. data/ext/dgesvx.c +274 -0
  2213. data/ext/dgesvxx.c +277 -0
  2214. data/ext/dgetc2.c +85 -0
  2215. data/ext/dgetf2.c +81 -0
  2216. data/ext/dgetrf.c +81 -0
  2217. data/ext/dgetri.c +99 -0
  2218. data/ext/dgetrs.c +99 -0
  2219. data/ext/dggbak.c +109 -0
  2220. data/ext/dggbal.c +124 -0
  2221. data/ext/dgges.c +194 -0
  2222. data/ext/dggesx.c +227 -0
  2223. data/ext/dggev.c +167 -0
  2224. data/ext/dggevx.c +225 -0
  2225. data/ext/dggglm.c +152 -0
  2226. data/ext/dgghrd.c +163 -0
  2227. data/ext/dgglse.c +167 -0
  2228. data/ext/dggqrf.c +133 -0
  2229. data/ext/dggrqf.c +137 -0
  2230. data/ext/dggsvd.c +177 -0
  2231. data/ext/dggsvp.c +167 -0
  2232. data/ext/dgsvj0.c +178 -0
  2233. data/ext/dgsvj1.c +182 -0
  2234. data/ext/dgtcon.c +120 -0
  2235. data/ext/dgtrfs.c +205 -0
  2236. data/ext/dgtsv.c +138 -0
  2237. data/ext/dgtsvx.c +252 -0
  2238. data/ext/dgttrf.c +128 -0
  2239. data/ext/dgttrs.c +133 -0
  2240. data/ext/dgtts2.c +130 -0
  2241. data/ext/dhgeqz.c +209 -0
  2242. data/ext/dhsein.c +201 -0
  2243. data/ext/dhseqr.c +149 -0
  2244. data/ext/disnan.c +47 -0
  2245. data/ext/dla_gbamv.c +125 -0
  2246. data/ext/dla_gbrcond.c +138 -0
  2247. data/ext/dla_gbrfsx_extended.c +289 -0
  2248. data/ext/dla_gbrpvgrw.c +83 -0
  2249. data/ext/dla_geamv.c +115 -0
  2250. data/ext/dla_gercond.c +130 -0
  2251. data/ext/dla_gerfsx_extended.c +277 -0
  2252. data/ext/dla_lin_berr.c +80 -0
  2253. data/ext/dla_porcond.c +118 -0
  2254. data/ext/dla_porfsx_extended.c +267 -0
  2255. data/ext/dla_porpvgrw.c +91 -0
  2256. data/ext/dla_rpvgrw.c +75 -0
  2257. data/ext/dla_syamv.c +109 -0
  2258. data/ext/dla_syrcond.c +130 -0
  2259. data/ext/dla_syrfsx_extended.c +279 -0
  2260. data/ext/dla_syrpvgrw.c +103 -0
  2261. data/ext/dla_wwaddw.c +98 -0
  2262. data/ext/dlabad.c +50 -0
  2263. data/ext/dlabrd.c +128 -0
  2264. data/ext/dlacn2.c +102 -0
  2265. data/ext/dlacon.c +79 -0
  2266. data/ext/dlacpy.c +73 -0
  2267. data/ext/dladiv.c +62 -0
  2268. data/ext/dlae2.c +58 -0
  2269. data/ext/dlaebz.c +214 -0
  2270. data/ext/dlaed0.c +123 -0
  2271. data/ext/dlaed1.c +129 -0
  2272. data/ext/dlaed2.c +185 -0
  2273. data/ext/dlaed3.c +157 -0
  2274. data/ext/dlaed4.c +86 -0
  2275. data/ext/dlaed5.c +83 -0
  2276. data/ext/dlaed6.c +86 -0
  2277. data/ext/dlaed7.c +244 -0
  2278. data/ext/dlaed8.c +202 -0
  2279. data/ext/dlaed9.c +107 -0
  2280. data/ext/dlaeda.c +156 -0
  2281. data/ext/dlaein.c +139 -0
  2282. data/ext/dlaev2.c +64 -0
  2283. data/ext/dlaexc.c +114 -0
  2284. data/ext/dlag2.c +87 -0
  2285. data/ext/dlag2s.c +72 -0
  2286. data/ext/dlags2.c +86 -0
  2287. data/ext/dlagtf.c +136 -0
  2288. data/ext/dlagtm.c +128 -0
  2289. data/ext/dlagts.c +135 -0
  2290. data/ext/dlagv2.c +128 -0
  2291. data/ext/dlahqr.c +139 -0
  2292. data/ext/dlahr2.c +108 -0
  2293. data/ext/dlahrd.c +108 -0
  2294. data/ext/dlaic1.c +85 -0
  2295. data/ext/dlaln2.c +116 -0
  2296. data/ext/dlals0.c +197 -0
  2297. data/ext/dlalsa.c +266 -0
  2298. data/ext/dlalsd.c +138 -0
  2299. data/ext/dlamrg.c +76 -0
  2300. data/ext/dlaneg.c +79 -0
  2301. data/ext/dlangb.c +74 -0
  2302. data/ext/dlange.c +70 -0
  2303. data/ext/dlangt.c +83 -0
  2304. data/ext/dlanhs.c +66 -0
  2305. data/ext/dlansb.c +74 -0
  2306. data/ext/dlansf.c +76 -0
  2307. data/ext/dlansp.c +72 -0
  2308. data/ext/dlanst.c +71 -0
  2309. data/ext/dlansy.c +70 -0
  2310. data/ext/dlantb.c +78 -0
  2311. data/ext/dlantp.c +76 -0
  2312. data/ext/dlantr.c +78 -0
  2313. data/ext/dlanv2.c +78 -0
  2314. data/ext/dlapll.c +101 -0
  2315. data/ext/dlapmr.c +93 -0
  2316. data/ext/dlapmt.c +97 -0
  2317. data/ext/dlapy2.c +51 -0
  2318. data/ext/dlapy3.c +55 -0
  2319. data/ext/dlaqgb.c +113 -0
  2320. data/ext/dlaqge.c +105 -0
  2321. data/ext/dlaqp2.c +154 -0
  2322. data/ext/dlaqps.c +204 -0
  2323. data/ext/dlaqr0.c +149 -0
  2324. data/ext/dlaqr1.c +78 -0
  2325. data/ext/dlaqr2.c +178 -0
  2326. data/ext/dlaqr3.c +178 -0
  2327. data/ext/dlaqr4.c +149 -0
  2328. data/ext/dlaqr5.c +196 -0
  2329. data/ext/dlaqsb.c +97 -0
  2330. data/ext/dlaqsp.c +90 -0
  2331. data/ext/dlaqsy.c +93 -0
  2332. data/ext/dlaqtr.c +110 -0
  2333. data/ext/dlar1v.c +169 -0
  2334. data/ext/dlar2v.c +145 -0
  2335. data/ext/dlarf.c +97 -0
  2336. data/ext/dlarfb.c +119 -0
  2337. data/ext/dlarfg.c +79 -0
  2338. data/ext/dlarfgp.c +79 -0
  2339. data/ext/dlarft.c +101 -0
  2340. data/ext/dlarfx.c +89 -0
  2341. data/ext/dlargv.c +110 -0
  2342. data/ext/dlarnv.c +79 -0
  2343. data/ext/dlarra.c +120 -0
  2344. data/ext/dlarrb.c +174 -0
  2345. data/ext/dlarrc.c +92 -0
  2346. data/ext/dlarrd.c +186 -0
  2347. data/ext/dlarre.c +217 -0
  2348. data/ext/dlarrf.c +172 -0
  2349. data/ext/dlarrj.c +143 -0
  2350. data/ext/dlarrk.c +93 -0
  2351. data/ext/dlarrr.c +78 -0
  2352. data/ext/dlarrv.c +267 -0
  2353. data/ext/dlarscl2.c +78 -0
  2354. data/ext/dlartg.c +57 -0
  2355. data/ext/dlartgp.c +57 -0
  2356. data/ext/dlartgs.c +58 -0
  2357. data/ext/dlartv.c +126 -0
  2358. data/ext/dlaruv.c +75 -0
  2359. data/ext/dlarz.c +101 -0
  2360. data/ext/dlarzb.c +123 -0
  2361. data/ext/dlarzt.c +101 -0
  2362. data/ext/dlas2.c +58 -0
  2363. data/ext/dlascl.c +93 -0
  2364. data/ext/dlascl2.c +78 -0
  2365. data/ext/dlasd0.c +116 -0
  2366. data/ext/dlasd1.c +158 -0
  2367. data/ext/dlasd2.c +224 -0
  2368. data/ext/dlasd3.c +198 -0
  2369. data/ext/dlasd4.c +89 -0
  2370. data/ext/dlasd5.c +86 -0
  2371. data/ext/dlasd6.c +232 -0
  2372. data/ext/dlasd7.c +221 -0
  2373. data/ext/dlasd8.c +169 -0
  2374. data/ext/dlasda.c +217 -0
  2375. data/ext/dlasdq.c +182 -0
  2376. data/ext/dlasdt.c +78 -0
  2377. data/ext/dlaset.c +82 -0
  2378. data/ext/dlasq1.c +92 -0
  2379. data/ext/dlasq2.c +70 -0
  2380. data/ext/dlasq3.c +134 -0
  2381. data/ext/dlasq4.c +103 -0
  2382. data/ext/dlasq5.c +90 -0
  2383. data/ext/dlasq6.c +82 -0
  2384. data/ext/dlasr.c +106 -0
  2385. data/ext/dlasrt.c +70 -0
  2386. data/ext/dlassq.c +66 -0
  2387. data/ext/dlasv2.c +70 -0
  2388. data/ext/dlaswp.c +90 -0
  2389. data/ext/dlasy2.c +122 -0
  2390. data/ext/dlasyf.c +93 -0
  2391. data/ext/dlat2s.c +72 -0
  2392. data/ext/dlatbs.c +126 -0
  2393. data/ext/dlatdf.c +115 -0
  2394. data/ext/dlatps.c +120 -0
  2395. data/ext/dlatrd.c +101 -0
  2396. data/ext/dlatrs.c +122 -0
  2397. data/ext/dlatrz.c +83 -0
  2398. data/ext/dlatzm.c +127 -0
  2399. data/ext/dlauu2.c +73 -0
  2400. data/ext/dlauum.c +73 -0
  2401. data/ext/dopgtr.c +87 -0
  2402. data/ext/dopmtr.c +112 -0
  2403. data/ext/dorbdb.c +228 -0
  2404. data/ext/dorcsd.c +193 -0
  2405. data/ext/dorg2l.c +88 -0
  2406. data/ext/dorg2r.c +88 -0
  2407. data/ext/dorgbr.c +111 -0
  2408. data/ext/dorghr.c +107 -0
  2409. data/ext/dorgl2.c +86 -0
  2410. data/ext/dorglq.c +103 -0
  2411. data/ext/dorgql.c +103 -0
  2412. data/ext/dorgqr.c +103 -0
  2413. data/ext/dorgr2.c +86 -0
  2414. data/ext/dorgrq.c +103 -0
  2415. data/ext/dorgtr.c +103 -0
  2416. data/ext/dorm2l.c +110 -0
  2417. data/ext/dorm2r.c +110 -0
  2418. data/ext/dormbr.c +135 -0
  2419. data/ext/dormhr.c +129 -0
  2420. data/ext/dorml2.c +106 -0
  2421. data/ext/dormlq.c +121 -0
  2422. data/ext/dormql.c +125 -0
  2423. data/ext/dormqr.c +125 -0
  2424. data/ext/dormr2.c +106 -0
  2425. data/ext/dormr3.c +110 -0
  2426. data/ext/dormrq.c +121 -0
  2427. data/ext/dormrz.c +125 -0
  2428. data/ext/dormtr.c +125 -0
  2429. data/ext/dpbcon.c +78 -0
  2430. data/ext/dpbequ.c +79 -0
  2431. data/ext/dpbrfs.c +141 -0
  2432. data/ext/dpbstf.c +77 -0
  2433. data/ext/dpbsv.c +103 -0
  2434. data/ext/dpbsvx.c +197 -0
  2435. data/ext/dpbtf2.c +77 -0
  2436. data/ext/dpbtrf.c +77 -0
  2437. data/ext/dpbtrs.c +91 -0
  2438. data/ext/dpftrf.c +78 -0
  2439. data/ext/dpftri.c +78 -0
  2440. data/ext/dpftrs.c +93 -0
  2441. data/ext/dpocon.c +74 -0
  2442. data/ext/dpoequ.c +71 -0
  2443. data/ext/dpoequb.c +71 -0
  2444. data/ext/dporfs.c +137 -0
  2445. data/ext/dporfsx.c +202 -0
  2446. data/ext/dposv.c +99 -0
  2447. data/ext/dposvx.c +193 -0
  2448. data/ext/dposvxx.c +231 -0
  2449. data/ext/dpotf2.c +73 -0
  2450. data/ext/dpotrf.c +73 -0
  2451. data/ext/dpotri.c +73 -0
  2452. data/ext/dpotrs.c +87 -0
  2453. data/ext/dppcon.c +74 -0
  2454. data/ext/dppequ.c +75 -0
  2455. data/ext/dpprfs.c +135 -0
  2456. data/ext/dppsv.c +100 -0
  2457. data/ext/dppsvx.c +187 -0
  2458. data/ext/dpptrf.c +74 -0
  2459. data/ext/dpptri.c +74 -0
  2460. data/ext/dpptrs.c +89 -0
  2461. data/ext/dpstf2.c +91 -0
  2462. data/ext/dpstrf.c +91 -0
  2463. data/ext/dptcon.c +77 -0
  2464. data/ext/dpteqr.c +122 -0
  2465. data/ext/dptrfs.c +150 -0
  2466. data/ext/dptsv.c +115 -0
  2467. data/ext/dptsvx.c +164 -0
  2468. data/ext/dpttrf.c +89 -0
  2469. data/ext/dpttrs.c +93 -0
  2470. data/ext/dptts2.c +90 -0
  2471. data/ext/drscl.c +75 -0
  2472. data/ext/dsbev.c +103 -0
  2473. data/ext/dsbevd.c +136 -0
  2474. data/ext/dsbevx.c +153 -0
  2475. data/ext/dsbgst.c +113 -0
  2476. data/ext/dsbgv.c +133 -0
  2477. data/ext/dsbgvd.c +166 -0
  2478. data/ext/dsbgvx.c +193 -0
  2479. data/ext/dsbtrd.c +126 -0
  2480. data/ext/dsfrk.c +105 -0
  2481. data/ext/dsgesv.c +111 -0
  2482. data/ext/dspcon.c +84 -0
  2483. data/ext/dspev.c +98 -0
  2484. data/ext/dspevd.c +131 -0
  2485. data/ext/dspevx.c +137 -0
  2486. data/ext/dspgst.c +90 -0
  2487. data/ext/dspgv.c +125 -0
  2488. data/ext/dspgvd.c +158 -0
  2489. data/ext/dspgvx.c +164 -0
  2490. data/ext/dsposv.c +107 -0
  2491. data/ext/dsprfs.c +145 -0
  2492. data/ext/dspsv.c +106 -0
  2493. data/ext/dspsvx.c +159 -0
  2494. data/ext/dsptrd.c +96 -0
  2495. data/ext/dsptrf.c +80 -0
  2496. data/ext/dsptri.c +85 -0
  2497. data/ext/dsptrs.c +97 -0
  2498. data/ext/dstebz.c +131 -0
  2499. data/ext/dstedc.c +155 -0
  2500. data/ext/dstegr.c +184 -0
  2501. data/ext/dstein.c +130 -0
  2502. data/ext/dstemr.c +189 -0
  2503. data/ext/dsteqr.c +122 -0
  2504. data/ext/dsterf.c +89 -0
  2505. data/ext/dstev.c +107 -0
  2506. data/ext/dstevd.c +140 -0
  2507. data/ext/dstevr.c +184 -0
  2508. data/ext/dstevx.c +154 -0
  2509. data/ext/dsycon.c +86 -0
  2510. data/ext/dsyconv.c +80 -0
  2511. data/ext/dsyequb.c +78 -0
  2512. data/ext/dsyev.c +103 -0
  2513. data/ext/dsyevd.c +121 -0
  2514. data/ext/dsyevr.c +168 -0
  2515. data/ext/dsyevx.c +153 -0
  2516. data/ext/dsygs2.c +91 -0
  2517. data/ext/dsygst.c +91 -0
  2518. data/ext/dsygv.c +133 -0
  2519. data/ext/dsygvd.c +151 -0
  2520. data/ext/dsygvx.c +183 -0
  2521. data/ext/dsyrfs.c +149 -0
  2522. data/ext/dsyrfsx.c +214 -0
  2523. data/ext/dsysv.c +125 -0
  2524. data/ext/dsysvx.c +179 -0
  2525. data/ext/dsysvxx.c +254 -0
  2526. data/ext/dsyswapr.c +78 -0
  2527. data/ext/dsytd2.c +97 -0
  2528. data/ext/dsytf2.c +81 -0
  2529. data/ext/dsytrd.c +109 -0
  2530. data/ext/dsytrf.c +93 -0
  2531. data/ext/dsytri.c +88 -0
  2532. data/ext/dsytri2.c +104 -0
  2533. data/ext/dsytri2x.c +92 -0
  2534. data/ext/dsytrs.c +99 -0
  2535. data/ext/dsytrs2.c +102 -0
  2536. data/ext/dtbcon.c +82 -0
  2537. data/ext/dtbrfs.c +123 -0
  2538. data/ext/dtbtrs.c +99 -0
  2539. data/ext/dtfsm.c +106 -0
  2540. data/ext/dtftri.c +82 -0
  2541. data/ext/dtfttp.c +75 -0
  2542. data/ext/dtfttr.c +76 -0
  2543. data/ext/dtgevc.c +149 -0
  2544. data/ext/dtgex2.c +176 -0
  2545. data/ext/dtgexc.c +183 -0
  2546. data/ext/dtgsen.c +248 -0
  2547. data/ext/dtgsja.c +223 -0
  2548. data/ext/dtgsna.c +160 -0
  2549. data/ext/dtgsy2.c +178 -0
  2550. data/ext/dtgsyl.c +186 -0
  2551. data/ext/dtpcon.c +78 -0
  2552. data/ext/dtprfs.c +119 -0
  2553. data/ext/dtptri.c +78 -0
  2554. data/ext/dtptrs.c +97 -0
  2555. data/ext/dtpttf.c +75 -0
  2556. data/ext/dtpttr.c +72 -0
  2557. data/ext/dtrcon.c +78 -0
  2558. data/ext/dtrevc.c +146 -0
  2559. data/ext/dtrexc.c +112 -0
  2560. data/ext/dtrrfs.c +119 -0
  2561. data/ext/dtrsen.c +165 -0
  2562. data/ext/dtrsna.c +133 -0
  2563. data/ext/dtrsyl.c +112 -0
  2564. data/ext/dtrti2.c +77 -0
  2565. data/ext/dtrtri.c +77 -0
  2566. data/ext/dtrtrs.c +95 -0
  2567. data/ext/dtrttf.c +73 -0
  2568. data/ext/dtrttp.c +69 -0
  2569. data/ext/dtzrqf.c +79 -0
  2570. data/ext/dtzrzf.c +97 -0
  2571. data/ext/dzsum1.c +59 -0
  2572. data/ext/extconf.rb +136 -0
  2573. data/ext/f2c_minimal.h +36 -0
  2574. data/ext/icmax1.c +59 -0
  2575. data/ext/ieeeck.c +55 -0
  2576. data/ext/ilaclc.c +61 -0
  2577. data/ext/ilaclr.c +61 -0
  2578. data/ext/iladiag.c +47 -0
  2579. data/ext/iladlc.c +61 -0
  2580. data/ext/iladlr.c +61 -0
  2581. data/ext/ilaenv.c +71 -0
  2582. data/ext/ilaprec.c +47 -0
  2583. data/ext/ilaslc.c +61 -0
  2584. data/ext/ilaslr.c +61 -0
  2585. data/ext/ilatrans.c +47 -0
  2586. data/ext/ilauplo.c +47 -0
  2587. data/ext/ilaver.c +49 -0
  2588. data/ext/ilazlc.c +61 -0
  2589. data/ext/ilazlr.c +61 -0
  2590. data/ext/iparmq.c +71 -0
  2591. data/ext/izmax1.c +59 -0
  2592. data/ext/lsamen.c +55 -0
  2593. data/ext/rb_lapack.c +3279 -0
  2594. data/ext/rb_lapack.h +18 -0
  2595. data/ext/sbbcsd.c +283 -0
  2596. data/ext/sbdsdc.c +153 -0
  2597. data/ext/sbdsqr.c +178 -0
  2598. data/ext/scsum1.c +59 -0
  2599. data/ext/sdisna.c +71 -0
  2600. data/ext/sgbbrd.c +150 -0
  2601. data/ext/sgbcon.c +94 -0
  2602. data/ext/sgbequ.c +94 -0
  2603. data/ext/sgbequb.c +92 -0
  2604. data/ext/sgbrfs.c +157 -0
  2605. data/ext/sgbrfsx.c +245 -0
  2606. data/ext/sgbsv.c +111 -0
  2607. data/ext/sgbsvx.c +282 -0
  2608. data/ext/sgbsvxx.c +285 -0
  2609. data/ext/sgbtf2.c +89 -0
  2610. data/ext/sgbtrf.c +89 -0
  2611. data/ext/sgbtrs.c +107 -0
  2612. data/ext/sgebak.c +97 -0
  2613. data/ext/sgebal.c +87 -0
  2614. data/ext/sgebd2.c +108 -0
  2615. data/ext/sgebrd.c +123 -0
  2616. data/ext/sgecon.c +74 -0
  2617. data/ext/sgeequ.c +84 -0
  2618. data/ext/sgeequb.c +84 -0
  2619. data/ext/sgees.c +144 -0
  2620. data/ext/sgeesx.c +166 -0
  2621. data/ext/sgeev.c +133 -0
  2622. data/ext/sgeevx.c +177 -0
  2623. data/ext/sgegs.c +167 -0
  2624. data/ext/sgegv.c +167 -0
  2625. data/ext/sgehd2.c +88 -0
  2626. data/ext/sgehrd.c +103 -0
  2627. data/ext/sgejsv.c +155 -0
  2628. data/ext/sgelq2.c +82 -0
  2629. data/ext/sgelqf.c +99 -0
  2630. data/ext/sgels.c +133 -0
  2631. data/ext/sgelsd.c +145 -0
  2632. data/ext/sgelss.c +144 -0
  2633. data/ext/sgelsx.c +132 -0
  2634. data/ext/sgelsy.c +159 -0
  2635. data/ext/sgeql2.c +84 -0
  2636. data/ext/sgeqlf.c +99 -0
  2637. data/ext/sgeqp3.c +122 -0
  2638. data/ext/sgeqpf.c +107 -0
  2639. data/ext/sgeqr2.c +84 -0
  2640. data/ext/sgeqr2p.c +84 -0
  2641. data/ext/sgeqrf.c +99 -0
  2642. data/ext/sgeqrfp.c +99 -0
  2643. data/ext/sgerfs.c +149 -0
  2644. data/ext/sgerfsx.c +215 -0
  2645. data/ext/sgerq2.c +82 -0
  2646. data/ext/sgerqf.c +99 -0
  2647. data/ext/sgesc2.c +104 -0
  2648. data/ext/sgesdd.c +128 -0
  2649. data/ext/sgesv.c +103 -0
  2650. data/ext/sgesvd.c +139 -0
  2651. data/ext/sgesvj.c +152 -0
  2652. data/ext/sgesvx.c +274 -0
  2653. data/ext/sgesvxx.c +277 -0
  2654. data/ext/sgetc2.c +85 -0
  2655. data/ext/sgetf2.c +81 -0
  2656. data/ext/sgetrf.c +81 -0
  2657. data/ext/sgetri.c +99 -0
  2658. data/ext/sgetrs.c +99 -0
  2659. data/ext/sggbak.c +109 -0
  2660. data/ext/sggbal.c +124 -0
  2661. data/ext/sgges.c +194 -0
  2662. data/ext/sggesx.c +227 -0
  2663. data/ext/sggev.c +167 -0
  2664. data/ext/sggevx.c +225 -0
  2665. data/ext/sggglm.c +152 -0
  2666. data/ext/sgghrd.c +163 -0
  2667. data/ext/sgglse.c +167 -0
  2668. data/ext/sggqrf.c +133 -0
  2669. data/ext/sggrqf.c +137 -0
  2670. data/ext/sggsvd.c +177 -0
  2671. data/ext/sggsvp.c +167 -0
  2672. data/ext/sgsvj0.c +178 -0
  2673. data/ext/sgsvj1.c +182 -0
  2674. data/ext/sgtcon.c +120 -0
  2675. data/ext/sgtrfs.c +205 -0
  2676. data/ext/sgtsv.c +138 -0
  2677. data/ext/sgtsvx.c +252 -0
  2678. data/ext/sgttrf.c +128 -0
  2679. data/ext/sgttrs.c +133 -0
  2680. data/ext/sgtts2.c +130 -0
  2681. data/ext/shgeqz.c +209 -0
  2682. data/ext/shsein.c +201 -0
  2683. data/ext/shseqr.c +149 -0
  2684. data/ext/sisnan.c +47 -0
  2685. data/ext/sla_gbamv.c +125 -0
  2686. data/ext/sla_gbrcond.c +138 -0
  2687. data/ext/sla_gbrfsx_extended.c +287 -0
  2688. data/ext/sla_gbrpvgrw.c +83 -0
  2689. data/ext/sla_geamv.c +115 -0
  2690. data/ext/sla_gercond.c +130 -0
  2691. data/ext/sla_gerfsx_extended.c +279 -0
  2692. data/ext/sla_lin_berr.c +80 -0
  2693. data/ext/sla_porcond.c +118 -0
  2694. data/ext/sla_porfsx_extended.c +267 -0
  2695. data/ext/sla_porpvgrw.c +91 -0
  2696. data/ext/sla_rpvgrw.c +75 -0
  2697. data/ext/sla_syamv.c +112 -0
  2698. data/ext/sla_syrcond.c +130 -0
  2699. data/ext/sla_syrfsx_extended.c +279 -0
  2700. data/ext/sla_syrpvgrw.c +103 -0
  2701. data/ext/sla_wwaddw.c +98 -0
  2702. data/ext/slabad.c +50 -0
  2703. data/ext/slabrd.c +128 -0
  2704. data/ext/slacn2.c +102 -0
  2705. data/ext/slacon.c +79 -0
  2706. data/ext/slacpy.c +73 -0
  2707. data/ext/sladiv.c +62 -0
  2708. data/ext/slae2.c +58 -0
  2709. data/ext/slaebz.c +214 -0
  2710. data/ext/slaed0.c +123 -0
  2711. data/ext/slaed1.c +129 -0
  2712. data/ext/slaed2.c +185 -0
  2713. data/ext/slaed3.c +157 -0
  2714. data/ext/slaed4.c +86 -0
  2715. data/ext/slaed5.c +83 -0
  2716. data/ext/slaed6.c +86 -0
  2717. data/ext/slaed7.c +244 -0
  2718. data/ext/slaed8.c +202 -0
  2719. data/ext/slaed9.c +107 -0
  2720. data/ext/slaeda.c +156 -0
  2721. data/ext/slaein.c +139 -0
  2722. data/ext/slaev2.c +64 -0
  2723. data/ext/slaexc.c +114 -0
  2724. data/ext/slag2.c +87 -0
  2725. data/ext/slag2d.c +72 -0
  2726. data/ext/slags2.c +86 -0
  2727. data/ext/slagtf.c +136 -0
  2728. data/ext/slagtm.c +128 -0
  2729. data/ext/slagts.c +135 -0
  2730. data/ext/slagv2.c +128 -0
  2731. data/ext/slahqr.c +139 -0
  2732. data/ext/slahr2.c +108 -0
  2733. data/ext/slahrd.c +110 -0
  2734. data/ext/slaic1.c +85 -0
  2735. data/ext/slaln2.c +116 -0
  2736. data/ext/slals0.c +197 -0
  2737. data/ext/slalsa.c +266 -0
  2738. data/ext/slalsd.c +138 -0
  2739. data/ext/slamrg.c +76 -0
  2740. data/ext/slaneg.c +79 -0
  2741. data/ext/slangb.c +74 -0
  2742. data/ext/slange.c +70 -0
  2743. data/ext/slangt.c +83 -0
  2744. data/ext/slanhs.c +66 -0
  2745. data/ext/slansb.c +74 -0
  2746. data/ext/slansf.c +74 -0
  2747. data/ext/slansp.c +72 -0
  2748. data/ext/slanst.c +71 -0
  2749. data/ext/slansy.c +70 -0
  2750. data/ext/slantb.c +78 -0
  2751. data/ext/slantp.c +76 -0
  2752. data/ext/slantr.c +78 -0
  2753. data/ext/slanv2.c +78 -0
  2754. data/ext/slapll.c +101 -0
  2755. data/ext/slapmr.c +93 -0
  2756. data/ext/slapmt.c +97 -0
  2757. data/ext/slapy2.c +51 -0
  2758. data/ext/slapy3.c +55 -0
  2759. data/ext/slaqgb.c +113 -0
  2760. data/ext/slaqge.c +105 -0
  2761. data/ext/slaqp2.c +154 -0
  2762. data/ext/slaqps.c +204 -0
  2763. data/ext/slaqr0.c +149 -0
  2764. data/ext/slaqr1.c +78 -0
  2765. data/ext/slaqr2.c +178 -0
  2766. data/ext/slaqr3.c +178 -0
  2767. data/ext/slaqr4.c +149 -0
  2768. data/ext/slaqr5.c +196 -0
  2769. data/ext/slaqsb.c +97 -0
  2770. data/ext/slaqsp.c +90 -0
  2771. data/ext/slaqsy.c +93 -0
  2772. data/ext/slaqtr.c +110 -0
  2773. data/ext/slar1v.c +169 -0
  2774. data/ext/slar2v.c +145 -0
  2775. data/ext/slarf.c +97 -0
  2776. data/ext/slarfb.c +119 -0
  2777. data/ext/slarfg.c +79 -0
  2778. data/ext/slarfgp.c +79 -0
  2779. data/ext/slarft.c +101 -0
  2780. data/ext/slarfx.c +89 -0
  2781. data/ext/slargv.c +110 -0
  2782. data/ext/slarnv.c +79 -0
  2783. data/ext/slarra.c +120 -0
  2784. data/ext/slarrb.c +174 -0
  2785. data/ext/slarrc.c +92 -0
  2786. data/ext/slarrd.c +186 -0
  2787. data/ext/slarre.c +217 -0
  2788. data/ext/slarrf.c +172 -0
  2789. data/ext/slarrj.c +143 -0
  2790. data/ext/slarrk.c +93 -0
  2791. data/ext/slarrr.c +78 -0
  2792. data/ext/slarrv.c +267 -0
  2793. data/ext/slarscl2.c +78 -0
  2794. data/ext/slartg.c +57 -0
  2795. data/ext/slartgp.c +57 -0
  2796. data/ext/slartgs.c +58 -0
  2797. data/ext/slartv.c +126 -0
  2798. data/ext/slaruv.c +75 -0
  2799. data/ext/slarz.c +101 -0
  2800. data/ext/slarzb.c +123 -0
  2801. data/ext/slarzt.c +101 -0
  2802. data/ext/slas2.c +58 -0
  2803. data/ext/slascl.c +93 -0
  2804. data/ext/slascl2.c +78 -0
  2805. data/ext/slasd0.c +116 -0
  2806. data/ext/slasd1.c +156 -0
  2807. data/ext/slasd2.c +224 -0
  2808. data/ext/slasd3.c +208 -0
  2809. data/ext/slasd4.c +89 -0
  2810. data/ext/slasd5.c +86 -0
  2811. data/ext/slasd6.c +232 -0
  2812. data/ext/slasd7.c +221 -0
  2813. data/ext/slasd8.c +169 -0
  2814. data/ext/slasda.c +217 -0
  2815. data/ext/slasdq.c +182 -0
  2816. data/ext/slasdt.c +78 -0
  2817. data/ext/slaset.c +82 -0
  2818. data/ext/slasq1.c +92 -0
  2819. data/ext/slasq2.c +70 -0
  2820. data/ext/slasq3.c +134 -0
  2821. data/ext/slasq4.c +103 -0
  2822. data/ext/slasq5.c +90 -0
  2823. data/ext/slasq6.c +82 -0
  2824. data/ext/slasr.c +106 -0
  2825. data/ext/slasrt.c +70 -0
  2826. data/ext/slassq.c +66 -0
  2827. data/ext/slasv2.c +70 -0
  2828. data/ext/slaswp.c +90 -0
  2829. data/ext/slasy2.c +122 -0
  2830. data/ext/slasyf.c +93 -0
  2831. data/ext/slatbs.c +126 -0
  2832. data/ext/slatdf.c +115 -0
  2833. data/ext/slatps.c +120 -0
  2834. data/ext/slatrd.c +101 -0
  2835. data/ext/slatrs.c +122 -0
  2836. data/ext/slatrz.c +83 -0
  2837. data/ext/slatzm.c +127 -0
  2838. data/ext/slauu2.c +73 -0
  2839. data/ext/slauum.c +73 -0
  2840. data/ext/sopgtr.c +87 -0
  2841. data/ext/sopmtr.c +112 -0
  2842. data/ext/sorbdb.c +228 -0
  2843. data/ext/sorcsd.c +193 -0
  2844. data/ext/sorg2l.c +88 -0
  2845. data/ext/sorg2r.c +88 -0
  2846. data/ext/sorgbr.c +111 -0
  2847. data/ext/sorghr.c +107 -0
  2848. data/ext/sorgl2.c +86 -0
  2849. data/ext/sorglq.c +103 -0
  2850. data/ext/sorgql.c +103 -0
  2851. data/ext/sorgqr.c +103 -0
  2852. data/ext/sorgr2.c +86 -0
  2853. data/ext/sorgrq.c +103 -0
  2854. data/ext/sorgtr.c +103 -0
  2855. data/ext/sorm2l.c +110 -0
  2856. data/ext/sorm2r.c +110 -0
  2857. data/ext/sormbr.c +135 -0
  2858. data/ext/sormhr.c +129 -0
  2859. data/ext/sorml2.c +106 -0
  2860. data/ext/sormlq.c +121 -0
  2861. data/ext/sormql.c +125 -0
  2862. data/ext/sormqr.c +125 -0
  2863. data/ext/sormr2.c +106 -0
  2864. data/ext/sormr3.c +110 -0
  2865. data/ext/sormrq.c +121 -0
  2866. data/ext/sormrz.c +125 -0
  2867. data/ext/sormtr.c +125 -0
  2868. data/ext/spbcon.c +78 -0
  2869. data/ext/spbequ.c +79 -0
  2870. data/ext/spbrfs.c +141 -0
  2871. data/ext/spbstf.c +77 -0
  2872. data/ext/spbsv.c +103 -0
  2873. data/ext/spbsvx.c +197 -0
  2874. data/ext/spbtf2.c +77 -0
  2875. data/ext/spbtrf.c +77 -0
  2876. data/ext/spbtrs.c +91 -0
  2877. data/ext/spftrf.c +78 -0
  2878. data/ext/spftri.c +78 -0
  2879. data/ext/spftrs.c +93 -0
  2880. data/ext/spocon.c +74 -0
  2881. data/ext/spoequ.c +71 -0
  2882. data/ext/spoequb.c +71 -0
  2883. data/ext/sporfs.c +137 -0
  2884. data/ext/sporfsx.c +202 -0
  2885. data/ext/sposv.c +99 -0
  2886. data/ext/sposvx.c +193 -0
  2887. data/ext/sposvxx.c +231 -0
  2888. data/ext/spotf2.c +73 -0
  2889. data/ext/spotrf.c +73 -0
  2890. data/ext/spotri.c +73 -0
  2891. data/ext/spotrs.c +87 -0
  2892. data/ext/sppcon.c +74 -0
  2893. data/ext/sppequ.c +75 -0
  2894. data/ext/spprfs.c +135 -0
  2895. data/ext/sppsv.c +100 -0
  2896. data/ext/sppsvx.c +187 -0
  2897. data/ext/spptrf.c +74 -0
  2898. data/ext/spptri.c +74 -0
  2899. data/ext/spptrs.c +89 -0
  2900. data/ext/spstf2.c +91 -0
  2901. data/ext/spstrf.c +91 -0
  2902. data/ext/sptcon.c +77 -0
  2903. data/ext/spteqr.c +122 -0
  2904. data/ext/sptrfs.c +150 -0
  2905. data/ext/sptsv.c +115 -0
  2906. data/ext/sptsvx.c +164 -0
  2907. data/ext/spttrf.c +89 -0
  2908. data/ext/spttrs.c +93 -0
  2909. data/ext/sptts2.c +90 -0
  2910. data/ext/srscl.c +75 -0
  2911. data/ext/ssbev.c +103 -0
  2912. data/ext/ssbevd.c +136 -0
  2913. data/ext/ssbevx.c +153 -0
  2914. data/ext/ssbgst.c +113 -0
  2915. data/ext/ssbgv.c +133 -0
  2916. data/ext/ssbgvd.c +166 -0
  2917. data/ext/ssbgvx.c +193 -0
  2918. data/ext/ssbtrd.c +126 -0
  2919. data/ext/ssfrk.c +105 -0
  2920. data/ext/sspcon.c +84 -0
  2921. data/ext/sspev.c +98 -0
  2922. data/ext/sspevd.c +131 -0
  2923. data/ext/sspevx.c +137 -0
  2924. data/ext/sspgst.c +90 -0
  2925. data/ext/sspgv.c +125 -0
  2926. data/ext/sspgvd.c +158 -0
  2927. data/ext/sspgvx.c +164 -0
  2928. data/ext/ssprfs.c +145 -0
  2929. data/ext/sspsv.c +106 -0
  2930. data/ext/sspsvx.c +159 -0
  2931. data/ext/ssptrd.c +96 -0
  2932. data/ext/ssptrf.c +80 -0
  2933. data/ext/ssptri.c +85 -0
  2934. data/ext/ssptrs.c +97 -0
  2935. data/ext/sstebz.c +131 -0
  2936. data/ext/sstedc.c +155 -0
  2937. data/ext/sstegr.c +184 -0
  2938. data/ext/sstein.c +130 -0
  2939. data/ext/sstemr.c +189 -0
  2940. data/ext/ssteqr.c +122 -0
  2941. data/ext/ssterf.c +89 -0
  2942. data/ext/sstev.c +107 -0
  2943. data/ext/sstevd.c +140 -0
  2944. data/ext/sstevr.c +184 -0
  2945. data/ext/sstevx.c +154 -0
  2946. data/ext/ssycon.c +86 -0
  2947. data/ext/ssyconv.c +80 -0
  2948. data/ext/ssyequb.c +78 -0
  2949. data/ext/ssyev.c +103 -0
  2950. data/ext/ssyevd.c +121 -0
  2951. data/ext/ssyevr.c +168 -0
  2952. data/ext/ssyevx.c +153 -0
  2953. data/ext/ssygs2.c +91 -0
  2954. data/ext/ssygst.c +91 -0
  2955. data/ext/ssygv.c +133 -0
  2956. data/ext/ssygvd.c +151 -0
  2957. data/ext/ssygvx.c +187 -0
  2958. data/ext/ssyrfs.c +149 -0
  2959. data/ext/ssyrfsx.c +214 -0
  2960. data/ext/ssysv.c +125 -0
  2961. data/ext/ssysvx.c +179 -0
  2962. data/ext/ssysvxx.c +254 -0
  2963. data/ext/ssyswapr.c +78 -0
  2964. data/ext/ssytd2.c +97 -0
  2965. data/ext/ssytf2.c +81 -0
  2966. data/ext/ssytrd.c +109 -0
  2967. data/ext/ssytrf.c +93 -0
  2968. data/ext/ssytri.c +88 -0
  2969. data/ext/ssytri2.c +123 -0
  2970. data/ext/ssytri2x.c +92 -0
  2971. data/ext/ssytrs.c +99 -0
  2972. data/ext/ssytrs2.c +102 -0
  2973. data/ext/stbcon.c +82 -0
  2974. data/ext/stbrfs.c +123 -0
  2975. data/ext/stbtrs.c +99 -0
  2976. data/ext/stfsm.c +108 -0
  2977. data/ext/stftri.c +82 -0
  2978. data/ext/stfttp.c +75 -0
  2979. data/ext/stfttr.c +76 -0
  2980. data/ext/stgevc.c +149 -0
  2981. data/ext/stgex2.c +180 -0
  2982. data/ext/stgexc.c +187 -0
  2983. data/ext/stgsen.c +248 -0
  2984. data/ext/stgsja.c +223 -0
  2985. data/ext/stgsna.c +160 -0
  2986. data/ext/stgsy2.c +178 -0
  2987. data/ext/stgsyl.c +186 -0
  2988. data/ext/stpcon.c +78 -0
  2989. data/ext/stprfs.c +119 -0
  2990. data/ext/stptri.c +78 -0
  2991. data/ext/stptrs.c +97 -0
  2992. data/ext/stpttf.c +75 -0
  2993. data/ext/stpttr.c +72 -0
  2994. data/ext/strcon.c +78 -0
  2995. data/ext/strevc.c +146 -0
  2996. data/ext/strexc.c +112 -0
  2997. data/ext/strrfs.c +119 -0
  2998. data/ext/strsen.c +165 -0
  2999. data/ext/strsna.c +133 -0
  3000. data/ext/strsyl.c +112 -0
  3001. data/ext/strti2.c +77 -0
  3002. data/ext/strtri.c +77 -0
  3003. data/ext/strtrs.c +95 -0
  3004. data/ext/strttf.c +73 -0
  3005. data/ext/strttp.c +69 -0
  3006. data/ext/stzrqf.c +79 -0
  3007. data/ext/stzrzf.c +97 -0
  3008. data/ext/xerbla.c +48 -0
  3009. data/ext/xerbla_array.c +49 -0
  3010. data/ext/zbbcsd.c +279 -0
  3011. data/ext/zbdsqr.c +178 -0
  3012. data/ext/zcgesv.c +114 -0
  3013. data/ext/zcposv.c +110 -0
  3014. data/ext/zdrscl.c +75 -0
  3015. data/ext/zgbbrd.c +153 -0
  3016. data/ext/zgbcon.c +94 -0
  3017. data/ext/zgbequ.c +94 -0
  3018. data/ext/zgbequb.c +92 -0
  3019. data/ext/zgbrfs.c +157 -0
  3020. data/ext/zgbrfsx.c +245 -0
  3021. data/ext/zgbsv.c +111 -0
  3022. data/ext/zgbsvx.c +282 -0
  3023. data/ext/zgbsvxx.c +285 -0
  3024. data/ext/zgbtf2.c +89 -0
  3025. data/ext/zgbtrf.c +89 -0
  3026. data/ext/zgbtrs.c +107 -0
  3027. data/ext/zgebak.c +97 -0
  3028. data/ext/zgebal.c +87 -0
  3029. data/ext/zgebd2.c +108 -0
  3030. data/ext/zgebrd.c +123 -0
  3031. data/ext/zgecon.c +74 -0
  3032. data/ext/zgeequ.c +84 -0
  3033. data/ext/zgeequb.c +84 -0
  3034. data/ext/zgees.c +138 -0
  3035. data/ext/zgeesx.c +148 -0
  3036. data/ext/zgeev.c +128 -0
  3037. data/ext/zgeevx.c +169 -0
  3038. data/ext/zgegs.c +162 -0
  3039. data/ext/zgegv.c +167 -0
  3040. data/ext/zgehd2.c +88 -0
  3041. data/ext/zgehrd.c +103 -0
  3042. data/ext/zgelq2.c +82 -0
  3043. data/ext/zgelqf.c +99 -0
  3044. data/ext/zgels.c +133 -0
  3045. data/ext/zgelsd.c +150 -0
  3046. data/ext/zgelss.c +147 -0
  3047. data/ext/zgelsx.c +135 -0
  3048. data/ext/zgelsy.c +162 -0
  3049. data/ext/zgeql2.c +84 -0
  3050. data/ext/zgeqlf.c +99 -0
  3051. data/ext/zgeqp3.c +125 -0
  3052. data/ext/zgeqpf.c +110 -0
  3053. data/ext/zgeqr2.c +84 -0
  3054. data/ext/zgeqr2p.c +84 -0
  3055. data/ext/zgeqrf.c +99 -0
  3056. data/ext/zgeqrfp.c +99 -0
  3057. data/ext/zgerfs.c +149 -0
  3058. data/ext/zgerfsx.c +215 -0
  3059. data/ext/zgerq2.c +82 -0
  3060. data/ext/zgerqf.c +99 -0
  3061. data/ext/zgesc2.c +104 -0
  3062. data/ext/zgesdd.c +131 -0
  3063. data/ext/zgesv.c +103 -0
  3064. data/ext/zgesvd.c +142 -0
  3065. data/ext/zgesvx.c +274 -0
  3066. data/ext/zgesvxx.c +277 -0
  3067. data/ext/zgetc2.c +85 -0
  3068. data/ext/zgetf2.c +81 -0
  3069. data/ext/zgetrf.c +81 -0
  3070. data/ext/zgetri.c +99 -0
  3071. data/ext/zgetrs.c +99 -0
  3072. data/ext/zggbak.c +109 -0
  3073. data/ext/zggbal.c +124 -0
  3074. data/ext/zgges.c +188 -0
  3075. data/ext/zggesx.c +226 -0
  3076. data/ext/zggev.c +167 -0
  3077. data/ext/zggevx.c +222 -0
  3078. data/ext/zggglm.c +152 -0
  3079. data/ext/zgghrd.c +163 -0
  3080. data/ext/zgglse.c +167 -0
  3081. data/ext/zggqrf.c +133 -0
  3082. data/ext/zggrqf.c +137 -0
  3083. data/ext/zggsvd.c +180 -0
  3084. data/ext/zggsvp.c +170 -0
  3085. data/ext/zgtcon.c +117 -0
  3086. data/ext/zgtrfs.c +205 -0
  3087. data/ext/zgtsv.c +138 -0
  3088. data/ext/zgtsvx.c +252 -0
  3089. data/ext/zgttrf.c +128 -0
  3090. data/ext/zgttrs.c +133 -0
  3091. data/ext/zgtts2.c +130 -0
  3092. data/ext/zhbev.c +106 -0
  3093. data/ext/zhbevd.c +154 -0
  3094. data/ext/zhbevx.c +156 -0
  3095. data/ext/zhbgst.c +116 -0
  3096. data/ext/zhbgv.c +136 -0
  3097. data/ext/zhbgvd.c +184 -0
  3098. data/ext/zhbgvx.c +185 -0
  3099. data/ext/zhbtrd.c +126 -0
  3100. data/ext/zhecon.c +83 -0
  3101. data/ext/zheequb.c +78 -0
  3102. data/ext/zheev.c +106 -0
  3103. data/ext/zheevd.c +139 -0
  3104. data/ext/zheevr.c +186 -0
  3105. data/ext/zheevx.c +156 -0
  3106. data/ext/zhegs2.c +91 -0
  3107. data/ext/zhegst.c +91 -0
  3108. data/ext/zhegv.c +136 -0
  3109. data/ext/zhegvd.c +169 -0
  3110. data/ext/zhegvx.c +186 -0
  3111. data/ext/zherfs.c +149 -0
  3112. data/ext/zherfsx.c +214 -0
  3113. data/ext/zhesv.c +119 -0
  3114. data/ext/zhesvx.c +179 -0
  3115. data/ext/zhesvxx.c +254 -0
  3116. data/ext/zhetd2.c +97 -0
  3117. data/ext/zhetf2.c +81 -0
  3118. data/ext/zhetrd.c +109 -0
  3119. data/ext/zhetrf.c +93 -0
  3120. data/ext/zhetri.c +88 -0
  3121. data/ext/zhetrs.c +99 -0
  3122. data/ext/zhetrs2.c +102 -0
  3123. data/ext/zhfrk.c +105 -0
  3124. data/ext/zhgeqz.c +204 -0
  3125. data/ext/zhpcon.c +81 -0
  3126. data/ext/zhpev.c +101 -0
  3127. data/ext/zhpevd.c +149 -0
  3128. data/ext/zhpevx.c +140 -0
  3129. data/ext/zhpgst.c +90 -0
  3130. data/ext/zhpgv.c +128 -0
  3131. data/ext/zhpgvd.c +166 -0
  3132. data/ext/zhpgvx.c +166 -0
  3133. data/ext/zhprfs.c +145 -0
  3134. data/ext/zhpsv.c +106 -0
  3135. data/ext/zhpsvx.c +159 -0
  3136. data/ext/zhptrd.c +96 -0
  3137. data/ext/zhptrf.c +80 -0
  3138. data/ext/zhptri.c +85 -0
  3139. data/ext/zhptrs.c +97 -0
  3140. data/ext/zhsein.c +181 -0
  3141. data/ext/zhseqr.c +141 -0
  3142. data/ext/zla_gbamv.c +123 -0
  3143. data/ext/zla_gbrcond_c.c +138 -0
  3144. data/ext/zla_gbrcond_x.c +134 -0
  3145. data/ext/zla_gbrfsx_extended.c +291 -0
  3146. data/ext/zla_gbrpvgrw.c +83 -0
  3147. data/ext/zla_geamv.c +115 -0
  3148. data/ext/zla_gercond_c.c +130 -0
  3149. data/ext/zla_gercond_x.c +126 -0
  3150. data/ext/zla_gerfsx_extended.c +277 -0
  3151. data/ext/zla_heamv.c +112 -0
  3152. data/ext/zla_hercond_c.c +130 -0
  3153. data/ext/zla_hercond_x.c +126 -0
  3154. data/ext/zla_herfsx_extended.c +279 -0
  3155. data/ext/zla_herpvgrw.c +103 -0
  3156. data/ext/zla_lin_berr.c +80 -0
  3157. data/ext/zla_porcond_c.c +118 -0
  3158. data/ext/zla_porcond_x.c +114 -0
  3159. data/ext/zla_porfsx_extended.c +267 -0
  3160. data/ext/zla_porpvgrw.c +91 -0
  3161. data/ext/zla_rpvgrw.c +75 -0
  3162. data/ext/zla_syamv.c +112 -0
  3163. data/ext/zla_syrcond_c.c +130 -0
  3164. data/ext/zla_syrcond_x.c +126 -0
  3165. data/ext/zla_syrfsx_extended.c +279 -0
  3166. data/ext/zla_syrpvgrw.c +103 -0
  3167. data/ext/zla_wwaddw.c +98 -0
  3168. data/ext/zlabrd.c +128 -0
  3169. data/ext/zlacgv.c +71 -0
  3170. data/ext/zlacn2.c +99 -0
  3171. data/ext/zlacon.c +76 -0
  3172. data/ext/zlacp2.c +73 -0
  3173. data/ext/zlacpy.c +73 -0
  3174. data/ext/zlacrm.c +86 -0
  3175. data/ext/zlacrt.c +104 -0
  3176. data/ext/zladiv.c +53 -0
  3177. data/ext/zlaed0.c +130 -0
  3178. data/ext/zlaed7.c +243 -0
  3179. data/ext/zlaed8.c +194 -0
  3180. data/ext/zlaein.c +109 -0
  3181. data/ext/zlaesy.c +70 -0
  3182. data/ext/zlaev2.c +67 -0
  3183. data/ext/zlag2c.c +72 -0
  3184. data/ext/zlags2.c +88 -0
  3185. data/ext/zlagtm.c +128 -0
  3186. data/ext/zlahef.c +93 -0
  3187. data/ext/zlahqr.c +131 -0
  3188. data/ext/zlahr2.c +108 -0
  3189. data/ext/zlahrd.c +108 -0
  3190. data/ext/zlaic1.c +86 -0
  3191. data/ext/zlals0.c +197 -0
  3192. data/ext/zlalsa.c +266 -0
  3193. data/ext/zlalsd.c +141 -0
  3194. data/ext/zlangb.c +72 -0
  3195. data/ext/zlange.c +70 -0
  3196. data/ext/zlangt.c +83 -0
  3197. data/ext/zlanhb.c +74 -0
  3198. data/ext/zlanhe.c +70 -0
  3199. data/ext/zlanhf.c +76 -0
  3200. data/ext/zlanhp.c +72 -0
  3201. data/ext/zlanhs.c +66 -0
  3202. data/ext/zlanht.c +71 -0
  3203. data/ext/zlansb.c +74 -0
  3204. data/ext/zlansp.c +72 -0
  3205. data/ext/zlansy.c +70 -0
  3206. data/ext/zlantb.c +78 -0
  3207. data/ext/zlantp.c +76 -0
  3208. data/ext/zlantr.c +78 -0
  3209. data/ext/zlapll.c +101 -0
  3210. data/ext/zlapmr.c +93 -0
  3211. data/ext/zlapmt.c +97 -0
  3212. data/ext/zlaqgb.c +113 -0
  3213. data/ext/zlaqge.c +105 -0
  3214. data/ext/zlaqhb.c +93 -0
  3215. data/ext/zlaqhe.c +93 -0
  3216. data/ext/zlaqhp.c +90 -0
  3217. data/ext/zlaqp2.c +154 -0
  3218. data/ext/zlaqps.c +204 -0
  3219. data/ext/zlaqr0.c +149 -0
  3220. data/ext/zlaqr1.c +72 -0
  3221. data/ext/zlaqr2.c +170 -0
  3222. data/ext/zlaqr3.c +170 -0
  3223. data/ext/zlaqr4.c +143 -0
  3224. data/ext/zlaqr5.c +175 -0
  3225. data/ext/zlaqsb.c +97 -0
  3226. data/ext/zlaqsp.c +90 -0
  3227. data/ext/zlaqsy.c +93 -0
  3228. data/ext/zlar1v.c +169 -0
  3229. data/ext/zlar2v.c +145 -0
  3230. data/ext/zlarcm.c +82 -0
  3231. data/ext/zlarf.c +98 -0
  3232. data/ext/zlarfb.c +119 -0
  3233. data/ext/zlarfg.c +80 -0
  3234. data/ext/zlarfgp.c +80 -0
  3235. data/ext/zlarft.c +101 -0
  3236. data/ext/zlarfx.c +90 -0
  3237. data/ext/zlargv.c +110 -0
  3238. data/ext/zlarnv.c +79 -0
  3239. data/ext/zlarrv.c +267 -0
  3240. data/ext/zlarscl2.c +78 -0
  3241. data/ext/zlartg.c +59 -0
  3242. data/ext/zlartv.c +126 -0
  3243. data/ext/zlarz.c +102 -0
  3244. data/ext/zlarzb.c +123 -0
  3245. data/ext/zlarzt.c +101 -0
  3246. data/ext/zlascl.c +93 -0
  3247. data/ext/zlascl2.c +78 -0
  3248. data/ext/zlaset.c +84 -0
  3249. data/ext/zlasr.c +106 -0
  3250. data/ext/zlassq.c +66 -0
  3251. data/ext/zlaswp.c +90 -0
  3252. data/ext/zlasyf.c +93 -0
  3253. data/ext/zlat2c.c +72 -0
  3254. data/ext/zlatbs.c +126 -0
  3255. data/ext/zlatdf.c +115 -0
  3256. data/ext/zlatps.c +120 -0
  3257. data/ext/zlatrd.c +101 -0
  3258. data/ext/zlatrs.c +122 -0
  3259. data/ext/zlatrz.c +83 -0
  3260. data/ext/zlatzm.c +128 -0
  3261. data/ext/zlauu2.c +73 -0
  3262. data/ext/zlauum.c +73 -0
  3263. data/ext/zpbcon.c +78 -0
  3264. data/ext/zpbequ.c +79 -0
  3265. data/ext/zpbrfs.c +141 -0
  3266. data/ext/zpbstf.c +77 -0
  3267. data/ext/zpbsv.c +103 -0
  3268. data/ext/zpbsvx.c +197 -0
  3269. data/ext/zpbtf2.c +77 -0
  3270. data/ext/zpbtrf.c +77 -0
  3271. data/ext/zpbtrs.c +91 -0
  3272. data/ext/zpftrf.c +78 -0
  3273. data/ext/zpftri.c +78 -0
  3274. data/ext/zpftrs.c +93 -0
  3275. data/ext/zpocon.c +74 -0
  3276. data/ext/zpoequ.c +71 -0
  3277. data/ext/zpoequb.c +71 -0
  3278. data/ext/zporfs.c +137 -0
  3279. data/ext/zporfsx.c +202 -0
  3280. data/ext/zposv.c +99 -0
  3281. data/ext/zposvx.c +193 -0
  3282. data/ext/zposvxx.c +231 -0
  3283. data/ext/zpotf2.c +73 -0
  3284. data/ext/zpotrf.c +73 -0
  3285. data/ext/zpotri.c +73 -0
  3286. data/ext/zpotrs.c +87 -0
  3287. data/ext/zppcon.c +74 -0
  3288. data/ext/zppequ.c +75 -0
  3289. data/ext/zpprfs.c +135 -0
  3290. data/ext/zppsv.c +100 -0
  3291. data/ext/zppsvx.c +187 -0
  3292. data/ext/zpptrf.c +74 -0
  3293. data/ext/zpptri.c +74 -0
  3294. data/ext/zpptrs.c +89 -0
  3295. data/ext/zpstf2.c +91 -0
  3296. data/ext/zpstrf.c +91 -0
  3297. data/ext/zptcon.c +77 -0
  3298. data/ext/zpteqr.c +122 -0
  3299. data/ext/zptrfs.c +157 -0
  3300. data/ext/zptsv.c +119 -0
  3301. data/ext/zptsvx.c +167 -0
  3302. data/ext/zpttrf.c +89 -0
  3303. data/ext/zpttrs.c +97 -0
  3304. data/ext/zptts2.c +94 -0
  3305. data/ext/zrot.c +103 -0
  3306. data/ext/zspcon.c +81 -0
  3307. data/ext/zspmv.c +113 -0
  3308. data/ext/zspr.c +92 -0
  3309. data/ext/zsprfs.c +145 -0
  3310. data/ext/zspsv.c +106 -0
  3311. data/ext/zspsvx.c +159 -0
  3312. data/ext/zsptrf.c +80 -0
  3313. data/ext/zsptri.c +85 -0
  3314. data/ext/zsptrs.c +97 -0
  3315. data/ext/zstedc.c +173 -0
  3316. data/ext/zstegr.c +184 -0
  3317. data/ext/zstein.c +130 -0
  3318. data/ext/zstemr.c +189 -0
  3319. data/ext/zsteqr.c +122 -0
  3320. data/ext/zsycon.c +83 -0
  3321. data/ext/zsyconv.c +80 -0
  3322. data/ext/zsyequb.c +78 -0
  3323. data/ext/zsymv.c +111 -0
  3324. data/ext/zsyr.c +91 -0
  3325. data/ext/zsyrfs.c +149 -0
  3326. data/ext/zsyrfsx.c +214 -0
  3327. data/ext/zsysv.c +125 -0
  3328. data/ext/zsysvx.c +179 -0
  3329. data/ext/zsysvxx.c +254 -0
  3330. data/ext/zsyswapr.c +78 -0
  3331. data/ext/zsytf2.c +81 -0
  3332. data/ext/zsytrf.c +93 -0
  3333. data/ext/zsytri.c +88 -0
  3334. data/ext/zsytri2.c +100 -0
  3335. data/ext/zsytri2x.c +92 -0
  3336. data/ext/zsytrs.c +99 -0
  3337. data/ext/zsytrs2.c +102 -0
  3338. data/ext/ztbcon.c +82 -0
  3339. data/ext/ztbrfs.c +123 -0
  3340. data/ext/ztbtrs.c +99 -0
  3341. data/ext/ztfsm.c +107 -0
  3342. data/ext/ztftri.c +82 -0
  3343. data/ext/ztfttp.c +75 -0
  3344. data/ext/ztfttr.c +76 -0
  3345. data/ext/ztgevc.c +152 -0
  3346. data/ext/ztgex2.c +167 -0
  3347. data/ext/ztgexc.c +168 -0
  3348. data/ext/ztgsen.c +240 -0
  3349. data/ext/ztgsja.c +223 -0
  3350. data/ext/ztgsna.c +160 -0
  3351. data/ext/ztgsy2.c +172 -0
  3352. data/ext/ztgsyl.c +186 -0
  3353. data/ext/ztpcon.c +78 -0
  3354. data/ext/ztprfs.c +119 -0
  3355. data/ext/ztptri.c +78 -0
  3356. data/ext/ztptrs.c +97 -0
  3357. data/ext/ztpttf.c +75 -0
  3358. data/ext/ztpttr.c +72 -0
  3359. data/ext/ztrcon.c +78 -0
  3360. data/ext/ztrevc.c +150 -0
  3361. data/ext/ztrexc.c +107 -0
  3362. data/ext/ztrrfs.c +119 -0
  3363. data/ext/ztrsen.c +150 -0
  3364. data/ext/ztrsna.c +133 -0
  3365. data/ext/ztrsyl.c +112 -0
  3366. data/ext/ztrti2.c +77 -0
  3367. data/ext/ztrtri.c +77 -0
  3368. data/ext/ztrtrs.c +95 -0
  3369. data/ext/ztrttf.c +73 -0
  3370. data/ext/ztrttp.c +69 -0
  3371. data/ext/ztzrqf.c +79 -0
  3372. data/ext/ztzrzf.c +97 -0
  3373. data/ext/zunbdb.c +228 -0
  3374. data/ext/zuncsd.c +200 -0
  3375. data/ext/zung2l.c +88 -0
  3376. data/ext/zung2r.c +88 -0
  3377. data/ext/zungbr.c +111 -0
  3378. data/ext/zunghr.c +107 -0
  3379. data/ext/zungl2.c +86 -0
  3380. data/ext/zunglq.c +103 -0
  3381. data/ext/zungql.c +103 -0
  3382. data/ext/zungqr.c +103 -0
  3383. data/ext/zungr2.c +86 -0
  3384. data/ext/zungrq.c +103 -0
  3385. data/ext/zungtr.c +103 -0
  3386. data/ext/zunm2l.c +110 -0
  3387. data/ext/zunm2r.c +110 -0
  3388. data/ext/zunmbr.c +135 -0
  3389. data/ext/zunmhr.c +129 -0
  3390. data/ext/zunml2.c +106 -0
  3391. data/ext/zunmlq.c +121 -0
  3392. data/ext/zunmql.c +125 -0
  3393. data/ext/zunmqr.c +125 -0
  3394. data/ext/zunmr2.c +106 -0
  3395. data/ext/zunmr3.c +110 -0
  3396. data/ext/zunmrq.c +121 -0
  3397. data/ext/zunmrz.c +125 -0
  3398. data/ext/zunmtr.c +125 -0
  3399. data/ext/zupgtr.c +87 -0
  3400. data/ext/zupmtr.c +112 -0
  3401. data/lib/numru/lapack.rb +51 -0
  3402. data/samples/dsyevr.rb +25 -0
  3403. data/tests/eig/ge/test_gesdd.rb +90 -0
  3404. data/tests/eig/ge/test_gesvd.rb +99 -0
  3405. data/tests/eig/gg/test_ggev.rb +124 -0
  3406. data/tests/eig/gg/test_ggsvd.rb +76 -0
  3407. data/tests/eig/sb/test_sbev.rb +39 -0
  3408. data/tests/lapack_test.rb +50 -0
  3409. data/tests/lin/gb/test_gbsv.rb +46 -0
  3410. data/tests/lin/gb/test_gbsvx.rb +56 -0
  3411. data/tests/lin/ge/test_gels.rb +63 -0
  3412. data/tests/lin/ge/test_gelsd.rb +54 -0
  3413. data/tests/lin/ge/test_gelss.rb +73 -0
  3414. data/tests/lin/ge/test_gelsy.rb +73 -0
  3415. data/tests/lin/ge/test_gesv.rb +43 -0
  3416. data/tests/lin/ge/test_gesvx.rb +52 -0
  3417. data/tests/lin/gt/test_gtsv.rb +39 -0
  3418. data/tests/test_all.rb +7 -0
  3419. metadata +3513 -0
data/doc/bd.html ADDED
@@ -0,0 +1,16 @@
1
+ <HTML>
2
+ <HEAD>
3
+ <TITLE>bidiagonal routines</TITLE>
4
+ </HEAD>
5
+ <BODY>
6
+ <H1>bidiagonal routines</H1>
7
+ <UL>
8
+ <LI><A HREF="sbd.html">S: REAL</A></LI>
9
+ <LI><A HREF="dbd.html">D: DOUBLE PRECISION</A></LI>
10
+ <LI><A HREF="cbd.html">C: COMPLEX</A></LI>
11
+ <LI><A HREF="zbd.html">Z: COMPLEX*16 or DOUBLE COMPLEX</A></LI>
12
+ </UL>
13
+ <HR />
14
+ <A HREF="index.html">back to index.html</A>
15
+ </BODY>
16
+ </HTML>
data/doc/c.html ADDED
@@ -0,0 +1,36 @@
1
+ <HTML>
2
+ <HEAD>
3
+ <TITLE>COMPLEX routines</TITLE>
4
+ </HEAD>
5
+ <BODY>
6
+ <H1>COMPLEX routines</H1>
7
+ <UL>
8
+ <LI><A HREF="cbd.html">BD: bidiagonal</A></LI>
9
+ <LI><A HREF="cgb.html">GB: general band</A></LI>
10
+ <LI><A HREF="cge.html">GE: general (i.e., unsymmetric, in some cases rectangular)</A></LI>
11
+ <LI><A HREF="cgg.html">GG: general matrices, generalized problem (i.e., a pair of general matrices)</A></LI>
12
+ <LI><A HREF="cgt.html">GT: general tridiagonal</A></LI>
13
+ <LI><A HREF="chb.html">HB: (complex) Hermitian band</A></LI>
14
+ <LI><A HREF="che.html">HE: (complex) Hermitian</A></LI>
15
+ <LI><A HREF="chg.html">HG: upper Hessenberg matrix, generalized problem (i.e a Hessenberg and a triangular matrix)</A></LI>
16
+ <LI><A HREF="chp.html">HP: (complex) Hermitian, packed storage</A></LI>
17
+ <LI><A HREF="chs.html">HS: upper Hessenberg</A></LI>
18
+ <LI><A HREF="cpb.html">PB: symmetric or Hermitian positive definite band</A></LI>
19
+ <LI><A HREF="cpo.html">PO: symmetric or Hermitian positive definite</A></LI>
20
+ <LI><A HREF="cpp.html">PP: symmetric or Hermitian positive definite, packed storage</A></LI>
21
+ <LI><A HREF="cpt.html">PT: symmetric or Hermitian positive definite tridiagonal</A></LI>
22
+ <LI><A HREF="csp.html">SP: symmetric, packed storage</A></LI>
23
+ <LI><A HREF="cst.html">ST: (real) symmetric tridiagonal</A></LI>
24
+ <LI><A HREF="csy.html">SY: symmetric</A></LI>
25
+ <LI><A HREF="ctb.html">TB: triangular band</A></LI>
26
+ <LI><A HREF="ctg.html">TG: triangular matrices, generalized problem (i.e., a pair of triangular matrices)</A></LI>
27
+ <LI><A HREF="ctp.html">TP: triangular, packed storage</A></LI>
28
+ <LI><A HREF="ctr.html">TR: triangular (or in some cases quasi-triangular)</A></LI>
29
+ <LI><A HREF="ctz.html">TZ: trapezoidal</A></LI>
30
+ <LI><A HREF="cun.html">UN: (complex) unitary</A></LI>
31
+ <LI><A HREF="cup.html">UP: (complex) unitary, packed storageBDbidiagonal</A></LI>
32
+ </UL>
33
+ <HR />
34
+ <A HREF="index.html">back to index.html</A>
35
+ </BODY>
36
+ </HTML>
data/doc/cbd.html ADDED
@@ -0,0 +1,161 @@
1
+ <HTML>
2
+ <HEAD>
3
+ <TITLE>COMPLEX routines for bidiagonal matrix</TITLE>
4
+ </HEAD>
5
+ <BODY>
6
+ <A NAME="top"></A>
7
+ <H1>COMPLEX routines for bidiagonal matrix</H1>
8
+ <UL>
9
+ <LI><A HREF="#cbdsqr">cbdsqr</A></LI>
10
+ </UL>
11
+
12
+ <A NAME="cbdsqr"></A>
13
+ <H2>cbdsqr</H2>
14
+ <PRE>
15
+ USAGE:
16
+ info, d, e, vt, u, c = NumRu::Lapack.cbdsqr( uplo, nru, d, e, vt, u, c, [:usage => usage, :help => help])
17
+
18
+
19
+ FORTRAN MANUAL
20
+ SUBROUTINE CBDSQR( UPLO, N, NCVT, NRU, NCC, D, E, VT, LDVT, U, LDU, C, LDC, RWORK, INFO )
21
+
22
+ * Purpose
23
+ * =======
24
+ *
25
+ * CBDSQR computes the singular values and, optionally, the right and/or
26
+ * left singular vectors from the singular value decomposition (SVD) of
27
+ * a real N-by-N (upper or lower) bidiagonal matrix B using the implicit
28
+ * zero-shift QR algorithm. The SVD of B has the form
29
+ *
30
+ * B = Q * S * P**H
31
+ *
32
+ * where S is the diagonal matrix of singular values, Q is an orthogonal
33
+ * matrix of left singular vectors, and P is an orthogonal matrix of
34
+ * right singular vectors. If left singular vectors are requested, this
35
+ * subroutine actually returns U*Q instead of Q, and, if right singular
36
+ * vectors are requested, this subroutine returns P**H*VT instead of
37
+ * P**H, for given complex input matrices U and VT. When U and VT are
38
+ * the unitary matrices that reduce a general matrix A to bidiagonal
39
+ * form: A = U*B*VT, as computed by CGEBRD, then
40
+ *
41
+ * A = (U*Q) * S * (P**H*VT)
42
+ *
43
+ * is the SVD of A. Optionally, the subroutine may also compute Q**H*C
44
+ * for a given complex input matrix C.
45
+ *
46
+ * See "Computing Small Singular Values of Bidiagonal Matrices With
47
+ * Guaranteed High Relative Accuracy," by J. Demmel and W. Kahan,
48
+ * LAPACK Working Note #3 (or SIAM J. Sci. Statist. Comput. vol. 11,
49
+ * no. 5, pp. 873-912, Sept 1990) and
50
+ * "Accurate singular values and differential qd algorithms," by
51
+ * B. Parlett and V. Fernando, Technical Report CPAM-554, Mathematics
52
+ * Department, University of California at Berkeley, July 1992
53
+ * for a detailed description of the algorithm.
54
+ *
55
+
56
+ * Arguments
57
+ * =========
58
+ *
59
+ * UPLO (input) CHARACTER*1
60
+ * = 'U': B is upper bidiagonal;
61
+ * = 'L': B is lower bidiagonal.
62
+ *
63
+ * N (input) INTEGER
64
+ * The order of the matrix B. N >= 0.
65
+ *
66
+ * NCVT (input) INTEGER
67
+ * The number of columns of the matrix VT. NCVT >= 0.
68
+ *
69
+ * NRU (input) INTEGER
70
+ * The number of rows of the matrix U. NRU >= 0.
71
+ *
72
+ * NCC (input) INTEGER
73
+ * The number of columns of the matrix C. NCC >= 0.
74
+ *
75
+ * D (input/output) REAL array, dimension (N)
76
+ * On entry, the n diagonal elements of the bidiagonal matrix B.
77
+ * On exit, if INFO=0, the singular values of B in decreasing
78
+ * order.
79
+ *
80
+ * E (input/output) REAL array, dimension (N-1)
81
+ * On entry, the N-1 offdiagonal elements of the bidiagonal
82
+ * matrix B.
83
+ * On exit, if INFO = 0, E is destroyed; if INFO > 0, D and E
84
+ * will contain the diagonal and superdiagonal elements of a
85
+ * bidiagonal matrix orthogonally equivalent to the one given
86
+ * as input.
87
+ *
88
+ * VT (input/output) COMPLEX array, dimension (LDVT, NCVT)
89
+ * On entry, an N-by-NCVT matrix VT.
90
+ * On exit, VT is overwritten by P**H * VT.
91
+ * Not referenced if NCVT = 0.
92
+ *
93
+ * LDVT (input) INTEGER
94
+ * The leading dimension of the array VT.
95
+ * LDVT >= max(1,N) if NCVT > 0; LDVT >= 1 if NCVT = 0.
96
+ *
97
+ * U (input/output) COMPLEX array, dimension (LDU, N)
98
+ * On entry, an NRU-by-N matrix U.
99
+ * On exit, U is overwritten by U * Q.
100
+ * Not referenced if NRU = 0.
101
+ *
102
+ * LDU (input) INTEGER
103
+ * The leading dimension of the array U. LDU >= max(1,NRU).
104
+ *
105
+ * C (input/output) COMPLEX array, dimension (LDC, NCC)
106
+ * On entry, an N-by-NCC matrix C.
107
+ * On exit, C is overwritten by Q**H * C.
108
+ * Not referenced if NCC = 0.
109
+ *
110
+ * LDC (input) INTEGER
111
+ * The leading dimension of the array C.
112
+ * LDC >= max(1,N) if NCC > 0; LDC >=1 if NCC = 0.
113
+ *
114
+ * RWORK (workspace) REAL array, dimension (2*N)
115
+ * if NCVT = NRU = NCC = 0, (max(1, 4*N-4)) otherwise
116
+ *
117
+ * INFO (output) INTEGER
118
+ * = 0: successful exit
119
+ * < 0: If INFO = -i, the i-th argument had an illegal value
120
+ * > 0: the algorithm did not converge; D and E contain the
121
+ * elements of a bidiagonal matrix which is orthogonally
122
+ * similar to the input matrix B; if INFO = i, i
123
+ * elements of E have not converged to zero.
124
+ *
125
+ * Internal Parameters
126
+ * ===================
127
+ *
128
+ * TOLMUL REAL, default = max(10,min(100,EPS**(-1/8)))
129
+ * TOLMUL controls the convergence criterion of the QR loop.
130
+ * If it is positive, TOLMUL*EPS is the desired relative
131
+ * precision in the computed singular values.
132
+ * If it is negative, abs(TOLMUL*EPS*sigma_max) is the
133
+ * desired absolute accuracy in the computed singular
134
+ * values (corresponds to relative accuracy
135
+ * abs(TOLMUL*EPS) in the largest singular value.
136
+ * abs(TOLMUL) should be between 1 and 1/EPS, and preferably
137
+ * between 10 (for fast convergence) and .1/EPS
138
+ * (for there to be some accuracy in the results).
139
+ * Default is to lose at either one eighth or 2 of the
140
+ * available decimal digits in each computed singular value
141
+ * (whichever is smaller).
142
+ *
143
+ * MAXITR INTEGER, default = 6
144
+ * MAXITR controls the maximum number of passes of the
145
+ * algorithm through its inner loop. The algorithms stops
146
+ * (and so fails to converge) if the number of passes
147
+ * through the inner loop exceeds MAXITR*N**2.
148
+ *
149
+
150
+ * =====================================================================
151
+ *
152
+
153
+
154
+ </PRE>
155
+ <A HREF="#top">go to the page top</A>
156
+
157
+ <HR />
158
+ <A HREF="c.html">back to matrix types</A><BR>
159
+ <A HREF="c.html">back to data types</A>
160
+ </BODY>
161
+ </HTML>
data/doc/cgb.html ADDED
@@ -0,0 +1,1865 @@
1
+ <HTML>
2
+ <HEAD>
3
+ <TITLE>COMPLEX routines for general band matrix</TITLE>
4
+ </HEAD>
5
+ <BODY>
6
+ <A NAME="top"></A>
7
+ <H1>COMPLEX routines for general band matrix</H1>
8
+ <UL>
9
+ <LI><A HREF="#cgbbrd">cgbbrd</A></LI>
10
+ <LI><A HREF="#cgbcon">cgbcon</A></LI>
11
+ <LI><A HREF="#cgbequ">cgbequ</A></LI>
12
+ <LI><A HREF="#cgbequb">cgbequb</A></LI>
13
+ <LI><A HREF="#cgbrfs">cgbrfs</A></LI>
14
+ <LI><A HREF="#cgbrfsx">cgbrfsx</A></LI>
15
+ <LI><A HREF="#cgbsv">cgbsv</A></LI>
16
+ <LI><A HREF="#cgbsvx">cgbsvx</A></LI>
17
+ <LI><A HREF="#cgbsvxx">cgbsvxx</A></LI>
18
+ <LI><A HREF="#cgbtf2">cgbtf2</A></LI>
19
+ <LI><A HREF="#cgbtrf">cgbtrf</A></LI>
20
+ <LI><A HREF="#cgbtrs">cgbtrs</A></LI>
21
+ </UL>
22
+
23
+ <A NAME="cgbbrd"></A>
24
+ <H2>cgbbrd</H2>
25
+ <PRE>
26
+ USAGE:
27
+ d, e, q, pt, info, ab, c = NumRu::Lapack.cgbbrd( vect, kl, ku, ab, c, [:usage => usage, :help => help])
28
+
29
+
30
+ FORTRAN MANUAL
31
+ SUBROUTINE CGBBRD( VECT, M, N, NCC, KL, KU, AB, LDAB, D, E, Q, LDQ, PT, LDPT, C, LDC, WORK, RWORK, INFO )
32
+
33
+ * Purpose
34
+ * =======
35
+ *
36
+ * CGBBRD reduces a complex general m-by-n band matrix A to real upper
37
+ * bidiagonal form B by a unitary transformation: Q' * A * P = B.
38
+ *
39
+ * The routine computes B, and optionally forms Q or P', or computes
40
+ * Q'*C for a given matrix C.
41
+ *
42
+
43
+ * Arguments
44
+ * =========
45
+ *
46
+ * VECT (input) CHARACTER*1
47
+ * Specifies whether or not the matrices Q and P' are to be
48
+ * formed.
49
+ * = 'N': do not form Q or P';
50
+ * = 'Q': form Q only;
51
+ * = 'P': form P' only;
52
+ * = 'B': form both.
53
+ *
54
+ * M (input) INTEGER
55
+ * The number of rows of the matrix A. M >= 0.
56
+ *
57
+ * N (input) INTEGER
58
+ * The number of columns of the matrix A. N >= 0.
59
+ *
60
+ * NCC (input) INTEGER
61
+ * The number of columns of the matrix C. NCC >= 0.
62
+ *
63
+ * KL (input) INTEGER
64
+ * The number of subdiagonals of the matrix A. KL >= 0.
65
+ *
66
+ * KU (input) INTEGER
67
+ * The number of superdiagonals of the matrix A. KU >= 0.
68
+ *
69
+ * AB (input/output) COMPLEX array, dimension (LDAB,N)
70
+ * On entry, the m-by-n band matrix A, stored in rows 1 to
71
+ * KL+KU+1. The j-th column of A is stored in the j-th column of
72
+ * the array AB as follows:
73
+ * AB(ku+1+i-j,j) = A(i,j) for max(1,j-ku)<=i<=min(m,j+kl).
74
+ * On exit, A is overwritten by values generated during the
75
+ * reduction.
76
+ *
77
+ * LDAB (input) INTEGER
78
+ * The leading dimension of the array A. LDAB >= KL+KU+1.
79
+ *
80
+ * D (output) REAL array, dimension (min(M,N))
81
+ * The diagonal elements of the bidiagonal matrix B.
82
+ *
83
+ * E (output) REAL array, dimension (min(M,N)-1)
84
+ * The superdiagonal elements of the bidiagonal matrix B.
85
+ *
86
+ * Q (output) COMPLEX array, dimension (LDQ,M)
87
+ * If VECT = 'Q' or 'B', the m-by-m unitary matrix Q.
88
+ * If VECT = 'N' or 'P', the array Q is not referenced.
89
+ *
90
+ * LDQ (input) INTEGER
91
+ * The leading dimension of the array Q.
92
+ * LDQ >= max(1,M) if VECT = 'Q' or 'B'; LDQ >= 1 otherwise.
93
+ *
94
+ * PT (output) COMPLEX array, dimension (LDPT,N)
95
+ * If VECT = 'P' or 'B', the n-by-n unitary matrix P'.
96
+ * If VECT = 'N' or 'Q', the array PT is not referenced.
97
+ *
98
+ * LDPT (input) INTEGER
99
+ * The leading dimension of the array PT.
100
+ * LDPT >= max(1,N) if VECT = 'P' or 'B'; LDPT >= 1 otherwise.
101
+ *
102
+ * C (input/output) COMPLEX array, dimension (LDC,NCC)
103
+ * On entry, an m-by-ncc matrix C.
104
+ * On exit, C is overwritten by Q'*C.
105
+ * C is not referenced if NCC = 0.
106
+ *
107
+ * LDC (input) INTEGER
108
+ * The leading dimension of the array C.
109
+ * LDC >= max(1,M) if NCC > 0; LDC >= 1 if NCC = 0.
110
+ *
111
+ * WORK (workspace) COMPLEX array, dimension (max(M,N))
112
+ *
113
+ * RWORK (workspace) REAL array, dimension (max(M,N))
114
+ *
115
+ * INFO (output) INTEGER
116
+ * = 0: successful exit.
117
+ * < 0: if INFO = -i, the i-th argument had an illegal value.
118
+ *
119
+
120
+ * =====================================================================
121
+ *
122
+
123
+
124
+ </PRE>
125
+ <A HREF="#top">go to the page top</A>
126
+
127
+ <A NAME="cgbcon"></A>
128
+ <H2>cgbcon</H2>
129
+ <PRE>
130
+ USAGE:
131
+ rcond, info = NumRu::Lapack.cgbcon( norm, kl, ku, ab, ipiv, anorm, [:usage => usage, :help => help])
132
+
133
+
134
+ FORTRAN MANUAL
135
+ SUBROUTINE CGBCON( NORM, N, KL, KU, AB, LDAB, IPIV, ANORM, RCOND, WORK, RWORK, INFO )
136
+
137
+ * Purpose
138
+ * =======
139
+ *
140
+ * CGBCON estimates the reciprocal of the condition number of a complex
141
+ * general band matrix A, in either the 1-norm or the infinity-norm,
142
+ * using the LU factorization computed by CGBTRF.
143
+ *
144
+ * An estimate is obtained for norm(inv(A)), and the reciprocal of the
145
+ * condition number is computed as
146
+ * RCOND = 1 / ( norm(A) * norm(inv(A)) ).
147
+ *
148
+
149
+ * Arguments
150
+ * =========
151
+ *
152
+ * NORM (input) CHARACTER*1
153
+ * Specifies whether the 1-norm condition number or the
154
+ * infinity-norm condition number is required:
155
+ * = '1' or 'O': 1-norm;
156
+ * = 'I': Infinity-norm.
157
+ *
158
+ * N (input) INTEGER
159
+ * The order of the matrix A. N >= 0.
160
+ *
161
+ * KL (input) INTEGER
162
+ * The number of subdiagonals within the band of A. KL >= 0.
163
+ *
164
+ * KU (input) INTEGER
165
+ * The number of superdiagonals within the band of A. KU >= 0.
166
+ *
167
+ * AB (input) COMPLEX array, dimension (LDAB,N)
168
+ * Details of the LU factorization of the band matrix A, as
169
+ * computed by CGBTRF. U is stored as an upper triangular band
170
+ * matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and
171
+ * the multipliers used during the factorization are stored in
172
+ * rows KL+KU+2 to 2*KL+KU+1.
173
+ *
174
+ * LDAB (input) INTEGER
175
+ * The leading dimension of the array AB. LDAB >= 2*KL+KU+1.
176
+ *
177
+ * IPIV (input) INTEGER array, dimension (N)
178
+ * The pivot indices; for 1 <= i <= N, row i of the matrix was
179
+ * interchanged with row IPIV(i).
180
+ *
181
+ * ANORM (input) REAL
182
+ * If NORM = '1' or 'O', the 1-norm of the original matrix A.
183
+ * If NORM = 'I', the infinity-norm of the original matrix A.
184
+ *
185
+ * RCOND (output) REAL
186
+ * The reciprocal of the condition number of the matrix A,
187
+ * computed as RCOND = 1/(norm(A) * norm(inv(A))).
188
+ *
189
+ * WORK (workspace) COMPLEX array, dimension (2*N)
190
+ *
191
+ * RWORK (workspace) REAL array, dimension (N)
192
+ *
193
+ * INFO (output) INTEGER
194
+ * = 0: successful exit
195
+ * < 0: if INFO = -i, the i-th argument had an illegal value
196
+ *
197
+
198
+ * =====================================================================
199
+ *
200
+
201
+
202
+ </PRE>
203
+ <A HREF="#top">go to the page top</A>
204
+
205
+ <A NAME="cgbequ"></A>
206
+ <H2>cgbequ</H2>
207
+ <PRE>
208
+ USAGE:
209
+ r, c, rowcnd, colcnd, amax, info = NumRu::Lapack.cgbequ( m, kl, ku, ab, [:usage => usage, :help => help])
210
+
211
+
212
+ FORTRAN MANUAL
213
+ SUBROUTINE CGBEQU( M, N, KL, KU, AB, LDAB, R, C, ROWCND, COLCND, AMAX, INFO )
214
+
215
+ * Purpose
216
+ * =======
217
+ *
218
+ * CGBEQU computes row and column scalings intended to equilibrate an
219
+ * M-by-N band matrix A and reduce its condition number. R returns the
220
+ * row scale factors and C the column scale factors, chosen to try to
221
+ * make the largest element in each row and column of the matrix B with
222
+ * elements B(i,j)=R(i)*A(i,j)*C(j) have absolute value 1.
223
+ *
224
+ * R(i) and C(j) are restricted to be between SMLNUM = smallest safe
225
+ * number and BIGNUM = largest safe number. Use of these scaling
226
+ * factors is not guaranteed to reduce the condition number of A but
227
+ * works well in practice.
228
+ *
229
+
230
+ * Arguments
231
+ * =========
232
+ *
233
+ * M (input) INTEGER
234
+ * The number of rows of the matrix A. M >= 0.
235
+ *
236
+ * N (input) INTEGER
237
+ * The number of columns of the matrix A. N >= 0.
238
+ *
239
+ * KL (input) INTEGER
240
+ * The number of subdiagonals within the band of A. KL >= 0.
241
+ *
242
+ * KU (input) INTEGER
243
+ * The number of superdiagonals within the band of A. KU >= 0.
244
+ *
245
+ * AB (input) COMPLEX array, dimension (LDAB,N)
246
+ * The band matrix A, stored in rows 1 to KL+KU+1. The j-th
247
+ * column of A is stored in the j-th column of the array AB as
248
+ * follows:
249
+ * AB(ku+1+i-j,j) = A(i,j) for max(1,j-ku)<=i<=min(m,j+kl).
250
+ *
251
+ * LDAB (input) INTEGER
252
+ * The leading dimension of the array AB. LDAB >= KL+KU+1.
253
+ *
254
+ * R (output) REAL array, dimension (M)
255
+ * If INFO = 0, or INFO > M, R contains the row scale factors
256
+ * for A.
257
+ *
258
+ * C (output) REAL array, dimension (N)
259
+ * If INFO = 0, C contains the column scale factors for A.
260
+ *
261
+ * ROWCND (output) REAL
262
+ * If INFO = 0 or INFO > M, ROWCND contains the ratio of the
263
+ * smallest R(i) to the largest R(i). If ROWCND >= 0.1 and
264
+ * AMAX is neither too large nor too small, it is not worth
265
+ * scaling by R.
266
+ *
267
+ * COLCND (output) REAL
268
+ * If INFO = 0, COLCND contains the ratio of the smallest
269
+ * C(i) to the largest C(i). If COLCND >= 0.1, it is not
270
+ * worth scaling by C.
271
+ *
272
+ * AMAX (output) REAL
273
+ * Absolute value of largest matrix element. If AMAX is very
274
+ * close to overflow or very close to underflow, the matrix
275
+ * should be scaled.
276
+ *
277
+ * INFO (output) INTEGER
278
+ * = 0: successful exit
279
+ * < 0: if INFO = -i, the i-th argument had an illegal value
280
+ * > 0: if INFO = i, and i is
281
+ * <= M: the i-th row of A is exactly zero
282
+ * > M: the (i-M)-th column of A is exactly zero
283
+ *
284
+
285
+ * =====================================================================
286
+ *
287
+
288
+
289
+ </PRE>
290
+ <A HREF="#top">go to the page top</A>
291
+
292
+ <A NAME="cgbequb"></A>
293
+ <H2>cgbequb</H2>
294
+ <PRE>
295
+ USAGE:
296
+ r, c, rowcnd, colcnd, amax, info = NumRu::Lapack.cgbequb( kl, ku, ab, [:usage => usage, :help => help])
297
+
298
+
299
+ FORTRAN MANUAL
300
+ SUBROUTINE CGBEQUB( M, N, KL, KU, AB, LDAB, R, C, ROWCND, COLCND, AMAX, INFO )
301
+
302
+ * Purpose
303
+ * =======
304
+ *
305
+ * CGBEQUB computes row and column scalings intended to equilibrate an
306
+ * M-by-N matrix A and reduce its condition number. R returns the row
307
+ * scale factors and C the column scale factors, chosen to try to make
308
+ * the largest element in each row and column of the matrix B with
309
+ * elements B(i,j)=R(i)*A(i,j)*C(j) have an absolute value of at most
310
+ * the radix.
311
+ *
312
+ * R(i) and C(j) are restricted to be a power of the radix between
313
+ * SMLNUM = smallest safe number and BIGNUM = largest safe number. Use
314
+ * of these scaling factors is not guaranteed to reduce the condition
315
+ * number of A but works well in practice.
316
+ *
317
+ * This routine differs from CGEEQU by restricting the scaling factors
318
+ * to a power of the radix. Baring over- and underflow, scaling by
319
+ * these factors introduces no additional rounding errors. However, the
320
+ * scaled entries' magnitured are no longer approximately 1 but lie
321
+ * between sqrt(radix) and 1/sqrt(radix).
322
+ *
323
+
324
+ * Arguments
325
+ * =========
326
+ *
327
+ * M (input) INTEGER
328
+ * The number of rows of the matrix A. M >= 0.
329
+ *
330
+ * N (input) INTEGER
331
+ * The number of columns of the matrix A. N >= 0.
332
+ *
333
+ * KL (input) INTEGER
334
+ * The number of subdiagonals within the band of A. KL >= 0.
335
+ *
336
+ * KU (input) INTEGER
337
+ * The number of superdiagonals within the band of A. KU >= 0.
338
+ *
339
+ * AB (input) DOUBLE PRECISION array, dimension (LDAB,N)
340
+ * On entry, the matrix A in band storage, in rows 1 to KL+KU+1.
341
+ * The j-th column of A is stored in the j-th column of the
342
+ * array AB as follows:
343
+ * AB(KU+1+i-j,j) = A(i,j) for max(1,j-KU)<=i<=min(N,j+kl)
344
+ *
345
+ * LDAB (input) INTEGER
346
+ * The leading dimension of the array A. LDAB >= max(1,M).
347
+ *
348
+ * R (output) REAL array, dimension (M)
349
+ * If INFO = 0 or INFO > M, R contains the row scale factors
350
+ * for A.
351
+ *
352
+ * C (output) REAL array, dimension (N)
353
+ * If INFO = 0, C contains the column scale factors for A.
354
+ *
355
+ * ROWCND (output) REAL
356
+ * If INFO = 0 or INFO > M, ROWCND contains the ratio of the
357
+ * smallest R(i) to the largest R(i). If ROWCND >= 0.1 and
358
+ * AMAX is neither too large nor too small, it is not worth
359
+ * scaling by R.
360
+ *
361
+ * COLCND (output) REAL
362
+ * If INFO = 0, COLCND contains the ratio of the smallest
363
+ * C(i) to the largest C(i). If COLCND >= 0.1, it is not
364
+ * worth scaling by C.
365
+ *
366
+ * AMAX (output) REAL
367
+ * Absolute value of largest matrix element. If AMAX is very
368
+ * close to overflow or very close to underflow, the matrix
369
+ * should be scaled.
370
+ *
371
+ * INFO (output) INTEGER
372
+ * = 0: successful exit
373
+ * < 0: if INFO = -i, the i-th argument had an illegal value
374
+ * > 0: if INFO = i, and i is
375
+ * <= M: the i-th row of A is exactly zero
376
+ * > M: the (i-M)-th column of A is exactly zero
377
+ *
378
+
379
+ * =====================================================================
380
+ *
381
+
382
+
383
+ </PRE>
384
+ <A HREF="#top">go to the page top</A>
385
+
386
+ <A NAME="cgbrfs"></A>
387
+ <H2>cgbrfs</H2>
388
+ <PRE>
389
+ USAGE:
390
+ ferr, berr, info, x = NumRu::Lapack.cgbrfs( trans, kl, ku, ab, afb, ipiv, b, x, [:usage => usage, :help => help])
391
+
392
+
393
+ FORTRAN MANUAL
394
+ SUBROUTINE CGBRFS( TRANS, N, KL, KU, NRHS, AB, LDAB, AFB, LDAFB, IPIV, B, LDB, X, LDX, FERR, BERR, WORK, RWORK, INFO )
395
+
396
+ * Purpose
397
+ * =======
398
+ *
399
+ * CGBRFS improves the computed solution to a system of linear
400
+ * equations when the coefficient matrix is banded, and provides
401
+ * error bounds and backward error estimates for the solution.
402
+ *
403
+
404
+ * Arguments
405
+ * =========
406
+ *
407
+ * TRANS (input) CHARACTER*1
408
+ * Specifies the form of the system of equations:
409
+ * = 'N': A * X = B (No transpose)
410
+ * = 'T': A**T * X = B (Transpose)
411
+ * = 'C': A**H * X = B (Conjugate transpose)
412
+ *
413
+ * N (input) INTEGER
414
+ * The order of the matrix A. N >= 0.
415
+ *
416
+ * KL (input) INTEGER
417
+ * The number of subdiagonals within the band of A. KL >= 0.
418
+ *
419
+ * KU (input) INTEGER
420
+ * The number of superdiagonals within the band of A. KU >= 0.
421
+ *
422
+ * NRHS (input) INTEGER
423
+ * The number of right hand sides, i.e., the number of columns
424
+ * of the matrices B and X. NRHS >= 0.
425
+ *
426
+ * AB (input) COMPLEX array, dimension (LDAB,N)
427
+ * The original band matrix A, stored in rows 1 to KL+KU+1.
428
+ * The j-th column of A is stored in the j-th column of the
429
+ * array AB as follows:
430
+ * AB(ku+1+i-j,j) = A(i,j) for max(1,j-ku)<=i<=min(n,j+kl).
431
+ *
432
+ * LDAB (input) INTEGER
433
+ * The leading dimension of the array AB. LDAB >= KL+KU+1.
434
+ *
435
+ * AFB (input) COMPLEX array, dimension (LDAFB,N)
436
+ * Details of the LU factorization of the band matrix A, as
437
+ * computed by CGBTRF. U is stored as an upper triangular band
438
+ * matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and
439
+ * the multipliers used during the factorization are stored in
440
+ * rows KL+KU+2 to 2*KL+KU+1.
441
+ *
442
+ * LDAFB (input) INTEGER
443
+ * The leading dimension of the array AFB. LDAFB >= 2*KL*KU+1.
444
+ *
445
+ * IPIV (input) INTEGER array, dimension (N)
446
+ * The pivot indices from CGBTRF; for 1<=i<=N, row i of the
447
+ * matrix was interchanged with row IPIV(i).
448
+ *
449
+ * B (input) COMPLEX array, dimension (LDB,NRHS)
450
+ * The right hand side matrix B.
451
+ *
452
+ * LDB (input) INTEGER
453
+ * The leading dimension of the array B. LDB >= max(1,N).
454
+ *
455
+ * X (input/output) COMPLEX array, dimension (LDX,NRHS)
456
+ * On entry, the solution matrix X, as computed by CGBTRS.
457
+ * On exit, the improved solution matrix X.
458
+ *
459
+ * LDX (input) INTEGER
460
+ * The leading dimension of the array X. LDX >= max(1,N).
461
+ *
462
+ * FERR (output) REAL array, dimension (NRHS)
463
+ * The estimated forward error bound for each solution vector
464
+ * X(j) (the j-th column of the solution matrix X).
465
+ * If XTRUE is the true solution corresponding to X(j), FERR(j)
466
+ * is an estimated upper bound for the magnitude of the largest
467
+ * element in (X(j) - XTRUE) divided by the magnitude of the
468
+ * largest element in X(j). The estimate is as reliable as
469
+ * the estimate for RCOND, and is almost always a slight
470
+ * overestimate of the true error.
471
+ *
472
+ * BERR (output) REAL array, dimension (NRHS)
473
+ * The componentwise relative backward error of each solution
474
+ * vector X(j) (i.e., the smallest relative change in
475
+ * any element of A or B that makes X(j) an exact solution).
476
+ *
477
+ * WORK (workspace) COMPLEX array, dimension (2*N)
478
+ *
479
+ * RWORK (workspace) REAL array, dimension (N)
480
+ *
481
+ * INFO (output) INTEGER
482
+ * = 0: successful exit
483
+ * < 0: if INFO = -i, the i-th argument had an illegal value
484
+ *
485
+ * Internal Parameters
486
+ * ===================
487
+ *
488
+ * ITMAX is the maximum number of steps of iterative refinement.
489
+ *
490
+
491
+ * =====================================================================
492
+ *
493
+
494
+
495
+ </PRE>
496
+ <A HREF="#top">go to the page top</A>
497
+
498
+ <A NAME="cgbrfsx"></A>
499
+ <H2>cgbrfsx</H2>
500
+ <PRE>
501
+ USAGE:
502
+ rcond, berr, err_bnds_norm, err_bnds_comp, info, r, c, x, params = NumRu::Lapack.cgbrfsx( trans, equed, kl, ku, ab, afb, ipiv, r, c, b, x, params, [:usage => usage, :help => help])
503
+
504
+
505
+ FORTRAN MANUAL
506
+ SUBROUTINE CGBRFSX( TRANS, EQUED, N, KL, KU, NRHS, AB, LDAB, AFB, LDAFB, IPIV, R, C, B, LDB, X, LDX, RCOND, BERR, N_ERR_BNDS, ERR_BNDS_NORM, ERR_BNDS_COMP, NPARAMS, PARAMS, WORK, RWORK, INFO )
507
+
508
+ * Purpose
509
+ * =======
510
+ *
511
+ * CGBRFSX improves the computed solution to a system of linear
512
+ * equations and provides error bounds and backward error estimates
513
+ * for the solution. In addition to normwise error bound, the code
514
+ * provides maximum componentwise error bound if possible. See
515
+ * comments for ERR_BNDS_NORM and ERR_BNDS_COMP for details of the
516
+ * error bounds.
517
+ *
518
+ * The original system of linear equations may have been equilibrated
519
+ * before calling this routine, as described by arguments EQUED, R
520
+ * and C below. In this case, the solution and error bounds returned
521
+ * are for the original unequilibrated system.
522
+ *
523
+
524
+ * Arguments
525
+ * =========
526
+ *
527
+ * Some optional parameters are bundled in the PARAMS array. These
528
+ * settings determine how refinement is performed, but often the
529
+ * defaults are acceptable. If the defaults are acceptable, users
530
+ * can pass NPARAMS = 0 which prevents the source code from accessing
531
+ * the PARAMS argument.
532
+ *
533
+ * TRANS (input) CHARACTER*1
534
+ * Specifies the form of the system of equations:
535
+ * = 'N': A * X = B (No transpose)
536
+ * = 'T': A**T * X = B (Transpose)
537
+ * = 'C': A**H * X = B (Conjugate transpose = Transpose)
538
+ *
539
+ * EQUED (input) CHARACTER*1
540
+ * Specifies the form of equilibration that was done to A
541
+ * before calling this routine. This is needed to compute
542
+ * the solution and error bounds correctly.
543
+ * = 'N': No equilibration
544
+ * = 'R': Row equilibration, i.e., A has been premultiplied by
545
+ * diag(R).
546
+ * = 'C': Column equilibration, i.e., A has been postmultiplied
547
+ * by diag(C).
548
+ * = 'B': Both row and column equilibration, i.e., A has been
549
+ * replaced by diag(R) * A * diag(C).
550
+ * The right hand side B has been changed accordingly.
551
+ *
552
+ * N (input) INTEGER
553
+ * The order of the matrix A. N >= 0.
554
+ *
555
+ * KL (input) INTEGER
556
+ * The number of subdiagonals within the band of A. KL >= 0.
557
+ *
558
+ * KU (input) INTEGER
559
+ * The number of superdiagonals within the band of A. KU >= 0.
560
+ *
561
+ * NRHS (input) INTEGER
562
+ * The number of right hand sides, i.e., the number of columns
563
+ * of the matrices B and X. NRHS >= 0.
564
+ *
565
+ * AB (input) DOUBLE PRECISION array, dimension (LDAB,N)
566
+ * The original band matrix A, stored in rows 1 to KL+KU+1.
567
+ * The j-th column of A is stored in the j-th column of the
568
+ * array AB as follows:
569
+ * AB(ku+1+i-j,j) = A(i,j) for max(1,j-ku)<=i<=min(n,j+kl).
570
+ *
571
+ * LDAB (input) INTEGER
572
+ * The leading dimension of the array AB. LDAB >= KL+KU+1.
573
+ *
574
+ * AFB (input) DOUBLE PRECISION array, dimension (LDAFB,N)
575
+ * Details of the LU factorization of the band matrix A, as
576
+ * computed by DGBTRF. U is stored as an upper triangular band
577
+ * matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and
578
+ * the multipliers used during the factorization are stored in
579
+ * rows KL+KU+2 to 2*KL+KU+1.
580
+ *
581
+ * LDAFB (input) INTEGER
582
+ * The leading dimension of the array AFB. LDAFB >= 2*KL*KU+1.
583
+ *
584
+ * IPIV (input) INTEGER array, dimension (N)
585
+ * The pivot indices from SGETRF; for 1<=i<=N, row i of the
586
+ * matrix was interchanged with row IPIV(i).
587
+ *
588
+ * R (input or output) REAL array, dimension (N)
589
+ * The row scale factors for A. If EQUED = 'R' or 'B', A is
590
+ * multiplied on the left by diag(R); if EQUED = 'N' or 'C', R
591
+ * is not accessed. R is an input argument if FACT = 'F';
592
+ * otherwise, R is an output argument. If FACT = 'F' and
593
+ * EQUED = 'R' or 'B', each element of R must be positive.
594
+ * If R is output, each element of R is a power of the radix.
595
+ * If R is input, each element of R should be a power of the radix
596
+ * to ensure a reliable solution and error estimates. Scaling by
597
+ * powers of the radix does not cause rounding errors unless the
598
+ * result underflows or overflows. Rounding errors during scaling
599
+ * lead to refining with a matrix that is not equivalent to the
600
+ * input matrix, producing error estimates that may not be
601
+ * reliable.
602
+ *
603
+ * C (input or output) REAL array, dimension (N)
604
+ * The column scale factors for A. If EQUED = 'C' or 'B', A is
605
+ * multiplied on the right by diag(C); if EQUED = 'N' or 'R', C
606
+ * is not accessed. C is an input argument if FACT = 'F';
607
+ * otherwise, C is an output argument. If FACT = 'F' and
608
+ * EQUED = 'C' or 'B', each element of C must be positive.
609
+ * If C is output, each element of C is a power of the radix.
610
+ * If C is input, each element of C should be a power of the radix
611
+ * to ensure a reliable solution and error estimates. Scaling by
612
+ * powers of the radix does not cause rounding errors unless the
613
+ * result underflows or overflows. Rounding errors during scaling
614
+ * lead to refining with a matrix that is not equivalent to the
615
+ * input matrix, producing error estimates that may not be
616
+ * reliable.
617
+ *
618
+ * B (input) REAL array, dimension (LDB,NRHS)
619
+ * The right hand side matrix B.
620
+ *
621
+ * LDB (input) INTEGER
622
+ * The leading dimension of the array B. LDB >= max(1,N).
623
+ *
624
+ * X (input/output) REAL array, dimension (LDX,NRHS)
625
+ * On entry, the solution matrix X, as computed by SGETRS.
626
+ * On exit, the improved solution matrix X.
627
+ *
628
+ * LDX (input) INTEGER
629
+ * The leading dimension of the array X. LDX >= max(1,N).
630
+ *
631
+ * RCOND (output) REAL
632
+ * Reciprocal scaled condition number. This is an estimate of the
633
+ * reciprocal Skeel condition number of the matrix A after
634
+ * equilibration (if done). If this is less than the machine
635
+ * precision (in particular, if it is zero), the matrix is singular
636
+ * to working precision. Note that the error may still be small even
637
+ * if this number is very small and the matrix appears ill-
638
+ * conditioned.
639
+ *
640
+ * BERR (output) REAL array, dimension (NRHS)
641
+ * Componentwise relative backward error. This is the
642
+ * componentwise relative backward error of each solution vector X(j)
643
+ * (i.e., the smallest relative change in any element of A or B that
644
+ * makes X(j) an exact solution).
645
+ *
646
+ * N_ERR_BNDS (input) INTEGER
647
+ * Number of error bounds to return for each right hand side
648
+ * and each type (normwise or componentwise). See ERR_BNDS_NORM and
649
+ * ERR_BNDS_COMP below.
650
+ *
651
+ * ERR_BNDS_NORM (output) REAL array, dimension (NRHS, N_ERR_BNDS)
652
+ * For each right-hand side, this array contains information about
653
+ * various error bounds and condition numbers corresponding to the
654
+ * normwise relative error, which is defined as follows:
655
+ *
656
+ * Normwise relative error in the ith solution vector:
657
+ * max_j (abs(XTRUE(j,i) - X(j,i)))
658
+ * ------------------------------
659
+ * max_j abs(X(j,i))
660
+ *
661
+ * The array is indexed by the type of error information as described
662
+ * below. There currently are up to three pieces of information
663
+ * returned.
664
+ *
665
+ * The first index in ERR_BNDS_NORM(i,:) corresponds to the ith
666
+ * right-hand side.
667
+ *
668
+ * The second index in ERR_BNDS_NORM(:,err) contains the following
669
+ * three fields:
670
+ * err = 1 "Trust/don't trust" boolean. Trust the answer if the
671
+ * reciprocal condition number is less than the threshold
672
+ * sqrt(n) * slamch('Epsilon').
673
+ *
674
+ * err = 2 "Guaranteed" error bound: The estimated forward error,
675
+ * almost certainly within a factor of 10 of the true error
676
+ * so long as the next entry is greater than the threshold
677
+ * sqrt(n) * slamch('Epsilon'). This error bound should only
678
+ * be trusted if the previous boolean is true.
679
+ *
680
+ * err = 3 Reciprocal condition number: Estimated normwise
681
+ * reciprocal condition number. Compared with the threshold
682
+ * sqrt(n) * slamch('Epsilon') to determine if the error
683
+ * estimate is "guaranteed". These reciprocal condition
684
+ * numbers are 1 / (norm(Z^{-1},inf) * norm(Z,inf)) for some
685
+ * appropriately scaled matrix Z.
686
+ * Let Z = S*A, where S scales each row by a power of the
687
+ * radix so all absolute row sums of Z are approximately 1.
688
+ *
689
+ * See Lapack Working Note 165 for further details and extra
690
+ * cautions.
691
+ *
692
+ * ERR_BNDS_COMP (output) REAL array, dimension (NRHS, N_ERR_BNDS)
693
+ * For each right-hand side, this array contains information about
694
+ * various error bounds and condition numbers corresponding to the
695
+ * componentwise relative error, which is defined as follows:
696
+ *
697
+ * Componentwise relative error in the ith solution vector:
698
+ * abs(XTRUE(j,i) - X(j,i))
699
+ * max_j ----------------------
700
+ * abs(X(j,i))
701
+ *
702
+ * The array is indexed by the right-hand side i (on which the
703
+ * componentwise relative error depends), and the type of error
704
+ * information as described below. There currently are up to three
705
+ * pieces of information returned for each right-hand side. If
706
+ * componentwise accuracy is not requested (PARAMS(3) = 0.0), then
707
+ * ERR_BNDS_COMP is not accessed. If N_ERR_BNDS .LT. 3, then at most
708
+ * the first (:,N_ERR_BNDS) entries are returned.
709
+ *
710
+ * The first index in ERR_BNDS_COMP(i,:) corresponds to the ith
711
+ * right-hand side.
712
+ *
713
+ * The second index in ERR_BNDS_COMP(:,err) contains the following
714
+ * three fields:
715
+ * err = 1 "Trust/don't trust" boolean. Trust the answer if the
716
+ * reciprocal condition number is less than the threshold
717
+ * sqrt(n) * slamch('Epsilon').
718
+ *
719
+ * err = 2 "Guaranteed" error bound: The estimated forward error,
720
+ * almost certainly within a factor of 10 of the true error
721
+ * so long as the next entry is greater than the threshold
722
+ * sqrt(n) * slamch('Epsilon'). This error bound should only
723
+ * be trusted if the previous boolean is true.
724
+ *
725
+ * err = 3 Reciprocal condition number: Estimated componentwise
726
+ * reciprocal condition number. Compared with the threshold
727
+ * sqrt(n) * slamch('Epsilon') to determine if the error
728
+ * estimate is "guaranteed". These reciprocal condition
729
+ * numbers are 1 / (norm(Z^{-1},inf) * norm(Z,inf)) for some
730
+ * appropriately scaled matrix Z.
731
+ * Let Z = S*(A*diag(x)), where x is the solution for the
732
+ * current right-hand side and S scales each row of
733
+ * A*diag(x) by a power of the radix so all absolute row
734
+ * sums of Z are approximately 1.
735
+ *
736
+ * See Lapack Working Note 165 for further details and extra
737
+ * cautions.
738
+ *
739
+ * NPARAMS (input) INTEGER
740
+ * Specifies the number of parameters set in PARAMS. If .LE. 0, the
741
+ * PARAMS array is never referenced and default values are used.
742
+ *
743
+ * PARAMS (input / output) REAL array, dimension NPARAMS
744
+ * Specifies algorithm parameters. If an entry is .LT. 0.0, then
745
+ * that entry will be filled with default value used for that
746
+ * parameter. Only positions up to NPARAMS are accessed; defaults
747
+ * are used for higher-numbered parameters.
748
+ *
749
+ * PARAMS(LA_LINRX_ITREF_I = 1) : Whether to perform iterative
750
+ * refinement or not.
751
+ * Default: 1.0
752
+ * = 0.0 : No refinement is performed, and no error bounds are
753
+ * computed.
754
+ * = 1.0 : Use the double-precision refinement algorithm,
755
+ * possibly with doubled-single computations if the
756
+ * compilation environment does not support DOUBLE
757
+ * PRECISION.
758
+ * (other values are reserved for future use)
759
+ *
760
+ * PARAMS(LA_LINRX_ITHRESH_I = 2) : Maximum number of residual
761
+ * computations allowed for refinement.
762
+ * Default: 10
763
+ * Aggressive: Set to 100 to permit convergence using approximate
764
+ * factorizations or factorizations other than LU. If
765
+ * the factorization uses a technique other than
766
+ * Gaussian elimination, the guarantees in
767
+ * err_bnds_norm and err_bnds_comp may no longer be
768
+ * trustworthy.
769
+ *
770
+ * PARAMS(LA_LINRX_CWISE_I = 3) : Flag determining if the code
771
+ * will attempt to find a solution with small componentwise
772
+ * relative error in the double-precision algorithm. Positive
773
+ * is true, 0.0 is false.
774
+ * Default: 1.0 (attempt componentwise convergence)
775
+ *
776
+ * WORK (workspace) COMPLEX array, dimension (2*N)
777
+ *
778
+ * RWORK (workspace) REAL array, dimension (2*N)
779
+ *
780
+ * INFO (output) INTEGER
781
+ * = 0: Successful exit. The solution to every right-hand side is
782
+ * guaranteed.
783
+ * < 0: If INFO = -i, the i-th argument had an illegal value
784
+ * > 0 and <= N: U(INFO,INFO) is exactly zero. The factorization
785
+ * has been completed, but the factor U is exactly singular, so
786
+ * the solution and error bounds could not be computed. RCOND = 0
787
+ * is returned.
788
+ * = N+J: The solution corresponding to the Jth right-hand side is
789
+ * not guaranteed. The solutions corresponding to other right-
790
+ * hand sides K with K > J may not be guaranteed as well, but
791
+ * only the first such right-hand side is reported. If a small
792
+ * componentwise error is not requested (PARAMS(3) = 0.0) then
793
+ * the Jth right-hand side is the first with a normwise error
794
+ * bound that is not guaranteed (the smallest J such
795
+ * that ERR_BNDS_NORM(J,1) = 0.0). By default (PARAMS(3) = 1.0)
796
+ * the Jth right-hand side is the first with either a normwise or
797
+ * componentwise error bound that is not guaranteed (the smallest
798
+ * J such that either ERR_BNDS_NORM(J,1) = 0.0 or
799
+ * ERR_BNDS_COMP(J,1) = 0.0). See the definition of
800
+ * ERR_BNDS_NORM(:,1) and ERR_BNDS_COMP(:,1). To get information
801
+ * about all of the right-hand sides check ERR_BNDS_NORM or
802
+ * ERR_BNDS_COMP.
803
+ *
804
+
805
+ * ==================================================================
806
+ *
807
+
808
+
809
+ </PRE>
810
+ <A HREF="#top">go to the page top</A>
811
+
812
+ <A NAME="cgbsv"></A>
813
+ <H2>cgbsv</H2>
814
+ <PRE>
815
+ USAGE:
816
+ ipiv, info, ab, b = NumRu::Lapack.cgbsv( kl, ku, ab, b, [:usage => usage, :help => help])
817
+
818
+
819
+ FORTRAN MANUAL
820
+ SUBROUTINE CGBSV( N, KL, KU, NRHS, AB, LDAB, IPIV, B, LDB, INFO )
821
+
822
+ * Purpose
823
+ * =======
824
+ *
825
+ * CGBSV computes the solution to a complex system of linear equations
826
+ * A * X = B, where A is a band matrix of order N with KL subdiagonals
827
+ * and KU superdiagonals, and X and B are N-by-NRHS matrices.
828
+ *
829
+ * The LU decomposition with partial pivoting and row interchanges is
830
+ * used to factor A as A = L * U, where L is a product of permutation
831
+ * and unit lower triangular matrices with KL subdiagonals, and U is
832
+ * upper triangular with KL+KU superdiagonals. The factored form of A
833
+ * is then used to solve the system of equations A * X = B.
834
+ *
835
+
836
+ * Arguments
837
+ * =========
838
+ *
839
+ * N (input) INTEGER
840
+ * The number of linear equations, i.e., the order of the
841
+ * matrix A. N >= 0.
842
+ *
843
+ * KL (input) INTEGER
844
+ * The number of subdiagonals within the band of A. KL >= 0.
845
+ *
846
+ * KU (input) INTEGER
847
+ * The number of superdiagonals within the band of A. KU >= 0.
848
+ *
849
+ * NRHS (input) INTEGER
850
+ * The number of right hand sides, i.e., the number of columns
851
+ * of the matrix B. NRHS >= 0.
852
+ *
853
+ * AB (input/output) COMPLEX array, dimension (LDAB,N)
854
+ * On entry, the matrix A in band storage, in rows KL+1 to
855
+ * 2*KL+KU+1; rows 1 to KL of the array need not be set.
856
+ * The j-th column of A is stored in the j-th column of the
857
+ * array AB as follows:
858
+ * AB(KL+KU+1+i-j,j) = A(i,j) for max(1,j-KU)<=i<=min(N,j+KL)
859
+ * On exit, details of the factorization: U is stored as an
860
+ * upper triangular band matrix with KL+KU superdiagonals in
861
+ * rows 1 to KL+KU+1, and the multipliers used during the
862
+ * factorization are stored in rows KL+KU+2 to 2*KL+KU+1.
863
+ * See below for further details.
864
+ *
865
+ * LDAB (input) INTEGER
866
+ * The leading dimension of the array AB. LDAB >= 2*KL+KU+1.
867
+ *
868
+ * IPIV (output) INTEGER array, dimension (N)
869
+ * The pivot indices that define the permutation matrix P;
870
+ * row i of the matrix was interchanged with row IPIV(i).
871
+ *
872
+ * B (input/output) COMPLEX array, dimension (LDB,NRHS)
873
+ * On entry, the N-by-NRHS right hand side matrix B.
874
+ * On exit, if INFO = 0, the N-by-NRHS solution matrix X.
875
+ *
876
+ * LDB (input) INTEGER
877
+ * The leading dimension of the array B. LDB >= max(1,N).
878
+ *
879
+ * INFO (output) INTEGER
880
+ * = 0: successful exit
881
+ * < 0: if INFO = -i, the i-th argument had an illegal value
882
+ * > 0: if INFO = i, U(i,i) is exactly zero. The factorization
883
+ * has been completed, but the factor U is exactly
884
+ * singular, and the solution has not been computed.
885
+ *
886
+
887
+ * Further Details
888
+ * ===============
889
+ *
890
+ * The band storage scheme is illustrated by the following example, when
891
+ * M = N = 6, KL = 2, KU = 1:
892
+ *
893
+ * On entry: On exit:
894
+ *
895
+ * * * * + + + * * * u14 u25 u36
896
+ * * * + + + + * * u13 u24 u35 u46
897
+ * * a12 a23 a34 a45 a56 * u12 u23 u34 u45 u56
898
+ * a11 a22 a33 a44 a55 a66 u11 u22 u33 u44 u55 u66
899
+ * a21 a32 a43 a54 a65 * m21 m32 m43 m54 m65 *
900
+ * a31 a42 a53 a64 * * m31 m42 m53 m64 * *
901
+ *
902
+ * Array elements marked * are not used by the routine; elements marked
903
+ * + need not be set on entry, but are required by the routine to store
904
+ * elements of U because of fill-in resulting from the row interchanges.
905
+ *
906
+ * =====================================================================
907
+ *
908
+ * .. External Subroutines ..
909
+ EXTERNAL CGBTRF, CGBTRS, XERBLA
910
+ * ..
911
+ * .. Intrinsic Functions ..
912
+ INTRINSIC MAX
913
+ * ..
914
+
915
+
916
+ </PRE>
917
+ <A HREF="#top">go to the page top</A>
918
+
919
+ <A NAME="cgbsvx"></A>
920
+ <H2>cgbsvx</H2>
921
+ <PRE>
922
+ USAGE:
923
+ x, rcond, ferr, berr, rwork, info, ab, afb, ipiv, equed, r, c, b = NumRu::Lapack.cgbsvx( fact, trans, kl, ku, ab, b, [:afb => afb, :ipiv => ipiv, :equed => equed, :r => r, :c => c, :usage => usage, :help => help])
924
+
925
+
926
+ FORTRAN MANUAL
927
+ SUBROUTINE CGBSVX( FACT, TRANS, N, KL, KU, NRHS, AB, LDAB, AFB, LDAFB, IPIV, EQUED, R, C, B, LDB, X, LDX, RCOND, FERR, BERR, WORK, RWORK, INFO )
928
+
929
+ * Purpose
930
+ * =======
931
+ *
932
+ * CGBSVX uses the LU factorization to compute the solution to a complex
933
+ * system of linear equations A * X = B, A**T * X = B, or A**H * X = B,
934
+ * where A is a band matrix of order N with KL subdiagonals and KU
935
+ * superdiagonals, and X and B are N-by-NRHS matrices.
936
+ *
937
+ * Error bounds on the solution and a condition estimate are also
938
+ * provided.
939
+ *
940
+ * Description
941
+ * ===========
942
+ *
943
+ * The following steps are performed by this subroutine:
944
+ *
945
+ * 1. If FACT = 'E', real scaling factors are computed to equilibrate
946
+ * the system:
947
+ * TRANS = 'N': diag(R)*A*diag(C) *inv(diag(C))*X = diag(R)*B
948
+ * TRANS = 'T': (diag(R)*A*diag(C))**T *inv(diag(R))*X = diag(C)*B
949
+ * TRANS = 'C': (diag(R)*A*diag(C))**H *inv(diag(R))*X = diag(C)*B
950
+ * Whether or not the system will be equilibrated depends on the
951
+ * scaling of the matrix A, but if equilibration is used, A is
952
+ * overwritten by diag(R)*A*diag(C) and B by diag(R)*B (if TRANS='N')
953
+ * or diag(C)*B (if TRANS = 'T' or 'C').
954
+ *
955
+ * 2. If FACT = 'N' or 'E', the LU decomposition is used to factor the
956
+ * matrix A (after equilibration if FACT = 'E') as
957
+ * A = L * U,
958
+ * where L is a product of permutation and unit lower triangular
959
+ * matrices with KL subdiagonals, and U is upper triangular with
960
+ * KL+KU superdiagonals.
961
+ *
962
+ * 3. If some U(i,i)=0, so that U is exactly singular, then the routine
963
+ * returns with INFO = i. Otherwise, the factored form of A is used
964
+ * to estimate the condition number of the matrix A. If the
965
+ * reciprocal of the condition number is less than machine precision,
966
+ * INFO = N+1 is returned as a warning, but the routine still goes on
967
+ * to solve for X and compute error bounds as described below.
968
+ *
969
+ * 4. The system of equations is solved for X using the factored form
970
+ * of A.
971
+ *
972
+ * 5. Iterative refinement is applied to improve the computed solution
973
+ * matrix and calculate error bounds and backward error estimates
974
+ * for it.
975
+ *
976
+ * 6. If equilibration was used, the matrix X is premultiplied by
977
+ * diag(C) (if TRANS = 'N') or diag(R) (if TRANS = 'T' or 'C') so
978
+ * that it solves the original system before equilibration.
979
+ *
980
+
981
+ * Arguments
982
+ * =========
983
+ *
984
+ * FACT (input) CHARACTER*1
985
+ * Specifies whether or not the factored form of the matrix A is
986
+ * supplied on entry, and if not, whether the matrix A should be
987
+ * equilibrated before it is factored.
988
+ * = 'F': On entry, AFB and IPIV contain the factored form of
989
+ * A. If EQUED is not 'N', the matrix A has been
990
+ * equilibrated with scaling factors given by R and C.
991
+ * AB, AFB, and IPIV are not modified.
992
+ * = 'N': The matrix A will be copied to AFB and factored.
993
+ * = 'E': The matrix A will be equilibrated if necessary, then
994
+ * copied to AFB and factored.
995
+ *
996
+ * TRANS (input) CHARACTER*1
997
+ * Specifies the form of the system of equations.
998
+ * = 'N': A * X = B (No transpose)
999
+ * = 'T': A**T * X = B (Transpose)
1000
+ * = 'C': A**H * X = B (Conjugate transpose)
1001
+ *
1002
+ * N (input) INTEGER
1003
+ * The number of linear equations, i.e., the order of the
1004
+ * matrix A. N >= 0.
1005
+ *
1006
+ * KL (input) INTEGER
1007
+ * The number of subdiagonals within the band of A. KL >= 0.
1008
+ *
1009
+ * KU (input) INTEGER
1010
+ * The number of superdiagonals within the band of A. KU >= 0.
1011
+ *
1012
+ * NRHS (input) INTEGER
1013
+ * The number of right hand sides, i.e., the number of columns
1014
+ * of the matrices B and X. NRHS >= 0.
1015
+ *
1016
+ * AB (input/output) COMPLEX array, dimension (LDAB,N)
1017
+ * On entry, the matrix A in band storage, in rows 1 to KL+KU+1.
1018
+ * The j-th column of A is stored in the j-th column of the
1019
+ * array AB as follows:
1020
+ * AB(KU+1+i-j,j) = A(i,j) for max(1,j-KU)<=i<=min(N,j+kl)
1021
+ *
1022
+ * If FACT = 'F' and EQUED is not 'N', then A must have been
1023
+ * equilibrated by the scaling factors in R and/or C. AB is not
1024
+ * modified if FACT = 'F' or 'N', or if FACT = 'E' and
1025
+ * EQUED = 'N' on exit.
1026
+ *
1027
+ * On exit, if EQUED .ne. 'N', A is scaled as follows:
1028
+ * EQUED = 'R': A := diag(R) * A
1029
+ * EQUED = 'C': A := A * diag(C)
1030
+ * EQUED = 'B': A := diag(R) * A * diag(C).
1031
+ *
1032
+ * LDAB (input) INTEGER
1033
+ * The leading dimension of the array AB. LDAB >= KL+KU+1.
1034
+ *
1035
+ * AFB (input or output) COMPLEX array, dimension (LDAFB,N)
1036
+ * If FACT = 'F', then AFB is an input argument and on entry
1037
+ * contains details of the LU factorization of the band matrix
1038
+ * A, as computed by CGBTRF. U is stored as an upper triangular
1039
+ * band matrix with KL+KU superdiagonals in rows 1 to KL+KU+1,
1040
+ * and the multipliers used during the factorization are stored
1041
+ * in rows KL+KU+2 to 2*KL+KU+1. If EQUED .ne. 'N', then AFB is
1042
+ * the factored form of the equilibrated matrix A.
1043
+ *
1044
+ * If FACT = 'N', then AFB is an output argument and on exit
1045
+ * returns details of the LU factorization of A.
1046
+ *
1047
+ * If FACT = 'E', then AFB is an output argument and on exit
1048
+ * returns details of the LU factorization of the equilibrated
1049
+ * matrix A (see the description of AB for the form of the
1050
+ * equilibrated matrix).
1051
+ *
1052
+ * LDAFB (input) INTEGER
1053
+ * The leading dimension of the array AFB. LDAFB >= 2*KL+KU+1.
1054
+ *
1055
+ * IPIV (input or output) INTEGER array, dimension (N)
1056
+ * If FACT = 'F', then IPIV is an input argument and on entry
1057
+ * contains the pivot indices from the factorization A = L*U
1058
+ * as computed by CGBTRF; row i of the matrix was interchanged
1059
+ * with row IPIV(i).
1060
+ *
1061
+ * If FACT = 'N', then IPIV is an output argument and on exit
1062
+ * contains the pivot indices from the factorization A = L*U
1063
+ * of the original matrix A.
1064
+ *
1065
+ * If FACT = 'E', then IPIV is an output argument and on exit
1066
+ * contains the pivot indices from the factorization A = L*U
1067
+ * of the equilibrated matrix A.
1068
+ *
1069
+ * EQUED (input or output) CHARACTER*1
1070
+ * Specifies the form of equilibration that was done.
1071
+ * = 'N': No equilibration (always true if FACT = 'N').
1072
+ * = 'R': Row equilibration, i.e., A has been premultiplied by
1073
+ * diag(R).
1074
+ * = 'C': Column equilibration, i.e., A has been postmultiplied
1075
+ * by diag(C).
1076
+ * = 'B': Both row and column equilibration, i.e., A has been
1077
+ * replaced by diag(R) * A * diag(C).
1078
+ * EQUED is an input argument if FACT = 'F'; otherwise, it is an
1079
+ * output argument.
1080
+ *
1081
+ * R (input or output) REAL array, dimension (N)
1082
+ * The row scale factors for A. If EQUED = 'R' or 'B', A is
1083
+ * multiplied on the left by diag(R); if EQUED = 'N' or 'C', R
1084
+ * is not accessed. R is an input argument if FACT = 'F';
1085
+ * otherwise, R is an output argument. If FACT = 'F' and
1086
+ * EQUED = 'R' or 'B', each element of R must be positive.
1087
+ *
1088
+ * C (input or output) REAL array, dimension (N)
1089
+ * The column scale factors for A. If EQUED = 'C' or 'B', A is
1090
+ * multiplied on the right by diag(C); if EQUED = 'N' or 'R', C
1091
+ * is not accessed. C is an input argument if FACT = 'F';
1092
+ * otherwise, C is an output argument. If FACT = 'F' and
1093
+ * EQUED = 'C' or 'B', each element of C must be positive.
1094
+ *
1095
+ * B (input/output) COMPLEX array, dimension (LDB,NRHS)
1096
+ * On entry, the right hand side matrix B.
1097
+ * On exit,
1098
+ * if EQUED = 'N', B is not modified;
1099
+ * if TRANS = 'N' and EQUED = 'R' or 'B', B is overwritten by
1100
+ * diag(R)*B;
1101
+ * if TRANS = 'T' or 'C' and EQUED = 'C' or 'B', B is
1102
+ * overwritten by diag(C)*B.
1103
+ *
1104
+ * LDB (input) INTEGER
1105
+ * The leading dimension of the array B. LDB >= max(1,N).
1106
+ *
1107
+ * X (output) COMPLEX array, dimension (LDX,NRHS)
1108
+ * If INFO = 0 or INFO = N+1, the N-by-NRHS solution matrix X
1109
+ * to the original system of equations. Note that A and B are
1110
+ * modified on exit if EQUED .ne. 'N', and the solution to the
1111
+ * equilibrated system is inv(diag(C))*X if TRANS = 'N' and
1112
+ * EQUED = 'C' or 'B', or inv(diag(R))*X if TRANS = 'T' or 'C'
1113
+ * and EQUED = 'R' or 'B'.
1114
+ *
1115
+ * LDX (input) INTEGER
1116
+ * The leading dimension of the array X. LDX >= max(1,N).
1117
+ *
1118
+ * RCOND (output) REAL
1119
+ * The estimate of the reciprocal condition number of the matrix
1120
+ * A after equilibration (if done). If RCOND is less than the
1121
+ * machine precision (in particular, if RCOND = 0), the matrix
1122
+ * is singular to working precision. This condition is
1123
+ * indicated by a return code of INFO > 0.
1124
+ *
1125
+ * FERR (output) REAL array, dimension (NRHS)
1126
+ * The estimated forward error bound for each solution vector
1127
+ * X(j) (the j-th column of the solution matrix X).
1128
+ * If XTRUE is the true solution corresponding to X(j), FERR(j)
1129
+ * is an estimated upper bound for the magnitude of the largest
1130
+ * element in (X(j) - XTRUE) divided by the magnitude of the
1131
+ * largest element in X(j). The estimate is as reliable as
1132
+ * the estimate for RCOND, and is almost always a slight
1133
+ * overestimate of the true error.
1134
+ *
1135
+ * BERR (output) REAL array, dimension (NRHS)
1136
+ * The componentwise relative backward error of each solution
1137
+ * vector X(j) (i.e., the smallest relative change in
1138
+ * any element of A or B that makes X(j) an exact solution).
1139
+ *
1140
+ * WORK (workspace) COMPLEX array, dimension (2*N)
1141
+ *
1142
+ * RWORK (workspace/output) REAL array, dimension (N)
1143
+ * On exit, RWORK(1) contains the reciprocal pivot growth
1144
+ * factor norm(A)/norm(U). The "max absolute element" norm is
1145
+ * used. If RWORK(1) is much less than 1, then the stability
1146
+ * of the LU factorization of the (equilibrated) matrix A
1147
+ * could be poor. This also means that the solution X, condition
1148
+ * estimator RCOND, and forward error bound FERR could be
1149
+ * unreliable. If factorization fails with 0<INFO<=N, then
1150
+ * RWORK(1) contains the reciprocal pivot growth factor for the
1151
+ * leading INFO columns of A.
1152
+ *
1153
+ * INFO (output) INTEGER
1154
+ * = 0: successful exit
1155
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1156
+ * > 0: if INFO = i, and i is
1157
+ * <= N: U(i,i) is exactly zero. The factorization
1158
+ * has been completed, but the factor U is exactly
1159
+ * singular, so the solution and error bounds
1160
+ * could not be computed. RCOND = 0 is returned.
1161
+ * = N+1: U is nonsingular, but RCOND is less than machine
1162
+ * precision, meaning that the matrix is singular
1163
+ * to working precision. Nevertheless, the
1164
+ * solution and error bounds are computed because
1165
+ * there are a number of situations where the
1166
+ * computed solution can be more accurate than the
1167
+ * value of RCOND would suggest.
1168
+ *
1169
+
1170
+ * =====================================================================
1171
+ * Moved setting of INFO = N+1 so INFO does not subsequently get
1172
+ * overwritten. Sven, 17 Mar 05.
1173
+ * =====================================================================
1174
+ *
1175
+
1176
+
1177
+ </PRE>
1178
+ <A HREF="#top">go to the page top</A>
1179
+
1180
+ <A NAME="cgbsvxx"></A>
1181
+ <H2>cgbsvxx</H2>
1182
+ <PRE>
1183
+ USAGE:
1184
+ x, rcond, rpvgrw, berr, err_bnds_norm, err_bnds_comp, info, ab, afb, ipiv, equed, r, c, b, params = NumRu::Lapack.cgbsvxx( fact, trans, kl, ku, ab, afb, ipiv, equed, r, c, b, params, [:usage => usage, :help => help])
1185
+
1186
+
1187
+ FORTRAN MANUAL
1188
+ SUBROUTINE CGBSVXX( FACT, TRANS, N, KL, KU, NRHS, AB, LDAB, AFB, LDAFB, IPIV, EQUED, R, C, B, LDB, X, LDX, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_NORM, ERR_BNDS_COMP, NPARAMS, PARAMS, WORK, RWORK, INFO )
1189
+
1190
+ * Purpose
1191
+ * =======
1192
+ *
1193
+ * CGBSVXX uses the LU factorization to compute the solution to a
1194
+ * complex system of linear equations A * X = B, where A is an
1195
+ * N-by-N matrix and X and B are N-by-NRHS matrices.
1196
+ *
1197
+ * If requested, both normwise and maximum componentwise error bounds
1198
+ * are returned. CGBSVXX will return a solution with a tiny
1199
+ * guaranteed error (O(eps) where eps is the working machine
1200
+ * precision) unless the matrix is very ill-conditioned, in which
1201
+ * case a warning is returned. Relevant condition numbers also are
1202
+ * calculated and returned.
1203
+ *
1204
+ * CGBSVXX accepts user-provided factorizations and equilibration
1205
+ * factors; see the definitions of the FACT and EQUED options.
1206
+ * Solving with refinement and using a factorization from a previous
1207
+ * CGBSVXX call will also produce a solution with either O(eps)
1208
+ * errors or warnings, but we cannot make that claim for general
1209
+ * user-provided factorizations and equilibration factors if they
1210
+ * differ from what CGBSVXX would itself produce.
1211
+ *
1212
+ * Description
1213
+ * ===========
1214
+ *
1215
+ * The following steps are performed:
1216
+ *
1217
+ * 1. If FACT = 'E', real scaling factors are computed to equilibrate
1218
+ * the system:
1219
+ *
1220
+ * TRANS = 'N': diag(R)*A*diag(C) *inv(diag(C))*X = diag(R)*B
1221
+ * TRANS = 'T': (diag(R)*A*diag(C))**T *inv(diag(R))*X = diag(C)*B
1222
+ * TRANS = 'C': (diag(R)*A*diag(C))**H *inv(diag(R))*X = diag(C)*B
1223
+ *
1224
+ * Whether or not the system will be equilibrated depends on the
1225
+ * scaling of the matrix A, but if equilibration is used, A is
1226
+ * overwritten by diag(R)*A*diag(C) and B by diag(R)*B (if TRANS='N')
1227
+ * or diag(C)*B (if TRANS = 'T' or 'C').
1228
+ *
1229
+ * 2. If FACT = 'N' or 'E', the LU decomposition is used to factor
1230
+ * the matrix A (after equilibration if FACT = 'E') as
1231
+ *
1232
+ * A = P * L * U,
1233
+ *
1234
+ * where P is a permutation matrix, L is a unit lower triangular
1235
+ * matrix, and U is upper triangular.
1236
+ *
1237
+ * 3. If some U(i,i)=0, so that U is exactly singular, then the
1238
+ * routine returns with INFO = i. Otherwise, the factored form of A
1239
+ * is used to estimate the condition number of the matrix A (see
1240
+ * argument RCOND). If the reciprocal of the condition number is less
1241
+ * than machine precision, the routine still goes on to solve for X
1242
+ * and compute error bounds as described below.
1243
+ *
1244
+ * 4. The system of equations is solved for X using the factored form
1245
+ * of A.
1246
+ *
1247
+ * 5. By default (unless PARAMS(LA_LINRX_ITREF_I) is set to zero),
1248
+ * the routine will use iterative refinement to try to get a small
1249
+ * error and error bounds. Refinement calculates the residual to at
1250
+ * least twice the working precision.
1251
+ *
1252
+ * 6. If equilibration was used, the matrix X is premultiplied by
1253
+ * diag(C) (if TRANS = 'N') or diag(R) (if TRANS = 'T' or 'C') so
1254
+ * that it solves the original system before equilibration.
1255
+ *
1256
+
1257
+ * Arguments
1258
+ * =========
1259
+ *
1260
+ * Some optional parameters are bundled in the PARAMS array. These
1261
+ * settings determine how refinement is performed, but often the
1262
+ * defaults are acceptable. If the defaults are acceptable, users
1263
+ * can pass NPARAMS = 0 which prevents the source code from accessing
1264
+ * the PARAMS argument.
1265
+ *
1266
+ * FACT (input) CHARACTER*1
1267
+ * Specifies whether or not the factored form of the matrix A is
1268
+ * supplied on entry, and if not, whether the matrix A should be
1269
+ * equilibrated before it is factored.
1270
+ * = 'F': On entry, AF and IPIV contain the factored form of A.
1271
+ * If EQUED is not 'N', the matrix A has been
1272
+ * equilibrated with scaling factors given by R and C.
1273
+ * A, AF, and IPIV are not modified.
1274
+ * = 'N': The matrix A will be copied to AF and factored.
1275
+ * = 'E': The matrix A will be equilibrated if necessary, then
1276
+ * copied to AF and factored.
1277
+ *
1278
+ * TRANS (input) CHARACTER*1
1279
+ * Specifies the form of the system of equations:
1280
+ * = 'N': A * X = B (No transpose)
1281
+ * = 'T': A**T * X = B (Transpose)
1282
+ * = 'C': A**H * X = B (Conjugate Transpose = Transpose)
1283
+ *
1284
+ * N (input) INTEGER
1285
+ * The number of linear equations, i.e., the order of the
1286
+ * matrix A. N >= 0.
1287
+ *
1288
+ * KL (input) INTEGER
1289
+ * The number of subdiagonals within the band of A. KL >= 0.
1290
+ *
1291
+ * KU (input) INTEGER
1292
+ * The number of superdiagonals within the band of A. KU >= 0.
1293
+ *
1294
+ * NRHS (input) INTEGER
1295
+ * The number of right hand sides, i.e., the number of columns
1296
+ * of the matrices B and X. NRHS >= 0.
1297
+ *
1298
+ * AB (input/output) REAL array, dimension (LDAB,N)
1299
+ * On entry, the matrix A in band storage, in rows 1 to KL+KU+1.
1300
+ * The j-th column of A is stored in the j-th column of the
1301
+ * array AB as follows:
1302
+ * AB(KU+1+i-j,j) = A(i,j) for max(1,j-KU)<=i<=min(N,j+kl)
1303
+ *
1304
+ * If FACT = 'F' and EQUED is not 'N', then AB must have been
1305
+ * equilibrated by the scaling factors in R and/or C. AB is not
1306
+ * modified if FACT = 'F' or 'N', or if FACT = 'E' and
1307
+ * EQUED = 'N' on exit.
1308
+ *
1309
+ * On exit, if EQUED .ne. 'N', A is scaled as follows:
1310
+ * EQUED = 'R': A := diag(R) * A
1311
+ * EQUED = 'C': A := A * diag(C)
1312
+ * EQUED = 'B': A := diag(R) * A * diag(C).
1313
+ *
1314
+ * LDAB (input) INTEGER
1315
+ * The leading dimension of the array AB. LDAB >= KL+KU+1.
1316
+ *
1317
+ * AFB (input or output) REAL array, dimension (LDAFB,N)
1318
+ * If FACT = 'F', then AFB is an input argument and on entry
1319
+ * contains details of the LU factorization of the band matrix
1320
+ * A, as computed by CGBTRF. U is stored as an upper triangular
1321
+ * band matrix with KL+KU superdiagonals in rows 1 to KL+KU+1,
1322
+ * and the multipliers used during the factorization are stored
1323
+ * in rows KL+KU+2 to 2*KL+KU+1. If EQUED .ne. 'N', then AFB is
1324
+ * the factored form of the equilibrated matrix A.
1325
+ *
1326
+ * If FACT = 'N', then AF is an output argument and on exit
1327
+ * returns the factors L and U from the factorization A = P*L*U
1328
+ * of the original matrix A.
1329
+ *
1330
+ * If FACT = 'E', then AF is an output argument and on exit
1331
+ * returns the factors L and U from the factorization A = P*L*U
1332
+ * of the equilibrated matrix A (see the description of A for
1333
+ * the form of the equilibrated matrix).
1334
+ *
1335
+ * LDAFB (input) INTEGER
1336
+ * The leading dimension of the array AFB. LDAFB >= 2*KL+KU+1.
1337
+ *
1338
+ * IPIV (input or output) INTEGER array, dimension (N)
1339
+ * If FACT = 'F', then IPIV is an input argument and on entry
1340
+ * contains the pivot indices from the factorization A = P*L*U
1341
+ * as computed by SGETRF; row i of the matrix was interchanged
1342
+ * with row IPIV(i).
1343
+ *
1344
+ * If FACT = 'N', then IPIV is an output argument and on exit
1345
+ * contains the pivot indices from the factorization A = P*L*U
1346
+ * of the original matrix A.
1347
+ *
1348
+ * If FACT = 'E', then IPIV is an output argument and on exit
1349
+ * contains the pivot indices from the factorization A = P*L*U
1350
+ * of the equilibrated matrix A.
1351
+ *
1352
+ * EQUED (input or output) CHARACTER*1
1353
+ * Specifies the form of equilibration that was done.
1354
+ * = 'N': No equilibration (always true if FACT = 'N').
1355
+ * = 'R': Row equilibration, i.e., A has been premultiplied by
1356
+ * diag(R).
1357
+ * = 'C': Column equilibration, i.e., A has been postmultiplied
1358
+ * by diag(C).
1359
+ * = 'B': Both row and column equilibration, i.e., A has been
1360
+ * replaced by diag(R) * A * diag(C).
1361
+ * EQUED is an input argument if FACT = 'F'; otherwise, it is an
1362
+ * output argument.
1363
+ *
1364
+ * R (input or output) REAL array, dimension (N)
1365
+ * The row scale factors for A. If EQUED = 'R' or 'B', A is
1366
+ * multiplied on the left by diag(R); if EQUED = 'N' or 'C', R
1367
+ * is not accessed. R is an input argument if FACT = 'F';
1368
+ * otherwise, R is an output argument. If FACT = 'F' and
1369
+ * EQUED = 'R' or 'B', each element of R must be positive.
1370
+ * If R is output, each element of R is a power of the radix.
1371
+ * If R is input, each element of R should be a power of the radix
1372
+ * to ensure a reliable solution and error estimates. Scaling by
1373
+ * powers of the radix does not cause rounding errors unless the
1374
+ * result underflows or overflows. Rounding errors during scaling
1375
+ * lead to refining with a matrix that is not equivalent to the
1376
+ * input matrix, producing error estimates that may not be
1377
+ * reliable.
1378
+ *
1379
+ * C (input or output) REAL array, dimension (N)
1380
+ * The column scale factors for A. If EQUED = 'C' or 'B', A is
1381
+ * multiplied on the right by diag(C); if EQUED = 'N' or 'R', C
1382
+ * is not accessed. C is an input argument if FACT = 'F';
1383
+ * otherwise, C is an output argument. If FACT = 'F' and
1384
+ * EQUED = 'C' or 'B', each element of C must be positive.
1385
+ * If C is output, each element of C is a power of the radix.
1386
+ * If C is input, each element of C should be a power of the radix
1387
+ * to ensure a reliable solution and error estimates. Scaling by
1388
+ * powers of the radix does not cause rounding errors unless the
1389
+ * result underflows or overflows. Rounding errors during scaling
1390
+ * lead to refining with a matrix that is not equivalent to the
1391
+ * input matrix, producing error estimates that may not be
1392
+ * reliable.
1393
+ *
1394
+ * B (input/output) REAL array, dimension (LDB,NRHS)
1395
+ * On entry, the N-by-NRHS right hand side matrix B.
1396
+ * On exit,
1397
+ * if EQUED = 'N', B is not modified;
1398
+ * if TRANS = 'N' and EQUED = 'R' or 'B', B is overwritten by
1399
+ * diag(R)*B;
1400
+ * if TRANS = 'T' or 'C' and EQUED = 'C' or 'B', B is
1401
+ * overwritten by diag(C)*B.
1402
+ *
1403
+ * LDB (input) INTEGER
1404
+ * The leading dimension of the array B. LDB >= max(1,N).
1405
+ *
1406
+ * X (output) REAL array, dimension (LDX,NRHS)
1407
+ * If INFO = 0, the N-by-NRHS solution matrix X to the original
1408
+ * system of equations. Note that A and B are modified on exit
1409
+ * if EQUED .ne. 'N', and the solution to the equilibrated system is
1410
+ * inv(diag(C))*X if TRANS = 'N' and EQUED = 'C' or 'B', or
1411
+ * inv(diag(R))*X if TRANS = 'T' or 'C' and EQUED = 'R' or 'B'.
1412
+ *
1413
+ * LDX (input) INTEGER
1414
+ * The leading dimension of the array X. LDX >= max(1,N).
1415
+ *
1416
+ * RCOND (output) REAL
1417
+ * Reciprocal scaled condition number. This is an estimate of the
1418
+ * reciprocal Skeel condition number of the matrix A after
1419
+ * equilibration (if done). If this is less than the machine
1420
+ * precision (in particular, if it is zero), the matrix is singular
1421
+ * to working precision. Note that the error may still be small even
1422
+ * if this number is very small and the matrix appears ill-
1423
+ * conditioned.
1424
+ *
1425
+ * RPVGRW (output) REAL
1426
+ * Reciprocal pivot growth. On exit, this contains the reciprocal
1427
+ * pivot growth factor norm(A)/norm(U). The "max absolute element"
1428
+ * norm is used. If this is much less than 1, then the stability of
1429
+ * the LU factorization of the (equilibrated) matrix A could be poor.
1430
+ * This also means that the solution X, estimated condition numbers,
1431
+ * and error bounds could be unreliable. If factorization fails with
1432
+ * 0<INFO<=N, then this contains the reciprocal pivot growth factor
1433
+ * for the leading INFO columns of A. In SGESVX, this quantity is
1434
+ * returned in WORK(1).
1435
+ *
1436
+ * BERR (output) REAL array, dimension (NRHS)
1437
+ * Componentwise relative backward error. This is the
1438
+ * componentwise relative backward error of each solution vector X(j)
1439
+ * (i.e., the smallest relative change in any element of A or B that
1440
+ * makes X(j) an exact solution).
1441
+ *
1442
+ * N_ERR_BNDS (input) INTEGER
1443
+ * Number of error bounds to return for each right hand side
1444
+ * and each type (normwise or componentwise). See ERR_BNDS_NORM and
1445
+ * ERR_BNDS_COMP below.
1446
+ *
1447
+ * ERR_BNDS_NORM (output) REAL array, dimension (NRHS, N_ERR_BNDS)
1448
+ * For each right-hand side, this array contains information about
1449
+ * various error bounds and condition numbers corresponding to the
1450
+ * normwise relative error, which is defined as follows:
1451
+ *
1452
+ * Normwise relative error in the ith solution vector:
1453
+ * max_j (abs(XTRUE(j,i) - X(j,i)))
1454
+ * ------------------------------
1455
+ * max_j abs(X(j,i))
1456
+ *
1457
+ * The array is indexed by the type of error information as described
1458
+ * below. There currently are up to three pieces of information
1459
+ * returned.
1460
+ *
1461
+ * The first index in ERR_BNDS_NORM(i,:) corresponds to the ith
1462
+ * right-hand side.
1463
+ *
1464
+ * The second index in ERR_BNDS_NORM(:,err) contains the following
1465
+ * three fields:
1466
+ * err = 1 "Trust/don't trust" boolean. Trust the answer if the
1467
+ * reciprocal condition number is less than the threshold
1468
+ * sqrt(n) * slamch('Epsilon').
1469
+ *
1470
+ * err = 2 "Guaranteed" error bound: The estimated forward error,
1471
+ * almost certainly within a factor of 10 of the true error
1472
+ * so long as the next entry is greater than the threshold
1473
+ * sqrt(n) * slamch('Epsilon'). This error bound should only
1474
+ * be trusted if the previous boolean is true.
1475
+ *
1476
+ * err = 3 Reciprocal condition number: Estimated normwise
1477
+ * reciprocal condition number. Compared with the threshold
1478
+ * sqrt(n) * slamch('Epsilon') to determine if the error
1479
+ * estimate is "guaranteed". These reciprocal condition
1480
+ * numbers are 1 / (norm(Z^{-1},inf) * norm(Z,inf)) for some
1481
+ * appropriately scaled matrix Z.
1482
+ * Let Z = S*A, where S scales each row by a power of the
1483
+ * radix so all absolute row sums of Z are approximately 1.
1484
+ *
1485
+ * See Lapack Working Note 165 for further details and extra
1486
+ * cautions.
1487
+ *
1488
+ * ERR_BNDS_COMP (output) REAL array, dimension (NRHS, N_ERR_BNDS)
1489
+ * For each right-hand side, this array contains information about
1490
+ * various error bounds and condition numbers corresponding to the
1491
+ * componentwise relative error, which is defined as follows:
1492
+ *
1493
+ * Componentwise relative error in the ith solution vector:
1494
+ * abs(XTRUE(j,i) - X(j,i))
1495
+ * max_j ----------------------
1496
+ * abs(X(j,i))
1497
+ *
1498
+ * The array is indexed by the right-hand side i (on which the
1499
+ * componentwise relative error depends), and the type of error
1500
+ * information as described below. There currently are up to three
1501
+ * pieces of information returned for each right-hand side. If
1502
+ * componentwise accuracy is not requested (PARAMS(3) = 0.0), then
1503
+ * ERR_BNDS_COMP is not accessed. If N_ERR_BNDS .LT. 3, then at most
1504
+ * the first (:,N_ERR_BNDS) entries are returned.
1505
+ *
1506
+ * The first index in ERR_BNDS_COMP(i,:) corresponds to the ith
1507
+ * right-hand side.
1508
+ *
1509
+ * The second index in ERR_BNDS_COMP(:,err) contains the following
1510
+ * three fields:
1511
+ * err = 1 "Trust/don't trust" boolean. Trust the answer if the
1512
+ * reciprocal condition number is less than the threshold
1513
+ * sqrt(n) * slamch('Epsilon').
1514
+ *
1515
+ * err = 2 "Guaranteed" error bound: The estimated forward error,
1516
+ * almost certainly within a factor of 10 of the true error
1517
+ * so long as the next entry is greater than the threshold
1518
+ * sqrt(n) * slamch('Epsilon'). This error bound should only
1519
+ * be trusted if the previous boolean is true.
1520
+ *
1521
+ * err = 3 Reciprocal condition number: Estimated componentwise
1522
+ * reciprocal condition number. Compared with the threshold
1523
+ * sqrt(n) * slamch('Epsilon') to determine if the error
1524
+ * estimate is "guaranteed". These reciprocal condition
1525
+ * numbers are 1 / (norm(Z^{-1},inf) * norm(Z,inf)) for some
1526
+ * appropriately scaled matrix Z.
1527
+ * Let Z = S*(A*diag(x)), where x is the solution for the
1528
+ * current right-hand side and S scales each row of
1529
+ * A*diag(x) by a power of the radix so all absolute row
1530
+ * sums of Z are approximately 1.
1531
+ *
1532
+ * See Lapack Working Note 165 for further details and extra
1533
+ * cautions.
1534
+ *
1535
+ * NPARAMS (input) INTEGER
1536
+ * Specifies the number of parameters set in PARAMS. If .LE. 0, the
1537
+ * PARAMS array is never referenced and default values are used.
1538
+ *
1539
+ * PARAMS (input / output) REAL array, dimension NPARAMS
1540
+ * Specifies algorithm parameters. If an entry is .LT. 0.0, then
1541
+ * that entry will be filled with default value used for that
1542
+ * parameter. Only positions up to NPARAMS are accessed; defaults
1543
+ * are used for higher-numbered parameters.
1544
+ *
1545
+ * PARAMS(LA_LINRX_ITREF_I = 1) : Whether to perform iterative
1546
+ * refinement or not.
1547
+ * Default: 1.0
1548
+ * = 0.0 : No refinement is performed, and no error bounds are
1549
+ * computed.
1550
+ * = 1.0 : Use the double-precision refinement algorithm,
1551
+ * possibly with doubled-single computations if the
1552
+ * compilation environment does not support DOUBLE
1553
+ * PRECISION.
1554
+ * (other values are reserved for future use)
1555
+ *
1556
+ * PARAMS(LA_LINRX_ITHRESH_I = 2) : Maximum number of residual
1557
+ * computations allowed for refinement.
1558
+ * Default: 10
1559
+ * Aggressive: Set to 100 to permit convergence using approximate
1560
+ * factorizations or factorizations other than LU. If
1561
+ * the factorization uses a technique other than
1562
+ * Gaussian elimination, the guarantees in
1563
+ * err_bnds_norm and err_bnds_comp may no longer be
1564
+ * trustworthy.
1565
+ *
1566
+ * PARAMS(LA_LINRX_CWISE_I = 3) : Flag determining if the code
1567
+ * will attempt to find a solution with small componentwise
1568
+ * relative error in the double-precision algorithm. Positive
1569
+ * is true, 0.0 is false.
1570
+ * Default: 1.0 (attempt componentwise convergence)
1571
+ *
1572
+ * WORK (workspace) COMPLEX array, dimension (2*N)
1573
+ *
1574
+ * RWORK (workspace) REAL array, dimension (2*N)
1575
+ *
1576
+ * INFO (output) INTEGER
1577
+ * = 0: Successful exit. The solution to every right-hand side is
1578
+ * guaranteed.
1579
+ * < 0: If INFO = -i, the i-th argument had an illegal value
1580
+ * > 0 and <= N: U(INFO,INFO) is exactly zero. The factorization
1581
+ * has been completed, but the factor U is exactly singular, so
1582
+ * the solution and error bounds could not be computed. RCOND = 0
1583
+ * is returned.
1584
+ * = N+J: The solution corresponding to the Jth right-hand side is
1585
+ * not guaranteed. The solutions corresponding to other right-
1586
+ * hand sides K with K > J may not be guaranteed as well, but
1587
+ * only the first such right-hand side is reported. If a small
1588
+ * componentwise error is not requested (PARAMS(3) = 0.0) then
1589
+ * the Jth right-hand side is the first with a normwise error
1590
+ * bound that is not guaranteed (the smallest J such
1591
+ * that ERR_BNDS_NORM(J,1) = 0.0). By default (PARAMS(3) = 1.0)
1592
+ * the Jth right-hand side is the first with either a normwise or
1593
+ * componentwise error bound that is not guaranteed (the smallest
1594
+ * J such that either ERR_BNDS_NORM(J,1) = 0.0 or
1595
+ * ERR_BNDS_COMP(J,1) = 0.0). See the definition of
1596
+ * ERR_BNDS_NORM(:,1) and ERR_BNDS_COMP(:,1). To get information
1597
+ * about all of the right-hand sides check ERR_BNDS_NORM or
1598
+ * ERR_BNDS_COMP.
1599
+ *
1600
+
1601
+ * ==================================================================
1602
+ *
1603
+
1604
+
1605
+ </PRE>
1606
+ <A HREF="#top">go to the page top</A>
1607
+
1608
+ <A NAME="cgbtf2"></A>
1609
+ <H2>cgbtf2</H2>
1610
+ <PRE>
1611
+ USAGE:
1612
+ ipiv, info, ab = NumRu::Lapack.cgbtf2( m, kl, ku, ab, [:usage => usage, :help => help])
1613
+
1614
+
1615
+ FORTRAN MANUAL
1616
+ SUBROUTINE CGBTF2( M, N, KL, KU, AB, LDAB, IPIV, INFO )
1617
+
1618
+ * Purpose
1619
+ * =======
1620
+ *
1621
+ * CGBTF2 computes an LU factorization of a complex m-by-n band matrix
1622
+ * A using partial pivoting with row interchanges.
1623
+ *
1624
+ * This is the unblocked version of the algorithm, calling Level 2 BLAS.
1625
+ *
1626
+
1627
+ * Arguments
1628
+ * =========
1629
+ *
1630
+ * M (input) INTEGER
1631
+ * The number of rows of the matrix A. M >= 0.
1632
+ *
1633
+ * N (input) INTEGER
1634
+ * The number of columns of the matrix A. N >= 0.
1635
+ *
1636
+ * KL (input) INTEGER
1637
+ * The number of subdiagonals within the band of A. KL >= 0.
1638
+ *
1639
+ * KU (input) INTEGER
1640
+ * The number of superdiagonals within the band of A. KU >= 0.
1641
+ *
1642
+ * AB (input/output) COMPLEX array, dimension (LDAB,N)
1643
+ * On entry, the matrix A in band storage, in rows KL+1 to
1644
+ * 2*KL+KU+1; rows 1 to KL of the array need not be set.
1645
+ * The j-th column of A is stored in the j-th column of the
1646
+ * array AB as follows:
1647
+ * AB(kl+ku+1+i-j,j) = A(i,j) for max(1,j-ku)<=i<=min(m,j+kl)
1648
+ *
1649
+ * On exit, details of the factorization: U is stored as an
1650
+ * upper triangular band matrix with KL+KU superdiagonals in
1651
+ * rows 1 to KL+KU+1, and the multipliers used during the
1652
+ * factorization are stored in rows KL+KU+2 to 2*KL+KU+1.
1653
+ * See below for further details.
1654
+ *
1655
+ * LDAB (input) INTEGER
1656
+ * The leading dimension of the array AB. LDAB >= 2*KL+KU+1.
1657
+ *
1658
+ * IPIV (output) INTEGER array, dimension (min(M,N))
1659
+ * The pivot indices; for 1 <= i <= min(M,N), row i of the
1660
+ * matrix was interchanged with row IPIV(i).
1661
+ *
1662
+ * INFO (output) INTEGER
1663
+ * = 0: successful exit
1664
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1665
+ * > 0: if INFO = +i, U(i,i) is exactly zero. The factorization
1666
+ * has been completed, but the factor U is exactly
1667
+ * singular, and division by zero will occur if it is used
1668
+ * to solve a system of equations.
1669
+ *
1670
+
1671
+ * Further Details
1672
+ * ===============
1673
+ *
1674
+ * The band storage scheme is illustrated by the following example, when
1675
+ * M = N = 6, KL = 2, KU = 1:
1676
+ *
1677
+ * On entry: On exit:
1678
+ *
1679
+ * * * * + + + * * * u14 u25 u36
1680
+ * * * + + + + * * u13 u24 u35 u46
1681
+ * * a12 a23 a34 a45 a56 * u12 u23 u34 u45 u56
1682
+ * a11 a22 a33 a44 a55 a66 u11 u22 u33 u44 u55 u66
1683
+ * a21 a32 a43 a54 a65 * m21 m32 m43 m54 m65 *
1684
+ * a31 a42 a53 a64 * * m31 m42 m53 m64 * *
1685
+ *
1686
+ * Array elements marked * are not used by the routine; elements marked
1687
+ * + need not be set on entry, but are required by the routine to store
1688
+ * elements of U, because of fill-in resulting from the row
1689
+ * interchanges.
1690
+ *
1691
+ * =====================================================================
1692
+ *
1693
+
1694
+
1695
+ </PRE>
1696
+ <A HREF="#top">go to the page top</A>
1697
+
1698
+ <A NAME="cgbtrf"></A>
1699
+ <H2>cgbtrf</H2>
1700
+ <PRE>
1701
+ USAGE:
1702
+ ipiv, info, ab = NumRu::Lapack.cgbtrf( m, kl, ku, ab, [:usage => usage, :help => help])
1703
+
1704
+
1705
+ FORTRAN MANUAL
1706
+ SUBROUTINE CGBTRF( M, N, KL, KU, AB, LDAB, IPIV, INFO )
1707
+
1708
+ * Purpose
1709
+ * =======
1710
+ *
1711
+ * CGBTRF computes an LU factorization of a complex m-by-n band matrix A
1712
+ * using partial pivoting with row interchanges.
1713
+ *
1714
+ * This is the blocked version of the algorithm, calling Level 3 BLAS.
1715
+ *
1716
+
1717
+ * Arguments
1718
+ * =========
1719
+ *
1720
+ * M (input) INTEGER
1721
+ * The number of rows of the matrix A. M >= 0.
1722
+ *
1723
+ * N (input) INTEGER
1724
+ * The number of columns of the matrix A. N >= 0.
1725
+ *
1726
+ * KL (input) INTEGER
1727
+ * The number of subdiagonals within the band of A. KL >= 0.
1728
+ *
1729
+ * KU (input) INTEGER
1730
+ * The number of superdiagonals within the band of A. KU >= 0.
1731
+ *
1732
+ * AB (input/output) COMPLEX array, dimension (LDAB,N)
1733
+ * On entry, the matrix A in band storage, in rows KL+1 to
1734
+ * 2*KL+KU+1; rows 1 to KL of the array need not be set.
1735
+ * The j-th column of A is stored in the j-th column of the
1736
+ * array AB as follows:
1737
+ * AB(kl+ku+1+i-j,j) = A(i,j) for max(1,j-ku)<=i<=min(m,j+kl)
1738
+ *
1739
+ * On exit, details of the factorization: U is stored as an
1740
+ * upper triangular band matrix with KL+KU superdiagonals in
1741
+ * rows 1 to KL+KU+1, and the multipliers used during the
1742
+ * factorization are stored in rows KL+KU+2 to 2*KL+KU+1.
1743
+ * See below for further details.
1744
+ *
1745
+ * LDAB (input) INTEGER
1746
+ * The leading dimension of the array AB. LDAB >= 2*KL+KU+1.
1747
+ *
1748
+ * IPIV (output) INTEGER array, dimension (min(M,N))
1749
+ * The pivot indices; for 1 <= i <= min(M,N), row i of the
1750
+ * matrix was interchanged with row IPIV(i).
1751
+ *
1752
+ * INFO (output) INTEGER
1753
+ * = 0: successful exit
1754
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1755
+ * > 0: if INFO = +i, U(i,i) is exactly zero. The factorization
1756
+ * has been completed, but the factor U is exactly
1757
+ * singular, and division by zero will occur if it is used
1758
+ * to solve a system of equations.
1759
+ *
1760
+
1761
+ * Further Details
1762
+ * ===============
1763
+ *
1764
+ * The band storage scheme is illustrated by the following example, when
1765
+ * M = N = 6, KL = 2, KU = 1:
1766
+ *
1767
+ * On entry: On exit:
1768
+ *
1769
+ * * * * + + + * * * u14 u25 u36
1770
+ * * * + + + + * * u13 u24 u35 u46
1771
+ * * a12 a23 a34 a45 a56 * u12 u23 u34 u45 u56
1772
+ * a11 a22 a33 a44 a55 a66 u11 u22 u33 u44 u55 u66
1773
+ * a21 a32 a43 a54 a65 * m21 m32 m43 m54 m65 *
1774
+ * a31 a42 a53 a64 * * m31 m42 m53 m64 * *
1775
+ *
1776
+ * Array elements marked * are not used by the routine; elements marked
1777
+ * + need not be set on entry, but are required by the routine to store
1778
+ * elements of U because of fill-in resulting from the row interchanges.
1779
+ *
1780
+ * =====================================================================
1781
+ *
1782
+
1783
+
1784
+ </PRE>
1785
+ <A HREF="#top">go to the page top</A>
1786
+
1787
+ <A NAME="cgbtrs"></A>
1788
+ <H2>cgbtrs</H2>
1789
+ <PRE>
1790
+ USAGE:
1791
+ info, b = NumRu::Lapack.cgbtrs( trans, kl, ku, ab, ipiv, b, [:usage => usage, :help => help])
1792
+
1793
+
1794
+ FORTRAN MANUAL
1795
+ SUBROUTINE CGBTRS( TRANS, N, KL, KU, NRHS, AB, LDAB, IPIV, B, LDB, INFO )
1796
+
1797
+ * Purpose
1798
+ * =======
1799
+ *
1800
+ * CGBTRS solves a system of linear equations
1801
+ * A * X = B, A**T * X = B, or A**H * X = B
1802
+ * with a general band matrix A using the LU factorization computed
1803
+ * by CGBTRF.
1804
+ *
1805
+
1806
+ * Arguments
1807
+ * =========
1808
+ *
1809
+ * TRANS (input) CHARACTER*1
1810
+ * Specifies the form of the system of equations.
1811
+ * = 'N': A * X = B (No transpose)
1812
+ * = 'T': A**T * X = B (Transpose)
1813
+ * = 'C': A**H * X = B (Conjugate transpose)
1814
+ *
1815
+ * N (input) INTEGER
1816
+ * The order of the matrix A. N >= 0.
1817
+ *
1818
+ * KL (input) INTEGER
1819
+ * The number of subdiagonals within the band of A. KL >= 0.
1820
+ *
1821
+ * KU (input) INTEGER
1822
+ * The number of superdiagonals within the band of A. KU >= 0.
1823
+ *
1824
+ * NRHS (input) INTEGER
1825
+ * The number of right hand sides, i.e., the number of columns
1826
+ * of the matrix B. NRHS >= 0.
1827
+ *
1828
+ * AB (input) COMPLEX array, dimension (LDAB,N)
1829
+ * Details of the LU factorization of the band matrix A, as
1830
+ * computed by CGBTRF. U is stored as an upper triangular band
1831
+ * matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and
1832
+ * the multipliers used during the factorization are stored in
1833
+ * rows KL+KU+2 to 2*KL+KU+1.
1834
+ *
1835
+ * LDAB (input) INTEGER
1836
+ * The leading dimension of the array AB. LDAB >= 2*KL+KU+1.
1837
+ *
1838
+ * IPIV (input) INTEGER array, dimension (N)
1839
+ * The pivot indices; for 1 <= i <= N, row i of the matrix was
1840
+ * interchanged with row IPIV(i).
1841
+ *
1842
+ * B (input/output) COMPLEX array, dimension (LDB,NRHS)
1843
+ * On entry, the right hand side matrix B.
1844
+ * On exit, the solution matrix X.
1845
+ *
1846
+ * LDB (input) INTEGER
1847
+ * The leading dimension of the array B. LDB >= max(1,N).
1848
+ *
1849
+ * INFO (output) INTEGER
1850
+ * = 0: successful exit
1851
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1852
+ *
1853
+
1854
+ * =====================================================================
1855
+ *
1856
+
1857
+
1858
+ </PRE>
1859
+ <A HREF="#top">go to the page top</A>
1860
+
1861
+ <HR />
1862
+ <A HREF="c.html">back to matrix types</A><BR>
1863
+ <A HREF="c.html">back to data types</A>
1864
+ </BODY>
1865
+ </HTML>