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/chg.html ADDED
@@ -0,0 +1,201 @@
1
+ <HTML>
2
+ <HEAD>
3
+ <TITLE>COMPLEX routines for upper Hessenberg matrix, generalized problem (i.e a Hessenberg and a triangular matrix) matrix</TITLE>
4
+ </HEAD>
5
+ <BODY>
6
+ <A NAME="top"></A>
7
+ <H1>COMPLEX routines for upper Hessenberg matrix, generalized problem (i.e a Hessenberg and a triangular matrix) matrix</H1>
8
+ <UL>
9
+ <LI><A HREF="#chgeqz">chgeqz</A></LI>
10
+ </UL>
11
+
12
+ <A NAME="chgeqz"></A>
13
+ <H2>chgeqz</H2>
14
+ <PRE>
15
+ USAGE:
16
+ alpha, beta, work, info, h, t, q, z = NumRu::Lapack.chgeqz( job, compq, compz, ilo, ihi, h, t, q, z, [:lwork => lwork, :usage => usage, :help => help])
17
+
18
+
19
+ FORTRAN MANUAL
20
+ SUBROUTINE CHGEQZ( JOB, COMPQ, COMPZ, N, ILO, IHI, H, LDH, T, LDT, ALPHA, BETA, Q, LDQ, Z, LDZ, WORK, LWORK, RWORK, INFO )
21
+
22
+ * Purpose
23
+ * =======
24
+ *
25
+ * CHGEQZ computes the eigenvalues of a complex matrix pair (H,T),
26
+ * where H is an upper Hessenberg matrix and T is upper triangular,
27
+ * using the single-shift QZ method.
28
+ * Matrix pairs of this type are produced by the reduction to
29
+ * generalized upper Hessenberg form of a complex matrix pair (A,B):
30
+ *
31
+ * A = Q1*H*Z1**H, B = Q1*T*Z1**H,
32
+ *
33
+ * as computed by CGGHRD.
34
+ *
35
+ * If JOB='S', then the Hessenberg-triangular pair (H,T) is
36
+ * also reduced to generalized Schur form,
37
+ *
38
+ * H = Q*S*Z**H, T = Q*P*Z**H,
39
+ *
40
+ * where Q and Z are unitary matrices and S and P are upper triangular.
41
+ *
42
+ * Optionally, the unitary matrix Q from the generalized Schur
43
+ * factorization may be postmultiplied into an input matrix Q1, and the
44
+ * unitary matrix Z may be postmultiplied into an input matrix Z1.
45
+ * If Q1 and Z1 are the unitary matrices from CGGHRD that reduced
46
+ * the matrix pair (A,B) to generalized Hessenberg form, then the output
47
+ * matrices Q1*Q and Z1*Z are the unitary factors from the generalized
48
+ * Schur factorization of (A,B):
49
+ *
50
+ * A = (Q1*Q)*S*(Z1*Z)**H, B = (Q1*Q)*P*(Z1*Z)**H.
51
+ *
52
+ * To avoid overflow, eigenvalues of the matrix pair (H,T)
53
+ * (equivalently, of (A,B)) are computed as a pair of complex values
54
+ * (alpha,beta). If beta is nonzero, lambda = alpha / beta is an
55
+ * eigenvalue of the generalized nonsymmetric eigenvalue problem (GNEP)
56
+ * A*x = lambda*B*x
57
+ * and if alpha is nonzero, mu = beta / alpha is an eigenvalue of the
58
+ * alternate form of the GNEP
59
+ * mu*A*y = B*y.
60
+ * The values of alpha and beta for the i-th eigenvalue can be read
61
+ * directly from the generalized Schur form: alpha = S(i,i),
62
+ * beta = P(i,i).
63
+ *
64
+ * Ref: C.B. Moler & G.W. Stewart, "An Algorithm for Generalized Matrix
65
+ * Eigenvalue Problems", SIAM J. Numer. Anal., 10(1973),
66
+ * pp. 241--256.
67
+ *
68
+
69
+ * Arguments
70
+ * =========
71
+ *
72
+ * JOB (input) CHARACTER*1
73
+ * = 'E': Compute eigenvalues only;
74
+ * = 'S': Computer eigenvalues and the Schur form.
75
+ *
76
+ * COMPQ (input) CHARACTER*1
77
+ * = 'N': Left Schur vectors (Q) are not computed;
78
+ * = 'I': Q is initialized to the unit matrix and the matrix Q
79
+ * of left Schur vectors of (H,T) is returned;
80
+ * = 'V': Q must contain a unitary matrix Q1 on entry and
81
+ * the product Q1*Q is returned.
82
+ *
83
+ * COMPZ (input) CHARACTER*1
84
+ * = 'N': Right Schur vectors (Z) are not computed;
85
+ * = 'I': Q is initialized to the unit matrix and the matrix Z
86
+ * of right Schur vectors of (H,T) is returned;
87
+ * = 'V': Z must contain a unitary matrix Z1 on entry and
88
+ * the product Z1*Z is returned.
89
+ *
90
+ * N (input) INTEGER
91
+ * The order of the matrices H, T, Q, and Z. N >= 0.
92
+ *
93
+ * ILO (input) INTEGER
94
+ * IHI (input) INTEGER
95
+ * ILO and IHI mark the rows and columns of H which are in
96
+ * Hessenberg form. It is assumed that A is already upper
97
+ * triangular in rows and columns 1:ILO-1 and IHI+1:N.
98
+ * If N > 0, 1 <= ILO <= IHI <= N; if N = 0, ILO=1 and IHI=0.
99
+ *
100
+ * H (input/output) COMPLEX array, dimension (LDH, N)
101
+ * On entry, the N-by-N upper Hessenberg matrix H.
102
+ * On exit, if JOB = 'S', H contains the upper triangular
103
+ * matrix S from the generalized Schur factorization.
104
+ * If JOB = 'E', the diagonal of H matches that of S, but
105
+ * the rest of H is unspecified.
106
+ *
107
+ * LDH (input) INTEGER
108
+ * The leading dimension of the array H. LDH >= max( 1, N ).
109
+ *
110
+ * T (input/output) COMPLEX array, dimension (LDT, N)
111
+ * On entry, the N-by-N upper triangular matrix T.
112
+ * On exit, if JOB = 'S', T contains the upper triangular
113
+ * matrix P from the generalized Schur factorization.
114
+ * If JOB = 'E', the diagonal of T matches that of P, but
115
+ * the rest of T is unspecified.
116
+ *
117
+ * LDT (input) INTEGER
118
+ * The leading dimension of the array T. LDT >= max( 1, N ).
119
+ *
120
+ * ALPHA (output) COMPLEX array, dimension (N)
121
+ * The complex scalars alpha that define the eigenvalues of
122
+ * GNEP. ALPHA(i) = S(i,i) in the generalized Schur
123
+ * factorization.
124
+ *
125
+ * BETA (output) COMPLEX array, dimension (N)
126
+ * The real non-negative scalars beta that define the
127
+ * eigenvalues of GNEP. BETA(i) = P(i,i) in the generalized
128
+ * Schur factorization.
129
+ *
130
+ * Together, the quantities alpha = ALPHA(j) and beta = BETA(j)
131
+ * represent the j-th eigenvalue of the matrix pair (A,B), in
132
+ * one of the forms lambda = alpha/beta or mu = beta/alpha.
133
+ * Since either lambda or mu may overflow, they should not,
134
+ * in general, be computed.
135
+ *
136
+ * Q (input/output) COMPLEX array, dimension (LDQ, N)
137
+ * On entry, if COMPZ = 'V', the unitary matrix Q1 used in the
138
+ * reduction of (A,B) to generalized Hessenberg form.
139
+ * On exit, if COMPZ = 'I', the unitary matrix of left Schur
140
+ * vectors of (H,T), and if COMPZ = 'V', the unitary matrix of
141
+ * left Schur vectors of (A,B).
142
+ * Not referenced if COMPZ = 'N'.
143
+ *
144
+ * LDQ (input) INTEGER
145
+ * The leading dimension of the array Q. LDQ >= 1.
146
+ * If COMPQ='V' or 'I', then LDQ >= N.
147
+ *
148
+ * Z (input/output) COMPLEX array, dimension (LDZ, N)
149
+ * On entry, if COMPZ = 'V', the unitary matrix Z1 used in the
150
+ * reduction of (A,B) to generalized Hessenberg form.
151
+ * On exit, if COMPZ = 'I', the unitary matrix of right Schur
152
+ * vectors of (H,T), and if COMPZ = 'V', the unitary matrix of
153
+ * right Schur vectors of (A,B).
154
+ * Not referenced if COMPZ = 'N'.
155
+ *
156
+ * LDZ (input) INTEGER
157
+ * The leading dimension of the array Z. LDZ >= 1.
158
+ * If COMPZ='V' or 'I', then LDZ >= N.
159
+ *
160
+ * WORK (workspace/output) COMPLEX array, dimension (MAX(1,LWORK))
161
+ * On exit, if INFO >= 0, WORK(1) returns the optimal LWORK.
162
+ *
163
+ * LWORK (input) INTEGER
164
+ * The dimension of the array WORK. LWORK >= max(1,N).
165
+ *
166
+ * If LWORK = -1, then a workspace query is assumed; the routine
167
+ * only calculates the optimal size of the WORK array, returns
168
+ * this value as the first entry of the WORK array, and no error
169
+ * message related to LWORK is issued by XERBLA.
170
+ *
171
+ * RWORK (workspace) REAL array, dimension (N)
172
+ *
173
+ * INFO (output) INTEGER
174
+ * = 0: successful exit
175
+ * < 0: if INFO = -i, the i-th argument had an illegal value
176
+ * = 1,...,N: the QZ iteration did not converge. (H,T) is not
177
+ * in Schur form, but ALPHA(i) and BETA(i),
178
+ * i=INFO+1,...,N should be correct.
179
+ * = N+1,...,2*N: the shift calculation failed. (H,T) is not
180
+ * in Schur form, but ALPHA(i) and BETA(i),
181
+ * i=INFO-N+1,...,N should be correct.
182
+ *
183
+
184
+ * Further Details
185
+ * ===============
186
+ *
187
+ * We assume that complex ABS works as long as its value is less than
188
+ * overflow.
189
+ *
190
+ * =====================================================================
191
+ *
192
+
193
+
194
+ </PRE>
195
+ <A HREF="#top">go to the page top</A>
196
+
197
+ <HR />
198
+ <A HREF="c.html">back to matrix types</A><BR>
199
+ <A HREF="c.html">back to data types</A>
200
+ </BODY>
201
+ </HTML>
data/doc/chp.html ADDED
@@ -0,0 +1,1696 @@
1
+ <HTML>
2
+ <HEAD>
3
+ <TITLE>COMPLEX routines for (complex) Hermitian, packed storage matrix</TITLE>
4
+ </HEAD>
5
+ <BODY>
6
+ <A NAME="top"></A>
7
+ <H1>COMPLEX routines for (complex) Hermitian, packed storage matrix</H1>
8
+ <UL>
9
+ <LI><A HREF="#chpcon">chpcon</A></LI>
10
+ <LI><A HREF="#chpev">chpev</A></LI>
11
+ <LI><A HREF="#chpevd">chpevd</A></LI>
12
+ <LI><A HREF="#chpevx">chpevx</A></LI>
13
+ <LI><A HREF="#chpgst">chpgst</A></LI>
14
+ <LI><A HREF="#chpgv">chpgv</A></LI>
15
+ <LI><A HREF="#chpgvd">chpgvd</A></LI>
16
+ <LI><A HREF="#chpgvx">chpgvx</A></LI>
17
+ <LI><A HREF="#chprfs">chprfs</A></LI>
18
+ <LI><A HREF="#chpsv">chpsv</A></LI>
19
+ <LI><A HREF="#chpsvx">chpsvx</A></LI>
20
+ <LI><A HREF="#chptrd">chptrd</A></LI>
21
+ <LI><A HREF="#chptrf">chptrf</A></LI>
22
+ <LI><A HREF="#chptri">chptri</A></LI>
23
+ <LI><A HREF="#chptrs">chptrs</A></LI>
24
+ </UL>
25
+
26
+ <A NAME="chpcon"></A>
27
+ <H2>chpcon</H2>
28
+ <PRE>
29
+ USAGE:
30
+ rcond, info = NumRu::Lapack.chpcon( uplo, ap, ipiv, anorm, [:usage => usage, :help => help])
31
+
32
+
33
+ FORTRAN MANUAL
34
+ SUBROUTINE CHPCON( UPLO, N, AP, IPIV, ANORM, RCOND, WORK, INFO )
35
+
36
+ * Purpose
37
+ * =======
38
+ *
39
+ * CHPCON estimates the reciprocal of the condition number of a complex
40
+ * Hermitian packed matrix A using the factorization A = U*D*U**H or
41
+ * A = L*D*L**H computed by CHPTRF.
42
+ *
43
+ * An estimate is obtained for norm(inv(A)), and the reciprocal of the
44
+ * condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).
45
+ *
46
+
47
+ * Arguments
48
+ * =========
49
+ *
50
+ * UPLO (input) CHARACTER*1
51
+ * Specifies whether the details of the factorization are stored
52
+ * as an upper or lower triangular matrix.
53
+ * = 'U': Upper triangular, form is A = U*D*U**H;
54
+ * = 'L': Lower triangular, form is A = L*D*L**H.
55
+ *
56
+ * N (input) INTEGER
57
+ * The order of the matrix A. N >= 0.
58
+ *
59
+ * AP (input) COMPLEX array, dimension (N*(N+1)/2)
60
+ * The block diagonal matrix D and the multipliers used to
61
+ * obtain the factor U or L as computed by CHPTRF, stored as a
62
+ * packed triangular matrix.
63
+ *
64
+ * IPIV (input) INTEGER array, dimension (N)
65
+ * Details of the interchanges and the block structure of D
66
+ * as determined by CHPTRF.
67
+ *
68
+ * ANORM (input) REAL
69
+ * The 1-norm of the original matrix A.
70
+ *
71
+ * RCOND (output) REAL
72
+ * The reciprocal of the condition number of the matrix A,
73
+ * computed as RCOND = 1/(ANORM * AINVNM), where AINVNM is an
74
+ * estimate of the 1-norm of inv(A) computed in this routine.
75
+ *
76
+ * WORK (workspace) COMPLEX array, dimension (2*N)
77
+ *
78
+ * INFO (output) INTEGER
79
+ * = 0: successful exit
80
+ * < 0: if INFO = -i, the i-th argument had an illegal value
81
+ *
82
+
83
+ * =====================================================================
84
+ *
85
+
86
+
87
+ </PRE>
88
+ <A HREF="#top">go to the page top</A>
89
+
90
+ <A NAME="chpev"></A>
91
+ <H2>chpev</H2>
92
+ <PRE>
93
+ USAGE:
94
+ w, z, info, ap = NumRu::Lapack.chpev( jobz, uplo, ap, [:usage => usage, :help => help])
95
+
96
+
97
+ FORTRAN MANUAL
98
+ SUBROUTINE CHPEV( JOBZ, UPLO, N, AP, W, Z, LDZ, WORK, RWORK, INFO )
99
+
100
+ * Purpose
101
+ * =======
102
+ *
103
+ * CHPEV computes all the eigenvalues and, optionally, eigenvectors of a
104
+ * complex Hermitian matrix in packed storage.
105
+ *
106
+
107
+ * Arguments
108
+ * =========
109
+ *
110
+ * JOBZ (input) CHARACTER*1
111
+ * = 'N': Compute eigenvalues only;
112
+ * = 'V': Compute eigenvalues and eigenvectors.
113
+ *
114
+ * UPLO (input) CHARACTER*1
115
+ * = 'U': Upper triangle of A is stored;
116
+ * = 'L': Lower triangle of A is stored.
117
+ *
118
+ * N (input) INTEGER
119
+ * The order of the matrix A. N >= 0.
120
+ *
121
+ * AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
122
+ * On entry, the upper or lower triangle of the Hermitian matrix
123
+ * A, packed columnwise in a linear array. The j-th column of A
124
+ * is stored in the array AP as follows:
125
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
126
+ * if UPLO = 'L', AP(i + (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.
127
+ *
128
+ * On exit, AP is overwritten by values generated during the
129
+ * reduction to tridiagonal form. If UPLO = 'U', the diagonal
130
+ * and first superdiagonal of the tridiagonal matrix T overwrite
131
+ * the corresponding elements of A, and if UPLO = 'L', the
132
+ * diagonal and first subdiagonal of T overwrite the
133
+ * corresponding elements of A.
134
+ *
135
+ * W (output) REAL array, dimension (N)
136
+ * If INFO = 0, the eigenvalues in ascending order.
137
+ *
138
+ * Z (output) COMPLEX array, dimension (LDZ, N)
139
+ * If JOBZ = 'V', then if INFO = 0, Z contains the orthonormal
140
+ * eigenvectors of the matrix A, with the i-th column of Z
141
+ * holding the eigenvector associated with W(i).
142
+ * If JOBZ = 'N', then Z is not referenced.
143
+ *
144
+ * LDZ (input) INTEGER
145
+ * The leading dimension of the array Z. LDZ >= 1, and if
146
+ * JOBZ = 'V', LDZ >= max(1,N).
147
+ *
148
+ * WORK (workspace) COMPLEX array, dimension (max(1, 2*N-1))
149
+ *
150
+ * RWORK (workspace) REAL array, dimension (max(1, 3*N-2))
151
+ *
152
+ * INFO (output) INTEGER
153
+ * = 0: successful exit.
154
+ * < 0: if INFO = -i, the i-th argument had an illegal value.
155
+ * > 0: if INFO = i, the algorithm failed to converge; i
156
+ * off-diagonal elements of an intermediate tridiagonal
157
+ * form did not converge to zero.
158
+ *
159
+
160
+ * =====================================================================
161
+ *
162
+
163
+
164
+ </PRE>
165
+ <A HREF="#top">go to the page top</A>
166
+
167
+ <A NAME="chpevd"></A>
168
+ <H2>chpevd</H2>
169
+ <PRE>
170
+ USAGE:
171
+ w, z, work, rwork, iwork, info, ap = NumRu::Lapack.chpevd( jobz, uplo, ap, [:lwork => lwork, :lrwork => lrwork, :liwork => liwork, :usage => usage, :help => help])
172
+
173
+
174
+ FORTRAN MANUAL
175
+ SUBROUTINE CHPEVD( JOBZ, UPLO, N, AP, W, Z, LDZ, WORK, LWORK, RWORK, LRWORK, IWORK, LIWORK, INFO )
176
+
177
+ * Purpose
178
+ * =======
179
+ *
180
+ * CHPEVD computes all the eigenvalues and, optionally, eigenvectors of
181
+ * a complex Hermitian matrix A in packed storage. If eigenvectors are
182
+ * desired, it uses a divide and conquer algorithm.
183
+ *
184
+ * The divide and conquer algorithm makes very mild assumptions about
185
+ * floating point arithmetic. It will work on machines with a guard
186
+ * digit in add/subtract, or on those binary machines without guard
187
+ * digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
188
+ * Cray-2. It could conceivably fail on hexadecimal or decimal machines
189
+ * without guard digits, but we know of none.
190
+ *
191
+
192
+ * Arguments
193
+ * =========
194
+ *
195
+ * JOBZ (input) CHARACTER*1
196
+ * = 'N': Compute eigenvalues only;
197
+ * = 'V': Compute eigenvalues and eigenvectors.
198
+ *
199
+ * UPLO (input) CHARACTER*1
200
+ * = 'U': Upper triangle of A is stored;
201
+ * = 'L': Lower triangle of A is stored.
202
+ *
203
+ * N (input) INTEGER
204
+ * The order of the matrix A. N >= 0.
205
+ *
206
+ * AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
207
+ * On entry, the upper or lower triangle of the Hermitian matrix
208
+ * A, packed columnwise in a linear array. The j-th column of A
209
+ * is stored in the array AP as follows:
210
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
211
+ * if UPLO = 'L', AP(i + (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.
212
+ *
213
+ * On exit, AP is overwritten by values generated during the
214
+ * reduction to tridiagonal form. If UPLO = 'U', the diagonal
215
+ * and first superdiagonal of the tridiagonal matrix T overwrite
216
+ * the corresponding elements of A, and if UPLO = 'L', the
217
+ * diagonal and first subdiagonal of T overwrite the
218
+ * corresponding elements of A.
219
+ *
220
+ * W (output) REAL array, dimension (N)
221
+ * If INFO = 0, the eigenvalues in ascending order.
222
+ *
223
+ * Z (output) COMPLEX array, dimension (LDZ, N)
224
+ * If JOBZ = 'V', then if INFO = 0, Z contains the orthonormal
225
+ * eigenvectors of the matrix A, with the i-th column of Z
226
+ * holding the eigenvector associated with W(i).
227
+ * If JOBZ = 'N', then Z is not referenced.
228
+ *
229
+ * LDZ (input) INTEGER
230
+ * The leading dimension of the array Z. LDZ >= 1, and if
231
+ * JOBZ = 'V', LDZ >= max(1,N).
232
+ *
233
+ * WORK (workspace/output) COMPLEX array, dimension (MAX(1,LWORK))
234
+ * On exit, if INFO = 0, WORK(1) returns the required LWORK.
235
+ *
236
+ * LWORK (input) INTEGER
237
+ * The dimension of array WORK.
238
+ * If N <= 1, LWORK must be at least 1.
239
+ * If JOBZ = 'N' and N > 1, LWORK must be at least N.
240
+ * If JOBZ = 'V' and N > 1, LWORK must be at least 2*N.
241
+ *
242
+ * If LWORK = -1, then a workspace query is assumed; the routine
243
+ * only calculates the required sizes of the WORK, RWORK and
244
+ * IWORK arrays, returns these values as the first entries of
245
+ * the WORK, RWORK and IWORK arrays, and no error message
246
+ * related to LWORK or LRWORK or LIWORK is issued by XERBLA.
247
+ *
248
+ * RWORK (workspace/output) REAL array, dimension (MAX(1,LRWORK))
249
+ * On exit, if INFO = 0, RWORK(1) returns the required LRWORK.
250
+ *
251
+ * LRWORK (input) INTEGER
252
+ * The dimension of array RWORK.
253
+ * If N <= 1, LRWORK must be at least 1.
254
+ * If JOBZ = 'N' and N > 1, LRWORK must be at least N.
255
+ * If JOBZ = 'V' and N > 1, LRWORK must be at least
256
+ * 1 + 5*N + 2*N**2.
257
+ *
258
+ * If LRWORK = -1, then a workspace query is assumed; the
259
+ * routine only calculates the required sizes of the WORK, RWORK
260
+ * and IWORK arrays, returns these values as the first entries
261
+ * of the WORK, RWORK and IWORK arrays, and no error message
262
+ * related to LWORK or LRWORK or LIWORK is issued by XERBLA.
263
+ *
264
+ * IWORK (workspace/output) INTEGER array, dimension (MAX(1,LIWORK))
265
+ * On exit, if INFO = 0, IWORK(1) returns the required LIWORK.
266
+ *
267
+ * LIWORK (input) INTEGER
268
+ * The dimension of array IWORK.
269
+ * If JOBZ = 'N' or N <= 1, LIWORK must be at least 1.
270
+ * If JOBZ = 'V' and N > 1, LIWORK must be at least 3 + 5*N.
271
+ *
272
+ * If LIWORK = -1, then a workspace query is assumed; the
273
+ * routine only calculates the required sizes of the WORK, RWORK
274
+ * and IWORK arrays, returns these values as the first entries
275
+ * of the WORK, RWORK and IWORK arrays, and no error message
276
+ * related to LWORK or LRWORK or LIWORK is issued by XERBLA.
277
+ *
278
+ * INFO (output) INTEGER
279
+ * = 0: successful exit
280
+ * < 0: if INFO = -i, the i-th argument had an illegal value.
281
+ * > 0: if INFO = i, the algorithm failed to converge; i
282
+ * off-diagonal elements of an intermediate tridiagonal
283
+ * form did not converge to zero.
284
+ *
285
+
286
+ * =====================================================================
287
+ *
288
+
289
+
290
+ </PRE>
291
+ <A HREF="#top">go to the page top</A>
292
+
293
+ <A NAME="chpevx"></A>
294
+ <H2>chpevx</H2>
295
+ <PRE>
296
+ USAGE:
297
+ m, w, z, ifail, info, ap = NumRu::Lapack.chpevx( jobz, range, uplo, ap, vl, vu, il, iu, abstol, [:usage => usage, :help => help])
298
+
299
+
300
+ FORTRAN MANUAL
301
+ SUBROUTINE CHPEVX( JOBZ, RANGE, UPLO, N, AP, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, WORK, RWORK, IWORK, IFAIL, INFO )
302
+
303
+ * Purpose
304
+ * =======
305
+ *
306
+ * CHPEVX computes selected eigenvalues and, optionally, eigenvectors
307
+ * of a complex Hermitian matrix A in packed storage.
308
+ * Eigenvalues/vectors can be selected by specifying either a range of
309
+ * values or a range of indices for the desired eigenvalues.
310
+ *
311
+
312
+ * Arguments
313
+ * =========
314
+ *
315
+ * JOBZ (input) CHARACTER*1
316
+ * = 'N': Compute eigenvalues only;
317
+ * = 'V': Compute eigenvalues and eigenvectors.
318
+ *
319
+ * RANGE (input) CHARACTER*1
320
+ * = 'A': all eigenvalues will be found;
321
+ * = 'V': all eigenvalues in the half-open interval (VL,VU]
322
+ * will be found;
323
+ * = 'I': the IL-th through IU-th eigenvalues will be found.
324
+ *
325
+ * UPLO (input) CHARACTER*1
326
+ * = 'U': Upper triangle of A is stored;
327
+ * = 'L': Lower triangle of A is stored.
328
+ *
329
+ * N (input) INTEGER
330
+ * The order of the matrix A. N >= 0.
331
+ *
332
+ * AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
333
+ * On entry, the upper or lower triangle of the Hermitian matrix
334
+ * A, packed columnwise in a linear array. The j-th column of A
335
+ * is stored in the array AP as follows:
336
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
337
+ * if UPLO = 'L', AP(i + (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.
338
+ *
339
+ * On exit, AP is overwritten by values generated during the
340
+ * reduction to tridiagonal form. If UPLO = 'U', the diagonal
341
+ * and first superdiagonal of the tridiagonal matrix T overwrite
342
+ * the corresponding elements of A, and if UPLO = 'L', the
343
+ * diagonal and first subdiagonal of T overwrite the
344
+ * corresponding elements of A.
345
+ *
346
+ * VL (input) REAL
347
+ * VU (input) REAL
348
+ * If RANGE='V', the lower and upper bounds of the interval to
349
+ * be searched for eigenvalues. VL < VU.
350
+ * Not referenced if RANGE = 'A' or 'I'.
351
+ *
352
+ * IL (input) INTEGER
353
+ * IU (input) INTEGER
354
+ * If RANGE='I', the indices (in ascending order) of the
355
+ * smallest and largest eigenvalues to be returned.
356
+ * 1 <= IL <= IU <= N, if N > 0; IL = 1 and IU = 0 if N = 0.
357
+ * Not referenced if RANGE = 'A' or 'V'.
358
+ *
359
+ * ABSTOL (input) REAL
360
+ * The absolute error tolerance for the eigenvalues.
361
+ * An approximate eigenvalue is accepted as converged
362
+ * when it is determined to lie in an interval [a,b]
363
+ * of width less than or equal to
364
+ *
365
+ * ABSTOL + EPS * max( |a|,|b| ) ,
366
+ *
367
+ * where EPS is the machine precision. If ABSTOL is less than
368
+ * or equal to zero, then EPS*|T| will be used in its place,
369
+ * where |T| is the 1-norm of the tridiagonal matrix obtained
370
+ * by reducing AP to tridiagonal form.
371
+ *
372
+ * Eigenvalues will be computed most accurately when ABSTOL is
373
+ * set to twice the underflow threshold 2*SLAMCH('S'), not zero.
374
+ * If this routine returns with INFO>0, indicating that some
375
+ * eigenvectors did not converge, try setting ABSTOL to
376
+ * 2*SLAMCH('S').
377
+ *
378
+ * See "Computing Small Singular Values of Bidiagonal Matrices
379
+ * with Guaranteed High Relative Accuracy," by Demmel and
380
+ * Kahan, LAPACK Working Note #3.
381
+ *
382
+ * M (output) INTEGER
383
+ * The total number of eigenvalues found. 0 <= M <= N.
384
+ * If RANGE = 'A', M = N, and if RANGE = 'I', M = IU-IL+1.
385
+ *
386
+ * W (output) REAL array, dimension (N)
387
+ * If INFO = 0, the selected eigenvalues in ascending order.
388
+ *
389
+ * Z (output) COMPLEX array, dimension (LDZ, max(1,M))
390
+ * If JOBZ = 'V', then if INFO = 0, the first M columns of Z
391
+ * contain the orthonormal eigenvectors of the matrix A
392
+ * corresponding to the selected eigenvalues, with the i-th
393
+ * column of Z holding the eigenvector associated with W(i).
394
+ * If an eigenvector fails to converge, then that column of Z
395
+ * contains the latest approximation to the eigenvector, and
396
+ * the index of the eigenvector is returned in IFAIL.
397
+ * If JOBZ = 'N', then Z is not referenced.
398
+ * Note: the user must ensure that at least max(1,M) columns are
399
+ * supplied in the array Z; if RANGE = 'V', the exact value of M
400
+ * is not known in advance and an upper bound must be used.
401
+ *
402
+ * LDZ (input) INTEGER
403
+ * The leading dimension of the array Z. LDZ >= 1, and if
404
+ * JOBZ = 'V', LDZ >= max(1,N).
405
+ *
406
+ * WORK (workspace) COMPLEX array, dimension (2*N)
407
+ *
408
+ * RWORK (workspace) REAL array, dimension (7*N)
409
+ *
410
+ * IWORK (workspace) INTEGER array, dimension (5*N)
411
+ *
412
+ * IFAIL (output) INTEGER array, dimension (N)
413
+ * If JOBZ = 'V', then if INFO = 0, the first M elements of
414
+ * IFAIL are zero. If INFO > 0, then IFAIL contains the
415
+ * indices of the eigenvectors that failed to converge.
416
+ * If JOBZ = 'N', then IFAIL is not referenced.
417
+ *
418
+ * INFO (output) INTEGER
419
+ * = 0: successful exit
420
+ * < 0: if INFO = -i, the i-th argument had an illegal value
421
+ * > 0: if INFO = i, then i eigenvectors failed to converge.
422
+ * Their indices are stored in array IFAIL.
423
+ *
424
+
425
+ * =====================================================================
426
+ *
427
+
428
+
429
+ </PRE>
430
+ <A HREF="#top">go to the page top</A>
431
+
432
+ <A NAME="chpgst"></A>
433
+ <H2>chpgst</H2>
434
+ <PRE>
435
+ USAGE:
436
+ info, ap = NumRu::Lapack.chpgst( itype, uplo, n, ap, bp, [:usage => usage, :help => help])
437
+
438
+
439
+ FORTRAN MANUAL
440
+ SUBROUTINE CHPGST( ITYPE, UPLO, N, AP, BP, INFO )
441
+
442
+ * Purpose
443
+ * =======
444
+ *
445
+ * CHPGST reduces a complex Hermitian-definite generalized
446
+ * eigenproblem to standard form, using packed storage.
447
+ *
448
+ * If ITYPE = 1, the problem is A*x = lambda*B*x,
449
+ * and A is overwritten by inv(U**H)*A*inv(U) or inv(L)*A*inv(L**H)
450
+ *
451
+ * If ITYPE = 2 or 3, the problem is A*B*x = lambda*x or
452
+ * B*A*x = lambda*x, and A is overwritten by U*A*U**H or L**H*A*L.
453
+ *
454
+ * B must have been previously factorized as U**H*U or L*L**H by CPPTRF.
455
+ *
456
+
457
+ * Arguments
458
+ * =========
459
+ *
460
+ * ITYPE (input) INTEGER
461
+ * = 1: compute inv(U**H)*A*inv(U) or inv(L)*A*inv(L**H);
462
+ * = 2 or 3: compute U*A*U**H or L**H*A*L.
463
+ *
464
+ * UPLO (input) CHARACTER*1
465
+ * = 'U': Upper triangle of A is stored and B is factored as
466
+ * U**H*U;
467
+ * = 'L': Lower triangle of A is stored and B is factored as
468
+ * L*L**H.
469
+ *
470
+ * N (input) INTEGER
471
+ * The order of the matrices A and B. N >= 0.
472
+ *
473
+ * AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
474
+ * On entry, the upper or lower triangle of the Hermitian matrix
475
+ * A, packed columnwise in a linear array. The j-th column of A
476
+ * is stored in the array AP as follows:
477
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
478
+ * if UPLO = 'L', AP(i + (j-1)*(2n-j)/2) = A(i,j) for j<=i<=n.
479
+ *
480
+ * On exit, if INFO = 0, the transformed matrix, stored in the
481
+ * same format as A.
482
+ *
483
+ * BP (input) COMPLEX array, dimension (N*(N+1)/2)
484
+ * The triangular factor from the Cholesky factorization of B,
485
+ * stored in the same format as A, as returned by CPPTRF.
486
+ *
487
+ * INFO (output) INTEGER
488
+ * = 0: successful exit
489
+ * < 0: if INFO = -i, the i-th argument had an illegal value
490
+ *
491
+
492
+ * =====================================================================
493
+ *
494
+
495
+
496
+ </PRE>
497
+ <A HREF="#top">go to the page top</A>
498
+
499
+ <A NAME="chpgv"></A>
500
+ <H2>chpgv</H2>
501
+ <PRE>
502
+ USAGE:
503
+ w, z, info, ap, bp = NumRu::Lapack.chpgv( itype, jobz, uplo, ap, bp, [:usage => usage, :help => help])
504
+
505
+
506
+ FORTRAN MANUAL
507
+ SUBROUTINE CHPGV( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK, RWORK, INFO )
508
+
509
+ * Purpose
510
+ * =======
511
+ *
512
+ * CHPGV computes all the eigenvalues and, optionally, the eigenvectors
513
+ * of a complex generalized Hermitian-definite eigenproblem, of the form
514
+ * A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x.
515
+ * Here A and B are assumed to be Hermitian, stored in packed format,
516
+ * and B is also positive definite.
517
+ *
518
+
519
+ * Arguments
520
+ * =========
521
+ *
522
+ * ITYPE (input) INTEGER
523
+ * Specifies the problem type to be solved:
524
+ * = 1: A*x = (lambda)*B*x
525
+ * = 2: A*B*x = (lambda)*x
526
+ * = 3: B*A*x = (lambda)*x
527
+ *
528
+ * JOBZ (input) CHARACTER*1
529
+ * = 'N': Compute eigenvalues only;
530
+ * = 'V': Compute eigenvalues and eigenvectors.
531
+ *
532
+ * UPLO (input) CHARACTER*1
533
+ * = 'U': Upper triangles of A and B are stored;
534
+ * = 'L': Lower triangles of A and B are stored.
535
+ *
536
+ * N (input) INTEGER
537
+ * The order of the matrices A and B. N >= 0.
538
+ *
539
+ * AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
540
+ * On entry, the upper or lower triangle of the Hermitian matrix
541
+ * A, packed columnwise in a linear array. The j-th column of A
542
+ * is stored in the array AP as follows:
543
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
544
+ * if UPLO = 'L', AP(i + (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.
545
+ *
546
+ * On exit, the contents of AP are destroyed.
547
+ *
548
+ * BP (input/output) COMPLEX array, dimension (N*(N+1)/2)
549
+ * On entry, the upper or lower triangle of the Hermitian matrix
550
+ * B, packed columnwise in a linear array. The j-th column of B
551
+ * is stored in the array BP as follows:
552
+ * if UPLO = 'U', BP(i + (j-1)*j/2) = B(i,j) for 1<=i<=j;
553
+ * if UPLO = 'L', BP(i + (j-1)*(2*n-j)/2) = B(i,j) for j<=i<=n.
554
+ *
555
+ * On exit, the triangular factor U or L from the Cholesky
556
+ * factorization B = U**H*U or B = L*L**H, in the same storage
557
+ * format as B.
558
+ *
559
+ * W (output) REAL array, dimension (N)
560
+ * If INFO = 0, the eigenvalues in ascending order.
561
+ *
562
+ * Z (output) COMPLEX array, dimension (LDZ, N)
563
+ * If JOBZ = 'V', then if INFO = 0, Z contains the matrix Z of
564
+ * eigenvectors. The eigenvectors are normalized as follows:
565
+ * if ITYPE = 1 or 2, Z**H*B*Z = I;
566
+ * if ITYPE = 3, Z**H*inv(B)*Z = I.
567
+ * If JOBZ = 'N', then Z is not referenced.
568
+ *
569
+ * LDZ (input) INTEGER
570
+ * The leading dimension of the array Z. LDZ >= 1, and if
571
+ * JOBZ = 'V', LDZ >= max(1,N).
572
+ *
573
+ * WORK (workspace) COMPLEX array, dimension (max(1, 2*N-1))
574
+ *
575
+ * RWORK (workspace) REAL array, dimension (max(1, 3*N-2))
576
+ *
577
+ * INFO (output) INTEGER
578
+ * = 0: successful exit
579
+ * < 0: if INFO = -i, the i-th argument had an illegal value
580
+ * > 0: CPPTRF or CHPEV returned an error code:
581
+ * <= N: if INFO = i, CHPEV failed to converge;
582
+ * i off-diagonal elements of an intermediate
583
+ * tridiagonal form did not convergeto zero;
584
+ * > N: if INFO = N + i, for 1 <= i <= n, then the leading
585
+ * minor of order i of B is not positive definite.
586
+ * The factorization of B could not be completed and
587
+ * no eigenvalues or eigenvectors were computed.
588
+ *
589
+
590
+ * =====================================================================
591
+ *
592
+ * .. Local Scalars ..
593
+ LOGICAL UPPER, WANTZ
594
+ CHARACTER TRANS
595
+ INTEGER J, NEIG
596
+ * ..
597
+ * .. External Functions ..
598
+ LOGICAL LSAME
599
+ EXTERNAL LSAME
600
+ * ..
601
+ * .. External Subroutines ..
602
+ EXTERNAL CHPEV, CHPGST, CPPTRF, CTPMV, CTPSV, XERBLA
603
+ * ..
604
+
605
+
606
+ </PRE>
607
+ <A HREF="#top">go to the page top</A>
608
+
609
+ <A NAME="chpgvd"></A>
610
+ <H2>chpgvd</H2>
611
+ <PRE>
612
+ USAGE:
613
+ w, z, iwork, info, ap, bp = NumRu::Lapack.chpgvd( itype, jobz, uplo, ap, bp, [:lwork => lwork, :lrwork => lrwork, :liwork => liwork, :usage => usage, :help => help])
614
+
615
+
616
+ FORTRAN MANUAL
617
+ SUBROUTINE CHPGVD( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK, LWORK, RWORK, LRWORK, IWORK, LIWORK, INFO )
618
+
619
+ * Purpose
620
+ * =======
621
+ *
622
+ * CHPGVD computes all the eigenvalues and, optionally, the eigenvectors
623
+ * of a complex generalized Hermitian-definite eigenproblem, of the form
624
+ * A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x. Here A and
625
+ * B are assumed to be Hermitian, stored in packed format, and B is also
626
+ * positive definite.
627
+ * If eigenvectors are desired, it uses a divide and conquer algorithm.
628
+ *
629
+ * The divide and conquer algorithm makes very mild assumptions about
630
+ * floating point arithmetic. It will work on machines with a guard
631
+ * digit in add/subtract, or on those binary machines without guard
632
+ * digits which subtract like the Cray X-MP, Cray Y-MP, Cray C-90, or
633
+ * Cray-2. It could conceivably fail on hexadecimal or decimal machines
634
+ * without guard digits, but we know of none.
635
+ *
636
+
637
+ * Arguments
638
+ * =========
639
+ *
640
+ * ITYPE (input) INTEGER
641
+ * Specifies the problem type to be solved:
642
+ * = 1: A*x = (lambda)*B*x
643
+ * = 2: A*B*x = (lambda)*x
644
+ * = 3: B*A*x = (lambda)*x
645
+ *
646
+ * JOBZ (input) CHARACTER*1
647
+ * = 'N': Compute eigenvalues only;
648
+ * = 'V': Compute eigenvalues and eigenvectors.
649
+ *
650
+ * UPLO (input) CHARACTER*1
651
+ * = 'U': Upper triangles of A and B are stored;
652
+ * = 'L': Lower triangles of A and B are stored.
653
+ *
654
+ * N (input) INTEGER
655
+ * The order of the matrices A and B. N >= 0.
656
+ *
657
+ * AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
658
+ * On entry, the upper or lower triangle of the Hermitian matrix
659
+ * A, packed columnwise in a linear array. The j-th column of A
660
+ * is stored in the array AP as follows:
661
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
662
+ * if UPLO = 'L', AP(i + (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.
663
+ *
664
+ * On exit, the contents of AP are destroyed.
665
+ *
666
+ * BP (input/output) COMPLEX array, dimension (N*(N+1)/2)
667
+ * On entry, the upper or lower triangle of the Hermitian matrix
668
+ * B, packed columnwise in a linear array. The j-th column of B
669
+ * is stored in the array BP as follows:
670
+ * if UPLO = 'U', BP(i + (j-1)*j/2) = B(i,j) for 1<=i<=j;
671
+ * if UPLO = 'L', BP(i + (j-1)*(2*n-j)/2) = B(i,j) for j<=i<=n.
672
+ *
673
+ * On exit, the triangular factor U or L from the Cholesky
674
+ * factorization B = U**H*U or B = L*L**H, in the same storage
675
+ * format as B.
676
+ *
677
+ * W (output) REAL array, dimension (N)
678
+ * If INFO = 0, the eigenvalues in ascending order.
679
+ *
680
+ * Z (output) COMPLEX array, dimension (LDZ, N)
681
+ * If JOBZ = 'V', then if INFO = 0, Z contains the matrix Z of
682
+ * eigenvectors. The eigenvectors are normalized as follows:
683
+ * if ITYPE = 1 or 2, Z**H*B*Z = I;
684
+ * if ITYPE = 3, Z**H*inv(B)*Z = I.
685
+ * If JOBZ = 'N', then Z is not referenced.
686
+ *
687
+ * LDZ (input) INTEGER
688
+ * The leading dimension of the array Z. LDZ >= 1, and if
689
+ * JOBZ = 'V', LDZ >= max(1,N).
690
+ *
691
+ * WORK (workspace) COMPLEX array, dimension (MAX(1,LWORK))
692
+ * On exit, if INFO = 0, WORK(1) returns the required LWORK.
693
+ *
694
+ * LWORK (input) INTEGER
695
+ * The dimension of array WORK.
696
+ * If N <= 1, LWORK >= 1.
697
+ * If JOBZ = 'N' and N > 1, LWORK >= N.
698
+ * If JOBZ = 'V' and N > 1, LWORK >= 2*N.
699
+ *
700
+ * If LWORK = -1, then a workspace query is assumed; the routine
701
+ * only calculates the required sizes of the WORK, RWORK and
702
+ * IWORK arrays, returns these values as the first entries of
703
+ * the WORK, RWORK and IWORK arrays, and no error message
704
+ * related to LWORK or LRWORK or LIWORK is issued by XERBLA.
705
+ *
706
+ * RWORK (workspace) REAL array, dimension (MAX(1,LRWORK))
707
+ * On exit, if INFO = 0, RWORK(1) returns the required LRWORK.
708
+ *
709
+ * LRWORK (input) INTEGER
710
+ * The dimension of array RWORK.
711
+ * If N <= 1, LRWORK >= 1.
712
+ * If JOBZ = 'N' and N > 1, LRWORK >= N.
713
+ * If JOBZ = 'V' and N > 1, LRWORK >= 1 + 5*N + 2*N**2.
714
+ *
715
+ * If LRWORK = -1, then a workspace query is assumed; the
716
+ * routine only calculates the required sizes of the WORK, RWORK
717
+ * and IWORK arrays, returns these values as the first entries
718
+ * of the WORK, RWORK and IWORK arrays, and no error message
719
+ * related to LWORK or LRWORK or LIWORK is issued by XERBLA.
720
+ *
721
+ * IWORK (workspace/output) INTEGER array, dimension (MAX(1,LIWORK))
722
+ * On exit, if INFO = 0, IWORK(1) returns the required LIWORK.
723
+ *
724
+ * LIWORK (input) INTEGER
725
+ * The dimension of array IWORK.
726
+ * If JOBZ = 'N' or N <= 1, LIWORK >= 1.
727
+ * If JOBZ = 'V' and N > 1, LIWORK >= 3 + 5*N.
728
+ *
729
+ * If LIWORK = -1, then a workspace query is assumed; the
730
+ * routine only calculates the required sizes of the WORK, RWORK
731
+ * and IWORK arrays, returns these values as the first entries
732
+ * of the WORK, RWORK and IWORK arrays, and no error message
733
+ * related to LWORK or LRWORK or LIWORK is issued by XERBLA.
734
+ *
735
+ * INFO (output) INTEGER
736
+ * = 0: successful exit
737
+ * < 0: if INFO = -i, the i-th argument had an illegal value
738
+ * > 0: CPPTRF or CHPEVD returned an error code:
739
+ * <= N: if INFO = i, CHPEVD failed to converge;
740
+ * i off-diagonal elements of an intermediate
741
+ * tridiagonal form did not convergeto zero;
742
+ * > N: if INFO = N + i, for 1 <= i <= n, then the leading
743
+ * minor of order i of B is not positive definite.
744
+ * The factorization of B could not be completed and
745
+ * no eigenvalues or eigenvectors were computed.
746
+ *
747
+
748
+ * Further Details
749
+ * ===============
750
+ *
751
+ * Based on contributions by
752
+ * Mark Fahey, Department of Mathematics, Univ. of Kentucky, USA
753
+ *
754
+ * =====================================================================
755
+ *
756
+ * .. Local Scalars ..
757
+ LOGICAL LQUERY, UPPER, WANTZ
758
+ CHARACTER TRANS
759
+ INTEGER J, LIWMIN, LRWMIN, LWMIN, NEIG
760
+ * ..
761
+ * .. External Functions ..
762
+ LOGICAL LSAME
763
+ EXTERNAL LSAME
764
+ * ..
765
+ * .. External Subroutines ..
766
+ EXTERNAL CHPEVD, CHPGST, CPPTRF, CTPMV, CTPSV, XERBLA
767
+ * ..
768
+ * .. Intrinsic Functions ..
769
+ INTRINSIC MAX, REAL
770
+ * ..
771
+
772
+
773
+ </PRE>
774
+ <A HREF="#top">go to the page top</A>
775
+
776
+ <A NAME="chpgvx"></A>
777
+ <H2>chpgvx</H2>
778
+ <PRE>
779
+ USAGE:
780
+ m, w, z, ifail, info, ap, bp = NumRu::Lapack.chpgvx( itype, jobz, range, uplo, ap, bp, vl, vu, il, iu, abstol, [:usage => usage, :help => help])
781
+
782
+
783
+ FORTRAN MANUAL
784
+ SUBROUTINE CHPGVX( ITYPE, JOBZ, RANGE, UPLO, N, AP, BP, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, WORK, RWORK, IWORK, IFAIL, INFO )
785
+
786
+ * Purpose
787
+ * =======
788
+ *
789
+ * CHPGVX computes selected eigenvalues and, optionally, eigenvectors
790
+ * of a complex generalized Hermitian-definite eigenproblem, of the form
791
+ * A*x=(lambda)*B*x, A*Bx=(lambda)*x, or B*A*x=(lambda)*x. Here A and
792
+ * B are assumed to be Hermitian, stored in packed format, and B is also
793
+ * positive definite. Eigenvalues and eigenvectors can be selected by
794
+ * specifying either a range of values or a range of indices for the
795
+ * desired eigenvalues.
796
+ *
797
+
798
+ * Arguments
799
+ * =========
800
+ *
801
+ * ITYPE (input) INTEGER
802
+ * Specifies the problem type to be solved:
803
+ * = 1: A*x = (lambda)*B*x
804
+ * = 2: A*B*x = (lambda)*x
805
+ * = 3: B*A*x = (lambda)*x
806
+ *
807
+ * JOBZ (input) CHARACTER*1
808
+ * = 'N': Compute eigenvalues only;
809
+ * = 'V': Compute eigenvalues and eigenvectors.
810
+ *
811
+ * RANGE (input) CHARACTER*1
812
+ * = 'A': all eigenvalues will be found;
813
+ * = 'V': all eigenvalues in the half-open interval (VL,VU]
814
+ * will be found;
815
+ * = 'I': the IL-th through IU-th eigenvalues will be found.
816
+ *
817
+ * UPLO (input) CHARACTER*1
818
+ * = 'U': Upper triangles of A and B are stored;
819
+ * = 'L': Lower triangles of A and B are stored.
820
+ *
821
+ * N (input) INTEGER
822
+ * The order of the matrices A and B. N >= 0.
823
+ *
824
+ * AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
825
+ * On entry, the upper or lower triangle of the Hermitian matrix
826
+ * A, packed columnwise in a linear array. The j-th column of A
827
+ * is stored in the array AP as follows:
828
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
829
+ * if UPLO = 'L', AP(i + (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.
830
+ *
831
+ * On exit, the contents of AP are destroyed.
832
+ *
833
+ * BP (input/output) COMPLEX array, dimension (N*(N+1)/2)
834
+ * On entry, the upper or lower triangle of the Hermitian matrix
835
+ * B, packed columnwise in a linear array. The j-th column of B
836
+ * is stored in the array BP as follows:
837
+ * if UPLO = 'U', BP(i + (j-1)*j/2) = B(i,j) for 1<=i<=j;
838
+ * if UPLO = 'L', BP(i + (j-1)*(2*n-j)/2) = B(i,j) for j<=i<=n.
839
+ *
840
+ * On exit, the triangular factor U or L from the Cholesky
841
+ * factorization B = U**H*U or B = L*L**H, in the same storage
842
+ * format as B.
843
+ *
844
+ * VL (input) REAL
845
+ * VU (input) REAL
846
+ * If RANGE='V', the lower and upper bounds of the interval to
847
+ * be searched for eigenvalues. VL < VU.
848
+ * Not referenced if RANGE = 'A' or 'I'.
849
+ *
850
+ * IL (input) INTEGER
851
+ * IU (input) INTEGER
852
+ * If RANGE='I', the indices (in ascending order) of the
853
+ * smallest and largest eigenvalues to be returned.
854
+ * 1 <= IL <= IU <= N, if N > 0; IL = 1 and IU = 0 if N = 0.
855
+ * Not referenced if RANGE = 'A' or 'V'.
856
+ *
857
+ * ABSTOL (input) REAL
858
+ * The absolute error tolerance for the eigenvalues.
859
+ * An approximate eigenvalue is accepted as converged
860
+ * when it is determined to lie in an interval [a,b]
861
+ * of width less than or equal to
862
+ *
863
+ * ABSTOL + EPS * max( |a|,|b| ) ,
864
+ *
865
+ * where EPS is the machine precision. If ABSTOL is less than
866
+ * or equal to zero, then EPS*|T| will be used in its place,
867
+ * where |T| is the 1-norm of the tridiagonal matrix obtained
868
+ * by reducing AP to tridiagonal form.
869
+ *
870
+ * Eigenvalues will be computed most accurately when ABSTOL is
871
+ * set to twice the underflow threshold 2*SLAMCH('S'), not zero.
872
+ * If this routine returns with INFO>0, indicating that some
873
+ * eigenvectors did not converge, try setting ABSTOL to
874
+ * 2*SLAMCH('S').
875
+ *
876
+ * M (output) INTEGER
877
+ * The total number of eigenvalues found. 0 <= M <= N.
878
+ * If RANGE = 'A', M = N, and if RANGE = 'I', M = IU-IL+1.
879
+ *
880
+ * W (output) REAL array, dimension (N)
881
+ * On normal exit, the first M elements contain the selected
882
+ * eigenvalues in ascending order.
883
+ *
884
+ * Z (output) COMPLEX array, dimension (LDZ, N)
885
+ * If JOBZ = 'N', then Z is not referenced.
886
+ * If JOBZ = 'V', then if INFO = 0, the first M columns of Z
887
+ * contain the orthonormal eigenvectors of the matrix A
888
+ * corresponding to the selected eigenvalues, with the i-th
889
+ * column of Z holding the eigenvector associated with W(i).
890
+ * The eigenvectors are normalized as follows:
891
+ * if ITYPE = 1 or 2, Z**H*B*Z = I;
892
+ * if ITYPE = 3, Z**H*inv(B)*Z = I.
893
+ *
894
+ * If an eigenvector fails to converge, then that column of Z
895
+ * contains the latest approximation to the eigenvector, and the
896
+ * index of the eigenvector is returned in IFAIL.
897
+ * Note: the user must ensure that at least max(1,M) columns are
898
+ * supplied in the array Z; if RANGE = 'V', the exact value of M
899
+ * is not known in advance and an upper bound must be used.
900
+ *
901
+ * LDZ (input) INTEGER
902
+ * The leading dimension of the array Z. LDZ >= 1, and if
903
+ * JOBZ = 'V', LDZ >= max(1,N).
904
+ *
905
+ * WORK (workspace) COMPLEX array, dimension (2*N)
906
+ *
907
+ * RWORK (workspace) REAL array, dimension (7*N)
908
+ *
909
+ * IWORK (workspace) INTEGER array, dimension (5*N)
910
+ *
911
+ * IFAIL (output) INTEGER array, dimension (N)
912
+ * If JOBZ = 'V', then if INFO = 0, the first M elements of
913
+ * IFAIL are zero. If INFO > 0, then IFAIL contains the
914
+ * indices of the eigenvectors that failed to converge.
915
+ * If JOBZ = 'N', then IFAIL is not referenced.
916
+ *
917
+ * INFO (output) INTEGER
918
+ * = 0: successful exit
919
+ * < 0: if INFO = -i, the i-th argument had an illegal value
920
+ * > 0: CPPTRF or CHPEVX returned an error code:
921
+ * <= N: if INFO = i, CHPEVX failed to converge;
922
+ * i eigenvectors failed to converge. Their indices
923
+ * are stored in array IFAIL.
924
+ * > N: if INFO = N + i, for 1 <= i <= n, then the leading
925
+ * minor of order i of B is not positive definite.
926
+ * The factorization of B could not be completed and
927
+ * no eigenvalues or eigenvectors were computed.
928
+ *
929
+
930
+ * Further Details
931
+ * ===============
932
+ *
933
+ * Based on contributions by
934
+ * Mark Fahey, Department of Mathematics, Univ. of Kentucky, USA
935
+ *
936
+ * =====================================================================
937
+ *
938
+ * .. Local Scalars ..
939
+ LOGICAL ALLEIG, INDEIG, UPPER, VALEIG, WANTZ
940
+ CHARACTER TRANS
941
+ INTEGER J
942
+ * ..
943
+ * .. External Functions ..
944
+ LOGICAL LSAME
945
+ EXTERNAL LSAME
946
+ * ..
947
+ * .. External Subroutines ..
948
+ EXTERNAL CHPEVX, CHPGST, CPPTRF, CTPMV, CTPSV, XERBLA
949
+ * ..
950
+ * .. Intrinsic Functions ..
951
+ INTRINSIC MIN
952
+ * ..
953
+
954
+
955
+ </PRE>
956
+ <A HREF="#top">go to the page top</A>
957
+
958
+ <A NAME="chprfs"></A>
959
+ <H2>chprfs</H2>
960
+ <PRE>
961
+ USAGE:
962
+ ferr, berr, info, x = NumRu::Lapack.chprfs( uplo, ap, afp, ipiv, b, x, [:usage => usage, :help => help])
963
+
964
+
965
+ FORTRAN MANUAL
966
+ SUBROUTINE CHPRFS( UPLO, N, NRHS, AP, AFP, IPIV, B, LDB, X, LDX, FERR, BERR, WORK, RWORK, INFO )
967
+
968
+ * Purpose
969
+ * =======
970
+ *
971
+ * CHPRFS improves the computed solution to a system of linear
972
+ * equations when the coefficient matrix is Hermitian indefinite
973
+ * and packed, and provides error bounds and backward error estimates
974
+ * for the solution.
975
+ *
976
+
977
+ * Arguments
978
+ * =========
979
+ *
980
+ * UPLO (input) CHARACTER*1
981
+ * = 'U': Upper triangle of A is stored;
982
+ * = 'L': Lower triangle of A is stored.
983
+ *
984
+ * N (input) INTEGER
985
+ * The order of the matrix A. N >= 0.
986
+ *
987
+ * NRHS (input) INTEGER
988
+ * The number of right hand sides, i.e., the number of columns
989
+ * of the matrices B and X. NRHS >= 0.
990
+ *
991
+ * AP (input) COMPLEX array, dimension (N*(N+1)/2)
992
+ * The upper or lower triangle of the Hermitian matrix A, packed
993
+ * columnwise in a linear array. The j-th column of A is stored
994
+ * in the array AP as follows:
995
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
996
+ * if UPLO = 'L', AP(i + (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.
997
+ *
998
+ * AFP (input) COMPLEX array, dimension (N*(N+1)/2)
999
+ * The factored form of the matrix A. AFP contains the block
1000
+ * diagonal matrix D and the multipliers used to obtain the
1001
+ * factor U or L from the factorization A = U*D*U**H or
1002
+ * A = L*D*L**H as computed by CHPTRF, stored as a packed
1003
+ * triangular matrix.
1004
+ *
1005
+ * IPIV (input) INTEGER array, dimension (N)
1006
+ * Details of the interchanges and the block structure of D
1007
+ * as determined by CHPTRF.
1008
+ *
1009
+ * B (input) COMPLEX array, dimension (LDB,NRHS)
1010
+ * The right hand side matrix B.
1011
+ *
1012
+ * LDB (input) INTEGER
1013
+ * The leading dimension of the array B. LDB >= max(1,N).
1014
+ *
1015
+ * X (input/output) COMPLEX array, dimension (LDX,NRHS)
1016
+ * On entry, the solution matrix X, as computed by CHPTRS.
1017
+ * On exit, the improved solution matrix X.
1018
+ *
1019
+ * LDX (input) INTEGER
1020
+ * The leading dimension of the array X. LDX >= max(1,N).
1021
+ *
1022
+ * FERR (output) REAL array, dimension (NRHS)
1023
+ * The estimated forward error bound for each solution vector
1024
+ * X(j) (the j-th column of the solution matrix X).
1025
+ * If XTRUE is the true solution corresponding to X(j), FERR(j)
1026
+ * is an estimated upper bound for the magnitude of the largest
1027
+ * element in (X(j) - XTRUE) divided by the magnitude of the
1028
+ * largest element in X(j). The estimate is as reliable as
1029
+ * the estimate for RCOND, and is almost always a slight
1030
+ * overestimate of the true error.
1031
+ *
1032
+ * BERR (output) REAL array, dimension (NRHS)
1033
+ * The componentwise relative backward error of each solution
1034
+ * vector X(j) (i.e., the smallest relative change in
1035
+ * any element of A or B that makes X(j) an exact solution).
1036
+ *
1037
+ * WORK (workspace) COMPLEX array, dimension (2*N)
1038
+ *
1039
+ * RWORK (workspace) REAL array, dimension (N)
1040
+ *
1041
+ * INFO (output) INTEGER
1042
+ * = 0: successful exit
1043
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1044
+ *
1045
+ * Internal Parameters
1046
+ * ===================
1047
+ *
1048
+ * ITMAX is the maximum number of steps of iterative refinement.
1049
+ *
1050
+
1051
+ * =====================================================================
1052
+ *
1053
+
1054
+
1055
+ </PRE>
1056
+ <A HREF="#top">go to the page top</A>
1057
+
1058
+ <A NAME="chpsv"></A>
1059
+ <H2>chpsv</H2>
1060
+ <PRE>
1061
+ USAGE:
1062
+ ipiv, info, ap, b = NumRu::Lapack.chpsv( uplo, ap, b, [:usage => usage, :help => help])
1063
+
1064
+
1065
+ FORTRAN MANUAL
1066
+ SUBROUTINE CHPSV( UPLO, N, NRHS, AP, IPIV, B, LDB, INFO )
1067
+
1068
+ * Purpose
1069
+ * =======
1070
+ *
1071
+ * CHPSV computes the solution to a complex system of linear equations
1072
+ * A * X = B,
1073
+ * where A is an N-by-N Hermitian matrix stored in packed format and X
1074
+ * and B are N-by-NRHS matrices.
1075
+ *
1076
+ * The diagonal pivoting method is used to factor A as
1077
+ * A = U * D * U**H, if UPLO = 'U', or
1078
+ * A = L * D * L**H, if UPLO = 'L',
1079
+ * where U (or L) is a product of permutation and unit upper (lower)
1080
+ * triangular matrices, D is Hermitian and block diagonal with 1-by-1
1081
+ * and 2-by-2 diagonal blocks. The factored form of A is then used to
1082
+ * solve the system of equations A * X = B.
1083
+ *
1084
+
1085
+ * Arguments
1086
+ * =========
1087
+ *
1088
+ * UPLO (input) CHARACTER*1
1089
+ * = 'U': Upper triangle of A is stored;
1090
+ * = 'L': Lower triangle of A is stored.
1091
+ *
1092
+ * N (input) INTEGER
1093
+ * The number of linear equations, i.e., the order of the
1094
+ * matrix A. N >= 0.
1095
+ *
1096
+ * NRHS (input) INTEGER
1097
+ * The number of right hand sides, i.e., the number of columns
1098
+ * of the matrix B. NRHS >= 0.
1099
+ *
1100
+ * AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
1101
+ * On entry, the upper or lower triangle of the Hermitian matrix
1102
+ * A, packed columnwise in a linear array. The j-th column of A
1103
+ * is stored in the array AP as follows:
1104
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
1105
+ * if UPLO = 'L', AP(i + (j-1)*(2n-j)/2) = A(i,j) for j<=i<=n.
1106
+ * See below for further details.
1107
+ *
1108
+ * On exit, the block diagonal matrix D and the multipliers used
1109
+ * to obtain the factor U or L from the factorization
1110
+ * A = U*D*U**H or A = L*D*L**H as computed by CHPTRF, stored as
1111
+ * a packed triangular matrix in the same storage format as A.
1112
+ *
1113
+ * IPIV (output) INTEGER array, dimension (N)
1114
+ * Details of the interchanges and the block structure of D, as
1115
+ * determined by CHPTRF. If IPIV(k) > 0, then rows and columns
1116
+ * k and IPIV(k) were interchanged, and D(k,k) is a 1-by-1
1117
+ * diagonal block. If UPLO = 'U' and IPIV(k) = IPIV(k-1) < 0,
1118
+ * then rows and columns k-1 and -IPIV(k) were interchanged and
1119
+ * D(k-1:k,k-1:k) is a 2-by-2 diagonal block. If UPLO = 'L' and
1120
+ * IPIV(k) = IPIV(k+1) < 0, then rows and columns k+1 and
1121
+ * -IPIV(k) were interchanged and D(k:k+1,k:k+1) is a 2-by-2
1122
+ * diagonal block.
1123
+ *
1124
+ * B (input/output) COMPLEX array, dimension (LDB,NRHS)
1125
+ * On entry, the N-by-NRHS right hand side matrix B.
1126
+ * On exit, if INFO = 0, the N-by-NRHS solution matrix X.
1127
+ *
1128
+ * LDB (input) INTEGER
1129
+ * The leading dimension of the array B. LDB >= max(1,N).
1130
+ *
1131
+ * INFO (output) INTEGER
1132
+ * = 0: successful exit
1133
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1134
+ * > 0: if INFO = i, D(i,i) is exactly zero. The factorization
1135
+ * has been completed, but the block diagonal matrix D is
1136
+ * exactly singular, so the solution could not be
1137
+ * computed.
1138
+ *
1139
+
1140
+ * Further Details
1141
+ * ===============
1142
+ *
1143
+ * The packed storage scheme is illustrated by the following example
1144
+ * when N = 4, UPLO = 'U':
1145
+ *
1146
+ * Two-dimensional storage of the Hermitian matrix A:
1147
+ *
1148
+ * a11 a12 a13 a14
1149
+ * a22 a23 a24
1150
+ * a33 a34 (aij = conjg(aji))
1151
+ * a44
1152
+ *
1153
+ * Packed storage of the upper triangle of A:
1154
+ *
1155
+ * AP = [ a11, a12, a22, a13, a23, a33, a14, a24, a34, a44 ]
1156
+ *
1157
+ * =====================================================================
1158
+ *
1159
+ * .. External Functions ..
1160
+ LOGICAL LSAME
1161
+ EXTERNAL LSAME
1162
+ * ..
1163
+ * .. External Subroutines ..
1164
+ EXTERNAL CHPTRF, CHPTRS, XERBLA
1165
+ * ..
1166
+ * .. Intrinsic Functions ..
1167
+ INTRINSIC MAX
1168
+ * ..
1169
+
1170
+
1171
+ </PRE>
1172
+ <A HREF="#top">go to the page top</A>
1173
+
1174
+ <A NAME="chpsvx"></A>
1175
+ <H2>chpsvx</H2>
1176
+ <PRE>
1177
+ USAGE:
1178
+ x, rcond, ferr, berr, info, afp, ipiv = NumRu::Lapack.chpsvx( fact, uplo, ap, afp, ipiv, b, [:usage => usage, :help => help])
1179
+
1180
+
1181
+ FORTRAN MANUAL
1182
+ SUBROUTINE CHPSVX( FACT, UPLO, N, NRHS, AP, AFP, IPIV, B, LDB, X, LDX, RCOND, FERR, BERR, WORK, RWORK, INFO )
1183
+
1184
+ * Purpose
1185
+ * =======
1186
+ *
1187
+ * CHPSVX uses the diagonal pivoting factorization A = U*D*U**H or
1188
+ * A = L*D*L**H to compute the solution to a complex system of linear
1189
+ * equations A * X = B, where A is an N-by-N Hermitian matrix stored
1190
+ * in packed format and X and B are N-by-NRHS matrices.
1191
+ *
1192
+ * Error bounds on the solution and a condition estimate are also
1193
+ * provided.
1194
+ *
1195
+ * Description
1196
+ * ===========
1197
+ *
1198
+ * The following steps are performed:
1199
+ *
1200
+ * 1. If FACT = 'N', the diagonal pivoting method is used to factor A as
1201
+ * A = U * D * U**H, if UPLO = 'U', or
1202
+ * A = L * D * L**H, if UPLO = 'L',
1203
+ * where U (or L) is a product of permutation and unit upper (lower)
1204
+ * triangular matrices and D is Hermitian and block diagonal with
1205
+ * 1-by-1 and 2-by-2 diagonal blocks.
1206
+ *
1207
+ * 2. If some D(i,i)=0, so that D is exactly singular, then the routine
1208
+ * returns with INFO = i. Otherwise, the factored form of A is used
1209
+ * to estimate the condition number of the matrix A. If the
1210
+ * reciprocal of the condition number is less than machine precision,
1211
+ * INFO = N+1 is returned as a warning, but the routine still goes on
1212
+ * to solve for X and compute error bounds as described below.
1213
+ *
1214
+ * 3. The system of equations is solved for X using the factored form
1215
+ * of A.
1216
+ *
1217
+ * 4. Iterative refinement is applied to improve the computed solution
1218
+ * matrix and calculate error bounds and backward error estimates
1219
+ * for it.
1220
+ *
1221
+
1222
+ * Arguments
1223
+ * =========
1224
+ *
1225
+ * FACT (input) CHARACTER*1
1226
+ * Specifies whether or not the factored form of A has been
1227
+ * supplied on entry.
1228
+ * = 'F': On entry, AFP and IPIV contain the factored form of
1229
+ * A. AFP and IPIV will not be modified.
1230
+ * = 'N': The matrix A will be copied to AFP and factored.
1231
+ *
1232
+ * UPLO (input) CHARACTER*1
1233
+ * = 'U': Upper triangle of A is stored;
1234
+ * = 'L': Lower triangle of A is stored.
1235
+ *
1236
+ * N (input) INTEGER
1237
+ * The number of linear equations, i.e., the order of the
1238
+ * matrix A. N >= 0.
1239
+ *
1240
+ * NRHS (input) INTEGER
1241
+ * The number of right hand sides, i.e., the number of columns
1242
+ * of the matrices B and X. NRHS >= 0.
1243
+ *
1244
+ * AP (input) COMPLEX array, dimension (N*(N+1)/2)
1245
+ * The upper or lower triangle of the Hermitian matrix A, packed
1246
+ * columnwise in a linear array. The j-th column of A is stored
1247
+ * in the array AP as follows:
1248
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
1249
+ * if UPLO = 'L', AP(i + (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.
1250
+ * See below for further details.
1251
+ *
1252
+ * AFP (input or output) COMPLEX array, dimension (N*(N+1)/2)
1253
+ * If FACT = 'F', then AFP is an input argument and on entry
1254
+ * contains the block diagonal matrix D and the multipliers used
1255
+ * to obtain the factor U or L from the factorization
1256
+ * A = U*D*U**H or A = L*D*L**H as computed by CHPTRF, stored as
1257
+ * a packed triangular matrix in the same storage format as A.
1258
+ *
1259
+ * If FACT = 'N', then AFP is an output argument and on exit
1260
+ * contains the block diagonal matrix D and the multipliers used
1261
+ * to obtain the factor U or L from the factorization
1262
+ * A = U*D*U**H or A = L*D*L**H as computed by CHPTRF, stored as
1263
+ * a packed triangular matrix in the same storage format as A.
1264
+ *
1265
+ * IPIV (input or output) INTEGER array, dimension (N)
1266
+ * If FACT = 'F', then IPIV is an input argument and on entry
1267
+ * contains details of the interchanges and the block structure
1268
+ * of D, as determined by CHPTRF.
1269
+ * If IPIV(k) > 0, then rows and columns k and IPIV(k) were
1270
+ * interchanged and D(k,k) is a 1-by-1 diagonal block.
1271
+ * If UPLO = 'U' and IPIV(k) = IPIV(k-1) < 0, then rows and
1272
+ * columns k-1 and -IPIV(k) were interchanged and D(k-1:k,k-1:k)
1273
+ * is a 2-by-2 diagonal block. If UPLO = 'L' and IPIV(k) =
1274
+ * IPIV(k+1) < 0, then rows and columns k+1 and -IPIV(k) were
1275
+ * interchanged and D(k:k+1,k:k+1) is a 2-by-2 diagonal block.
1276
+ *
1277
+ * If FACT = 'N', then IPIV is an output argument and on exit
1278
+ * contains details of the interchanges and the block structure
1279
+ * of D, as determined by CHPTRF.
1280
+ *
1281
+ * B (input) COMPLEX array, dimension (LDB,NRHS)
1282
+ * The N-by-NRHS right hand side matrix B.
1283
+ *
1284
+ * LDB (input) INTEGER
1285
+ * The leading dimension of the array B. LDB >= max(1,N).
1286
+ *
1287
+ * X (output) COMPLEX array, dimension (LDX,NRHS)
1288
+ * If INFO = 0 or INFO = N+1, the N-by-NRHS solution matrix X.
1289
+ *
1290
+ * LDX (input) INTEGER
1291
+ * The leading dimension of the array X. LDX >= max(1,N).
1292
+ *
1293
+ * RCOND (output) REAL
1294
+ * The estimate of the reciprocal condition number of the matrix
1295
+ * A. If RCOND is less than the machine precision (in
1296
+ * particular, if RCOND = 0), the matrix is singular to working
1297
+ * precision. This condition is indicated by a return code of
1298
+ * INFO > 0.
1299
+ *
1300
+ * FERR (output) REAL array, dimension (NRHS)
1301
+ * The estimated forward error bound for each solution vector
1302
+ * X(j) (the j-th column of the solution matrix X).
1303
+ * If XTRUE is the true solution corresponding to X(j), FERR(j)
1304
+ * is an estimated upper bound for the magnitude of the largest
1305
+ * element in (X(j) - XTRUE) divided by the magnitude of the
1306
+ * largest element in X(j). The estimate is as reliable as
1307
+ * the estimate for RCOND, and is almost always a slight
1308
+ * overestimate of the true error.
1309
+ *
1310
+ * BERR (output) REAL array, dimension (NRHS)
1311
+ * The componentwise relative backward error of each solution
1312
+ * vector X(j) (i.e., the smallest relative change in
1313
+ * any element of A or B that makes X(j) an exact solution).
1314
+ *
1315
+ * WORK (workspace) COMPLEX array, dimension (2*N)
1316
+ *
1317
+ * RWORK (workspace) REAL array, dimension (N)
1318
+ *
1319
+ * INFO (output) INTEGER
1320
+ * = 0: successful exit
1321
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1322
+ * > 0: if INFO = i, and i is
1323
+ * <= N: D(i,i) is exactly zero. The factorization
1324
+ * has been completed but the factor D is exactly
1325
+ * singular, so the solution and error bounds could
1326
+ * not be computed. RCOND = 0 is returned.
1327
+ * = N+1: D is nonsingular, but RCOND is less than machine
1328
+ * precision, meaning that the matrix is singular
1329
+ * to working precision. Nevertheless, the
1330
+ * solution and error bounds are computed because
1331
+ * there are a number of situations where the
1332
+ * computed solution can be more accurate than the
1333
+ * value of RCOND would suggest.
1334
+ *
1335
+
1336
+ * Further Details
1337
+ * ===============
1338
+ *
1339
+ * The packed storage scheme is illustrated by the following example
1340
+ * when N = 4, UPLO = 'U':
1341
+ *
1342
+ * Two-dimensional storage of the Hermitian matrix A:
1343
+ *
1344
+ * a11 a12 a13 a14
1345
+ * a22 a23 a24
1346
+ * a33 a34 (aij = conjg(aji))
1347
+ * a44
1348
+ *
1349
+ * Packed storage of the upper triangle of A:
1350
+ *
1351
+ * AP = [ a11, a12, a22, a13, a23, a33, a14, a24, a34, a44 ]
1352
+ *
1353
+ * =====================================================================
1354
+ *
1355
+
1356
+
1357
+ </PRE>
1358
+ <A HREF="#top">go to the page top</A>
1359
+
1360
+ <A NAME="chptrd"></A>
1361
+ <H2>chptrd</H2>
1362
+ <PRE>
1363
+ USAGE:
1364
+ d, e, tau, info, ap = NumRu::Lapack.chptrd( uplo, ap, [:usage => usage, :help => help])
1365
+
1366
+
1367
+ FORTRAN MANUAL
1368
+ SUBROUTINE CHPTRD( UPLO, N, AP, D, E, TAU, INFO )
1369
+
1370
+ * Purpose
1371
+ * =======
1372
+ *
1373
+ * CHPTRD reduces a complex Hermitian matrix A stored in packed form to
1374
+ * real symmetric tridiagonal form T by a unitary similarity
1375
+ * transformation: Q**H * A * Q = T.
1376
+ *
1377
+
1378
+ * Arguments
1379
+ * =========
1380
+ *
1381
+ * UPLO (input) CHARACTER*1
1382
+ * = 'U': Upper triangle of A is stored;
1383
+ * = 'L': Lower triangle of A is stored.
1384
+ *
1385
+ * N (input) INTEGER
1386
+ * The order of the matrix A. N >= 0.
1387
+ *
1388
+ * AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
1389
+ * On entry, the upper or lower triangle of the Hermitian matrix
1390
+ * A, packed columnwise in a linear array. The j-th column of A
1391
+ * is stored in the array AP as follows:
1392
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
1393
+ * if UPLO = 'L', AP(i + (j-1)*(2*n-j)/2) = A(i,j) for j<=i<=n.
1394
+ * On exit, if UPLO = 'U', the diagonal and first superdiagonal
1395
+ * of A are overwritten by the corresponding elements of the
1396
+ * tridiagonal matrix T, and the elements above the first
1397
+ * superdiagonal, with the array TAU, represent the unitary
1398
+ * matrix Q as a product of elementary reflectors; if UPLO
1399
+ * = 'L', the diagonal and first subdiagonal of A are over-
1400
+ * written by the corresponding elements of the tridiagonal
1401
+ * matrix T, and the elements below the first subdiagonal, with
1402
+ * the array TAU, represent the unitary matrix Q as a product
1403
+ * of elementary reflectors. See Further Details.
1404
+ *
1405
+ * D (output) REAL array, dimension (N)
1406
+ * The diagonal elements of the tridiagonal matrix T:
1407
+ * D(i) = A(i,i).
1408
+ *
1409
+ * E (output) REAL array, dimension (N-1)
1410
+ * The off-diagonal elements of the tridiagonal matrix T:
1411
+ * E(i) = A(i,i+1) if UPLO = 'U', E(i) = A(i+1,i) if UPLO = 'L'.
1412
+ *
1413
+ * TAU (output) COMPLEX array, dimension (N-1)
1414
+ * The scalar factors of the elementary reflectors (see Further
1415
+ * Details).
1416
+ *
1417
+ * INFO (output) INTEGER
1418
+ * = 0: successful exit
1419
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1420
+ *
1421
+
1422
+ * Further Details
1423
+ * ===============
1424
+ *
1425
+ * If UPLO = 'U', the matrix Q is represented as a product of elementary
1426
+ * reflectors
1427
+ *
1428
+ * Q = H(n-1) . . . H(2) H(1).
1429
+ *
1430
+ * Each H(i) has the form
1431
+ *
1432
+ * H(i) = I - tau * v * v'
1433
+ *
1434
+ * where tau is a complex scalar, and v is a complex vector with
1435
+ * v(i+1:n) = 0 and v(i) = 1; v(1:i-1) is stored on exit in AP,
1436
+ * overwriting A(1:i-1,i+1), and tau is stored in TAU(i).
1437
+ *
1438
+ * If UPLO = 'L', the matrix Q is represented as a product of elementary
1439
+ * reflectors
1440
+ *
1441
+ * Q = H(1) H(2) . . . H(n-1).
1442
+ *
1443
+ * Each H(i) has the form
1444
+ *
1445
+ * H(i) = I - tau * v * v'
1446
+ *
1447
+ * where tau is a complex scalar, and v is a complex vector with
1448
+ * v(1:i) = 0 and v(i+1) = 1; v(i+2:n) is stored on exit in AP,
1449
+ * overwriting A(i+2:n,i), and tau is stored in TAU(i).
1450
+ *
1451
+ * =====================================================================
1452
+ *
1453
+
1454
+
1455
+ </PRE>
1456
+ <A HREF="#top">go to the page top</A>
1457
+
1458
+ <A NAME="chptrf"></A>
1459
+ <H2>chptrf</H2>
1460
+ <PRE>
1461
+ USAGE:
1462
+ ipiv, info, ap = NumRu::Lapack.chptrf( uplo, ap, [:usage => usage, :help => help])
1463
+
1464
+
1465
+ FORTRAN MANUAL
1466
+ SUBROUTINE CHPTRF( UPLO, N, AP, IPIV, INFO )
1467
+
1468
+ * Purpose
1469
+ * =======
1470
+ *
1471
+ * CHPTRF computes the factorization of a complex Hermitian packed
1472
+ * matrix A using the Bunch-Kaufman diagonal pivoting method:
1473
+ *
1474
+ * A = U*D*U**H or A = L*D*L**H
1475
+ *
1476
+ * where U (or L) is a product of permutation and unit upper (lower)
1477
+ * triangular matrices, and D is Hermitian and block diagonal with
1478
+ * 1-by-1 and 2-by-2 diagonal blocks.
1479
+ *
1480
+
1481
+ * Arguments
1482
+ * =========
1483
+ *
1484
+ * UPLO (input) CHARACTER*1
1485
+ * = 'U': Upper triangle of A is stored;
1486
+ * = 'L': Lower triangle of A is stored.
1487
+ *
1488
+ * N (input) INTEGER
1489
+ * The order of the matrix A. N >= 0.
1490
+ *
1491
+ * AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
1492
+ * On entry, the upper or lower triangle of the Hermitian matrix
1493
+ * A, packed columnwise in a linear array. The j-th column of A
1494
+ * is stored in the array AP as follows:
1495
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
1496
+ * if UPLO = 'L', AP(i + (j-1)*(2n-j)/2) = A(i,j) for j<=i<=n.
1497
+ *
1498
+ * On exit, the block diagonal matrix D and the multipliers used
1499
+ * to obtain the factor U or L, stored as a packed triangular
1500
+ * matrix overwriting A (see below for further details).
1501
+ *
1502
+ * IPIV (output) INTEGER array, dimension (N)
1503
+ * Details of the interchanges and the block structure of D.
1504
+ * If IPIV(k) > 0, then rows and columns k and IPIV(k) were
1505
+ * interchanged and D(k,k) is a 1-by-1 diagonal block.
1506
+ * If UPLO = 'U' and IPIV(k) = IPIV(k-1) < 0, then rows and
1507
+ * columns k-1 and -IPIV(k) were interchanged and D(k-1:k,k-1:k)
1508
+ * is a 2-by-2 diagonal block. If UPLO = 'L' and IPIV(k) =
1509
+ * IPIV(k+1) < 0, then rows and columns k+1 and -IPIV(k) were
1510
+ * interchanged and D(k:k+1,k:k+1) is a 2-by-2 diagonal block.
1511
+ *
1512
+ * INFO (output) INTEGER
1513
+ * = 0: successful exit
1514
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1515
+ * > 0: if INFO = i, D(i,i) is exactly zero. The factorization
1516
+ * has been completed, but the block diagonal matrix D is
1517
+ * exactly singular, and division by zero will occur if it
1518
+ * is used to solve a system of equations.
1519
+ *
1520
+
1521
+ * Further Details
1522
+ * ===============
1523
+ *
1524
+ * 5-96 - Based on modifications by J. Lewis, Boeing Computer Services
1525
+ * Company
1526
+ *
1527
+ * If UPLO = 'U', then A = U*D*U', where
1528
+ * U = P(n)*U(n)* ... *P(k)U(k)* ...,
1529
+ * i.e., U is a product of terms P(k)*U(k), where k decreases from n to
1530
+ * 1 in steps of 1 or 2, and D is a block diagonal matrix with 1-by-1
1531
+ * and 2-by-2 diagonal blocks D(k). P(k) is a permutation matrix as
1532
+ * defined by IPIV(k), and U(k) is a unit upper triangular matrix, such
1533
+ * that if the diagonal block D(k) is of order s (s = 1 or 2), then
1534
+ *
1535
+ * ( I v 0 ) k-s
1536
+ * U(k) = ( 0 I 0 ) s
1537
+ * ( 0 0 I ) n-k
1538
+ * k-s s n-k
1539
+ *
1540
+ * If s = 1, D(k) overwrites A(k,k), and v overwrites A(1:k-1,k).
1541
+ * If s = 2, the upper triangle of D(k) overwrites A(k-1,k-1), A(k-1,k),
1542
+ * and A(k,k), and v overwrites A(1:k-2,k-1:k).
1543
+ *
1544
+ * If UPLO = 'L', then A = L*D*L', where
1545
+ * L = P(1)*L(1)* ... *P(k)*L(k)* ...,
1546
+ * i.e., L is a product of terms P(k)*L(k), where k increases from 1 to
1547
+ * n in steps of 1 or 2, and D is a block diagonal matrix with 1-by-1
1548
+ * and 2-by-2 diagonal blocks D(k). P(k) is a permutation matrix as
1549
+ * defined by IPIV(k), and L(k) is a unit lower triangular matrix, such
1550
+ * that if the diagonal block D(k) is of order s (s = 1 or 2), then
1551
+ *
1552
+ * ( I 0 0 ) k-1
1553
+ * L(k) = ( 0 I 0 ) s
1554
+ * ( 0 v I ) n-k-s+1
1555
+ * k-1 s n-k-s+1
1556
+ *
1557
+ * If s = 1, D(k) overwrites A(k,k), and v overwrites A(k+1:n,k).
1558
+ * If s = 2, the lower triangle of D(k) overwrites A(k,k), A(k+1,k),
1559
+ * and A(k+1,k+1), and v overwrites A(k+2:n,k:k+1).
1560
+ *
1561
+ * =====================================================================
1562
+ *
1563
+
1564
+
1565
+ </PRE>
1566
+ <A HREF="#top">go to the page top</A>
1567
+
1568
+ <A NAME="chptri"></A>
1569
+ <H2>chptri</H2>
1570
+ <PRE>
1571
+ USAGE:
1572
+ info, ap = NumRu::Lapack.chptri( uplo, ap, ipiv, [:usage => usage, :help => help])
1573
+
1574
+
1575
+ FORTRAN MANUAL
1576
+ SUBROUTINE CHPTRI( UPLO, N, AP, IPIV, WORK, INFO )
1577
+
1578
+ * Purpose
1579
+ * =======
1580
+ *
1581
+ * CHPTRI computes the inverse of a complex Hermitian indefinite matrix
1582
+ * A in packed storage using the factorization A = U*D*U**H or
1583
+ * A = L*D*L**H computed by CHPTRF.
1584
+ *
1585
+
1586
+ * Arguments
1587
+ * =========
1588
+ *
1589
+ * UPLO (input) CHARACTER*1
1590
+ * Specifies whether the details of the factorization are stored
1591
+ * as an upper or lower triangular matrix.
1592
+ * = 'U': Upper triangular, form is A = U*D*U**H;
1593
+ * = 'L': Lower triangular, form is A = L*D*L**H.
1594
+ *
1595
+ * N (input) INTEGER
1596
+ * The order of the matrix A. N >= 0.
1597
+ *
1598
+ * AP (input/output) COMPLEX array, dimension (N*(N+1)/2)
1599
+ * On entry, the block diagonal matrix D and the multipliers
1600
+ * used to obtain the factor U or L as computed by CHPTRF,
1601
+ * stored as a packed triangular matrix.
1602
+ *
1603
+ * On exit, if INFO = 0, the (Hermitian) inverse of the original
1604
+ * matrix, stored as a packed triangular matrix. The j-th column
1605
+ * of inv(A) is stored in the array AP as follows:
1606
+ * if UPLO = 'U', AP(i + (j-1)*j/2) = inv(A)(i,j) for 1<=i<=j;
1607
+ * if UPLO = 'L',
1608
+ * AP(i + (j-1)*(2n-j)/2) = inv(A)(i,j) for j<=i<=n.
1609
+ *
1610
+ * IPIV (input) INTEGER array, dimension (N)
1611
+ * Details of the interchanges and the block structure of D
1612
+ * as determined by CHPTRF.
1613
+ *
1614
+ * WORK (workspace) COMPLEX array, dimension (N)
1615
+ *
1616
+ * INFO (output) INTEGER
1617
+ * = 0: successful exit
1618
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1619
+ * > 0: if INFO = i, D(i,i) = 0; the matrix is singular and its
1620
+ * inverse could not be computed.
1621
+ *
1622
+
1623
+ * =====================================================================
1624
+ *
1625
+
1626
+
1627
+ </PRE>
1628
+ <A HREF="#top">go to the page top</A>
1629
+
1630
+ <A NAME="chptrs"></A>
1631
+ <H2>chptrs</H2>
1632
+ <PRE>
1633
+ USAGE:
1634
+ info, b = NumRu::Lapack.chptrs( uplo, ap, ipiv, b, [:usage => usage, :help => help])
1635
+
1636
+
1637
+ FORTRAN MANUAL
1638
+ SUBROUTINE CHPTRS( UPLO, N, NRHS, AP, IPIV, B, LDB, INFO )
1639
+
1640
+ * Purpose
1641
+ * =======
1642
+ *
1643
+ * CHPTRS solves a system of linear equations A*X = B with a complex
1644
+ * Hermitian matrix A stored in packed format using the factorization
1645
+ * A = U*D*U**H or A = L*D*L**H computed by CHPTRF.
1646
+ *
1647
+
1648
+ * Arguments
1649
+ * =========
1650
+ *
1651
+ * UPLO (input) CHARACTER*1
1652
+ * Specifies whether the details of the factorization are stored
1653
+ * as an upper or lower triangular matrix.
1654
+ * = 'U': Upper triangular, form is A = U*D*U**H;
1655
+ * = 'L': Lower triangular, form is A = L*D*L**H.
1656
+ *
1657
+ * N (input) INTEGER
1658
+ * The order of the matrix A. N >= 0.
1659
+ *
1660
+ * NRHS (input) INTEGER
1661
+ * The number of right hand sides, i.e., the number of columns
1662
+ * of the matrix B. NRHS >= 0.
1663
+ *
1664
+ * AP (input) COMPLEX array, dimension (N*(N+1)/2)
1665
+ * The block diagonal matrix D and the multipliers used to
1666
+ * obtain the factor U or L as computed by CHPTRF, stored as a
1667
+ * packed triangular matrix.
1668
+ *
1669
+ * IPIV (input) INTEGER array, dimension (N)
1670
+ * Details of the interchanges and the block structure of D
1671
+ * as determined by CHPTRF.
1672
+ *
1673
+ * B (input/output) COMPLEX array, dimension (LDB,NRHS)
1674
+ * On entry, the right hand side matrix B.
1675
+ * On exit, the solution matrix X.
1676
+ *
1677
+ * LDB (input) INTEGER
1678
+ * The leading dimension of the array B. LDB >= max(1,N).
1679
+ *
1680
+ * INFO (output) INTEGER
1681
+ * = 0: successful exit
1682
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1683
+ *
1684
+
1685
+ * =====================================================================
1686
+ *
1687
+
1688
+
1689
+ </PRE>
1690
+ <A HREF="#top">go to the page top</A>
1691
+
1692
+ <HR />
1693
+ <A HREF="c.html">back to matrix types</A><BR>
1694
+ <A HREF="c.html">back to data types</A>
1695
+ </BODY>
1696
+ </HTML>