ruby-lapack 1.3

Sign up to get free protection for your applications and to get access to all the features.
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/ztz.html ADDED
@@ -0,0 +1,211 @@
1
+ <HTML>
2
+ <HEAD>
3
+ <TITLE>COMPLEX*16 or DOUBLE COMPLEX routines for trapezoidal matrix</TITLE>
4
+ </HEAD>
5
+ <BODY>
6
+ <A NAME="top"></A>
7
+ <H1>COMPLEX*16 or DOUBLE COMPLEX routines for trapezoidal matrix</H1>
8
+ <UL>
9
+ <LI><A HREF="#ztzrqf">ztzrqf</A></LI>
10
+ <LI><A HREF="#ztzrzf">ztzrzf</A></LI>
11
+ </UL>
12
+
13
+ <A NAME="ztzrqf"></A>
14
+ <H2>ztzrqf</H2>
15
+ <PRE>
16
+ USAGE:
17
+ tau, info, a = NumRu::Lapack.ztzrqf( a, [:usage => usage, :help => help])
18
+
19
+
20
+ FORTRAN MANUAL
21
+ SUBROUTINE ZTZRQF( M, N, A, LDA, TAU, INFO )
22
+
23
+ * Purpose
24
+ * =======
25
+ *
26
+ * This routine is deprecated and has been replaced by routine ZTZRZF.
27
+ *
28
+ * ZTZRQF reduces the M-by-N ( M<=N ) complex upper trapezoidal matrix A
29
+ * to upper triangular form by means of unitary transformations.
30
+ *
31
+ * The upper trapezoidal matrix A is factored as
32
+ *
33
+ * A = ( R 0 ) * Z,
34
+ *
35
+ * where Z is an N-by-N unitary matrix and R is an M-by-M upper
36
+ * triangular matrix.
37
+ *
38
+
39
+ * Arguments
40
+ * =========
41
+ *
42
+ * M (input) INTEGER
43
+ * The number of rows of the matrix A. M >= 0.
44
+ *
45
+ * N (input) INTEGER
46
+ * The number of columns of the matrix A. N >= M.
47
+ *
48
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
49
+ * On entry, the leading M-by-N upper trapezoidal part of the
50
+ * array A must contain the matrix to be factorized.
51
+ * On exit, the leading M-by-M upper triangular part of A
52
+ * contains the upper triangular matrix R, and elements M+1 to
53
+ * N of the first M rows of A, with the array TAU, represent the
54
+ * unitary matrix Z as a product of M elementary reflectors.
55
+ *
56
+ * LDA (input) INTEGER
57
+ * The leading dimension of the array A. LDA >= max(1,M).
58
+ *
59
+ * TAU (output) COMPLEX*16 array, dimension (M)
60
+ * The scalar factors of the elementary reflectors.
61
+ *
62
+ * INFO (output) INTEGER
63
+ * = 0: successful exit
64
+ * < 0: if INFO = -i, the i-th argument had an illegal value
65
+ *
66
+
67
+ * Further Details
68
+ * ===============
69
+ *
70
+ * The factorization is obtained by Householder's method. The kth
71
+ * transformation matrix, Z( k ), whose conjugate transpose is used to
72
+ * introduce zeros into the (m - k + 1)th row of A, is given in the form
73
+ *
74
+ * Z( k ) = ( I 0 ),
75
+ * ( 0 T( k ) )
76
+ *
77
+ * where
78
+ *
79
+ * T( k ) = I - tau*u( k )*u( k )', u( k ) = ( 1 ),
80
+ * ( 0 )
81
+ * ( z( k ) )
82
+ *
83
+ * tau is a scalar and z( k ) is an ( n - m ) element vector.
84
+ * tau and z( k ) are chosen to annihilate the elements of the kth row
85
+ * of X.
86
+ *
87
+ * The scalar tau is returned in the kth element of TAU and the vector
88
+ * u( k ) in the kth row of A, such that the elements of z( k ) are
89
+ * in a( k, m + 1 ), ..., a( k, n ). The elements of R are returned in
90
+ * the upper triangular part of A.
91
+ *
92
+ * Z is given by
93
+ *
94
+ * Z = Z( 1 ) * Z( 2 ) * ... * Z( m ).
95
+ *
96
+ * =====================================================================
97
+ *
98
+
99
+
100
+ </PRE>
101
+ <A HREF="#top">go to the page top</A>
102
+
103
+ <A NAME="ztzrzf"></A>
104
+ <H2>ztzrzf</H2>
105
+ <PRE>
106
+ USAGE:
107
+ tau, work, info, a = NumRu::Lapack.ztzrzf( a, [:lwork => lwork, :usage => usage, :help => help])
108
+
109
+
110
+ FORTRAN MANUAL
111
+ SUBROUTINE ZTZRZF( M, N, A, LDA, TAU, WORK, LWORK, INFO )
112
+
113
+ * Purpose
114
+ * =======
115
+ *
116
+ * ZTZRZF reduces the M-by-N ( M<=N ) complex upper trapezoidal matrix A
117
+ * to upper triangular form by means of unitary transformations.
118
+ *
119
+ * The upper trapezoidal matrix A is factored as
120
+ *
121
+ * A = ( R 0 ) * Z,
122
+ *
123
+ * where Z is an N-by-N unitary matrix and R is an M-by-M upper
124
+ * triangular matrix.
125
+ *
126
+
127
+ * Arguments
128
+ * =========
129
+ *
130
+ * M (input) INTEGER
131
+ * The number of rows of the matrix A. M >= 0.
132
+ *
133
+ * N (input) INTEGER
134
+ * The number of columns of the matrix A. N >= M.
135
+ *
136
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
137
+ * On entry, the leading M-by-N upper trapezoidal part of the
138
+ * array A must contain the matrix to be factorized.
139
+ * On exit, the leading M-by-M upper triangular part of A
140
+ * contains the upper triangular matrix R, and elements M+1 to
141
+ * N of the first M rows of A, with the array TAU, represent the
142
+ * unitary matrix Z as a product of M elementary reflectors.
143
+ *
144
+ * LDA (input) INTEGER
145
+ * The leading dimension of the array A. LDA >= max(1,M).
146
+ *
147
+ * TAU (output) COMPLEX*16 array, dimension (M)
148
+ * The scalar factors of the elementary reflectors.
149
+ *
150
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
151
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
152
+ *
153
+ * LWORK (input) INTEGER
154
+ * The dimension of the array WORK. LWORK >= max(1,M).
155
+ * For optimum performance LWORK >= M*NB, where NB is
156
+ * the optimal blocksize.
157
+ *
158
+ * If LWORK = -1, then a workspace query is assumed; the routine
159
+ * only calculates the optimal size of the WORK array, returns
160
+ * this value as the first entry of the WORK array, and no error
161
+ * message related to LWORK is issued by XERBLA.
162
+ *
163
+ * INFO (output) INTEGER
164
+ * = 0: successful exit
165
+ * < 0: if INFO = -i, the i-th argument had an illegal value
166
+ *
167
+
168
+ * Further Details
169
+ * ===============
170
+ *
171
+ * Based on contributions by
172
+ * A. Petitet, Computer Science Dept., Univ. of Tenn., Knoxville, USA
173
+ *
174
+ * The factorization is obtained by Householder's method. The kth
175
+ * transformation matrix, Z( k ), which is used to introduce zeros into
176
+ * the ( m - k + 1 )th row of A, is given in the form
177
+ *
178
+ * Z( k ) = ( I 0 ),
179
+ * ( 0 T( k ) )
180
+ *
181
+ * where
182
+ *
183
+ * T( k ) = I - tau*u( k )*u( k )', u( k ) = ( 1 ),
184
+ * ( 0 )
185
+ * ( z( k ) )
186
+ *
187
+ * tau is a scalar and z( k ) is an ( n - m ) element vector.
188
+ * tau and z( k ) are chosen to annihilate the elements of the kth row
189
+ * of X.
190
+ *
191
+ * The scalar tau is returned in the kth element of TAU and the vector
192
+ * u( k ) in the kth row of A, such that the elements of z( k ) are
193
+ * in a( k, m + 1 ), ..., a( k, n ). The elements of R are returned in
194
+ * the upper triangular part of A.
195
+ *
196
+ * Z is given by
197
+ *
198
+ * Z = Z( 1 ) * Z( 2 ) * ... * Z( m ).
199
+ *
200
+ * =====================================================================
201
+ *
202
+
203
+
204
+ </PRE>
205
+ <A HREF="#top">go to the page top</A>
206
+
207
+ <HR />
208
+ <A HREF="z.html">back to matrix types</A><BR>
209
+ <A HREF="z.html">back to data types</A>
210
+ </BODY>
211
+ </HTML>
data/doc/zun.html ADDED
@@ -0,0 +1,2553 @@
1
+ <HTML>
2
+ <HEAD>
3
+ <TITLE>COMPLEX*16 or DOUBLE COMPLEX routines for (complex) unitary matrix</TITLE>
4
+ </HEAD>
5
+ <BODY>
6
+ <A NAME="top"></A>
7
+ <H1>COMPLEX*16 or DOUBLE COMPLEX routines for (complex) unitary matrix</H1>
8
+ <UL>
9
+ <LI><A HREF="#zunbdb">zunbdb</A></LI>
10
+ <LI><A HREF="#zuncsd">zuncsd</A></LI>
11
+ <LI><A HREF="#zung2l">zung2l</A></LI>
12
+ <LI><A HREF="#zung2r">zung2r</A></LI>
13
+ <LI><A HREF="#zungbr">zungbr</A></LI>
14
+ <LI><A HREF="#zunghr">zunghr</A></LI>
15
+ <LI><A HREF="#zungl2">zungl2</A></LI>
16
+ <LI><A HREF="#zunglq">zunglq</A></LI>
17
+ <LI><A HREF="#zungql">zungql</A></LI>
18
+ <LI><A HREF="#zungqr">zungqr</A></LI>
19
+ <LI><A HREF="#zungr2">zungr2</A></LI>
20
+ <LI><A HREF="#zungrq">zungrq</A></LI>
21
+ <LI><A HREF="#zungtr">zungtr</A></LI>
22
+ <LI><A HREF="#zunm2l">zunm2l</A></LI>
23
+ <LI><A HREF="#zunm2r">zunm2r</A></LI>
24
+ <LI><A HREF="#zunmbr">zunmbr</A></LI>
25
+ <LI><A HREF="#zunmhr">zunmhr</A></LI>
26
+ <LI><A HREF="#zunml2">zunml2</A></LI>
27
+ <LI><A HREF="#zunmlq">zunmlq</A></LI>
28
+ <LI><A HREF="#zunmql">zunmql</A></LI>
29
+ <LI><A HREF="#zunmqr">zunmqr</A></LI>
30
+ <LI><A HREF="#zunmr2">zunmr2</A></LI>
31
+ <LI><A HREF="#zunmr3">zunmr3</A></LI>
32
+ <LI><A HREF="#zunmrq">zunmrq</A></LI>
33
+ <LI><A HREF="#zunmrz">zunmrz</A></LI>
34
+ <LI><A HREF="#zunmtr">zunmtr</A></LI>
35
+ </UL>
36
+
37
+ <A NAME="zunbdb"></A>
38
+ <H2>zunbdb</H2>
39
+ <PRE>
40
+ USAGE:
41
+ theta, phi, taup1, taup2, tauq1, tauq2, info, x11, x12, x21, x22 = NumRu::Lapack.zunbdb( trans, signs, m, x11, x12, x21, x22, [:lwork => lwork, :usage => usage, :help => help])
42
+
43
+
44
+ FORTRAN MANUAL
45
+ SUBROUTINE ZUNBDB( TRANS, SIGNS, M, P, Q, X11, LDX11, X12, LDX12, X21, LDX21, X22, LDX22, THETA, PHI, TAUP1, TAUP2, TAUQ1, TAUQ2, WORK, LWORK, INFO )
46
+
47
+ * Purpose
48
+ * =======
49
+ *
50
+ * ZUNBDB simultaneously bidiagonalizes the blocks of an M-by-M
51
+ * partitioned unitary matrix X:
52
+ *
53
+ * [ B11 | B12 0 0 ]
54
+ * [ X11 | X12 ] [ P1 | ] [ 0 | 0 -I 0 ] [ Q1 | ]**H
55
+ * X = [-----------] = [---------] [----------------] [---------] .
56
+ * [ X21 | X22 ] [ | P2 ] [ B21 | B22 0 0 ] [ | Q2 ]
57
+ * [ 0 | 0 0 I ]
58
+ *
59
+ * X11 is P-by-Q. Q must be no larger than P, M-P, or M-Q. (If this is
60
+ * not the case, then X must be transposed and/or permuted. This can be
61
+ * done in constant time using the TRANS and SIGNS options. See ZUNCSD
62
+ * for details.)
63
+ *
64
+ * The unitary matrices P1, P2, Q1, and Q2 are P-by-P, (M-P)-by-
65
+ * (M-P), Q-by-Q, and (M-Q)-by-(M-Q), respectively. They are
66
+ * represented implicitly by Householder vectors.
67
+ *
68
+ * B11, B12, B21, and B22 are Q-by-Q bidiagonal matrices represented
69
+ * implicitly by angles THETA, PHI.
70
+ *
71
+
72
+ * Arguments
73
+ * =========
74
+ *
75
+ * TRANS (input) CHARACTER
76
+ * = 'T': X, U1, U2, V1T, and V2T are stored in row-major
77
+ * order;
78
+ * otherwise: X, U1, U2, V1T, and V2T are stored in column-
79
+ * major order.
80
+ *
81
+ * SIGNS (input) CHARACTER
82
+ * = 'O': The lower-left block is made nonpositive (the
83
+ * "other" convention);
84
+ * otherwise: The upper-right block is made nonpositive (the
85
+ * "default" convention).
86
+ *
87
+ * M (input) INTEGER
88
+ * The number of rows and columns in X.
89
+ *
90
+ * P (input) INTEGER
91
+ * The number of rows in X11 and X12. 0 <= P <= M.
92
+ *
93
+ * Q (input) INTEGER
94
+ * The number of columns in X11 and X21. 0 <= Q <=
95
+ * MIN(P,M-P,M-Q).
96
+ *
97
+ * X11 (input/output) COMPLEX*16 array, dimension (LDX11,Q)
98
+ * On entry, the top-left block of the unitary matrix to be
99
+ * reduced. On exit, the form depends on TRANS:
100
+ * If TRANS = 'N', then
101
+ * the columns of tril(X11) specify reflectors for P1,
102
+ * the rows of triu(X11,1) specify reflectors for Q1;
103
+ * else TRANS = 'T', and
104
+ * the rows of triu(X11) specify reflectors for P1,
105
+ * the columns of tril(X11,-1) specify reflectors for Q1.
106
+ *
107
+ * LDX11 (input) INTEGER
108
+ * The leading dimension of X11. If TRANS = 'N', then LDX11 >=
109
+ * P; else LDX11 >= Q.
110
+ *
111
+ * X12 (input/output) COMPLEX*16 array, dimension (LDX12,M-Q)
112
+ * On entry, the top-right block of the unitary matrix to
113
+ * be reduced. On exit, the form depends on TRANS:
114
+ * If TRANS = 'N', then
115
+ * the rows of triu(X12) specify the first P reflectors for
116
+ * Q2;
117
+ * else TRANS = 'T', and
118
+ * the columns of tril(X12) specify the first P reflectors
119
+ * for Q2.
120
+ *
121
+ * LDX12 (input) INTEGER
122
+ * The leading dimension of X12. If TRANS = 'N', then LDX12 >=
123
+ * P; else LDX11 >= M-Q.
124
+ *
125
+ * X21 (input/output) COMPLEX*16 array, dimension (LDX21,Q)
126
+ * On entry, the bottom-left block of the unitary matrix to
127
+ * be reduced. On exit, the form depends on TRANS:
128
+ * If TRANS = 'N', then
129
+ * the columns of tril(X21) specify reflectors for P2;
130
+ * else TRANS = 'T', and
131
+ * the rows of triu(X21) specify reflectors for P2.
132
+ *
133
+ * LDX21 (input) INTEGER
134
+ * The leading dimension of X21. If TRANS = 'N', then LDX21 >=
135
+ * M-P; else LDX21 >= Q.
136
+ *
137
+ * X22 (input/output) COMPLEX*16 array, dimension (LDX22,M-Q)
138
+ * On entry, the bottom-right block of the unitary matrix to
139
+ * be reduced. On exit, the form depends on TRANS:
140
+ * If TRANS = 'N', then
141
+ * the rows of triu(X22(Q+1:M-P,P+1:M-Q)) specify the last
142
+ * M-P-Q reflectors for Q2,
143
+ * else TRANS = 'T', and
144
+ * the columns of tril(X22(P+1:M-Q,Q+1:M-P)) specify the last
145
+ * M-P-Q reflectors for P2.
146
+ *
147
+ * LDX22 (input) INTEGER
148
+ * The leading dimension of X22. If TRANS = 'N', then LDX22 >=
149
+ * M-P; else LDX22 >= M-Q.
150
+ *
151
+ * THETA (output) DOUBLE PRECISION array, dimension (Q)
152
+ * The entries of the bidiagonal blocks B11, B12, B21, B22 can
153
+ * be computed from the angles THETA and PHI. See Further
154
+ * Details.
155
+ *
156
+ * PHI (output) DOUBLE PRECISION array, dimension (Q-1)
157
+ * The entries of the bidiagonal blocks B11, B12, B21, B22 can
158
+ * be computed from the angles THETA and PHI. See Further
159
+ * Details.
160
+ *
161
+ * TAUP1 (output) COMPLEX*16 array, dimension (P)
162
+ * The scalar factors of the elementary reflectors that define
163
+ * P1.
164
+ *
165
+ * TAUP2 (output) COMPLEX*16 array, dimension (M-P)
166
+ * The scalar factors of the elementary reflectors that define
167
+ * P2.
168
+ *
169
+ * TAUQ1 (output) COMPLEX*16 array, dimension (Q)
170
+ * The scalar factors of the elementary reflectors that define
171
+ * Q1.
172
+ *
173
+ * TAUQ2 (output) COMPLEX*16 array, dimension (M-Q)
174
+ * The scalar factors of the elementary reflectors that define
175
+ * Q2.
176
+ *
177
+ * WORK (workspace) COMPLEX*16 array, dimension (LWORK)
178
+ *
179
+ * LWORK (input) INTEGER
180
+ * The dimension of the array WORK. LWORK >= M-Q.
181
+ *
182
+ * If LWORK = -1, then a workspace query is assumed; the routine
183
+ * only calculates the optimal size of the WORK array, returns
184
+ * this value as the first entry of the WORK array, and no error
185
+ * message related to LWORK is issued by XERBLA.
186
+ *
187
+ * INFO (output) INTEGER
188
+ * = 0: successful exit.
189
+ * < 0: if INFO = -i, the i-th argument had an illegal value.
190
+ *
191
+
192
+ * Further Details
193
+ * ===============
194
+ *
195
+ * The bidiagonal blocks B11, B12, B21, and B22 are represented
196
+ * implicitly by angles THETA(1), ..., THETA(Q) and PHI(1), ...,
197
+ * PHI(Q-1). B11 and B21 are upper bidiagonal, while B21 and B22 are
198
+ * lower bidiagonal. Every entry in each bidiagonal band is a product
199
+ * of a sine or cosine of a THETA with a sine or cosine of a PHI. See
200
+ * [1] or ZUNCSD for details.
201
+ *
202
+ * P1, P2, Q1, and Q2 are represented as products of elementary
203
+ * reflectors. See ZUNCSD for details on generating P1, P2, Q1, and Q2
204
+ * using ZUNGQR and ZUNGLQ.
205
+ *
206
+ * Reference
207
+ * =========
208
+ *
209
+ * [1] Brian D. Sutton. Computing the complete CS decomposition. Numer.
210
+ * Algorithms, 50(1):33-65, 2009.
211
+ *
212
+ * ====================================================================
213
+ *
214
+
215
+
216
+ </PRE>
217
+ <A HREF="#top">go to the page top</A>
218
+
219
+ <A NAME="zuncsd"></A>
220
+ <H2>zuncsd</H2>
221
+ <PRE>
222
+ USAGE:
223
+ theta, u1, u2, v1t, v2t, info = NumRu::Lapack.zuncsd( jobu1, jobu2, jobv1t, jobv2t, trans, signs, m, x11, x12, x21, x22, lwork, lrwork, [:usage => usage, :help => help])
224
+
225
+
226
+ FORTRAN MANUAL
227
+ RECURSIVE SUBROUTINE ZUNCSD( JOBU1, JOBU2, JOBV1T, JOBV2T, TRANS, SIGNS, M, P, Q, X11, LDX11, X12, LDX12, X21, LDX21, X22, LDX22, THETA, U1, LDU1, U2, LDU2, V1T, LDV1T, V2T, LDV2T, WORK, LWORK, RWORK, LRWORK, IWORK, INFO )
228
+
229
+ * Purpose
230
+ * =======
231
+ *
232
+ * ZUNCSD computes the CS decomposition of an M-by-M partitioned
233
+ * unitary matrix X:
234
+ *
235
+ * [ I 0 0 | 0 0 0 ]
236
+ * [ 0 C 0 | 0 -S 0 ]
237
+ * [ X11 | X12 ] [ U1 | ] [ 0 0 0 | 0 0 -I ] [ V1 | ]**H
238
+ * X = [-----------] = [---------] [---------------------] [---------] .
239
+ * [ X21 | X22 ] [ | U2 ] [ 0 0 0 | I 0 0 ] [ | V2 ]
240
+ * [ 0 S 0 | 0 C 0 ]
241
+ * [ 0 0 I | 0 0 0 ]
242
+ *
243
+ * X11 is P-by-Q. The unitary matrices U1, U2, V1, and V2 are P-by-P,
244
+ * (M-P)-by-(M-P), Q-by-Q, and (M-Q)-by-(M-Q), respectively. C and S are
245
+ * R-by-R nonnegative diagonal matrices satisfying C^2 + S^2 = I, in
246
+ * which R = MIN(P,M-P,Q,M-Q).
247
+ *
248
+
249
+ * Arguments
250
+ * =========
251
+ *
252
+ * JOBU1 (input) CHARACTER
253
+ * = 'Y': U1 is computed;
254
+ * otherwise: U1 is not computed.
255
+ *
256
+ * JOBU2 (input) CHARACTER
257
+ * = 'Y': U2 is computed;
258
+ * otherwise: U2 is not computed.
259
+ *
260
+ * JOBV1T (input) CHARACTER
261
+ * = 'Y': V1T is computed;
262
+ * otherwise: V1T is not computed.
263
+ *
264
+ * JOBV2T (input) CHARACTER
265
+ * = 'Y': V2T is computed;
266
+ * otherwise: V2T is not computed.
267
+ *
268
+ * TRANS (input) CHARACTER
269
+ * = 'T': X, U1, U2, V1T, and V2T are stored in row-major
270
+ * order;
271
+ * otherwise: X, U1, U2, V1T, and V2T are stored in column-
272
+ * major order.
273
+ *
274
+ * SIGNS (input) CHARACTER
275
+ * = 'O': The lower-left block is made nonpositive (the
276
+ * "other" convention);
277
+ * otherwise: The upper-right block is made nonpositive (the
278
+ * "default" convention).
279
+ *
280
+ * M (input) INTEGER
281
+ * The number of rows and columns in X.
282
+ *
283
+ * P (input) INTEGER
284
+ * The number of rows in X11 and X12. 0 <= P <= M.
285
+ *
286
+ * Q (input) INTEGER
287
+ * The number of columns in X11 and X21. 0 <= Q <= M.
288
+ *
289
+ * X (input/workspace) COMPLEX*16 array, dimension (LDX,M)
290
+ * On entry, the unitary matrix whose CSD is desired.
291
+ *
292
+ * LDX (input) INTEGER
293
+ * The leading dimension of X. LDX >= MAX(1,M).
294
+ *
295
+ * THETA (output) DOUBLE PRECISION array, dimension (R), in which R =
296
+ * MIN(P,M-P,Q,M-Q).
297
+ * C = DIAG( COS(THETA(1)), ... , COS(THETA(R)) ) and
298
+ * S = DIAG( SIN(THETA(1)), ... , SIN(THETA(R)) ).
299
+ *
300
+ * U1 (output) COMPLEX*16 array, dimension (P)
301
+ * If JOBU1 = 'Y', U1 contains the P-by-P unitary matrix U1.
302
+ *
303
+ * LDU1 (input) INTEGER
304
+ * The leading dimension of U1. If JOBU1 = 'Y', LDU1 >=
305
+ * MAX(1,P).
306
+ *
307
+ * U2 (output) COMPLEX*16 array, dimension (M-P)
308
+ * If JOBU2 = 'Y', U2 contains the (M-P)-by-(M-P) unitary
309
+ * matrix U2.
310
+ *
311
+ * LDU2 (input) INTEGER
312
+ * The leading dimension of U2. If JOBU2 = 'Y', LDU2 >=
313
+ * MAX(1,M-P).
314
+ *
315
+ * V1T (output) COMPLEX*16 array, dimension (Q)
316
+ * If JOBV1T = 'Y', V1T contains the Q-by-Q matrix unitary
317
+ * matrix V1**H.
318
+ *
319
+ * LDV1T (input) INTEGER
320
+ * The leading dimension of V1T. If JOBV1T = 'Y', LDV1T >=
321
+ * MAX(1,Q).
322
+ *
323
+ * V2T (output) COMPLEX*16 array, dimension (M-Q)
324
+ * If JOBV2T = 'Y', V2T contains the (M-Q)-by-(M-Q) unitary
325
+ * matrix V2**H.
326
+ *
327
+ * LDV2T (input) INTEGER
328
+ * The leading dimension of V2T. If JOBV2T = 'Y', LDV2T >=
329
+ * MAX(1,M-Q).
330
+ *
331
+ * WORK (workspace) COMPLEX*16 array, dimension (MAX(1,LWORK))
332
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
333
+ *
334
+ * LWORK (input) INTEGER
335
+ * The dimension of the array WORK.
336
+ *
337
+ * If LWORK = -1, then a workspace query is assumed; the routine
338
+ * only calculates the optimal size of the WORK array, returns
339
+ * this value as the first entry of the work array, and no error
340
+ * message related to LWORK is issued by XERBLA.
341
+ *
342
+ * RWORK (workspace) DOUBLE PRECISION array, dimension MAX(1,LRWORK)
343
+ * On exit, if INFO = 0, RWORK(1) returns the optimal LRWORK.
344
+ * If INFO > 0 on exit, RWORK(2:R) contains the values PHI(1),
345
+ * ..., PHI(R-1) that, together with THETA(1), ..., THETA(R),
346
+ * define the matrix in intermediate bidiagonal-block form
347
+ * remaining after nonconvergence. INFO specifies the number
348
+ * of nonzero PHI's.
349
+ *
350
+ * LRWORK (input) INTEGER
351
+ * The dimension of the array RWORK.
352
+ *
353
+ * If LRWORK = -1, then a workspace query is assumed; the routine
354
+ * only calculates the optimal size of the RWORK array, returns
355
+ * this value as the first entry of the work array, and no error
356
+ * message related to LRWORK is issued by XERBLA.
357
+ *
358
+ * IWORK (workspace) INTEGER array, dimension (M-Q)
359
+ *
360
+ * INFO (output) INTEGER
361
+ * = 0: successful exit.
362
+ * < 0: if INFO = -i, the i-th argument had an illegal value.
363
+ * > 0: ZBBCSD did not converge. See the description of RWORK
364
+ * above for details.
365
+ *
366
+ * Reference
367
+ * =========
368
+ *
369
+ * [1] Brian D. Sutton. Computing the complete CS decomposition. Numer.
370
+ * Algorithms, 50(1):33-65, 2009.
371
+ *
372
+
373
+ * ===================================================================
374
+ *
375
+
376
+
377
+ </PRE>
378
+ <A HREF="#top">go to the page top</A>
379
+
380
+ <A NAME="zung2l"></A>
381
+ <H2>zung2l</H2>
382
+ <PRE>
383
+ USAGE:
384
+ info, a = NumRu::Lapack.zung2l( m, a, tau, [:usage => usage, :help => help])
385
+
386
+
387
+ FORTRAN MANUAL
388
+ SUBROUTINE ZUNG2L( M, N, K, A, LDA, TAU, WORK, INFO )
389
+
390
+ * Purpose
391
+ * =======
392
+ *
393
+ * ZUNG2L generates an m by n complex matrix Q with orthonormal columns,
394
+ * which is defined as the last n columns of a product of k elementary
395
+ * reflectors of order m
396
+ *
397
+ * Q = H(k) . . . H(2) H(1)
398
+ *
399
+ * as returned by ZGEQLF.
400
+ *
401
+
402
+ * Arguments
403
+ * =========
404
+ *
405
+ * M (input) INTEGER
406
+ * The number of rows of the matrix Q. M >= 0.
407
+ *
408
+ * N (input) INTEGER
409
+ * The number of columns of the matrix Q. M >= N >= 0.
410
+ *
411
+ * K (input) INTEGER
412
+ * The number of elementary reflectors whose product defines the
413
+ * matrix Q. N >= K >= 0.
414
+ *
415
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
416
+ * On entry, the (n-k+i)-th column must contain the vector which
417
+ * defines the elementary reflector H(i), for i = 1,2,...,k, as
418
+ * returned by ZGEQLF in the last k columns of its array
419
+ * argument A.
420
+ * On exit, the m-by-n matrix Q.
421
+ *
422
+ * LDA (input) INTEGER
423
+ * The first dimension of the array A. LDA >= max(1,M).
424
+ *
425
+ * TAU (input) COMPLEX*16 array, dimension (K)
426
+ * TAU(i) must contain the scalar factor of the elementary
427
+ * reflector H(i), as returned by ZGEQLF.
428
+ *
429
+ * WORK (workspace) COMPLEX*16 array, dimension (N)
430
+ *
431
+ * INFO (output) INTEGER
432
+ * = 0: successful exit
433
+ * < 0: if INFO = -i, the i-th argument has an illegal value
434
+ *
435
+
436
+ * =====================================================================
437
+ *
438
+
439
+
440
+ </PRE>
441
+ <A HREF="#top">go to the page top</A>
442
+
443
+ <A NAME="zung2r"></A>
444
+ <H2>zung2r</H2>
445
+ <PRE>
446
+ USAGE:
447
+ info, a = NumRu::Lapack.zung2r( m, a, tau, [:usage => usage, :help => help])
448
+
449
+
450
+ FORTRAN MANUAL
451
+ SUBROUTINE ZUNG2R( M, N, K, A, LDA, TAU, WORK, INFO )
452
+
453
+ * Purpose
454
+ * =======
455
+ *
456
+ * ZUNG2R generates an m by n complex matrix Q with orthonormal columns,
457
+ * which is defined as the first n columns of a product of k elementary
458
+ * reflectors of order m
459
+ *
460
+ * Q = H(1) H(2) . . . H(k)
461
+ *
462
+ * as returned by ZGEQRF.
463
+ *
464
+
465
+ * Arguments
466
+ * =========
467
+ *
468
+ * M (input) INTEGER
469
+ * The number of rows of the matrix Q. M >= 0.
470
+ *
471
+ * N (input) INTEGER
472
+ * The number of columns of the matrix Q. M >= N >= 0.
473
+ *
474
+ * K (input) INTEGER
475
+ * The number of elementary reflectors whose product defines the
476
+ * matrix Q. N >= K >= 0.
477
+ *
478
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
479
+ * On entry, the i-th column must contain the vector which
480
+ * defines the elementary reflector H(i), for i = 1,2,...,k, as
481
+ * returned by ZGEQRF in the first k columns of its array
482
+ * argument A.
483
+ * On exit, the m by n matrix Q.
484
+ *
485
+ * LDA (input) INTEGER
486
+ * The first dimension of the array A. LDA >= max(1,M).
487
+ *
488
+ * TAU (input) COMPLEX*16 array, dimension (K)
489
+ * TAU(i) must contain the scalar factor of the elementary
490
+ * reflector H(i), as returned by ZGEQRF.
491
+ *
492
+ * WORK (workspace) COMPLEX*16 array, dimension (N)
493
+ *
494
+ * INFO (output) INTEGER
495
+ * = 0: successful exit
496
+ * < 0: if INFO = -i, the i-th argument has an illegal value
497
+ *
498
+
499
+ * =====================================================================
500
+ *
501
+
502
+
503
+ </PRE>
504
+ <A HREF="#top">go to the page top</A>
505
+
506
+ <A NAME="zungbr"></A>
507
+ <H2>zungbr</H2>
508
+ <PRE>
509
+ USAGE:
510
+ work, info, a = NumRu::Lapack.zungbr( vect, m, k, a, tau, [:lwork => lwork, :usage => usage, :help => help])
511
+
512
+
513
+ FORTRAN MANUAL
514
+ SUBROUTINE ZUNGBR( VECT, M, N, K, A, LDA, TAU, WORK, LWORK, INFO )
515
+
516
+ * Purpose
517
+ * =======
518
+ *
519
+ * ZUNGBR generates one of the complex unitary matrices Q or P**H
520
+ * determined by ZGEBRD when reducing a complex matrix A to bidiagonal
521
+ * form: A = Q * B * P**H. Q and P**H are defined as products of
522
+ * elementary reflectors H(i) or G(i) respectively.
523
+ *
524
+ * If VECT = 'Q', A is assumed to have been an M-by-K matrix, and Q
525
+ * is of order M:
526
+ * if m >= k, Q = H(1) H(2) . . . H(k) and ZUNGBR returns the first n
527
+ * columns of Q, where m >= n >= k;
528
+ * if m < k, Q = H(1) H(2) . . . H(m-1) and ZUNGBR returns Q as an
529
+ * M-by-M matrix.
530
+ *
531
+ * If VECT = 'P', A is assumed to have been a K-by-N matrix, and P**H
532
+ * is of order N:
533
+ * if k < n, P**H = G(k) . . . G(2) G(1) and ZUNGBR returns the first m
534
+ * rows of P**H, where n >= m >= k;
535
+ * if k >= n, P**H = G(n-1) . . . G(2) G(1) and ZUNGBR returns P**H as
536
+ * an N-by-N matrix.
537
+ *
538
+
539
+ * Arguments
540
+ * =========
541
+ *
542
+ * VECT (input) CHARACTER*1
543
+ * Specifies whether the matrix Q or the matrix P**H is
544
+ * required, as defined in the transformation applied by ZGEBRD:
545
+ * = 'Q': generate Q;
546
+ * = 'P': generate P**H.
547
+ *
548
+ * M (input) INTEGER
549
+ * The number of rows of the matrix Q or P**H to be returned.
550
+ * M >= 0.
551
+ *
552
+ * N (input) INTEGER
553
+ * The number of columns of the matrix Q or P**H to be returned.
554
+ * N >= 0.
555
+ * If VECT = 'Q', M >= N >= min(M,K);
556
+ * if VECT = 'P', N >= M >= min(N,K).
557
+ *
558
+ * K (input) INTEGER
559
+ * If VECT = 'Q', the number of columns in the original M-by-K
560
+ * matrix reduced by ZGEBRD.
561
+ * If VECT = 'P', the number of rows in the original K-by-N
562
+ * matrix reduced by ZGEBRD.
563
+ * K >= 0.
564
+ *
565
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
566
+ * On entry, the vectors which define the elementary reflectors,
567
+ * as returned by ZGEBRD.
568
+ * On exit, the M-by-N matrix Q or P**H.
569
+ *
570
+ * LDA (input) INTEGER
571
+ * The leading dimension of the array A. LDA >= M.
572
+ *
573
+ * TAU (input) COMPLEX*16 array, dimension
574
+ * (min(M,K)) if VECT = 'Q'
575
+ * (min(N,K)) if VECT = 'P'
576
+ * TAU(i) must contain the scalar factor of the elementary
577
+ * reflector H(i) or G(i), which determines Q or P**H, as
578
+ * returned by ZGEBRD in its array argument TAUQ or TAUP.
579
+ *
580
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
581
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
582
+ *
583
+ * LWORK (input) INTEGER
584
+ * The dimension of the array WORK. LWORK >= max(1,min(M,N)).
585
+ * For optimum performance LWORK >= min(M,N)*NB, where NB
586
+ * is the optimal blocksize.
587
+ *
588
+ * If LWORK = -1, then a workspace query is assumed; the routine
589
+ * only calculates the optimal size of the WORK array, returns
590
+ * this value as the first entry of the WORK array, and no error
591
+ * message related to LWORK is issued by XERBLA.
592
+ *
593
+ * INFO (output) INTEGER
594
+ * = 0: successful exit
595
+ * < 0: if INFO = -i, the i-th argument had an illegal value
596
+ *
597
+
598
+ * =====================================================================
599
+ *
600
+
601
+
602
+ </PRE>
603
+ <A HREF="#top">go to the page top</A>
604
+
605
+ <A NAME="zunghr"></A>
606
+ <H2>zunghr</H2>
607
+ <PRE>
608
+ USAGE:
609
+ work, info, a = NumRu::Lapack.zunghr( ilo, ihi, a, tau, [:lwork => lwork, :usage => usage, :help => help])
610
+
611
+
612
+ FORTRAN MANUAL
613
+ SUBROUTINE ZUNGHR( N, ILO, IHI, A, LDA, TAU, WORK, LWORK, INFO )
614
+
615
+ * Purpose
616
+ * =======
617
+ *
618
+ * ZUNGHR generates a complex unitary matrix Q which is defined as the
619
+ * product of IHI-ILO elementary reflectors of order N, as returned by
620
+ * ZGEHRD:
621
+ *
622
+ * Q = H(ilo) H(ilo+1) . . . H(ihi-1).
623
+ *
624
+
625
+ * Arguments
626
+ * =========
627
+ *
628
+ * N (input) INTEGER
629
+ * The order of the matrix Q. N >= 0.
630
+ *
631
+ * ILO (input) INTEGER
632
+ * IHI (input) INTEGER
633
+ * ILO and IHI must have the same values as in the previous call
634
+ * of ZGEHRD. Q is equal to the unit matrix except in the
635
+ * submatrix Q(ilo+1:ihi,ilo+1:ihi).
636
+ * 1 <= ILO <= IHI <= N, if N > 0; ILO=1 and IHI=0, if N=0.
637
+ *
638
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
639
+ * On entry, the vectors which define the elementary reflectors,
640
+ * as returned by ZGEHRD.
641
+ * On exit, the N-by-N unitary matrix Q.
642
+ *
643
+ * LDA (input) INTEGER
644
+ * The leading dimension of the array A. LDA >= max(1,N).
645
+ *
646
+ * TAU (input) COMPLEX*16 array, dimension (N-1)
647
+ * TAU(i) must contain the scalar factor of the elementary
648
+ * reflector H(i), as returned by ZGEHRD.
649
+ *
650
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
651
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
652
+ *
653
+ * LWORK (input) INTEGER
654
+ * The dimension of the array WORK. LWORK >= IHI-ILO.
655
+ * For optimum performance LWORK >= (IHI-ILO)*NB, where NB is
656
+ * the optimal blocksize.
657
+ *
658
+ * If LWORK = -1, then a workspace query is assumed; the routine
659
+ * only calculates the optimal size of the WORK array, returns
660
+ * this value as the first entry of the WORK array, and no error
661
+ * message related to LWORK is issued by XERBLA.
662
+ *
663
+ * INFO (output) INTEGER
664
+ * = 0: successful exit
665
+ * < 0: if INFO = -i, the i-th argument had an illegal value
666
+ *
667
+
668
+ * =====================================================================
669
+ *
670
+
671
+
672
+ </PRE>
673
+ <A HREF="#top">go to the page top</A>
674
+
675
+ <A NAME="zungl2"></A>
676
+ <H2>zungl2</H2>
677
+ <PRE>
678
+ USAGE:
679
+ info, a = NumRu::Lapack.zungl2( a, tau, [:usage => usage, :help => help])
680
+
681
+
682
+ FORTRAN MANUAL
683
+ SUBROUTINE ZUNGL2( M, N, K, A, LDA, TAU, WORK, INFO )
684
+
685
+ * Purpose
686
+ * =======
687
+ *
688
+ * ZUNGL2 generates an m-by-n complex matrix Q with orthonormal rows,
689
+ * which is defined as the first m rows of a product of k elementary
690
+ * reflectors of order n
691
+ *
692
+ * Q = H(k)' . . . H(2)' H(1)'
693
+ *
694
+ * as returned by ZGELQF.
695
+ *
696
+
697
+ * Arguments
698
+ * =========
699
+ *
700
+ * M (input) INTEGER
701
+ * The number of rows of the matrix Q. M >= 0.
702
+ *
703
+ * N (input) INTEGER
704
+ * The number of columns of the matrix Q. N >= M.
705
+ *
706
+ * K (input) INTEGER
707
+ * The number of elementary reflectors whose product defines the
708
+ * matrix Q. M >= K >= 0.
709
+ *
710
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
711
+ * On entry, the i-th row must contain the vector which defines
712
+ * the elementary reflector H(i), for i = 1,2,...,k, as returned
713
+ * by ZGELQF in the first k rows of its array argument A.
714
+ * On exit, the m by n matrix Q.
715
+ *
716
+ * LDA (input) INTEGER
717
+ * The first dimension of the array A. LDA >= max(1,M).
718
+ *
719
+ * TAU (input) COMPLEX*16 array, dimension (K)
720
+ * TAU(i) must contain the scalar factor of the elementary
721
+ * reflector H(i), as returned by ZGELQF.
722
+ *
723
+ * WORK (workspace) COMPLEX*16 array, dimension (M)
724
+ *
725
+ * INFO (output) INTEGER
726
+ * = 0: successful exit
727
+ * < 0: if INFO = -i, the i-th argument has an illegal value
728
+ *
729
+
730
+ * =====================================================================
731
+ *
732
+
733
+
734
+ </PRE>
735
+ <A HREF="#top">go to the page top</A>
736
+
737
+ <A NAME="zunglq"></A>
738
+ <H2>zunglq</H2>
739
+ <PRE>
740
+ USAGE:
741
+ work, info, a = NumRu::Lapack.zunglq( m, a, tau, [:lwork => lwork, :usage => usage, :help => help])
742
+
743
+
744
+ FORTRAN MANUAL
745
+ SUBROUTINE ZUNGLQ( M, N, K, A, LDA, TAU, WORK, LWORK, INFO )
746
+
747
+ * Purpose
748
+ * =======
749
+ *
750
+ * ZUNGLQ generates an M-by-N complex matrix Q with orthonormal rows,
751
+ * which is defined as the first M rows of a product of K elementary
752
+ * reflectors of order N
753
+ *
754
+ * Q = H(k)' . . . H(2)' H(1)'
755
+ *
756
+ * as returned by ZGELQF.
757
+ *
758
+
759
+ * Arguments
760
+ * =========
761
+ *
762
+ * M (input) INTEGER
763
+ * The number of rows of the matrix Q. M >= 0.
764
+ *
765
+ * N (input) INTEGER
766
+ * The number of columns of the matrix Q. N >= M.
767
+ *
768
+ * K (input) INTEGER
769
+ * The number of elementary reflectors whose product defines the
770
+ * matrix Q. M >= K >= 0.
771
+ *
772
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
773
+ * On entry, the i-th row must contain the vector which defines
774
+ * the elementary reflector H(i), for i = 1,2,...,k, as returned
775
+ * by ZGELQF in the first k rows of its array argument A.
776
+ * On exit, the M-by-N matrix Q.
777
+ *
778
+ * LDA (input) INTEGER
779
+ * The first dimension of the array A. LDA >= max(1,M).
780
+ *
781
+ * TAU (input) COMPLEX*16 array, dimension (K)
782
+ * TAU(i) must contain the scalar factor of the elementary
783
+ * reflector H(i), as returned by ZGELQF.
784
+ *
785
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
786
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
787
+ *
788
+ * LWORK (input) INTEGER
789
+ * The dimension of the array WORK. LWORK >= max(1,M).
790
+ * For optimum performance LWORK >= M*NB, where NB is
791
+ * the optimal blocksize.
792
+ *
793
+ * If LWORK = -1, then a workspace query is assumed; the routine
794
+ * only calculates the optimal size of the WORK array, returns
795
+ * this value as the first entry of the WORK array, and no error
796
+ * message related to LWORK is issued by XERBLA.
797
+ *
798
+ * INFO (output) INTEGER
799
+ * = 0: successful exit;
800
+ * < 0: if INFO = -i, the i-th argument has an illegal value
801
+ *
802
+
803
+ * =====================================================================
804
+ *
805
+
806
+
807
+ </PRE>
808
+ <A HREF="#top">go to the page top</A>
809
+
810
+ <A NAME="zungql"></A>
811
+ <H2>zungql</H2>
812
+ <PRE>
813
+ USAGE:
814
+ work, info, a = NumRu::Lapack.zungql( m, a, tau, [:lwork => lwork, :usage => usage, :help => help])
815
+
816
+
817
+ FORTRAN MANUAL
818
+ SUBROUTINE ZUNGQL( M, N, K, A, LDA, TAU, WORK, LWORK, INFO )
819
+
820
+ * Purpose
821
+ * =======
822
+ *
823
+ * ZUNGQL generates an M-by-N complex matrix Q with orthonormal columns,
824
+ * which is defined as the last N columns of a product of K elementary
825
+ * reflectors of order M
826
+ *
827
+ * Q = H(k) . . . H(2) H(1)
828
+ *
829
+ * as returned by ZGEQLF.
830
+ *
831
+
832
+ * Arguments
833
+ * =========
834
+ *
835
+ * M (input) INTEGER
836
+ * The number of rows of the matrix Q. M >= 0.
837
+ *
838
+ * N (input) INTEGER
839
+ * The number of columns of the matrix Q. M >= N >= 0.
840
+ *
841
+ * K (input) INTEGER
842
+ * The number of elementary reflectors whose product defines the
843
+ * matrix Q. N >= K >= 0.
844
+ *
845
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
846
+ * On entry, the (n-k+i)-th column must contain the vector which
847
+ * defines the elementary reflector H(i), for i = 1,2,...,k, as
848
+ * returned by ZGEQLF in the last k columns of its array
849
+ * argument A.
850
+ * On exit, the M-by-N matrix Q.
851
+ *
852
+ * LDA (input) INTEGER
853
+ * The first dimension of the array A. LDA >= max(1,M).
854
+ *
855
+ * TAU (input) COMPLEX*16 array, dimension (K)
856
+ * TAU(i) must contain the scalar factor of the elementary
857
+ * reflector H(i), as returned by ZGEQLF.
858
+ *
859
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
860
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
861
+ *
862
+ * LWORK (input) INTEGER
863
+ * The dimension of the array WORK. LWORK >= max(1,N).
864
+ * For optimum performance LWORK >= N*NB, where NB is the
865
+ * optimal blocksize.
866
+ *
867
+ * If LWORK = -1, then a workspace query is assumed; the routine
868
+ * only calculates the optimal size of the WORK array, returns
869
+ * this value as the first entry of the WORK array, and no error
870
+ * message related to LWORK is issued by XERBLA.
871
+ *
872
+ * INFO (output) INTEGER
873
+ * = 0: successful exit
874
+ * < 0: if INFO = -i, the i-th argument has an illegal value
875
+ *
876
+
877
+ * =====================================================================
878
+ *
879
+
880
+
881
+ </PRE>
882
+ <A HREF="#top">go to the page top</A>
883
+
884
+ <A NAME="zungqr"></A>
885
+ <H2>zungqr</H2>
886
+ <PRE>
887
+ USAGE:
888
+ work, info, a = NumRu::Lapack.zungqr( m, a, tau, [:lwork => lwork, :usage => usage, :help => help])
889
+
890
+
891
+ FORTRAN MANUAL
892
+ SUBROUTINE ZUNGQR( M, N, K, A, LDA, TAU, WORK, LWORK, INFO )
893
+
894
+ * Purpose
895
+ * =======
896
+ *
897
+ * ZUNGQR generates an M-by-N complex matrix Q with orthonormal columns,
898
+ * which is defined as the first N columns of a product of K elementary
899
+ * reflectors of order M
900
+ *
901
+ * Q = H(1) H(2) . . . H(k)
902
+ *
903
+ * as returned by ZGEQRF.
904
+ *
905
+
906
+ * Arguments
907
+ * =========
908
+ *
909
+ * M (input) INTEGER
910
+ * The number of rows of the matrix Q. M >= 0.
911
+ *
912
+ * N (input) INTEGER
913
+ * The number of columns of the matrix Q. M >= N >= 0.
914
+ *
915
+ * K (input) INTEGER
916
+ * The number of elementary reflectors whose product defines the
917
+ * matrix Q. N >= K >= 0.
918
+ *
919
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
920
+ * On entry, the i-th column must contain the vector which
921
+ * defines the elementary reflector H(i), for i = 1,2,...,k, as
922
+ * returned by ZGEQRF in the first k columns of its array
923
+ * argument A.
924
+ * On exit, the M-by-N matrix Q.
925
+ *
926
+ * LDA (input) INTEGER
927
+ * The first dimension of the array A. LDA >= max(1,M).
928
+ *
929
+ * TAU (input) COMPLEX*16 array, dimension (K)
930
+ * TAU(i) must contain the scalar factor of the elementary
931
+ * reflector H(i), as returned by ZGEQRF.
932
+ *
933
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
934
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
935
+ *
936
+ * LWORK (input) INTEGER
937
+ * The dimension of the array WORK. LWORK >= max(1,N).
938
+ * For optimum performance LWORK >= N*NB, where NB is the
939
+ * optimal blocksize.
940
+ *
941
+ * If LWORK = -1, then a workspace query is assumed; the routine
942
+ * only calculates the optimal size of the WORK array, returns
943
+ * this value as the first entry of the WORK array, and no error
944
+ * message related to LWORK is issued by XERBLA.
945
+ *
946
+ * INFO (output) INTEGER
947
+ * = 0: successful exit
948
+ * < 0: if INFO = -i, the i-th argument has an illegal value
949
+ *
950
+
951
+ * =====================================================================
952
+ *
953
+
954
+
955
+ </PRE>
956
+ <A HREF="#top">go to the page top</A>
957
+
958
+ <A NAME="zungr2"></A>
959
+ <H2>zungr2</H2>
960
+ <PRE>
961
+ USAGE:
962
+ info, a = NumRu::Lapack.zungr2( a, tau, [:usage => usage, :help => help])
963
+
964
+
965
+ FORTRAN MANUAL
966
+ SUBROUTINE ZUNGR2( M, N, K, A, LDA, TAU, WORK, INFO )
967
+
968
+ * Purpose
969
+ * =======
970
+ *
971
+ * ZUNGR2 generates an m by n complex matrix Q with orthonormal rows,
972
+ * which is defined as the last m rows of a product of k elementary
973
+ * reflectors of order n
974
+ *
975
+ * Q = H(1)' H(2)' . . . H(k)'
976
+ *
977
+ * as returned by ZGERQF.
978
+ *
979
+
980
+ * Arguments
981
+ * =========
982
+ *
983
+ * M (input) INTEGER
984
+ * The number of rows of the matrix Q. M >= 0.
985
+ *
986
+ * N (input) INTEGER
987
+ * The number of columns of the matrix Q. N >= M.
988
+ *
989
+ * K (input) INTEGER
990
+ * The number of elementary reflectors whose product defines the
991
+ * matrix Q. M >= K >= 0.
992
+ *
993
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
994
+ * On entry, the (m-k+i)-th row must contain the vector which
995
+ * defines the elementary reflector H(i), for i = 1,2,...,k, as
996
+ * returned by ZGERQF in the last k rows of its array argument
997
+ * A.
998
+ * On exit, the m-by-n matrix Q.
999
+ *
1000
+ * LDA (input) INTEGER
1001
+ * The first dimension of the array A. LDA >= max(1,M).
1002
+ *
1003
+ * TAU (input) COMPLEX*16 array, dimension (K)
1004
+ * TAU(i) must contain the scalar factor of the elementary
1005
+ * reflector H(i), as returned by ZGERQF.
1006
+ *
1007
+ * WORK (workspace) COMPLEX*16 array, dimension (M)
1008
+ *
1009
+ * INFO (output) INTEGER
1010
+ * = 0: successful exit
1011
+ * < 0: if INFO = -i, the i-th argument has an illegal value
1012
+ *
1013
+
1014
+ * =====================================================================
1015
+ *
1016
+
1017
+
1018
+ </PRE>
1019
+ <A HREF="#top">go to the page top</A>
1020
+
1021
+ <A NAME="zungrq"></A>
1022
+ <H2>zungrq</H2>
1023
+ <PRE>
1024
+ USAGE:
1025
+ work, info, a = NumRu::Lapack.zungrq( m, a, tau, [:lwork => lwork, :usage => usage, :help => help])
1026
+
1027
+
1028
+ FORTRAN MANUAL
1029
+ SUBROUTINE ZUNGRQ( M, N, K, A, LDA, TAU, WORK, LWORK, INFO )
1030
+
1031
+ * Purpose
1032
+ * =======
1033
+ *
1034
+ * ZUNGRQ generates an M-by-N complex matrix Q with orthonormal rows,
1035
+ * which is defined as the last M rows of a product of K elementary
1036
+ * reflectors of order N
1037
+ *
1038
+ * Q = H(1)' H(2)' . . . H(k)'
1039
+ *
1040
+ * as returned by ZGERQF.
1041
+ *
1042
+
1043
+ * Arguments
1044
+ * =========
1045
+ *
1046
+ * M (input) INTEGER
1047
+ * The number of rows of the matrix Q. M >= 0.
1048
+ *
1049
+ * N (input) INTEGER
1050
+ * The number of columns of the matrix Q. N >= M.
1051
+ *
1052
+ * K (input) INTEGER
1053
+ * The number of elementary reflectors whose product defines the
1054
+ * matrix Q. M >= K >= 0.
1055
+ *
1056
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
1057
+ * On entry, the (m-k+i)-th row must contain the vector which
1058
+ * defines the elementary reflector H(i), for i = 1,2,...,k, as
1059
+ * returned by ZGERQF in the last k rows of its array argument
1060
+ * A.
1061
+ * On exit, the M-by-N matrix Q.
1062
+ *
1063
+ * LDA (input) INTEGER
1064
+ * The first dimension of the array A. LDA >= max(1,M).
1065
+ *
1066
+ * TAU (input) COMPLEX*16 array, dimension (K)
1067
+ * TAU(i) must contain the scalar factor of the elementary
1068
+ * reflector H(i), as returned by ZGERQF.
1069
+ *
1070
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
1071
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
1072
+ *
1073
+ * LWORK (input) INTEGER
1074
+ * The dimension of the array WORK. LWORK >= max(1,M).
1075
+ * For optimum performance LWORK >= M*NB, where NB is the
1076
+ * optimal blocksize.
1077
+ *
1078
+ * If LWORK = -1, then a workspace query is assumed; the routine
1079
+ * only calculates the optimal size of the WORK array, returns
1080
+ * this value as the first entry of the WORK array, and no error
1081
+ * message related to LWORK is issued by XERBLA.
1082
+ *
1083
+ * INFO (output) INTEGER
1084
+ * = 0: successful exit
1085
+ * < 0: if INFO = -i, the i-th argument has an illegal value
1086
+ *
1087
+
1088
+ * =====================================================================
1089
+ *
1090
+
1091
+
1092
+ </PRE>
1093
+ <A HREF="#top">go to the page top</A>
1094
+
1095
+ <A NAME="zungtr"></A>
1096
+ <H2>zungtr</H2>
1097
+ <PRE>
1098
+ USAGE:
1099
+ work, info, a = NumRu::Lapack.zungtr( uplo, a, tau, [:lwork => lwork, :usage => usage, :help => help])
1100
+
1101
+
1102
+ FORTRAN MANUAL
1103
+ SUBROUTINE ZUNGTR( UPLO, N, A, LDA, TAU, WORK, LWORK, INFO )
1104
+
1105
+ * Purpose
1106
+ * =======
1107
+ *
1108
+ * ZUNGTR generates a complex unitary matrix Q which is defined as the
1109
+ * product of n-1 elementary reflectors of order N, as returned by
1110
+ * ZHETRD:
1111
+ *
1112
+ * if UPLO = 'U', Q = H(n-1) . . . H(2) H(1),
1113
+ *
1114
+ * if UPLO = 'L', Q = H(1) H(2) . . . H(n-1).
1115
+ *
1116
+
1117
+ * Arguments
1118
+ * =========
1119
+ *
1120
+ * UPLO (input) CHARACTER*1
1121
+ * = 'U': Upper triangle of A contains elementary reflectors
1122
+ * from ZHETRD;
1123
+ * = 'L': Lower triangle of A contains elementary reflectors
1124
+ * from ZHETRD.
1125
+ *
1126
+ * N (input) INTEGER
1127
+ * The order of the matrix Q. N >= 0.
1128
+ *
1129
+ * A (input/output) COMPLEX*16 array, dimension (LDA,N)
1130
+ * On entry, the vectors which define the elementary reflectors,
1131
+ * as returned by ZHETRD.
1132
+ * On exit, the N-by-N unitary matrix Q.
1133
+ *
1134
+ * LDA (input) INTEGER
1135
+ * The leading dimension of the array A. LDA >= N.
1136
+ *
1137
+ * TAU (input) COMPLEX*16 array, dimension (N-1)
1138
+ * TAU(i) must contain the scalar factor of the elementary
1139
+ * reflector H(i), as returned by ZHETRD.
1140
+ *
1141
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
1142
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
1143
+ *
1144
+ * LWORK (input) INTEGER
1145
+ * The dimension of the array WORK. LWORK >= N-1.
1146
+ * For optimum performance LWORK >= (N-1)*NB, where NB is
1147
+ * the optimal blocksize.
1148
+ *
1149
+ * If LWORK = -1, then a workspace query is assumed; the routine
1150
+ * only calculates the optimal size of the WORK array, returns
1151
+ * this value as the first entry of the WORK array, and no error
1152
+ * message related to LWORK is issued by XERBLA.
1153
+ *
1154
+ * INFO (output) INTEGER
1155
+ * = 0: successful exit
1156
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1157
+ *
1158
+
1159
+ * =====================================================================
1160
+ *
1161
+
1162
+
1163
+ </PRE>
1164
+ <A HREF="#top">go to the page top</A>
1165
+
1166
+ <A NAME="zunm2l"></A>
1167
+ <H2>zunm2l</H2>
1168
+ <PRE>
1169
+ USAGE:
1170
+ info, c = NumRu::Lapack.zunm2l( side, trans, m, a, tau, c, [:usage => usage, :help => help])
1171
+
1172
+
1173
+ FORTRAN MANUAL
1174
+ SUBROUTINE ZUNM2L( SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, INFO )
1175
+
1176
+ * Purpose
1177
+ * =======
1178
+ *
1179
+ * ZUNM2L overwrites the general complex m-by-n matrix C with
1180
+ *
1181
+ * Q * C if SIDE = 'L' and TRANS = 'N', or
1182
+ *
1183
+ * Q'* C if SIDE = 'L' and TRANS = 'C', or
1184
+ *
1185
+ * C * Q if SIDE = 'R' and TRANS = 'N', or
1186
+ *
1187
+ * C * Q' if SIDE = 'R' and TRANS = 'C',
1188
+ *
1189
+ * where Q is a complex unitary matrix defined as the product of k
1190
+ * elementary reflectors
1191
+ *
1192
+ * Q = H(k) . . . H(2) H(1)
1193
+ *
1194
+ * as returned by ZGEQLF. Q is of order m if SIDE = 'L' and of order n
1195
+ * if SIDE = 'R'.
1196
+ *
1197
+
1198
+ * Arguments
1199
+ * =========
1200
+ *
1201
+ * SIDE (input) CHARACTER*1
1202
+ * = 'L': apply Q or Q' from the Left
1203
+ * = 'R': apply Q or Q' from the Right
1204
+ *
1205
+ * TRANS (input) CHARACTER*1
1206
+ * = 'N': apply Q (No transpose)
1207
+ * = 'C': apply Q' (Conjugate transpose)
1208
+ *
1209
+ * M (input) INTEGER
1210
+ * The number of rows of the matrix C. M >= 0.
1211
+ *
1212
+ * N (input) INTEGER
1213
+ * The number of columns of the matrix C. N >= 0.
1214
+ *
1215
+ * K (input) INTEGER
1216
+ * The number of elementary reflectors whose product defines
1217
+ * the matrix Q.
1218
+ * If SIDE = 'L', M >= K >= 0;
1219
+ * if SIDE = 'R', N >= K >= 0.
1220
+ *
1221
+ * A (input) COMPLEX*16 array, dimension (LDA,K)
1222
+ * The i-th column must contain the vector which defines the
1223
+ * elementary reflector H(i), for i = 1,2,...,k, as returned by
1224
+ * ZGEQLF in the last k columns of its array argument A.
1225
+ * A is modified by the routine but restored on exit.
1226
+ *
1227
+ * LDA (input) INTEGER
1228
+ * The leading dimension of the array A.
1229
+ * If SIDE = 'L', LDA >= max(1,M);
1230
+ * if SIDE = 'R', LDA >= max(1,N).
1231
+ *
1232
+ * TAU (input) COMPLEX*16 array, dimension (K)
1233
+ * TAU(i) must contain the scalar factor of the elementary
1234
+ * reflector H(i), as returned by ZGEQLF.
1235
+ *
1236
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
1237
+ * On entry, the m-by-n matrix C.
1238
+ * On exit, C is overwritten by Q*C or Q'*C or C*Q' or C*Q.
1239
+ *
1240
+ * LDC (input) INTEGER
1241
+ * The leading dimension of the array C. LDC >= max(1,M).
1242
+ *
1243
+ * WORK (workspace) COMPLEX*16 array, dimension
1244
+ * (N) if SIDE = 'L',
1245
+ * (M) if SIDE = 'R'
1246
+ *
1247
+ * INFO (output) INTEGER
1248
+ * = 0: successful exit
1249
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1250
+ *
1251
+
1252
+ * =====================================================================
1253
+ *
1254
+
1255
+
1256
+ </PRE>
1257
+ <A HREF="#top">go to the page top</A>
1258
+
1259
+ <A NAME="zunm2r"></A>
1260
+ <H2>zunm2r</H2>
1261
+ <PRE>
1262
+ USAGE:
1263
+ info, c = NumRu::Lapack.zunm2r( side, trans, m, a, tau, c, [:usage => usage, :help => help])
1264
+
1265
+
1266
+ FORTRAN MANUAL
1267
+ SUBROUTINE ZUNM2R( SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, INFO )
1268
+
1269
+ * Purpose
1270
+ * =======
1271
+ *
1272
+ * ZUNM2R overwrites the general complex m-by-n matrix C with
1273
+ *
1274
+ * Q * C if SIDE = 'L' and TRANS = 'N', or
1275
+ *
1276
+ * Q'* C if SIDE = 'L' and TRANS = 'C', or
1277
+ *
1278
+ * C * Q if SIDE = 'R' and TRANS = 'N', or
1279
+ *
1280
+ * C * Q' if SIDE = 'R' and TRANS = 'C',
1281
+ *
1282
+ * where Q is a complex unitary matrix defined as the product of k
1283
+ * elementary reflectors
1284
+ *
1285
+ * Q = H(1) H(2) . . . H(k)
1286
+ *
1287
+ * as returned by ZGEQRF. Q is of order m if SIDE = 'L' and of order n
1288
+ * if SIDE = 'R'.
1289
+ *
1290
+
1291
+ * Arguments
1292
+ * =========
1293
+ *
1294
+ * SIDE (input) CHARACTER*1
1295
+ * = 'L': apply Q or Q' from the Left
1296
+ * = 'R': apply Q or Q' from the Right
1297
+ *
1298
+ * TRANS (input) CHARACTER*1
1299
+ * = 'N': apply Q (No transpose)
1300
+ * = 'C': apply Q' (Conjugate transpose)
1301
+ *
1302
+ * M (input) INTEGER
1303
+ * The number of rows of the matrix C. M >= 0.
1304
+ *
1305
+ * N (input) INTEGER
1306
+ * The number of columns of the matrix C. N >= 0.
1307
+ *
1308
+ * K (input) INTEGER
1309
+ * The number of elementary reflectors whose product defines
1310
+ * the matrix Q.
1311
+ * If SIDE = 'L', M >= K >= 0;
1312
+ * if SIDE = 'R', N >= K >= 0.
1313
+ *
1314
+ * A (input) COMPLEX*16 array, dimension (LDA,K)
1315
+ * The i-th column must contain the vector which defines the
1316
+ * elementary reflector H(i), for i = 1,2,...,k, as returned by
1317
+ * ZGEQRF in the first k columns of its array argument A.
1318
+ * A is modified by the routine but restored on exit.
1319
+ *
1320
+ * LDA (input) INTEGER
1321
+ * The leading dimension of the array A.
1322
+ * If SIDE = 'L', LDA >= max(1,M);
1323
+ * if SIDE = 'R', LDA >= max(1,N).
1324
+ *
1325
+ * TAU (input) COMPLEX*16 array, dimension (K)
1326
+ * TAU(i) must contain the scalar factor of the elementary
1327
+ * reflector H(i), as returned by ZGEQRF.
1328
+ *
1329
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
1330
+ * On entry, the m-by-n matrix C.
1331
+ * On exit, C is overwritten by Q*C or Q'*C or C*Q' or C*Q.
1332
+ *
1333
+ * LDC (input) INTEGER
1334
+ * The leading dimension of the array C. LDC >= max(1,M).
1335
+ *
1336
+ * WORK (workspace) COMPLEX*16 array, dimension
1337
+ * (N) if SIDE = 'L',
1338
+ * (M) if SIDE = 'R'
1339
+ *
1340
+ * INFO (output) INTEGER
1341
+ * = 0: successful exit
1342
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1343
+ *
1344
+
1345
+ * =====================================================================
1346
+ *
1347
+
1348
+
1349
+ </PRE>
1350
+ <A HREF="#top">go to the page top</A>
1351
+
1352
+ <A NAME="zunmbr"></A>
1353
+ <H2>zunmbr</H2>
1354
+ <PRE>
1355
+ USAGE:
1356
+ work, info, c = NumRu::Lapack.zunmbr( vect, side, trans, m, k, a, tau, c, [:lwork => lwork, :usage => usage, :help => help])
1357
+
1358
+
1359
+ FORTRAN MANUAL
1360
+ SUBROUTINE ZUNMBR( VECT, SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, LWORK, INFO )
1361
+
1362
+ * Purpose
1363
+ * =======
1364
+ *
1365
+ * If VECT = 'Q', ZUNMBR overwrites the general complex M-by-N matrix C
1366
+ * with
1367
+ * SIDE = 'L' SIDE = 'R'
1368
+ * TRANS = 'N': Q * C C * Q
1369
+ * TRANS = 'C': Q**H * C C * Q**H
1370
+ *
1371
+ * If VECT = 'P', ZUNMBR overwrites the general complex M-by-N matrix C
1372
+ * with
1373
+ * SIDE = 'L' SIDE = 'R'
1374
+ * TRANS = 'N': P * C C * P
1375
+ * TRANS = 'C': P**H * C C * P**H
1376
+ *
1377
+ * Here Q and P**H are the unitary matrices determined by ZGEBRD when
1378
+ * reducing a complex matrix A to bidiagonal form: A = Q * B * P**H. Q
1379
+ * and P**H are defined as products of elementary reflectors H(i) and
1380
+ * G(i) respectively.
1381
+ *
1382
+ * Let nq = m if SIDE = 'L' and nq = n if SIDE = 'R'. Thus nq is the
1383
+ * order of the unitary matrix Q or P**H that is applied.
1384
+ *
1385
+ * If VECT = 'Q', A is assumed to have been an NQ-by-K matrix:
1386
+ * if nq >= k, Q = H(1) H(2) . . . H(k);
1387
+ * if nq < k, Q = H(1) H(2) . . . H(nq-1).
1388
+ *
1389
+ * If VECT = 'P', A is assumed to have been a K-by-NQ matrix:
1390
+ * if k < nq, P = G(1) G(2) . . . G(k);
1391
+ * if k >= nq, P = G(1) G(2) . . . G(nq-1).
1392
+ *
1393
+
1394
+ * Arguments
1395
+ * =========
1396
+ *
1397
+ * VECT (input) CHARACTER*1
1398
+ * = 'Q': apply Q or Q**H;
1399
+ * = 'P': apply P or P**H.
1400
+ *
1401
+ * SIDE (input) CHARACTER*1
1402
+ * = 'L': apply Q, Q**H, P or P**H from the Left;
1403
+ * = 'R': apply Q, Q**H, P or P**H from the Right.
1404
+ *
1405
+ * TRANS (input) CHARACTER*1
1406
+ * = 'N': No transpose, apply Q or P;
1407
+ * = 'C': Conjugate transpose, apply Q**H or P**H.
1408
+ *
1409
+ * M (input) INTEGER
1410
+ * The number of rows of the matrix C. M >= 0.
1411
+ *
1412
+ * N (input) INTEGER
1413
+ * The number of columns of the matrix C. N >= 0.
1414
+ *
1415
+ * K (input) INTEGER
1416
+ * If VECT = 'Q', the number of columns in the original
1417
+ * matrix reduced by ZGEBRD.
1418
+ * If VECT = 'P', the number of rows in the original
1419
+ * matrix reduced by ZGEBRD.
1420
+ * K >= 0.
1421
+ *
1422
+ * A (input) COMPLEX*16 array, dimension
1423
+ * (LDA,min(nq,K)) if VECT = 'Q'
1424
+ * (LDA,nq) if VECT = 'P'
1425
+ * The vectors which define the elementary reflectors H(i) and
1426
+ * G(i), whose products determine the matrices Q and P, as
1427
+ * returned by ZGEBRD.
1428
+ *
1429
+ * LDA (input) INTEGER
1430
+ * The leading dimension of the array A.
1431
+ * If VECT = 'Q', LDA >= max(1,nq);
1432
+ * if VECT = 'P', LDA >= max(1,min(nq,K)).
1433
+ *
1434
+ * TAU (input) COMPLEX*16 array, dimension (min(nq,K))
1435
+ * TAU(i) must contain the scalar factor of the elementary
1436
+ * reflector H(i) or G(i) which determines Q or P, as returned
1437
+ * by ZGEBRD in the array argument TAUQ or TAUP.
1438
+ *
1439
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
1440
+ * On entry, the M-by-N matrix C.
1441
+ * On exit, C is overwritten by Q*C or Q**H*C or C*Q**H or C*Q
1442
+ * or P*C or P**H*C or C*P or C*P**H.
1443
+ *
1444
+ * LDC (input) INTEGER
1445
+ * The leading dimension of the array C. LDC >= max(1,M).
1446
+ *
1447
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
1448
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
1449
+ *
1450
+ * LWORK (input) INTEGER
1451
+ * The dimension of the array WORK.
1452
+ * If SIDE = 'L', LWORK >= max(1,N);
1453
+ * if SIDE = 'R', LWORK >= max(1,M);
1454
+ * if N = 0 or M = 0, LWORK >= 1.
1455
+ * For optimum performance LWORK >= max(1,N*NB) if SIDE = 'L',
1456
+ * and LWORK >= max(1,M*NB) if SIDE = 'R', where NB is the
1457
+ * optimal blocksize. (NB = 0 if M = 0 or N = 0.)
1458
+ *
1459
+ * If LWORK = -1, then a workspace query is assumed; the routine
1460
+ * only calculates the optimal size of the WORK array, returns
1461
+ * this value as the first entry of the WORK array, and no error
1462
+ * message related to LWORK is issued by XERBLA.
1463
+ *
1464
+ * INFO (output) INTEGER
1465
+ * = 0: successful exit
1466
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1467
+ *
1468
+
1469
+ * =====================================================================
1470
+ *
1471
+ * .. Local Scalars ..
1472
+ LOGICAL APPLYQ, LEFT, LQUERY, NOTRAN
1473
+ CHARACTER TRANST
1474
+ INTEGER I1, I2, IINFO, LWKOPT, MI, NB, NI, NQ, NW
1475
+ * ..
1476
+ * .. External Functions ..
1477
+ LOGICAL LSAME
1478
+ INTEGER ILAENV
1479
+ EXTERNAL LSAME, ILAENV
1480
+ * ..
1481
+ * .. External Subroutines ..
1482
+ EXTERNAL XERBLA, ZUNMLQ, ZUNMQR
1483
+ * ..
1484
+ * .. Intrinsic Functions ..
1485
+ INTRINSIC MAX, MIN
1486
+ * ..
1487
+
1488
+
1489
+ </PRE>
1490
+ <A HREF="#top">go to the page top</A>
1491
+
1492
+ <A NAME="zunmhr"></A>
1493
+ <H2>zunmhr</H2>
1494
+ <PRE>
1495
+ USAGE:
1496
+ work, info, c = NumRu::Lapack.zunmhr( side, trans, ilo, ihi, a, tau, c, [:lwork => lwork, :usage => usage, :help => help])
1497
+
1498
+
1499
+ FORTRAN MANUAL
1500
+ SUBROUTINE ZUNMHR( SIDE, TRANS, M, N, ILO, IHI, A, LDA, TAU, C, LDC, WORK, LWORK, INFO )
1501
+
1502
+ * Purpose
1503
+ * =======
1504
+ *
1505
+ * ZUNMHR overwrites the general complex M-by-N matrix C with
1506
+ *
1507
+ * SIDE = 'L' SIDE = 'R'
1508
+ * TRANS = 'N': Q * C C * Q
1509
+ * TRANS = 'C': Q**H * C C * Q**H
1510
+ *
1511
+ * where Q is a complex unitary matrix of order nq, with nq = m if
1512
+ * SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of
1513
+ * IHI-ILO elementary reflectors, as returned by ZGEHRD:
1514
+ *
1515
+ * Q = H(ilo) H(ilo+1) . . . H(ihi-1).
1516
+ *
1517
+
1518
+ * Arguments
1519
+ * =========
1520
+ *
1521
+ * SIDE (input) CHARACTER*1
1522
+ * = 'L': apply Q or Q**H from the Left;
1523
+ * = 'R': apply Q or Q**H from the Right.
1524
+ *
1525
+ * TRANS (input) CHARACTER*1
1526
+ * = 'N': apply Q (No transpose)
1527
+ * = 'C': apply Q**H (Conjugate transpose)
1528
+ *
1529
+ * M (input) INTEGER
1530
+ * The number of rows of the matrix C. M >= 0.
1531
+ *
1532
+ * N (input) INTEGER
1533
+ * The number of columns of the matrix C. N >= 0.
1534
+ *
1535
+ * ILO (input) INTEGER
1536
+ * IHI (input) INTEGER
1537
+ * ILO and IHI must have the same values as in the previous call
1538
+ * of ZGEHRD. Q is equal to the unit matrix except in the
1539
+ * submatrix Q(ilo+1:ihi,ilo+1:ihi).
1540
+ * If SIDE = 'L', then 1 <= ILO <= IHI <= M, if M > 0, and
1541
+ * ILO = 1 and IHI = 0, if M = 0;
1542
+ * if SIDE = 'R', then 1 <= ILO <= IHI <= N, if N > 0, and
1543
+ * ILO = 1 and IHI = 0, if N = 0.
1544
+ *
1545
+ * A (input) COMPLEX*16 array, dimension
1546
+ * (LDA,M) if SIDE = 'L'
1547
+ * (LDA,N) if SIDE = 'R'
1548
+ * The vectors which define the elementary reflectors, as
1549
+ * returned by ZGEHRD.
1550
+ *
1551
+ * LDA (input) INTEGER
1552
+ * The leading dimension of the array A.
1553
+ * LDA >= max(1,M) if SIDE = 'L'; LDA >= max(1,N) if SIDE = 'R'.
1554
+ *
1555
+ * TAU (input) COMPLEX*16 array, dimension
1556
+ * (M-1) if SIDE = 'L'
1557
+ * (N-1) if SIDE = 'R'
1558
+ * TAU(i) must contain the scalar factor of the elementary
1559
+ * reflector H(i), as returned by ZGEHRD.
1560
+ *
1561
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
1562
+ * On entry, the M-by-N matrix C.
1563
+ * On exit, C is overwritten by Q*C or Q**H*C or C*Q**H or C*Q.
1564
+ *
1565
+ * LDC (input) INTEGER
1566
+ * The leading dimension of the array C. LDC >= max(1,M).
1567
+ *
1568
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
1569
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
1570
+ *
1571
+ * LWORK (input) INTEGER
1572
+ * The dimension of the array WORK.
1573
+ * If SIDE = 'L', LWORK >= max(1,N);
1574
+ * if SIDE = 'R', LWORK >= max(1,M).
1575
+ * For optimum performance LWORK >= N*NB if SIDE = 'L', and
1576
+ * LWORK >= M*NB if SIDE = 'R', where NB is the optimal
1577
+ * blocksize.
1578
+ *
1579
+ * If LWORK = -1, then a workspace query is assumed; the routine
1580
+ * only calculates the optimal size of the WORK array, returns
1581
+ * this value as the first entry of the WORK array, and no error
1582
+ * message related to LWORK is issued by XERBLA.
1583
+ *
1584
+ * INFO (output) INTEGER
1585
+ * = 0: successful exit
1586
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1587
+ *
1588
+
1589
+ * =====================================================================
1590
+ *
1591
+ * .. Local Scalars ..
1592
+ LOGICAL LEFT, LQUERY
1593
+ INTEGER I1, I2, IINFO, LWKOPT, MI, NB, NH, NI, NQ, NW
1594
+ * ..
1595
+ * .. External Functions ..
1596
+ LOGICAL LSAME
1597
+ INTEGER ILAENV
1598
+ EXTERNAL LSAME, ILAENV
1599
+ * ..
1600
+ * .. External Subroutines ..
1601
+ EXTERNAL XERBLA, ZUNMQR
1602
+ * ..
1603
+ * .. Intrinsic Functions ..
1604
+ INTRINSIC MAX, MIN
1605
+ * ..
1606
+
1607
+
1608
+ </PRE>
1609
+ <A HREF="#top">go to the page top</A>
1610
+
1611
+ <A NAME="zunml2"></A>
1612
+ <H2>zunml2</H2>
1613
+ <PRE>
1614
+ USAGE:
1615
+ info, c = NumRu::Lapack.zunml2( side, trans, a, tau, c, [:usage => usage, :help => help])
1616
+
1617
+
1618
+ FORTRAN MANUAL
1619
+ SUBROUTINE ZUNML2( SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, INFO )
1620
+
1621
+ * Purpose
1622
+ * =======
1623
+ *
1624
+ * ZUNML2 overwrites the general complex m-by-n matrix C with
1625
+ *
1626
+ * Q * C if SIDE = 'L' and TRANS = 'N', or
1627
+ *
1628
+ * Q'* C if SIDE = 'L' and TRANS = 'C', or
1629
+ *
1630
+ * C * Q if SIDE = 'R' and TRANS = 'N', or
1631
+ *
1632
+ * C * Q' if SIDE = 'R' and TRANS = 'C',
1633
+ *
1634
+ * where Q is a complex unitary matrix defined as the product of k
1635
+ * elementary reflectors
1636
+ *
1637
+ * Q = H(k)' . . . H(2)' H(1)'
1638
+ *
1639
+ * as returned by ZGELQF. Q is of order m if SIDE = 'L' and of order n
1640
+ * if SIDE = 'R'.
1641
+ *
1642
+
1643
+ * Arguments
1644
+ * =========
1645
+ *
1646
+ * SIDE (input) CHARACTER*1
1647
+ * = 'L': apply Q or Q' from the Left
1648
+ * = 'R': apply Q or Q' from the Right
1649
+ *
1650
+ * TRANS (input) CHARACTER*1
1651
+ * = 'N': apply Q (No transpose)
1652
+ * = 'C': apply Q' (Conjugate transpose)
1653
+ *
1654
+ * M (input) INTEGER
1655
+ * The number of rows of the matrix C. M >= 0.
1656
+ *
1657
+ * N (input) INTEGER
1658
+ * The number of columns of the matrix C. N >= 0.
1659
+ *
1660
+ * K (input) INTEGER
1661
+ * The number of elementary reflectors whose product defines
1662
+ * the matrix Q.
1663
+ * If SIDE = 'L', M >= K >= 0;
1664
+ * if SIDE = 'R', N >= K >= 0.
1665
+ *
1666
+ * A (input) COMPLEX*16 array, dimension
1667
+ * (LDA,M) if SIDE = 'L',
1668
+ * (LDA,N) if SIDE = 'R'
1669
+ * The i-th row must contain the vector which defines the
1670
+ * elementary reflector H(i), for i = 1,2,...,k, as returned by
1671
+ * ZGELQF in the first k rows of its array argument A.
1672
+ * A is modified by the routine but restored on exit.
1673
+ *
1674
+ * LDA (input) INTEGER
1675
+ * The leading dimension of the array A. LDA >= max(1,K).
1676
+ *
1677
+ * TAU (input) COMPLEX*16 array, dimension (K)
1678
+ * TAU(i) must contain the scalar factor of the elementary
1679
+ * reflector H(i), as returned by ZGELQF.
1680
+ *
1681
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
1682
+ * On entry, the m-by-n matrix C.
1683
+ * On exit, C is overwritten by Q*C or Q'*C or C*Q' or C*Q.
1684
+ *
1685
+ * LDC (input) INTEGER
1686
+ * The leading dimension of the array C. LDC >= max(1,M).
1687
+ *
1688
+ * WORK (workspace) COMPLEX*16 array, dimension
1689
+ * (N) if SIDE = 'L',
1690
+ * (M) if SIDE = 'R'
1691
+ *
1692
+ * INFO (output) INTEGER
1693
+ * = 0: successful exit
1694
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1695
+ *
1696
+
1697
+ * =====================================================================
1698
+ *
1699
+
1700
+
1701
+ </PRE>
1702
+ <A HREF="#top">go to the page top</A>
1703
+
1704
+ <A NAME="zunmlq"></A>
1705
+ <H2>zunmlq</H2>
1706
+ <PRE>
1707
+ USAGE:
1708
+ work, info, c = NumRu::Lapack.zunmlq( side, trans, a, tau, c, [:lwork => lwork, :usage => usage, :help => help])
1709
+
1710
+
1711
+ FORTRAN MANUAL
1712
+ SUBROUTINE ZUNMLQ( SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, LWORK, INFO )
1713
+
1714
+ * Purpose
1715
+ * =======
1716
+ *
1717
+ * ZUNMLQ overwrites the general complex M-by-N matrix C with
1718
+ *
1719
+ * SIDE = 'L' SIDE = 'R'
1720
+ * TRANS = 'N': Q * C C * Q
1721
+ * TRANS = 'C': Q**H * C C * Q**H
1722
+ *
1723
+ * where Q is a complex unitary matrix defined as the product of k
1724
+ * elementary reflectors
1725
+ *
1726
+ * Q = H(k)' . . . H(2)' H(1)'
1727
+ *
1728
+ * as returned by ZGELQF. Q is of order M if SIDE = 'L' and of order N
1729
+ * if SIDE = 'R'.
1730
+ *
1731
+
1732
+ * Arguments
1733
+ * =========
1734
+ *
1735
+ * SIDE (input) CHARACTER*1
1736
+ * = 'L': apply Q or Q**H from the Left;
1737
+ * = 'R': apply Q or Q**H from the Right.
1738
+ *
1739
+ * TRANS (input) CHARACTER*1
1740
+ * = 'N': No transpose, apply Q;
1741
+ * = 'C': Conjugate transpose, apply Q**H.
1742
+ *
1743
+ * M (input) INTEGER
1744
+ * The number of rows of the matrix C. M >= 0.
1745
+ *
1746
+ * N (input) INTEGER
1747
+ * The number of columns of the matrix C. N >= 0.
1748
+ *
1749
+ * K (input) INTEGER
1750
+ * The number of elementary reflectors whose product defines
1751
+ * the matrix Q.
1752
+ * If SIDE = 'L', M >= K >= 0;
1753
+ * if SIDE = 'R', N >= K >= 0.
1754
+ *
1755
+ * A (input) COMPLEX*16 array, dimension
1756
+ * (LDA,M) if SIDE = 'L',
1757
+ * (LDA,N) if SIDE = 'R'
1758
+ * The i-th row must contain the vector which defines the
1759
+ * elementary reflector H(i), for i = 1,2,...,k, as returned by
1760
+ * ZGELQF in the first k rows of its array argument A.
1761
+ * A is modified by the routine but restored on exit.
1762
+ *
1763
+ * LDA (input) INTEGER
1764
+ * The leading dimension of the array A. LDA >= max(1,K).
1765
+ *
1766
+ * TAU (input) COMPLEX*16 array, dimension (K)
1767
+ * TAU(i) must contain the scalar factor of the elementary
1768
+ * reflector H(i), as returned by ZGELQF.
1769
+ *
1770
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
1771
+ * On entry, the M-by-N matrix C.
1772
+ * On exit, C is overwritten by Q*C or Q**H*C or C*Q**H or C*Q.
1773
+ *
1774
+ * LDC (input) INTEGER
1775
+ * The leading dimension of the array C. LDC >= max(1,M).
1776
+ *
1777
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
1778
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
1779
+ *
1780
+ * LWORK (input) INTEGER
1781
+ * The dimension of the array WORK.
1782
+ * If SIDE = 'L', LWORK >= max(1,N);
1783
+ * if SIDE = 'R', LWORK >= max(1,M).
1784
+ * For optimum performance LWORK >= N*NB if SIDE 'L', and
1785
+ * LWORK >= M*NB if SIDE = 'R', where NB is the optimal
1786
+ * blocksize.
1787
+ *
1788
+ * If LWORK = -1, then a workspace query is assumed; the routine
1789
+ * only calculates the optimal size of the WORK array, returns
1790
+ * this value as the first entry of the WORK array, and no error
1791
+ * message related to LWORK is issued by XERBLA.
1792
+ *
1793
+ * INFO (output) INTEGER
1794
+ * = 0: successful exit
1795
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1796
+ *
1797
+
1798
+ * =====================================================================
1799
+ *
1800
+
1801
+
1802
+ </PRE>
1803
+ <A HREF="#top">go to the page top</A>
1804
+
1805
+ <A NAME="zunmql"></A>
1806
+ <H2>zunmql</H2>
1807
+ <PRE>
1808
+ USAGE:
1809
+ work, info, c = NumRu::Lapack.zunmql( side, trans, m, a, tau, c, [:lwork => lwork, :usage => usage, :help => help])
1810
+
1811
+
1812
+ FORTRAN MANUAL
1813
+ SUBROUTINE ZUNMQL( SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, LWORK, INFO )
1814
+
1815
+ * Purpose
1816
+ * =======
1817
+ *
1818
+ * ZUNMQL overwrites the general complex M-by-N matrix C with
1819
+ *
1820
+ * SIDE = 'L' SIDE = 'R'
1821
+ * TRANS = 'N': Q * C C * Q
1822
+ * TRANS = 'C': Q**H * C C * Q**H
1823
+ *
1824
+ * where Q is a complex unitary matrix defined as the product of k
1825
+ * elementary reflectors
1826
+ *
1827
+ * Q = H(k) . . . H(2) H(1)
1828
+ *
1829
+ * as returned by ZGEQLF. Q is of order M if SIDE = 'L' and of order N
1830
+ * if SIDE = 'R'.
1831
+ *
1832
+
1833
+ * Arguments
1834
+ * =========
1835
+ *
1836
+ * SIDE (input) CHARACTER*1
1837
+ * = 'L': apply Q or Q**H from the Left;
1838
+ * = 'R': apply Q or Q**H from the Right.
1839
+ *
1840
+ * TRANS (input) CHARACTER*1
1841
+ * = 'N': No transpose, apply Q;
1842
+ * = 'C': Transpose, apply Q**H.
1843
+ *
1844
+ * M (input) INTEGER
1845
+ * The number of rows of the matrix C. M >= 0.
1846
+ *
1847
+ * N (input) INTEGER
1848
+ * The number of columns of the matrix C. N >= 0.
1849
+ *
1850
+ * K (input) INTEGER
1851
+ * The number of elementary reflectors whose product defines
1852
+ * the matrix Q.
1853
+ * If SIDE = 'L', M >= K >= 0;
1854
+ * if SIDE = 'R', N >= K >= 0.
1855
+ *
1856
+ * A (input) COMPLEX*16 array, dimension (LDA,K)
1857
+ * The i-th column must contain the vector which defines the
1858
+ * elementary reflector H(i), for i = 1,2,...,k, as returned by
1859
+ * ZGEQLF in the last k columns of its array argument A.
1860
+ * A is modified by the routine but restored on exit.
1861
+ *
1862
+ * LDA (input) INTEGER
1863
+ * The leading dimension of the array A.
1864
+ * If SIDE = 'L', LDA >= max(1,M);
1865
+ * if SIDE = 'R', LDA >= max(1,N).
1866
+ *
1867
+ * TAU (input) COMPLEX*16 array, dimension (K)
1868
+ * TAU(i) must contain the scalar factor of the elementary
1869
+ * reflector H(i), as returned by ZGEQLF.
1870
+ *
1871
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
1872
+ * On entry, the M-by-N matrix C.
1873
+ * On exit, C is overwritten by Q*C or Q**H*C or C*Q**H or C*Q.
1874
+ *
1875
+ * LDC (input) INTEGER
1876
+ * The leading dimension of the array C. LDC >= max(1,M).
1877
+ *
1878
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
1879
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
1880
+ *
1881
+ * LWORK (input) INTEGER
1882
+ * The dimension of the array WORK.
1883
+ * If SIDE = 'L', LWORK >= max(1,N);
1884
+ * if SIDE = 'R', LWORK >= max(1,M).
1885
+ * For optimum performance LWORK >= N*NB if SIDE = 'L', and
1886
+ * LWORK >= M*NB if SIDE = 'R', where NB is the optimal
1887
+ * blocksize.
1888
+ *
1889
+ * If LWORK = -1, then a workspace query is assumed; the routine
1890
+ * only calculates the optimal size of the WORK array, returns
1891
+ * this value as the first entry of the WORK array, and no error
1892
+ * message related to LWORK is issued by XERBLA.
1893
+ *
1894
+ * INFO (output) INTEGER
1895
+ * = 0: successful exit
1896
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1897
+ *
1898
+
1899
+ * =====================================================================
1900
+ *
1901
+
1902
+
1903
+ </PRE>
1904
+ <A HREF="#top">go to the page top</A>
1905
+
1906
+ <A NAME="zunmqr"></A>
1907
+ <H2>zunmqr</H2>
1908
+ <PRE>
1909
+ USAGE:
1910
+ work, info, c = NumRu::Lapack.zunmqr( side, trans, m, a, tau, c, [:lwork => lwork, :usage => usage, :help => help])
1911
+
1912
+
1913
+ FORTRAN MANUAL
1914
+ SUBROUTINE ZUNMQR( SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, LWORK, INFO )
1915
+
1916
+ * Purpose
1917
+ * =======
1918
+ *
1919
+ * ZUNMQR overwrites the general complex M-by-N matrix C with
1920
+ *
1921
+ * SIDE = 'L' SIDE = 'R'
1922
+ * TRANS = 'N': Q * C C * Q
1923
+ * TRANS = 'C': Q**H * C C * Q**H
1924
+ *
1925
+ * where Q is a complex unitary matrix defined as the product of k
1926
+ * elementary reflectors
1927
+ *
1928
+ * Q = H(1) H(2) . . . H(k)
1929
+ *
1930
+ * as returned by ZGEQRF. Q is of order M if SIDE = 'L' and of order N
1931
+ * if SIDE = 'R'.
1932
+ *
1933
+
1934
+ * Arguments
1935
+ * =========
1936
+ *
1937
+ * SIDE (input) CHARACTER*1
1938
+ * = 'L': apply Q or Q**H from the Left;
1939
+ * = 'R': apply Q or Q**H from the Right.
1940
+ *
1941
+ * TRANS (input) CHARACTER*1
1942
+ * = 'N': No transpose, apply Q;
1943
+ * = 'C': Conjugate transpose, apply Q**H.
1944
+ *
1945
+ * M (input) INTEGER
1946
+ * The number of rows of the matrix C. M >= 0.
1947
+ *
1948
+ * N (input) INTEGER
1949
+ * The number of columns of the matrix C. N >= 0.
1950
+ *
1951
+ * K (input) INTEGER
1952
+ * The number of elementary reflectors whose product defines
1953
+ * the matrix Q.
1954
+ * If SIDE = 'L', M >= K >= 0;
1955
+ * if SIDE = 'R', N >= K >= 0.
1956
+ *
1957
+ * A (input) COMPLEX*16 array, dimension (LDA,K)
1958
+ * The i-th column must contain the vector which defines the
1959
+ * elementary reflector H(i), for i = 1,2,...,k, as returned by
1960
+ * ZGEQRF in the first k columns of its array argument A.
1961
+ * A is modified by the routine but restored on exit.
1962
+ *
1963
+ * LDA (input) INTEGER
1964
+ * The leading dimension of the array A.
1965
+ * If SIDE = 'L', LDA >= max(1,M);
1966
+ * if SIDE = 'R', LDA >= max(1,N).
1967
+ *
1968
+ * TAU (input) COMPLEX*16 array, dimension (K)
1969
+ * TAU(i) must contain the scalar factor of the elementary
1970
+ * reflector H(i), as returned by ZGEQRF.
1971
+ *
1972
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
1973
+ * On entry, the M-by-N matrix C.
1974
+ * On exit, C is overwritten by Q*C or Q**H*C or C*Q**H or C*Q.
1975
+ *
1976
+ * LDC (input) INTEGER
1977
+ * The leading dimension of the array C. LDC >= max(1,M).
1978
+ *
1979
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
1980
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
1981
+ *
1982
+ * LWORK (input) INTEGER
1983
+ * The dimension of the array WORK.
1984
+ * If SIDE = 'L', LWORK >= max(1,N);
1985
+ * if SIDE = 'R', LWORK >= max(1,M).
1986
+ * For optimum performance LWORK >= N*NB if SIDE = 'L', and
1987
+ * LWORK >= M*NB if SIDE = 'R', where NB is the optimal
1988
+ * blocksize.
1989
+ *
1990
+ * If LWORK = -1, then a workspace query is assumed; the routine
1991
+ * only calculates the optimal size of the WORK array, returns
1992
+ * this value as the first entry of the WORK array, and no error
1993
+ * message related to LWORK is issued by XERBLA.
1994
+ *
1995
+ * INFO (output) INTEGER
1996
+ * = 0: successful exit
1997
+ * < 0: if INFO = -i, the i-th argument had an illegal value
1998
+ *
1999
+
2000
+ * =====================================================================
2001
+ *
2002
+
2003
+
2004
+ </PRE>
2005
+ <A HREF="#top">go to the page top</A>
2006
+
2007
+ <A NAME="zunmr2"></A>
2008
+ <H2>zunmr2</H2>
2009
+ <PRE>
2010
+ USAGE:
2011
+ info, c = NumRu::Lapack.zunmr2( side, trans, a, tau, c, [:usage => usage, :help => help])
2012
+
2013
+
2014
+ FORTRAN MANUAL
2015
+ SUBROUTINE ZUNMR2( SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, INFO )
2016
+
2017
+ * Purpose
2018
+ * =======
2019
+ *
2020
+ * ZUNMR2 overwrites the general complex m-by-n matrix C with
2021
+ *
2022
+ * Q * C if SIDE = 'L' and TRANS = 'N', or
2023
+ *
2024
+ * Q'* C if SIDE = 'L' and TRANS = 'C', or
2025
+ *
2026
+ * C * Q if SIDE = 'R' and TRANS = 'N', or
2027
+ *
2028
+ * C * Q' if SIDE = 'R' and TRANS = 'C',
2029
+ *
2030
+ * where Q is a complex unitary matrix defined as the product of k
2031
+ * elementary reflectors
2032
+ *
2033
+ * Q = H(1)' H(2)' . . . H(k)'
2034
+ *
2035
+ * as returned by ZGERQF. Q is of order m if SIDE = 'L' and of order n
2036
+ * if SIDE = 'R'.
2037
+ *
2038
+
2039
+ * Arguments
2040
+ * =========
2041
+ *
2042
+ * SIDE (input) CHARACTER*1
2043
+ * = 'L': apply Q or Q' from the Left
2044
+ * = 'R': apply Q or Q' from the Right
2045
+ *
2046
+ * TRANS (input) CHARACTER*1
2047
+ * = 'N': apply Q (No transpose)
2048
+ * = 'C': apply Q' (Conjugate transpose)
2049
+ *
2050
+ * M (input) INTEGER
2051
+ * The number of rows of the matrix C. M >= 0.
2052
+ *
2053
+ * N (input) INTEGER
2054
+ * The number of columns of the matrix C. N >= 0.
2055
+ *
2056
+ * K (input) INTEGER
2057
+ * The number of elementary reflectors whose product defines
2058
+ * the matrix Q.
2059
+ * If SIDE = 'L', M >= K >= 0;
2060
+ * if SIDE = 'R', N >= K >= 0.
2061
+ *
2062
+ * A (input) COMPLEX*16 array, dimension
2063
+ * (LDA,M) if SIDE = 'L',
2064
+ * (LDA,N) if SIDE = 'R'
2065
+ * The i-th row must contain the vector which defines the
2066
+ * elementary reflector H(i), for i = 1,2,...,k, as returned by
2067
+ * ZGERQF in the last k rows of its array argument A.
2068
+ * A is modified by the routine but restored on exit.
2069
+ *
2070
+ * LDA (input) INTEGER
2071
+ * The leading dimension of the array A. LDA >= max(1,K).
2072
+ *
2073
+ * TAU (input) COMPLEX*16 array, dimension (K)
2074
+ * TAU(i) must contain the scalar factor of the elementary
2075
+ * reflector H(i), as returned by ZGERQF.
2076
+ *
2077
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
2078
+ * On entry, the m-by-n matrix C.
2079
+ * On exit, C is overwritten by Q*C or Q'*C or C*Q' or C*Q.
2080
+ *
2081
+ * LDC (input) INTEGER
2082
+ * The leading dimension of the array C. LDC >= max(1,M).
2083
+ *
2084
+ * WORK (workspace) COMPLEX*16 array, dimension
2085
+ * (N) if SIDE = 'L',
2086
+ * (M) if SIDE = 'R'
2087
+ *
2088
+ * INFO (output) INTEGER
2089
+ * = 0: successful exit
2090
+ * < 0: if INFO = -i, the i-th argument had an illegal value
2091
+ *
2092
+
2093
+ * =====================================================================
2094
+ *
2095
+
2096
+
2097
+ </PRE>
2098
+ <A HREF="#top">go to the page top</A>
2099
+
2100
+ <A NAME="zunmr3"></A>
2101
+ <H2>zunmr3</H2>
2102
+ <PRE>
2103
+ USAGE:
2104
+ info, c = NumRu::Lapack.zunmr3( side, trans, l, a, tau, c, [:usage => usage, :help => help])
2105
+
2106
+
2107
+ FORTRAN MANUAL
2108
+ SUBROUTINE ZUNMR3( SIDE, TRANS, M, N, K, L, A, LDA, TAU, C, LDC, WORK, INFO )
2109
+
2110
+ * Purpose
2111
+ * =======
2112
+ *
2113
+ * ZUNMR3 overwrites the general complex m by n matrix C with
2114
+ *
2115
+ * Q * C if SIDE = 'L' and TRANS = 'N', or
2116
+ *
2117
+ * Q'* C if SIDE = 'L' and TRANS = 'C', or
2118
+ *
2119
+ * C * Q if SIDE = 'R' and TRANS = 'N', or
2120
+ *
2121
+ * C * Q' if SIDE = 'R' and TRANS = 'C',
2122
+ *
2123
+ * where Q is a complex unitary matrix defined as the product of k
2124
+ * elementary reflectors
2125
+ *
2126
+ * Q = H(1) H(2) . . . H(k)
2127
+ *
2128
+ * as returned by ZTZRZF. Q is of order m if SIDE = 'L' and of order n
2129
+ * if SIDE = 'R'.
2130
+ *
2131
+
2132
+ * Arguments
2133
+ * =========
2134
+ *
2135
+ * SIDE (input) CHARACTER*1
2136
+ * = 'L': apply Q or Q' from the Left
2137
+ * = 'R': apply Q or Q' from the Right
2138
+ *
2139
+ * TRANS (input) CHARACTER*1
2140
+ * = 'N': apply Q (No transpose)
2141
+ * = 'C': apply Q' (Conjugate transpose)
2142
+ *
2143
+ * M (input) INTEGER
2144
+ * The number of rows of the matrix C. M >= 0.
2145
+ *
2146
+ * N (input) INTEGER
2147
+ * The number of columns of the matrix C. N >= 0.
2148
+ *
2149
+ * K (input) INTEGER
2150
+ * The number of elementary reflectors whose product defines
2151
+ * the matrix Q.
2152
+ * If SIDE = 'L', M >= K >= 0;
2153
+ * if SIDE = 'R', N >= K >= 0.
2154
+ *
2155
+ * L (input) INTEGER
2156
+ * The number of columns of the matrix A containing
2157
+ * the meaningful part of the Householder reflectors.
2158
+ * If SIDE = 'L', M >= L >= 0, if SIDE = 'R', N >= L >= 0.
2159
+ *
2160
+ * A (input) COMPLEX*16 array, dimension
2161
+ * (LDA,M) if SIDE = 'L',
2162
+ * (LDA,N) if SIDE = 'R'
2163
+ * The i-th row must contain the vector which defines the
2164
+ * elementary reflector H(i), for i = 1,2,...,k, as returned by
2165
+ * ZTZRZF in the last k rows of its array argument A.
2166
+ * A is modified by the routine but restored on exit.
2167
+ *
2168
+ * LDA (input) INTEGER
2169
+ * The leading dimension of the array A. LDA >= max(1,K).
2170
+ *
2171
+ * TAU (input) COMPLEX*16 array, dimension (K)
2172
+ * TAU(i) must contain the scalar factor of the elementary
2173
+ * reflector H(i), as returned by ZTZRZF.
2174
+ *
2175
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
2176
+ * On entry, the m-by-n matrix C.
2177
+ * On exit, C is overwritten by Q*C or Q'*C or C*Q' or C*Q.
2178
+ *
2179
+ * LDC (input) INTEGER
2180
+ * The leading dimension of the array C. LDC >= max(1,M).
2181
+ *
2182
+ * WORK (workspace) COMPLEX*16 array, dimension
2183
+ * (N) if SIDE = 'L',
2184
+ * (M) if SIDE = 'R'
2185
+ *
2186
+ * INFO (output) INTEGER
2187
+ * = 0: successful exit
2188
+ * < 0: if INFO = -i, the i-th argument had an illegal value
2189
+ *
2190
+
2191
+ * Further Details
2192
+ * ===============
2193
+ *
2194
+ * Based on contributions by
2195
+ * A. Petitet, Computer Science Dept., Univ. of Tenn., Knoxville, USA
2196
+ *
2197
+ * =====================================================================
2198
+ *
2199
+ * .. Local Scalars ..
2200
+ LOGICAL LEFT, NOTRAN
2201
+ INTEGER I, I1, I2, I3, IC, JA, JC, MI, NI, NQ
2202
+ COMPLEX*16 TAUI
2203
+ * ..
2204
+ * .. External Functions ..
2205
+ LOGICAL LSAME
2206
+ EXTERNAL LSAME
2207
+ * ..
2208
+ * .. External Subroutines ..
2209
+ EXTERNAL XERBLA, ZLARZ
2210
+ * ..
2211
+ * .. Intrinsic Functions ..
2212
+ INTRINSIC DCONJG, MAX
2213
+ * ..
2214
+
2215
+
2216
+ </PRE>
2217
+ <A HREF="#top">go to the page top</A>
2218
+
2219
+ <A NAME="zunmrq"></A>
2220
+ <H2>zunmrq</H2>
2221
+ <PRE>
2222
+ USAGE:
2223
+ work, info, c = NumRu::Lapack.zunmrq( side, trans, a, tau, c, [:lwork => lwork, :usage => usage, :help => help])
2224
+
2225
+
2226
+ FORTRAN MANUAL
2227
+ SUBROUTINE ZUNMRQ( SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC, WORK, LWORK, INFO )
2228
+
2229
+ * Purpose
2230
+ * =======
2231
+ *
2232
+ * ZUNMRQ overwrites the general complex M-by-N matrix C with
2233
+ *
2234
+ * SIDE = 'L' SIDE = 'R'
2235
+ * TRANS = 'N': Q * C C * Q
2236
+ * TRANS = 'C': Q**H * C C * Q**H
2237
+ *
2238
+ * where Q is a complex unitary matrix defined as the product of k
2239
+ * elementary reflectors
2240
+ *
2241
+ * Q = H(1)' H(2)' . . . H(k)'
2242
+ *
2243
+ * as returned by ZGERQF. Q is of order M if SIDE = 'L' and of order N
2244
+ * if SIDE = 'R'.
2245
+ *
2246
+
2247
+ * Arguments
2248
+ * =========
2249
+ *
2250
+ * SIDE (input) CHARACTER*1
2251
+ * = 'L': apply Q or Q**H from the Left;
2252
+ * = 'R': apply Q or Q**H from the Right.
2253
+ *
2254
+ * TRANS (input) CHARACTER*1
2255
+ * = 'N': No transpose, apply Q;
2256
+ * = 'C': Transpose, apply Q**H.
2257
+ *
2258
+ * M (input) INTEGER
2259
+ * The number of rows of the matrix C. M >= 0.
2260
+ *
2261
+ * N (input) INTEGER
2262
+ * The number of columns of the matrix C. N >= 0.
2263
+ *
2264
+ * K (input) INTEGER
2265
+ * The number of elementary reflectors whose product defines
2266
+ * the matrix Q.
2267
+ * If SIDE = 'L', M >= K >= 0;
2268
+ * if SIDE = 'R', N >= K >= 0.
2269
+ *
2270
+ * A (input) COMPLEX*16 array, dimension
2271
+ * (LDA,M) if SIDE = 'L',
2272
+ * (LDA,N) if SIDE = 'R'
2273
+ * The i-th row must contain the vector which defines the
2274
+ * elementary reflector H(i), for i = 1,2,...,k, as returned by
2275
+ * ZGERQF in the last k rows of its array argument A.
2276
+ * A is modified by the routine but restored on exit.
2277
+ *
2278
+ * LDA (input) INTEGER
2279
+ * The leading dimension of the array A. LDA >= max(1,K).
2280
+ *
2281
+ * TAU (input) COMPLEX*16 array, dimension (K)
2282
+ * TAU(i) must contain the scalar factor of the elementary
2283
+ * reflector H(i), as returned by ZGERQF.
2284
+ *
2285
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
2286
+ * On entry, the M-by-N matrix C.
2287
+ * On exit, C is overwritten by Q*C or Q**H*C or C*Q**H or C*Q.
2288
+ *
2289
+ * LDC (input) INTEGER
2290
+ * The leading dimension of the array C. LDC >= max(1,M).
2291
+ *
2292
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
2293
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
2294
+ *
2295
+ * LWORK (input) INTEGER
2296
+ * The dimension of the array WORK.
2297
+ * If SIDE = 'L', LWORK >= max(1,N);
2298
+ * if SIDE = 'R', LWORK >= max(1,M).
2299
+ * For optimum performance LWORK >= N*NB if SIDE = 'L', and
2300
+ * LWORK >= M*NB if SIDE = 'R', where NB is the optimal
2301
+ * blocksize.
2302
+ *
2303
+ * If LWORK = -1, then a workspace query is assumed; the routine
2304
+ * only calculates the optimal size of the WORK array, returns
2305
+ * this value as the first entry of the WORK array, and no error
2306
+ * message related to LWORK is issued by XERBLA.
2307
+ *
2308
+ * INFO (output) INTEGER
2309
+ * = 0: successful exit
2310
+ * < 0: if INFO = -i, the i-th argument had an illegal value
2311
+ *
2312
+
2313
+ * =====================================================================
2314
+ *
2315
+
2316
+
2317
+ </PRE>
2318
+ <A HREF="#top">go to the page top</A>
2319
+
2320
+ <A NAME="zunmrz"></A>
2321
+ <H2>zunmrz</H2>
2322
+ <PRE>
2323
+ USAGE:
2324
+ work, info, c = NumRu::Lapack.zunmrz( side, trans, l, a, tau, c, [:lwork => lwork, :usage => usage, :help => help])
2325
+
2326
+
2327
+ FORTRAN MANUAL
2328
+ SUBROUTINE ZUNMRZ( SIDE, TRANS, M, N, K, L, A, LDA, TAU, C, LDC, WORK, LWORK, INFO )
2329
+
2330
+ * Purpose
2331
+ * =======
2332
+ *
2333
+ * ZUNMRZ overwrites the general complex M-by-N matrix C with
2334
+ *
2335
+ * SIDE = 'L' SIDE = 'R'
2336
+ * TRANS = 'N': Q * C C * Q
2337
+ * TRANS = 'C': Q**H * C C * Q**H
2338
+ *
2339
+ * where Q is a complex unitary matrix defined as the product of k
2340
+ * elementary reflectors
2341
+ *
2342
+ * Q = H(1) H(2) . . . H(k)
2343
+ *
2344
+ * as returned by ZTZRZF. Q is of order M if SIDE = 'L' and of order N
2345
+ * if SIDE = 'R'.
2346
+ *
2347
+
2348
+ * Arguments
2349
+ * =========
2350
+ *
2351
+ * SIDE (input) CHARACTER*1
2352
+ * = 'L': apply Q or Q**H from the Left;
2353
+ * = 'R': apply Q or Q**H from the Right.
2354
+ *
2355
+ * TRANS (input) CHARACTER*1
2356
+ * = 'N': No transpose, apply Q;
2357
+ * = 'C': Conjugate transpose, apply Q**H.
2358
+ *
2359
+ * M (input) INTEGER
2360
+ * The number of rows of the matrix C. M >= 0.
2361
+ *
2362
+ * N (input) INTEGER
2363
+ * The number of columns of the matrix C. N >= 0.
2364
+ *
2365
+ * K (input) INTEGER
2366
+ * The number of elementary reflectors whose product defines
2367
+ * the matrix Q.
2368
+ * If SIDE = 'L', M >= K >= 0;
2369
+ * if SIDE = 'R', N >= K >= 0.
2370
+ *
2371
+ * L (input) INTEGER
2372
+ * The number of columns of the matrix A containing
2373
+ * the meaningful part of the Householder reflectors.
2374
+ * If SIDE = 'L', M >= L >= 0, if SIDE = 'R', N >= L >= 0.
2375
+ *
2376
+ * A (input) COMPLEX*16 array, dimension
2377
+ * (LDA,M) if SIDE = 'L',
2378
+ * (LDA,N) if SIDE = 'R'
2379
+ * The i-th row must contain the vector which defines the
2380
+ * elementary reflector H(i), for i = 1,2,...,k, as returned by
2381
+ * ZTZRZF in the last k rows of its array argument A.
2382
+ * A is modified by the routine but restored on exit.
2383
+ *
2384
+ * LDA (input) INTEGER
2385
+ * The leading dimension of the array A. LDA >= max(1,K).
2386
+ *
2387
+ * TAU (input) COMPLEX*16 array, dimension (K)
2388
+ * TAU(i) must contain the scalar factor of the elementary
2389
+ * reflector H(i), as returned by ZTZRZF.
2390
+ *
2391
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
2392
+ * On entry, the M-by-N matrix C.
2393
+ * On exit, C is overwritten by Q*C or Q**H*C or C*Q**H or C*Q.
2394
+ *
2395
+ * LDC (input) INTEGER
2396
+ * The leading dimension of the array C. LDC >= max(1,M).
2397
+ *
2398
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
2399
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
2400
+ *
2401
+ * LWORK (input) INTEGER
2402
+ * The dimension of the array WORK.
2403
+ * If SIDE = 'L', LWORK >= max(1,N);
2404
+ * if SIDE = 'R', LWORK >= max(1,M).
2405
+ * For optimum performance LWORK >= N*NB if SIDE = 'L', and
2406
+ * LWORK >= M*NB if SIDE = 'R', where NB is the optimal
2407
+ * blocksize.
2408
+ *
2409
+ * If LWORK = -1, then a workspace query is assumed; the routine
2410
+ * only calculates the optimal size of the WORK array, returns
2411
+ * this value as the first entry of the WORK array, and no error
2412
+ * message related to LWORK is issued by XERBLA.
2413
+ *
2414
+ * INFO (output) INTEGER
2415
+ * = 0: successful exit
2416
+ * < 0: if INFO = -i, the i-th argument had an illegal value
2417
+ *
2418
+
2419
+ * Further Details
2420
+ * ===============
2421
+ *
2422
+ * Based on contributions by
2423
+ * A. Petitet, Computer Science Dept., Univ. of Tenn., Knoxville, USA
2424
+ *
2425
+ * =====================================================================
2426
+ *
2427
+
2428
+
2429
+ </PRE>
2430
+ <A HREF="#top">go to the page top</A>
2431
+
2432
+ <A NAME="zunmtr"></A>
2433
+ <H2>zunmtr</H2>
2434
+ <PRE>
2435
+ USAGE:
2436
+ work, info, c = NumRu::Lapack.zunmtr( side, uplo, trans, a, tau, c, [:lwork => lwork, :usage => usage, :help => help])
2437
+
2438
+
2439
+ FORTRAN MANUAL
2440
+ SUBROUTINE ZUNMTR( SIDE, UPLO, TRANS, M, N, A, LDA, TAU, C, LDC, WORK, LWORK, INFO )
2441
+
2442
+ * Purpose
2443
+ * =======
2444
+ *
2445
+ * ZUNMTR overwrites the general complex M-by-N matrix C with
2446
+ *
2447
+ * SIDE = 'L' SIDE = 'R'
2448
+ * TRANS = 'N': Q * C C * Q
2449
+ * TRANS = 'C': Q**H * C C * Q**H
2450
+ *
2451
+ * where Q is a complex unitary matrix of order nq, with nq = m if
2452
+ * SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of
2453
+ * nq-1 elementary reflectors, as returned by ZHETRD:
2454
+ *
2455
+ * if UPLO = 'U', Q = H(nq-1) . . . H(2) H(1);
2456
+ *
2457
+ * if UPLO = 'L', Q = H(1) H(2) . . . H(nq-1).
2458
+ *
2459
+
2460
+ * Arguments
2461
+ * =========
2462
+ *
2463
+ * SIDE (input) CHARACTER*1
2464
+ * = 'L': apply Q or Q**H from the Left;
2465
+ * = 'R': apply Q or Q**H from the Right.
2466
+ *
2467
+ * UPLO (input) CHARACTER*1
2468
+ * = 'U': Upper triangle of A contains elementary reflectors
2469
+ * from ZHETRD;
2470
+ * = 'L': Lower triangle of A contains elementary reflectors
2471
+ * from ZHETRD.
2472
+ *
2473
+ * TRANS (input) CHARACTER*1
2474
+ * = 'N': No transpose, apply Q;
2475
+ * = 'C': Conjugate transpose, apply Q**H.
2476
+ *
2477
+ * M (input) INTEGER
2478
+ * The number of rows of the matrix C. M >= 0.
2479
+ *
2480
+ * N (input) INTEGER
2481
+ * The number of columns of the matrix C. N >= 0.
2482
+ *
2483
+ * A (input) COMPLEX*16 array, dimension
2484
+ * (LDA,M) if SIDE = 'L'
2485
+ * (LDA,N) if SIDE = 'R'
2486
+ * The vectors which define the elementary reflectors, as
2487
+ * returned by ZHETRD.
2488
+ *
2489
+ * LDA (input) INTEGER
2490
+ * The leading dimension of the array A.
2491
+ * LDA >= max(1,M) if SIDE = 'L'; LDA >= max(1,N) if SIDE = 'R'.
2492
+ *
2493
+ * TAU (input) COMPLEX*16 array, dimension
2494
+ * (M-1) if SIDE = 'L'
2495
+ * (N-1) if SIDE = 'R'
2496
+ * TAU(i) must contain the scalar factor of the elementary
2497
+ * reflector H(i), as returned by ZHETRD.
2498
+ *
2499
+ * C (input/output) COMPLEX*16 array, dimension (LDC,N)
2500
+ * On entry, the M-by-N matrix C.
2501
+ * On exit, C is overwritten by Q*C or Q**H*C or C*Q**H or C*Q.
2502
+ *
2503
+ * LDC (input) INTEGER
2504
+ * The leading dimension of the array C. LDC >= max(1,M).
2505
+ *
2506
+ * WORK (workspace/output) COMPLEX*16 array, dimension (MAX(1,LWORK))
2507
+ * On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
2508
+ *
2509
+ * LWORK (input) INTEGER
2510
+ * The dimension of the array WORK.
2511
+ * If SIDE = 'L', LWORK >= max(1,N);
2512
+ * if SIDE = 'R', LWORK >= max(1,M).
2513
+ * For optimum performance LWORK >= N*NB if SIDE = 'L', and
2514
+ * LWORK >=M*NB if SIDE = 'R', where NB is the optimal
2515
+ * blocksize.
2516
+ *
2517
+ * If LWORK = -1, then a workspace query is assumed; the routine
2518
+ * only calculates the optimal size of the WORK array, returns
2519
+ * this value as the first entry of the WORK array, and no error
2520
+ * message related to LWORK is issued by XERBLA.
2521
+ *
2522
+ * INFO (output) INTEGER
2523
+ * = 0: successful exit
2524
+ * < 0: if INFO = -i, the i-th argument had an illegal value
2525
+ *
2526
+
2527
+ * =====================================================================
2528
+ *
2529
+ * .. Local Scalars ..
2530
+ LOGICAL LEFT, LQUERY, UPPER
2531
+ INTEGER I1, I2, IINFO, LWKOPT, MI, NB, NI, NQ, NW
2532
+ * ..
2533
+ * .. External Functions ..
2534
+ LOGICAL LSAME
2535
+ INTEGER ILAENV
2536
+ EXTERNAL LSAME, ILAENV
2537
+ * ..
2538
+ * .. External Subroutines ..
2539
+ EXTERNAL XERBLA, ZUNMQL, ZUNMQR
2540
+ * ..
2541
+ * .. Intrinsic Functions ..
2542
+ INTRINSIC MAX
2543
+ * ..
2544
+
2545
+
2546
+ </PRE>
2547
+ <A HREF="#top">go to the page top</A>
2548
+
2549
+ <HR />
2550
+ <A HREF="z.html">back to matrix types</A><BR>
2551
+ <A HREF="z.html">back to data types</A>
2552
+ </BODY>
2553
+ </HTML>