ruby-lapack 1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/COPYING +56 -0
- data/GPL +340 -0
- data/README.rdoc +61 -0
- data/Rakefile +115 -0
- data/dev/common.rb +9 -0
- data/dev/defs/cbbcsd +297 -0
- data/dev/defs/cbdsqr +196 -0
- data/dev/defs/cgbbrd +174 -0
- data/dev/defs/cgbcon +114 -0
- data/dev/defs/cgbequ +121 -0
- data/dev/defs/cgbequb +128 -0
- data/dev/defs/cgbrfs +182 -0
- data/dev/defs/cgbrfsx +418 -0
- data/dev/defs/cgbsv +134 -0
- data/dev/defs/cgbsvx +356 -0
- data/dev/defs/cgbsvxx +539 -0
- data/dev/defs/cgbtf2 +110 -0
- data/dev/defs/cgbtrf +109 -0
- data/dev/defs/cgbtrs +106 -0
- data/dev/defs/cgebak +95 -0
- data/dev/defs/cgebal +125 -0
- data/dev/defs/cgebd2 +162 -0
- data/dev/defs/cgebrd +178 -0
- data/dev/defs/cgecon +90 -0
- data/dev/defs/cgeequ +107 -0
- data/dev/defs/cgeequb +114 -0
- data/dev/defs/cgees +169 -0
- data/dev/defs/cgeesx +209 -0
- data/dev/defs/cgeev +154 -0
- data/dev/defs/cgeevx +263 -0
- data/dev/defs/cgegs +204 -0
- data/dev/defs/cgegv +261 -0
- data/dev/defs/cgehd2 +115 -0
- data/dev/defs/cgehrd +136 -0
- data/dev/defs/cgelq2 +89 -0
- data/dev/defs/cgelqf +113 -0
- data/dev/defs/cgels +157 -0
- data/dev/defs/cgelsd +211 -0
- data/dev/defs/cgelss +156 -0
- data/dev/defs/cgelsx +155 -0
- data/dev/defs/cgelsy +188 -0
- data/dev/defs/cgeql2 +91 -0
- data/dev/defs/cgeqlf +116 -0
- data/dev/defs/cgeqp3 +127 -0
- data/dev/defs/cgeqpf +118 -0
- data/dev/defs/cgeqr2 +89 -0
- data/dev/defs/cgeqr2p +89 -0
- data/dev/defs/cgeqrf +114 -0
- data/dev/defs/cgeqrfp +114 -0
- data/dev/defs/cgerfs +164 -0
- data/dev/defs/cgerfsx +394 -0
- data/dev/defs/cgerq2 +91 -0
- data/dev/defs/cgerqf +116 -0
- data/dev/defs/cgesc2 +87 -0
- data/dev/defs/cgesdd +203 -0
- data/dev/defs/cgesv +97 -0
- data/dev/defs/cgesvd +195 -0
- data/dev/defs/cgesvx +333 -0
- data/dev/defs/cgesvxx +519 -0
- data/dev/defs/cgetc2 +82 -0
- data/dev/defs/cgetf2 +76 -0
- data/dev/defs/cgetrf +76 -0
- data/dev/defs/cgetri +86 -0
- data/dev/defs/cgetrs +91 -0
- data/dev/defs/cggbak +119 -0
- data/dev/defs/cggbal +144 -0
- data/dev/defs/cgges +247 -0
- data/dev/defs/cggesx +311 -0
- data/dev/defs/cggev +197 -0
- data/dev/defs/cggevx +353 -0
- data/dev/defs/cggglm +160 -0
- data/dev/defs/cgghrd +171 -0
- data/dev/defs/cgglse +157 -0
- data/dev/defs/cggqrf +195 -0
- data/dev/defs/cggrqf +194 -0
- data/dev/defs/cggsvd +324 -0
- data/dev/defs/cggsvp +240 -0
- data/dev/defs/cgtcon +112 -0
- data/dev/defs/cgtrfs +193 -0
- data/dev/defs/cgtsv +97 -0
- data/dev/defs/cgtsvx +275 -0
- data/dev/defs/cgttrf +97 -0
- data/dev/defs/cgttrs +119 -0
- data/dev/defs/cgtts2 +108 -0
- data/dev/defs/chbev +124 -0
- data/dev/defs/chbevd +194 -0
- data/dev/defs/chbevx +234 -0
- data/dev/defs/chbgst +137 -0
- data/dev/defs/chbgv +163 -0
- data/dev/defs/chbgvd +231 -0
- data/dev/defs/chbgvx +265 -0
- data/dev/defs/chbtrd +132 -0
- data/dev/defs/checon +91 -0
- data/dev/defs/cheequb +87 -0
- data/dev/defs/cheev +111 -0
- data/dev/defs/cheevd +178 -0
- data/dev/defs/cheevr +325 -0
- data/dev/defs/cheevx +225 -0
- data/dev/defs/chegs2 +96 -0
- data/dev/defs/chegst +96 -0
- data/dev/defs/chegv +155 -0
- data/dev/defs/chegvd +222 -0
- data/dev/defs/chegvx +270 -0
- data/dev/defs/cherfs +170 -0
- data/dev/defs/cherfsx +380 -0
- data/dev/defs/chesv +147 -0
- data/dev/defs/chesvx +261 -0
- data/dev/defs/chesvxx +481 -0
- data/dev/defs/chetd2 +143 -0
- data/dev/defs/chetf2 +141 -0
- data/dev/defs/chetrd +162 -0
- data/dev/defs/chetrf +151 -0
- data/dev/defs/chetri +83 -0
- data/dev/defs/chetrs +90 -0
- data/dev/defs/chetrs2 +97 -0
- data/dev/defs/chfrk +138 -0
- data/dev/defs/chgeqz +258 -0
- data/dev/defs/chla_transtype +32 -0
- data/dev/defs/chpcon +85 -0
- data/dev/defs/chpev +110 -0
- data/dev/defs/chpevd +179 -0
- data/dev/defs/chpevx +204 -0
- data/dev/defs/chpgst +80 -0
- data/dev/defs/chpgv +145 -0
- data/dev/defs/chpgvd +221 -0
- data/dev/defs/chpgvx +247 -0
- data/dev/defs/chprfs +156 -0
- data/dev/defs/chpsv +134 -0
- data/dev/defs/chpsvx +248 -0
- data/dev/defs/chptrd +118 -0
- data/dev/defs/chptrf +120 -0
- data/dev/defs/chptri +77 -0
- data/dev/defs/chptrs +84 -0
- data/dev/defs/chsein +217 -0
- data/dev/defs/chseqr +263 -0
- data/dev/defs/cla_gbamv +154 -0
- data/dev/defs/cla_gbrcond_c +146 -0
- data/dev/defs/cla_gbrcond_x +140 -0
- data/dev/defs/cla_gbrfsx_extended +391 -0
- data/dev/defs/cla_gbrpvgrw +94 -0
- data/dev/defs/cla_geamv +142 -0
- data/dev/defs/cla_gercond_c +128 -0
- data/dev/defs/cla_gercond_x +122 -0
- data/dev/defs/cla_gerfsx_extended +376 -0
- data/dev/defs/cla_heamv +142 -0
- data/dev/defs/cla_hercond_c +125 -0
- data/dev/defs/cla_hercond_x +119 -0
- data/dev/defs/cla_herfsx_extended +375 -0
- data/dev/defs/cla_herpvgrw +105 -0
- data/dev/defs/cla_lin_berr +79 -0
- data/dev/defs/cla_porcond_c +116 -0
- data/dev/defs/cla_porcond_x +110 -0
- data/dev/defs/cla_porfsx_extended +366 -0
- data/dev/defs/cla_porpvgrw +85 -0
- data/dev/defs/cla_rpvgrw +76 -0
- data/dev/defs/cla_syamv +142 -0
- data/dev/defs/cla_syrcond_c +125 -0
- data/dev/defs/cla_syrcond_x +119 -0
- data/dev/defs/cla_syrfsx_extended +375 -0
- data/dev/defs/cla_syrpvgrw +105 -0
- data/dev/defs/cla_wwaddw +53 -0
- data/dev/defs/clabrd +187 -0
- data/dev/defs/clacgv +44 -0
- data/dev/defs/clacn2 +91 -0
- data/dev/defs/clacon +75 -0
- data/dev/defs/clacp2 +78 -0
- data/dev/defs/clacpy +78 -0
- data/dev/defs/clacrm +88 -0
- data/dev/defs/clacrt +73 -0
- data/dev/defs/cladiv +37 -0
- data/dev/defs/claed0 +121 -0
- data/dev/defs/claed7 +237 -0
- data/dev/defs/claed8 +211 -0
- data/dev/defs/claein +117 -0
- data/dev/defs/claesy +81 -0
- data/dev/defs/claev2 +83 -0
- data/dev/defs/clag2z +73 -0
- data/dev/defs/clags2 +116 -0
- data/dev/defs/clagtm +115 -0
- data/dev/defs/clahef +127 -0
- data/dev/defs/clahqr +159 -0
- data/dev/defs/clahr2 +153 -0
- data/dev/defs/clahrd +141 -0
- data/dev/defs/claic1 +101 -0
- data/dev/defs/clals0 +251 -0
- data/dev/defs/clalsa +267 -0
- data/dev/defs/clalsd +160 -0
- data/dev/defs/clangb +92 -0
- data/dev/defs/clange +84 -0
- data/dev/defs/clangt +77 -0
- data/dev/defs/clanhb +99 -0
- data/dev/defs/clanhe +93 -0
- data/dev/defs/clanhf +211 -0
- data/dev/defs/clanhp +85 -0
- data/dev/defs/clanhs +78 -0
- data/dev/defs/clanht +69 -0
- data/dev/defs/clansb +97 -0
- data/dev/defs/clansp +83 -0
- data/dev/defs/clansy +92 -0
- data/dev/defs/clantb +108 -0
- data/dev/defs/clantp +93 -0
- data/dev/defs/clantr +109 -0
- data/dev/defs/clapll +67 -0
- data/dev/defs/clapmr +73 -0
- data/dev/defs/clapmt +73 -0
- data/dev/defs/claqgb +124 -0
- data/dev/defs/claqge +107 -0
- data/dev/defs/claqhb +105 -0
- data/dev/defs/claqhe +98 -0
- data/dev/defs/claqhp +89 -0
- data/dev/defs/claqp2 +115 -0
- data/dev/defs/claqps +146 -0
- data/dev/defs/claqr0 +203 -0
- data/dev/defs/claqr1 +66 -0
- data/dev/defs/claqr2 +243 -0
- data/dev/defs/claqr3 +238 -0
- data/dev/defs/claqr4 +203 -0
- data/dev/defs/claqr5 +221 -0
- data/dev/defs/claqsb +105 -0
- data/dev/defs/claqsp +89 -0
- data/dev/defs/claqsy +98 -0
- data/dev/defs/clar1v +199 -0
- data/dev/defs/clar2v +88 -0
- data/dev/defs/clarcm +88 -0
- data/dev/defs/clarf +97 -0
- data/dev/defs/clarfb +139 -0
- data/dev/defs/clarfg +71 -0
- data/dev/defs/clarfgp +69 -0
- data/dev/defs/clarft +133 -0
- data/dev/defs/clarfx +88 -0
- data/dev/defs/clargv +88 -0
- data/dev/defs/clarnv +63 -0
- data/dev/defs/clarrv +259 -0
- data/dev/defs/clarscl2 +61 -0
- data/dev/defs/clartg +66 -0
- data/dev/defs/clartv +82 -0
- data/dev/defs/clarz +111 -0
- data/dev/defs/clarzb +150 -0
- data/dev/defs/clarzt +151 -0
- data/dev/defs/clascl +102 -0
- data/dev/defs/clascl2 +61 -0
- data/dev/defs/claset +77 -0
- data/dev/defs/clasr +169 -0
- data/dev/defs/classq +71 -0
- data/dev/defs/claswp +81 -0
- data/dev/defs/clasyf +127 -0
- data/dev/defs/clatbs +206 -0
- data/dev/defs/clatdf +133 -0
- data/dev/defs/clatps +193 -0
- data/dev/defs/clatrd +168 -0
- data/dev/defs/clatrs +202 -0
- data/dev/defs/clatrz +106 -0
- data/dev/defs/clatzm +124 -0
- data/dev/defs/clauu2 +68 -0
- data/dev/defs/clauum +68 -0
- data/dev/defs/cpbcon +99 -0
- data/dev/defs/cpbequ +96 -0
- data/dev/defs/cpbrfs +166 -0
- data/dev/defs/cpbstf +116 -0
- data/dev/defs/cpbsv +136 -0
- data/dev/defs/cpbsvx +314 -0
- data/dev/defs/cpbtf2 +105 -0
- data/dev/defs/cpbtrf +103 -0
- data/dev/defs/cpbtrs +98 -0
- data/dev/defs/cpftrf +183 -0
- data/dev/defs/cpftri +175 -0
- data/dev/defs/cpftrs +185 -0
- data/dev/defs/cpocon +87 -0
- data/dev/defs/cpoequ +80 -0
- data/dev/defs/cpoequb +80 -0
- data/dev/defs/cporfs +160 -0
- data/dev/defs/cporfsx +371 -0
- data/dev/defs/cposv +105 -0
- data/dev/defs/cposvx +281 -0
- data/dev/defs/cposvxx +471 -0
- data/dev/defs/cpotf2 +75 -0
- data/dev/defs/cpotrf +73 -0
- data/dev/defs/cpotri +67 -0
- data/dev/defs/cpotrs +79 -0
- data/dev/defs/cppcon +85 -0
- data/dev/defs/cppequ +82 -0
- data/dev/defs/cpprfs +146 -0
- data/dev/defs/cppsv +115 -0
- data/dev/defs/cppsvx +283 -0
- data/dev/defs/cpptrf +81 -0
- data/dev/defs/cpptri +58 -0
- data/dev/defs/cpptrs +84 -0
- data/dev/defs/cpstf2 +108 -0
- data/dev/defs/cpstrf +108 -0
- data/dev/defs/cptcon +84 -0
- data/dev/defs/cpteqr +116 -0
- data/dev/defs/cptrfs +161 -0
- data/dev/defs/cptsv +89 -0
- data/dev/defs/cptsvx +210 -0
- data/dev/defs/cpttrf +59 -0
- data/dev/defs/cpttrs +98 -0
- data/dev/defs/cptts2 +89 -0
- data/dev/defs/crot +72 -0
- data/dev/defs/cspcon +85 -0
- data/dev/defs/cspmv +121 -0
- data/dev/defs/cspr +98 -0
- data/dev/defs/csprfs +156 -0
- data/dev/defs/cspsv +134 -0
- data/dev/defs/cspsvx +248 -0
- data/dev/defs/csptrf +121 -0
- data/dev/defs/csptri +77 -0
- data/dev/defs/csptrs +84 -0
- data/dev/defs/csrscl +49 -0
- data/dev/defs/cstedc +191 -0
- data/dev/defs/cstegr +233 -0
- data/dev/defs/cstein +159 -0
- data/dev/defs/cstemr +302 -0
- data/dev/defs/csteqr +103 -0
- data/dev/defs/csycon +91 -0
- data/dev/defs/csyconv +90 -0
- data/dev/defs/csyequb +104 -0
- data/dev/defs/csymv +126 -0
- data/dev/defs/csyr +102 -0
- data/dev/defs/csyrfs +170 -0
- data/dev/defs/csyrfsx +380 -0
- data/dev/defs/csysv +149 -0
- data/dev/defs/csysvx +261 -0
- data/dev/defs/csysvxx +485 -0
- data/dev/defs/csyswapr +70 -0
- data/dev/defs/csytf2 +140 -0
- data/dev/defs/csytrf +156 -0
- data/dev/defs/csytri +83 -0
- data/dev/defs/csytri2 +110 -0
- data/dev/defs/csytri2x +90 -0
- data/dev/defs/csytrs +90 -0
- data/dev/defs/csytrs2 +97 -0
- data/dev/defs/ctbcon +109 -0
- data/dev/defs/ctbrfs +164 -0
- data/dev/defs/ctbtrs +113 -0
- data/dev/defs/ctfsm +259 -0
- data/dev/defs/ctftri +183 -0
- data/dev/defs/ctfttp +172 -0
- data/dev/defs/ctfttr +182 -0
- data/dev/defs/ctgevc +194 -0
- data/dev/defs/ctgex2 +158 -0
- data/dev/defs/ctgexc +176 -0
- data/dev/defs/ctgsen +406 -0
- data/dev/defs/ctgsja +344 -0
- data/dev/defs/ctgsna +282 -0
- data/dev/defs/ctgsy2 +235 -0
- data/dev/defs/ctgsyl +273 -0
- data/dev/defs/ctpcon +95 -0
- data/dev/defs/ctprfs +150 -0
- data/dev/defs/ctptri +79 -0
- data/dev/defs/ctptrs +98 -0
- data/dev/defs/ctpttf +172 -0
- data/dev/defs/ctpttr +73 -0
- data/dev/defs/ctrcon +103 -0
- data/dev/defs/ctrevc +188 -0
- data/dev/defs/ctrexc +99 -0
- data/dev/defs/ctrrfs +158 -0
- data/dev/defs/ctrsen +234 -0
- data/dev/defs/ctrsna +223 -0
- data/dev/defs/ctrsyl +126 -0
- data/dev/defs/ctrti2 +76 -0
- data/dev/defs/ctrtri +75 -0
- data/dev/defs/ctrtrs +107 -0
- data/dev/defs/ctrttf +181 -0
- data/dev/defs/ctrttp +72 -0
- data/dev/defs/ctzrqf +104 -0
- data/dev/defs/ctzrzf +128 -0
- data/dev/defs/cunbdb +270 -0
- data/dev/defs/cuncsd +283 -0
- data/dev/defs/cung2l +85 -0
- data/dev/defs/cung2r +85 -0
- data/dev/defs/cungbr +129 -0
- data/dev/defs/cunghr +97 -0
- data/dev/defs/cungl2 +84 -0
- data/dev/defs/cunglq +100 -0
- data/dev/defs/cungql +101 -0
- data/dev/defs/cungqr +101 -0
- data/dev/defs/cungr2 +85 -0
- data/dev/defs/cungrq +101 -0
- data/dev/defs/cungtr +95 -0
- data/dev/defs/cunm2l +130 -0
- data/dev/defs/cunm2r +130 -0
- data/dev/defs/cunmbr +179 -0
- data/dev/defs/cunmhr +157 -0
- data/dev/defs/cunml2 +130 -0
- data/dev/defs/cunmlq +143 -0
- data/dev/defs/cunmql +143 -0
- data/dev/defs/cunmqr +143 -0
- data/dev/defs/cunmr2 +130 -0
- data/dev/defs/cunmr3 +152 -0
- data/dev/defs/cunmrq +143 -0
- data/dev/defs/cunmrz +157 -0
- data/dev/defs/cunmtr +152 -0
- data/dev/defs/cupgtr +87 -0
- data/dev/defs/cupmtr +120 -0
- data/dev/defs/dbbcsd +297 -0
- data/dev/defs/dbdsdc +194 -0
- data/dev/defs/dbdsqr +203 -0
- data/dev/defs/ddisna +84 -0
- data/dev/defs/dgbbrd +167 -0
- data/dev/defs/dgbcon +114 -0
- data/dev/defs/dgbequ +121 -0
- data/dev/defs/dgbequb +128 -0
- data/dev/defs/dgbrfs +182 -0
- data/dev/defs/dgbrfsx +418 -0
- data/dev/defs/dgbsv +134 -0
- data/dev/defs/dgbsvx +353 -0
- data/dev/defs/dgbsvxx +536 -0
- data/dev/defs/dgbtf2 +110 -0
- data/dev/defs/dgbtrf +109 -0
- data/dev/defs/dgbtrs +106 -0
- data/dev/defs/dgebak +95 -0
- data/dev/defs/dgebal +125 -0
- data/dev/defs/dgebd2 +162 -0
- data/dev/defs/dgebrd +178 -0
- data/dev/defs/dgecon +90 -0
- data/dev/defs/dgeequ +107 -0
- data/dev/defs/dgeequb +114 -0
- data/dev/defs/dgees +188 -0
- data/dev/defs/dgeesx +251 -0
- data/dev/defs/dgeev +166 -0
- data/dev/defs/dgeevx +282 -0
- data/dev/defs/dgegs +207 -0
- data/dev/defs/dgegv +286 -0
- data/dev/defs/dgehd2 +115 -0
- data/dev/defs/dgehrd +136 -0
- data/dev/defs/dgejsv +862 -0
- data/dev/defs/dgelq2 +89 -0
- data/dev/defs/dgelqf +113 -0
- data/dev/defs/dgels +158 -0
- data/dev/defs/dgelsd +193 -0
- data/dev/defs/dgelss +149 -0
- data/dev/defs/dgelsx +148 -0
- data/dev/defs/dgelsy +181 -0
- data/dev/defs/dgeql2 +91 -0
- data/dev/defs/dgeqlf +116 -0
- data/dev/defs/dgeqp3 +120 -0
- data/dev/defs/dgeqpf +111 -0
- data/dev/defs/dgeqr2 +89 -0
- data/dev/defs/dgeqr2p +89 -0
- data/dev/defs/dgeqrf +114 -0
- data/dev/defs/dgeqrfp +114 -0
- data/dev/defs/dgerfs +164 -0
- data/dev/defs/dgerfsx +394 -0
- data/dev/defs/dgerq2 +91 -0
- data/dev/defs/dgerqf +116 -0
- data/dev/defs/dgesc2 +86 -0
- data/dev/defs/dgesdd +197 -0
- data/dev/defs/dgesv +97 -0
- data/dev/defs/dgesvd +188 -0
- data/dev/defs/dgesvj +308 -0
- data/dev/defs/dgesvx +333 -0
- data/dev/defs/dgesvxx +516 -0
- data/dev/defs/dgetc2 +82 -0
- data/dev/defs/dgetf2 +76 -0
- data/dev/defs/dgetrf +76 -0
- data/dev/defs/dgetri +86 -0
- data/dev/defs/dgetrs +91 -0
- data/dev/defs/dggbak +119 -0
- data/dev/defs/dggbal +145 -0
- data/dev/defs/dgges +261 -0
- data/dev/defs/dggesx +342 -0
- data/dev/defs/dggev +206 -0
- data/dev/defs/dggevx +371 -0
- data/dev/defs/dggglm +160 -0
- data/dev/defs/dgghrd +174 -0
- data/dev/defs/dgglse +157 -0
- data/dev/defs/dggqrf +195 -0
- data/dev/defs/dggrqf +194 -0
- data/dev/defs/dggsvd +319 -0
- data/dev/defs/dggsvp +233 -0
- data/dev/defs/dgsvj0 +200 -0
- data/dev/defs/dgsvj1 +220 -0
- data/dev/defs/dgtcon +119 -0
- data/dev/defs/dgtrfs +193 -0
- data/dev/defs/dgtsv +100 -0
- data/dev/defs/dgtsvx +275 -0
- data/dev/defs/dgttrf +97 -0
- data/dev/defs/dgttrs +119 -0
- data/dev/defs/dgtts2 +106 -0
- data/dev/defs/dhgeqz +282 -0
- data/dev/defs/dhsein +234 -0
- data/dev/defs/dhseqr +279 -0
- data/dev/defs/disnan +29 -0
- data/dev/defs/dla_gbamv +152 -0
- data/dev/defs/dla_gbrcond +152 -0
- data/dev/defs/dla_gbrfsx_extended +393 -0
- data/dev/defs/dla_gbrpvgrw +90 -0
- data/dev/defs/dla_geamv +142 -0
- data/dev/defs/dla_gercond +134 -0
- data/dev/defs/dla_gerfsx_extended +379 -0
- data/dev/defs/dla_lin_berr +78 -0
- data/dev/defs/dla_porcond +122 -0
- data/dev/defs/dla_porfsx_extended +366 -0
- data/dev/defs/dla_porpvgrw +81 -0
- data/dev/defs/dla_rpvgrw +72 -0
- data/dev/defs/dla_syamv +142 -0
- data/dev/defs/dla_syrcond +131 -0
- data/dev/defs/dla_syrfsx_extended +375 -0
- data/dev/defs/dla_syrpvgrw +101 -0
- data/dev/defs/dla_wwaddw +53 -0
- data/dev/defs/dlabad +43 -0
- data/dev/defs/dlabrd +186 -0
- data/dev/defs/dlacn2 +96 -0
- data/dev/defs/dlacon +80 -0
- data/dev/defs/dlacpy +78 -0
- data/dev/defs/dladiv +57 -0
- data/dev/defs/dlae2 +66 -0
- data/dev/defs/dlaebz +292 -0
- data/dev/defs/dlaed0 +147 -0
- data/dev/defs/dlaed1 +141 -0
- data/dev/defs/dlaed2 +194 -0
- data/dev/defs/dlaed3 +167 -0
- data/dev/defs/dlaed4 +113 -0
- data/dev/defs/dlaed5 +78 -0
- data/dev/defs/dlaed6 +101 -0
- data/dev/defs/dlaed7 +241 -0
- data/dev/defs/dlaed8 +227 -0
- data/dev/defs/dlaed9 +137 -0
- data/dev/defs/dlaeda +147 -0
- data/dev/defs/dlaein +141 -0
- data/dev/defs/dlaev2 +83 -0
- data/dev/defs/dlaexc +107 -0
- data/dev/defs/dlag2 +123 -0
- data/dev/defs/dlag2s +81 -0
- data/dev/defs/dlags2 +108 -0
- data/dev/defs/dlagtf +128 -0
- data/dev/defs/dlagtm +115 -0
- data/dev/defs/dlagts +135 -0
- data/dev/defs/dlagv2 +128 -0
- data/dev/defs/dlahqr +172 -0
- data/dev/defs/dlahr2 +153 -0
- data/dev/defs/dlahrd +141 -0
- data/dev/defs/dlaic1 +101 -0
- data/dev/defs/dlaln2 +187 -0
- data/dev/defs/dlals0 +250 -0
- data/dev/defs/dlalsa +268 -0
- data/dev/defs/dlalsd +152 -0
- data/dev/defs/dlamrg +66 -0
- data/dev/defs/dlaneg +87 -0
- data/dev/defs/dlangb +93 -0
- data/dev/defs/dlange +84 -0
- data/dev/defs/dlangt +77 -0
- data/dev/defs/dlanhs +78 -0
- data/dev/defs/dlansb +97 -0
- data/dev/defs/dlansf +178 -0
- data/dev/defs/dlansp +83 -0
- data/dev/defs/dlanst +69 -0
- data/dev/defs/dlansy +92 -0
- data/dev/defs/dlantb +108 -0
- data/dev/defs/dlantp +93 -0
- data/dev/defs/dlantr +109 -0
- data/dev/defs/dlanv2 +84 -0
- data/dev/defs/dlapll +69 -0
- data/dev/defs/dlapmr +73 -0
- data/dev/defs/dlapmt +73 -0
- data/dev/defs/dlapy2 +30 -0
- data/dev/defs/dlapy3 +34 -0
- data/dev/defs/dlaqgb +124 -0
- data/dev/defs/dlaqge +107 -0
- data/dev/defs/dlaqp2 +115 -0
- data/dev/defs/dlaqps +146 -0
- data/dev/defs/dlaqr0 +225 -0
- data/dev/defs/dlaqr1 +79 -0
- data/dev/defs/dlaqr2 +252 -0
- data/dev/defs/dlaqr3 +247 -0
- data/dev/defs/dlaqr4 +225 -0
- data/dev/defs/dlaqr5 +230 -0
- data/dev/defs/dlaqsb +105 -0
- data/dev/defs/dlaqsp +89 -0
- data/dev/defs/dlaqsy +98 -0
- data/dev/defs/dlaqtr +134 -0
- data/dev/defs/dlar1v +199 -0
- data/dev/defs/dlar2v +86 -0
- data/dev/defs/dlarf +93 -0
- data/dev/defs/dlarfb +139 -0
- data/dev/defs/dlarfg +71 -0
- data/dev/defs/dlarfgp +69 -0
- data/dev/defs/dlarft +133 -0
- data/dev/defs/dlarfx +89 -0
- data/dev/defs/dlargv +74 -0
- data/dev/defs/dlarnv +61 -0
- data/dev/defs/dlarra +106 -0
- data/dev/defs/dlarrb +167 -0
- data/dev/defs/dlarrc +99 -0
- data/dev/defs/dlarrd +290 -0
- data/dev/defs/dlarre +265 -0
- data/dev/defs/dlarrf +168 -0
- data/dev/defs/dlarrj +138 -0
- data/dev/defs/dlarrk +108 -0
- data/dev/defs/dlarrr +62 -0
- data/dev/defs/dlarrv +259 -0
- data/dev/defs/dlarscl2 +61 -0
- data/dev/defs/dlartg +64 -0
- data/dev/defs/dlartgp +62 -0
- data/dev/defs/dlartgs +57 -0
- data/dev/defs/dlartv +82 -0
- data/dev/defs/dlaruv +59 -0
- data/dev/defs/dlarz +109 -0
- data/dev/defs/dlarzb +150 -0
- data/dev/defs/dlarzt +151 -0
- data/dev/defs/dlas2 +71 -0
- data/dev/defs/dlascl +102 -0
- data/dev/defs/dlascl2 +61 -0
- data/dev/defs/dlasd0 +133 -0
- data/dev/defs/dlasd1 +180 -0
- data/dev/defs/dlasd2 +254 -0
- data/dev/defs/dlasd3 +213 -0
- data/dev/defs/dlasd4 +123 -0
- data/dev/defs/dlasd5 +88 -0
- data/dev/defs/dlasd6 +300 -0
- data/dev/defs/dlasd7 +264 -0
- data/dev/defs/dlasd8 +144 -0
- data/dev/defs/dlasda +276 -0
- data/dev/defs/dlasdq +187 -0
- data/dev/defs/dlasdt +76 -0
- data/dev/defs/dlaset +81 -0
- data/dev/defs/dlasq1 +75 -0
- data/dev/defs/dlasq2 +73 -0
- data/dev/defs/dlasq3 +141 -0
- data/dev/defs/dlasq4 +107 -0
- data/dev/defs/dlasq5 +100 -0
- data/dev/defs/dlasq6 +90 -0
- data/dev/defs/dlasr +169 -0
- data/dev/defs/dlasrt +53 -0
- data/dev/defs/dlassq +68 -0
- data/dev/defs/dlasv2 +100 -0
- data/dev/defs/dlaswp +81 -0
- data/dev/defs/dlasy2 +145 -0
- data/dev/defs/dlasyf +126 -0
- data/dev/defs/dlat2s +83 -0
- data/dev/defs/dlatbs +206 -0
- data/dev/defs/dlatdf +131 -0
- data/dev/defs/dlatps +192 -0
- data/dev/defs/dlatrd +168 -0
- data/dev/defs/dlatrs +202 -0
- data/dev/defs/dlatrz +106 -0
- data/dev/defs/dlatzm +123 -0
- data/dev/defs/dlauu2 +68 -0
- data/dev/defs/dlauum +68 -0
- data/dev/defs/dopgtr +87 -0
- data/dev/defs/dopmtr +120 -0
- data/dev/defs/dorbdb +270 -0
- data/dev/defs/dorcsd +264 -0
- data/dev/defs/dorg2l +85 -0
- data/dev/defs/dorg2r +85 -0
- data/dev/defs/dorgbr +129 -0
- data/dev/defs/dorghr +97 -0
- data/dev/defs/dorgl2 +84 -0
- data/dev/defs/dorglq +100 -0
- data/dev/defs/dorgql +101 -0
- data/dev/defs/dorgqr +101 -0
- data/dev/defs/dorgr2 +85 -0
- data/dev/defs/dorgrq +101 -0
- data/dev/defs/dorgtr +95 -0
- data/dev/defs/dorm2l +130 -0
- data/dev/defs/dorm2r +130 -0
- data/dev/defs/dormbr +176 -0
- data/dev/defs/dormhr +157 -0
- data/dev/defs/dorml2 +130 -0
- data/dev/defs/dormlq +143 -0
- data/dev/defs/dormql +143 -0
- data/dev/defs/dormqr +143 -0
- data/dev/defs/dormr2 +130 -0
- data/dev/defs/dormr3 +152 -0
- data/dev/defs/dormrq +143 -0
- data/dev/defs/dormrz +157 -0
- data/dev/defs/dormtr +152 -0
- data/dev/defs/dpbcon +98 -0
- data/dev/defs/dpbequ +96 -0
- data/dev/defs/dpbrfs +166 -0
- data/dev/defs/dpbstf +115 -0
- data/dev/defs/dpbsv +136 -0
- data/dev/defs/dpbsvx +314 -0
- data/dev/defs/dpbtf2 +105 -0
- data/dev/defs/dpbtrf +103 -0
- data/dev/defs/dpbtrs +98 -0
- data/dev/defs/dpftrf +161 -0
- data/dev/defs/dpftri +154 -0
- data/dev/defs/dpftrs +164 -0
- data/dev/defs/dpocon +87 -0
- data/dev/defs/dpoequ +80 -0
- data/dev/defs/dpoequb +80 -0
- data/dev/defs/dporfs +160 -0
- data/dev/defs/dporfsx +370 -0
- data/dev/defs/dposv +105 -0
- data/dev/defs/dposvx +281 -0
- data/dev/defs/dposvxx +468 -0
- data/dev/defs/dpotf2 +75 -0
- data/dev/defs/dpotrf +73 -0
- data/dev/defs/dpotri +67 -0
- data/dev/defs/dpotrs +79 -0
- data/dev/defs/dppcon +85 -0
- data/dev/defs/dppequ +82 -0
- data/dev/defs/dpprfs +146 -0
- data/dev/defs/dppsv +115 -0
- data/dev/defs/dppsvx +283 -0
- data/dev/defs/dpptrf +81 -0
- data/dev/defs/dpptri +58 -0
- data/dev/defs/dpptrs +84 -0
- data/dev/defs/dpstf2 +108 -0
- data/dev/defs/dpstrf +108 -0
- data/dev/defs/dptcon +84 -0
- data/dev/defs/dpteqr +117 -0
- data/dev/defs/dptrfs +141 -0
- data/dev/defs/dptsv +89 -0
- data/dev/defs/dptsvx +203 -0
- data/dev/defs/dpttrf +59 -0
- data/dev/defs/dpttrs +88 -0
- data/dev/defs/dptts2 +77 -0
- data/dev/defs/drscl +49 -0
- data/dev/defs/dsbev +117 -0
- data/dev/defs/dsbevd +169 -0
- data/dev/defs/dsbevx +231 -0
- data/dev/defs/dsbgst +130 -0
- data/dev/defs/dsbgv +156 -0
- data/dev/defs/dsbgvd +206 -0
- data/dev/defs/dsbgvx +259 -0
- data/dev/defs/dsbtrd +132 -0
- data/dev/defs/dsfrk +134 -0
- data/dev/defs/dsgesv +170 -0
- data/dev/defs/dspcon +92 -0
- data/dev/defs/dspev +103 -0
- data/dev/defs/dspevd +155 -0
- data/dev/defs/dspevx +197 -0
- data/dev/defs/dspgst +80 -0
- data/dev/defs/dspgv +139 -0
- data/dev/defs/dspgvd +188 -0
- data/dev/defs/dspgvx +241 -0
- data/dev/defs/dsposv +173 -0
- data/dev/defs/dsprfs +156 -0
- data/dev/defs/dspsv +134 -0
- data/dev/defs/dspsvx +249 -0
- data/dev/defs/dsptrd +118 -0
- data/dev/defs/dsptrf +120 -0
- data/dev/defs/dsptri +77 -0
- data/dev/defs/dsptrs +84 -0
- data/dev/defs/dstebz +229 -0
- data/dev/defs/dstedc +165 -0
- data/dev/defs/dstegr +233 -0
- data/dev/defs/dstein +152 -0
- data/dev/defs/dstemr +285 -0
- data/dev/defs/dsteqr +103 -0
- data/dev/defs/dsterf +54 -0
- data/dev/defs/dstev +88 -0
- data/dev/defs/dstevd +138 -0
- data/dev/defs/dstevr +273 -0
- data/dev/defs/dstevx +193 -0
- data/dev/defs/dsycon +98 -0
- data/dev/defs/dsyconv +90 -0
- data/dev/defs/dsyequb +104 -0
- data/dev/defs/dsyev +104 -0
- data/dev/defs/dsyevd +157 -0
- data/dev/defs/dsyevr +300 -0
- data/dev/defs/dsyevx +218 -0
- data/dev/defs/dsygs2 +96 -0
- data/dev/defs/dsygst +96 -0
- data/dev/defs/dsygv +148 -0
- data/dev/defs/dsygvd +197 -0
- data/dev/defs/dsygvx +263 -0
- data/dev/defs/dsyrfs +170 -0
- data/dev/defs/dsyrfsx +380 -0
- data/dev/defs/dsysv +149 -0
- data/dev/defs/dsysvx +261 -0
- data/dev/defs/dsysvxx +481 -0
- data/dev/defs/dsyswapr +70 -0
- data/dev/defs/dsytd2 +142 -0
- data/dev/defs/dsytf2 +143 -0
- data/dev/defs/dsytrd +162 -0
- data/dev/defs/dsytrf +156 -0
- data/dev/defs/dsytri +83 -0
- data/dev/defs/dsytri2 +110 -0
- data/dev/defs/dsytri2x +90 -0
- data/dev/defs/dsytrs +90 -0
- data/dev/defs/dsytrs2 +97 -0
- data/dev/defs/dtbcon +109 -0
- data/dev/defs/dtbrfs +164 -0
- data/dev/defs/dtbtrs +113 -0
- data/dev/defs/dtfsm +243 -0
- data/dev/defs/dtftri +163 -0
- data/dev/defs/dtfttp +151 -0
- data/dev/defs/dtfttr +176 -0
- data/dev/defs/dtgevc +265 -0
- data/dev/defs/dtgex2 +191 -0
- data/dev/defs/dtgexc +190 -0
- data/dev/defs/dtgsen +422 -0
- data/dev/defs/dtgsja +343 -0
- data/dev/defs/dtgsna +354 -0
- data/dev/defs/dtgsy2 +252 -0
- data/dev/defs/dtgsyl +274 -0
- data/dev/defs/dtpcon +95 -0
- data/dev/defs/dtprfs +150 -0
- data/dev/defs/dtptri +79 -0
- data/dev/defs/dtptrs +98 -0
- data/dev/defs/dtpttf +151 -0
- data/dev/defs/dtpttr +73 -0
- data/dev/defs/dtrcon +103 -0
- data/dev/defs/dtrevc +191 -0
- data/dev/defs/dtrexc +113 -0
- data/dev/defs/dtrrfs +158 -0
- data/dev/defs/dtrsen +284 -0
- data/dev/defs/dtrsna +239 -0
- data/dev/defs/dtrsyl +133 -0
- data/dev/defs/dtrti2 +76 -0
- data/dev/defs/dtrtri +75 -0
- data/dev/defs/dtrtrs +107 -0
- data/dev/defs/dtrttf +171 -0
- data/dev/defs/dtrttp +72 -0
- data/dev/defs/dtzrqf +104 -0
- data/dev/defs/dtzrzf +128 -0
- data/dev/defs/dzsum1 +49 -0
- data/dev/defs/icmax1 +55 -0
- data/dev/defs/ieeeck +49 -0
- data/dev/defs/ilaclc +46 -0
- data/dev/defs/ilaclr +46 -0
- data/dev/defs/iladiag +30 -0
- data/dev/defs/iladlc +46 -0
- data/dev/defs/iladlr +46 -0
- data/dev/defs/ilaenv +133 -0
- data/dev/defs/ilaprec +33 -0
- data/dev/defs/ilaslc +46 -0
- data/dev/defs/ilaslr +46 -0
- data/dev/defs/ilatrans +32 -0
- data/dev/defs/ilauplo +30 -0
- data/dev/defs/ilaver +35 -0
- data/dev/defs/ilazlc +46 -0
- data/dev/defs/ilazlr +46 -0
- data/dev/defs/iparmq +177 -0
- data/dev/defs/izmax1 +55 -0
- data/dev/defs/lsamen +50 -0
- data/dev/defs/sbbcsd +297 -0
- data/dev/defs/sbdsdc +192 -0
- data/dev/defs/sbdsqr +203 -0
- data/dev/defs/scsum1 +49 -0
- data/dev/defs/sdisna +84 -0
- data/dev/defs/sgbbrd +167 -0
- data/dev/defs/sgbcon +114 -0
- data/dev/defs/sgbequ +121 -0
- data/dev/defs/sgbequb +128 -0
- data/dev/defs/sgbrfs +182 -0
- data/dev/defs/sgbrfsx +419 -0
- data/dev/defs/sgbsv +134 -0
- data/dev/defs/sgbsvx +356 -0
- data/dev/defs/sgbsvxx +539 -0
- data/dev/defs/sgbtf2 +110 -0
- data/dev/defs/sgbtrf +109 -0
- data/dev/defs/sgbtrs +106 -0
- data/dev/defs/sgebak +95 -0
- data/dev/defs/sgebal +125 -0
- data/dev/defs/sgebd2 +162 -0
- data/dev/defs/sgebrd +178 -0
- data/dev/defs/sgecon +90 -0
- data/dev/defs/sgeequ +107 -0
- data/dev/defs/sgeequb +114 -0
- data/dev/defs/sgees +188 -0
- data/dev/defs/sgeesx +251 -0
- data/dev/defs/sgeev +166 -0
- data/dev/defs/sgeevx +282 -0
- data/dev/defs/sgegs +207 -0
- data/dev/defs/sgegv +286 -0
- data/dev/defs/sgehd2 +115 -0
- data/dev/defs/sgehrd +136 -0
- data/dev/defs/sgejsv +860 -0
- data/dev/defs/sgelq2 +89 -0
- data/dev/defs/sgelqf +113 -0
- data/dev/defs/sgels +158 -0
- data/dev/defs/sgelsd +194 -0
- data/dev/defs/sgelss +149 -0
- data/dev/defs/sgelsx +148 -0
- data/dev/defs/sgelsy +181 -0
- data/dev/defs/sgeql2 +91 -0
- data/dev/defs/sgeqlf +116 -0
- data/dev/defs/sgeqp3 +120 -0
- data/dev/defs/sgeqpf +111 -0
- data/dev/defs/sgeqr2 +89 -0
- data/dev/defs/sgeqr2p +89 -0
- data/dev/defs/sgeqrf +114 -0
- data/dev/defs/sgeqrfp +114 -0
- data/dev/defs/sgerfs +164 -0
- data/dev/defs/sgerfsx +394 -0
- data/dev/defs/sgerq2 +91 -0
- data/dev/defs/sgerqf +116 -0
- data/dev/defs/sgesc2 +86 -0
- data/dev/defs/sgesdd +197 -0
- data/dev/defs/sgesv +97 -0
- data/dev/defs/sgesvd +188 -0
- data/dev/defs/sgesvj +304 -0
- data/dev/defs/sgesvx +333 -0
- data/dev/defs/sgesvxx +519 -0
- data/dev/defs/sgetc2 +82 -0
- data/dev/defs/sgetf2 +76 -0
- data/dev/defs/sgetrf +76 -0
- data/dev/defs/sgetri +86 -0
- data/dev/defs/sgetrs +91 -0
- data/dev/defs/sggbak +119 -0
- data/dev/defs/sggbal +144 -0
- data/dev/defs/sgges +261 -0
- data/dev/defs/sggesx +342 -0
- data/dev/defs/sggev +206 -0
- data/dev/defs/sggevx +371 -0
- data/dev/defs/sggglm +160 -0
- data/dev/defs/sgghrd +174 -0
- data/dev/defs/sgglse +157 -0
- data/dev/defs/sggqrf +195 -0
- data/dev/defs/sggrqf +194 -0
- data/dev/defs/sggsvd +319 -0
- data/dev/defs/sggsvp +233 -0
- data/dev/defs/sgsvj0 +200 -0
- data/dev/defs/sgsvj1 +220 -0
- data/dev/defs/sgtcon +119 -0
- data/dev/defs/sgtrfs +193 -0
- data/dev/defs/sgtsv +100 -0
- data/dev/defs/sgtsvx +275 -0
- data/dev/defs/sgttrf +97 -0
- data/dev/defs/sgttrs +119 -0
- data/dev/defs/sgtts2 +106 -0
- data/dev/defs/shgeqz +282 -0
- data/dev/defs/shsein +234 -0
- data/dev/defs/shseqr +279 -0
- data/dev/defs/sisnan +29 -0
- data/dev/defs/sla_gbamv +152 -0
- data/dev/defs/sla_gbrcond +152 -0
- data/dev/defs/sla_gbrfsx_extended +391 -0
- data/dev/defs/sla_gbrpvgrw +90 -0
- data/dev/defs/sla_geamv +142 -0
- data/dev/defs/sla_gercond +134 -0
- data/dev/defs/sla_gerfsx_extended +376 -0
- data/dev/defs/sla_lin_berr +78 -0
- data/dev/defs/sla_porcond +122 -0
- data/dev/defs/sla_porfsx_extended +363 -0
- data/dev/defs/sla_porpvgrw +81 -0
- data/dev/defs/sla_rpvgrw +72 -0
- data/dev/defs/sla_syamv +142 -0
- data/dev/defs/sla_syrcond +131 -0
- data/dev/defs/sla_syrfsx_extended +372 -0
- data/dev/defs/sla_syrpvgrw +101 -0
- data/dev/defs/sla_wwaddw +53 -0
- data/dev/defs/slabad +43 -0
- data/dev/defs/slabrd +186 -0
- data/dev/defs/slacn2 +96 -0
- data/dev/defs/slacon +80 -0
- data/dev/defs/slacpy +78 -0
- data/dev/defs/sladiv +57 -0
- data/dev/defs/slae2 +66 -0
- data/dev/defs/slaebz +292 -0
- data/dev/defs/slaed0 +147 -0
- data/dev/defs/slaed1 +141 -0
- data/dev/defs/slaed2 +194 -0
- data/dev/defs/slaed3 +167 -0
- data/dev/defs/slaed4 +113 -0
- data/dev/defs/slaed5 +78 -0
- data/dev/defs/slaed6 +101 -0
- data/dev/defs/slaed7 +241 -0
- data/dev/defs/slaed8 +227 -0
- data/dev/defs/slaed9 +137 -0
- data/dev/defs/slaeda +147 -0
- data/dev/defs/slaein +141 -0
- data/dev/defs/slaev2 +83 -0
- data/dev/defs/slaexc +107 -0
- data/dev/defs/slag2 +123 -0
- data/dev/defs/slag2d +74 -0
- data/dev/defs/slags2 +108 -0
- data/dev/defs/slagtf +128 -0
- data/dev/defs/slagtm +115 -0
- data/dev/defs/slagts +135 -0
- data/dev/defs/slagv2 +128 -0
- data/dev/defs/slahqr +172 -0
- data/dev/defs/slahr2 +153 -0
- data/dev/defs/slahrd +142 -0
- data/dev/defs/slaic1 +101 -0
- data/dev/defs/slaln2 +187 -0
- data/dev/defs/slals0 +250 -0
- data/dev/defs/slalsa +268 -0
- data/dev/defs/slalsd +150 -0
- data/dev/defs/slamrg +66 -0
- data/dev/defs/slaneg +87 -0
- data/dev/defs/slangb +93 -0
- data/dev/defs/slange +84 -0
- data/dev/defs/slangt +77 -0
- data/dev/defs/slanhs +78 -0
- data/dev/defs/slansb +97 -0
- data/dev/defs/slansf +179 -0
- data/dev/defs/slansp +83 -0
- data/dev/defs/slanst +69 -0
- data/dev/defs/slansy +92 -0
- data/dev/defs/slantb +108 -0
- data/dev/defs/slantp +93 -0
- data/dev/defs/slantr +109 -0
- data/dev/defs/slanv2 +84 -0
- data/dev/defs/slapll +69 -0
- data/dev/defs/slapmr +73 -0
- data/dev/defs/slapmt +73 -0
- data/dev/defs/slapy2 +30 -0
- data/dev/defs/slapy3 +34 -0
- data/dev/defs/slaqgb +124 -0
- data/dev/defs/slaqge +107 -0
- data/dev/defs/slaqp2 +115 -0
- data/dev/defs/slaqps +146 -0
- data/dev/defs/slaqr0 +225 -0
- data/dev/defs/slaqr1 +79 -0
- data/dev/defs/slaqr2 +252 -0
- data/dev/defs/slaqr3 +247 -0
- data/dev/defs/slaqr4 +225 -0
- data/dev/defs/slaqr5 +230 -0
- data/dev/defs/slaqsb +105 -0
- data/dev/defs/slaqsp +89 -0
- data/dev/defs/slaqsy +98 -0
- data/dev/defs/slaqtr +134 -0
- data/dev/defs/slar1v +199 -0
- data/dev/defs/slar2v +86 -0
- data/dev/defs/slarf +93 -0
- data/dev/defs/slarfb +139 -0
- data/dev/defs/slarfg +71 -0
- data/dev/defs/slarfgp +69 -0
- data/dev/defs/slarft +133 -0
- data/dev/defs/slarfx +89 -0
- data/dev/defs/slargv +74 -0
- data/dev/defs/slarnv +61 -0
- data/dev/defs/slarra +106 -0
- data/dev/defs/slarrb +167 -0
- data/dev/defs/slarrc +99 -0
- data/dev/defs/slarrd +290 -0
- data/dev/defs/slarre +265 -0
- data/dev/defs/slarrf +165 -0
- data/dev/defs/slarrj +138 -0
- data/dev/defs/slarrk +108 -0
- data/dev/defs/slarrr +62 -0
- data/dev/defs/slarrv +259 -0
- data/dev/defs/slarscl2 +61 -0
- data/dev/defs/slartg +64 -0
- data/dev/defs/slartgp +62 -0
- data/dev/defs/slartgs +57 -0
- data/dev/defs/slartv +82 -0
- data/dev/defs/slaruv +59 -0
- data/dev/defs/slarz +109 -0
- data/dev/defs/slarzb +150 -0
- data/dev/defs/slarzt +151 -0
- data/dev/defs/slas2 +71 -0
- data/dev/defs/slascl +102 -0
- data/dev/defs/slascl2 +61 -0
- data/dev/defs/slasd0 +131 -0
- data/dev/defs/slasd1 +179 -0
- data/dev/defs/slasd2 +254 -0
- data/dev/defs/slasd3 +213 -0
- data/dev/defs/slasd4 +123 -0
- data/dev/defs/slasd5 +88 -0
- data/dev/defs/slasd6 +300 -0
- data/dev/defs/slasd7 +264 -0
- data/dev/defs/slasd8 +144 -0
- data/dev/defs/slasda +275 -0
- data/dev/defs/slasdq +187 -0
- data/dev/defs/slasdt +76 -0
- data/dev/defs/slaset +81 -0
- data/dev/defs/slasq1 +75 -0
- data/dev/defs/slasq2 +73 -0
- data/dev/defs/slasq3 +141 -0
- data/dev/defs/slasq4 +107 -0
- data/dev/defs/slasq5 +100 -0
- data/dev/defs/slasq6 +90 -0
- data/dev/defs/slasr +169 -0
- data/dev/defs/slasrt +53 -0
- data/dev/defs/slassq +68 -0
- data/dev/defs/slasv2 +100 -0
- data/dev/defs/slaswp +81 -0
- data/dev/defs/slasy2 +145 -0
- data/dev/defs/slasyf +126 -0
- data/dev/defs/slatbs +206 -0
- data/dev/defs/slatdf +131 -0
- data/dev/defs/slatps +192 -0
- data/dev/defs/slatrd +168 -0
- data/dev/defs/slatrs +202 -0
- data/dev/defs/slatrz +106 -0
- data/dev/defs/slatzm +123 -0
- data/dev/defs/slauu2 +68 -0
- data/dev/defs/slauum +68 -0
- data/dev/defs/sopgtr +87 -0
- data/dev/defs/sopmtr +120 -0
- data/dev/defs/sorbdb +270 -0
- data/dev/defs/sorcsd +264 -0
- data/dev/defs/sorg2l +85 -0
- data/dev/defs/sorg2r +85 -0
- data/dev/defs/sorgbr +129 -0
- data/dev/defs/sorghr +97 -0
- data/dev/defs/sorgl2 +84 -0
- data/dev/defs/sorglq +100 -0
- data/dev/defs/sorgql +101 -0
- data/dev/defs/sorgqr +101 -0
- data/dev/defs/sorgr2 +85 -0
- data/dev/defs/sorgrq +101 -0
- data/dev/defs/sorgtr +95 -0
- data/dev/defs/sorm2l +130 -0
- data/dev/defs/sorm2r +130 -0
- data/dev/defs/sormbr +176 -0
- data/dev/defs/sormhr +157 -0
- data/dev/defs/sorml2 +130 -0
- data/dev/defs/sormlq +143 -0
- data/dev/defs/sormql +143 -0
- data/dev/defs/sormqr +143 -0
- data/dev/defs/sormr2 +130 -0
- data/dev/defs/sormr3 +152 -0
- data/dev/defs/sormrq +143 -0
- data/dev/defs/sormrz +157 -0
- data/dev/defs/sormtr +152 -0
- data/dev/defs/spbcon +98 -0
- data/dev/defs/spbequ +96 -0
- data/dev/defs/spbrfs +166 -0
- data/dev/defs/spbstf +115 -0
- data/dev/defs/spbsv +136 -0
- data/dev/defs/spbsvx +314 -0
- data/dev/defs/spbtf2 +105 -0
- data/dev/defs/spbtrf +103 -0
- data/dev/defs/spbtrs +98 -0
- data/dev/defs/spftrf +161 -0
- data/dev/defs/spftri +154 -0
- data/dev/defs/spftrs +164 -0
- data/dev/defs/spocon +87 -0
- data/dev/defs/spoequ +80 -0
- data/dev/defs/spoequb +80 -0
- data/dev/defs/sporfs +160 -0
- data/dev/defs/sporfsx +370 -0
- data/dev/defs/sposv +105 -0
- data/dev/defs/sposvx +281 -0
- data/dev/defs/sposvxx +471 -0
- data/dev/defs/spotf2 +75 -0
- data/dev/defs/spotrf +73 -0
- data/dev/defs/spotri +67 -0
- data/dev/defs/spotrs +79 -0
- data/dev/defs/sppcon +85 -0
- data/dev/defs/sppequ +82 -0
- data/dev/defs/spprfs +146 -0
- data/dev/defs/sppsv +115 -0
- data/dev/defs/sppsvx +283 -0
- data/dev/defs/spptrf +81 -0
- data/dev/defs/spptri +58 -0
- data/dev/defs/spptrs +84 -0
- data/dev/defs/spstf2 +108 -0
- data/dev/defs/spstrf +108 -0
- data/dev/defs/sptcon +84 -0
- data/dev/defs/spteqr +117 -0
- data/dev/defs/sptrfs +141 -0
- data/dev/defs/sptsv +89 -0
- data/dev/defs/sptsvx +203 -0
- data/dev/defs/spttrf +59 -0
- data/dev/defs/spttrs +88 -0
- data/dev/defs/sptts2 +77 -0
- data/dev/defs/srscl +49 -0
- data/dev/defs/ssbev +117 -0
- data/dev/defs/ssbevd +169 -0
- data/dev/defs/ssbevx +231 -0
- data/dev/defs/ssbgst +130 -0
- data/dev/defs/ssbgv +156 -0
- data/dev/defs/ssbgvd +206 -0
- data/dev/defs/ssbgvx +259 -0
- data/dev/defs/ssbtrd +132 -0
- data/dev/defs/ssfrk +134 -0
- data/dev/defs/sspcon +92 -0
- data/dev/defs/sspev +103 -0
- data/dev/defs/sspevd +154 -0
- data/dev/defs/sspevx +197 -0
- data/dev/defs/sspgst +80 -0
- data/dev/defs/sspgv +139 -0
- data/dev/defs/sspgvd +188 -0
- data/dev/defs/sspgvx +241 -0
- data/dev/defs/ssprfs +156 -0
- data/dev/defs/sspsv +134 -0
- data/dev/defs/sspsvx +249 -0
- data/dev/defs/ssptrd +118 -0
- data/dev/defs/ssptrf +120 -0
- data/dev/defs/ssptri +77 -0
- data/dev/defs/ssptrs +84 -0
- data/dev/defs/sstebz +229 -0
- data/dev/defs/sstedc +164 -0
- data/dev/defs/sstegr +233 -0
- data/dev/defs/sstein +152 -0
- data/dev/defs/sstemr +285 -0
- data/dev/defs/ssteqr +103 -0
- data/dev/defs/ssterf +54 -0
- data/dev/defs/sstev +88 -0
- data/dev/defs/sstevd +138 -0
- data/dev/defs/sstevr +275 -0
- data/dev/defs/sstevx +193 -0
- data/dev/defs/ssycon +98 -0
- data/dev/defs/ssyconv +90 -0
- data/dev/defs/ssyequb +104 -0
- data/dev/defs/ssyev +104 -0
- data/dev/defs/ssyevd +157 -0
- data/dev/defs/ssyevr +302 -0
- data/dev/defs/ssyevx +218 -0
- data/dev/defs/ssygs2 +96 -0
- data/dev/defs/ssygst +96 -0
- data/dev/defs/ssygv +148 -0
- data/dev/defs/ssygvd +197 -0
- data/dev/defs/ssygvx +263 -0
- data/dev/defs/ssyrfs +170 -0
- data/dev/defs/ssyrfsx +380 -0
- data/dev/defs/ssysv +149 -0
- data/dev/defs/ssysvx +261 -0
- data/dev/defs/ssysvxx +484 -0
- data/dev/defs/ssyswapr +70 -0
- data/dev/defs/ssytd2 +142 -0
- data/dev/defs/ssytf2 +143 -0
- data/dev/defs/ssytrd +162 -0
- data/dev/defs/ssytrf +156 -0
- data/dev/defs/ssytri +83 -0
- data/dev/defs/ssytri2 +110 -0
- data/dev/defs/ssytri2x +90 -0
- data/dev/defs/ssytrs +90 -0
- data/dev/defs/ssytrs2 +97 -0
- data/dev/defs/stbcon +109 -0
- data/dev/defs/stbrfs +164 -0
- data/dev/defs/stbtrs +113 -0
- data/dev/defs/stfsm +243 -0
- data/dev/defs/stftri +163 -0
- data/dev/defs/stfttp +151 -0
- data/dev/defs/stfttr +174 -0
- data/dev/defs/stgevc +265 -0
- data/dev/defs/stgex2 +191 -0
- data/dev/defs/stgexc +190 -0
- data/dev/defs/stgsen +421 -0
- data/dev/defs/stgsja +343 -0
- data/dev/defs/stgsna +354 -0
- data/dev/defs/stgsy2 +252 -0
- data/dev/defs/stgsyl +274 -0
- data/dev/defs/stpcon +95 -0
- data/dev/defs/stprfs +150 -0
- data/dev/defs/stptri +79 -0
- data/dev/defs/stptrs +98 -0
- data/dev/defs/stpttf +151 -0
- data/dev/defs/stpttr +73 -0
- data/dev/defs/strcon +103 -0
- data/dev/defs/strevc +191 -0
- data/dev/defs/strexc +113 -0
- data/dev/defs/strrfs +158 -0
- data/dev/defs/strsen +284 -0
- data/dev/defs/strsna +239 -0
- data/dev/defs/strsyl +133 -0
- data/dev/defs/strti2 +76 -0
- data/dev/defs/strtri +75 -0
- data/dev/defs/strtrs +107 -0
- data/dev/defs/strttf +171 -0
- data/dev/defs/strttp +72 -0
- data/dev/defs/stzrqf +104 -0
- data/dev/defs/stzrzf +128 -0
- data/dev/defs/xerbla +40 -0
- data/dev/defs/xerbla_array +65 -0
- data/dev/defs/zbbcsd +297 -0
- data/dev/defs/zbdsqr +196 -0
- data/dev/defs/zcgesv +176 -0
- data/dev/defs/zcposv +182 -0
- data/dev/defs/zdrscl +49 -0
- data/dev/defs/zgbbrd +174 -0
- data/dev/defs/zgbcon +114 -0
- data/dev/defs/zgbequ +121 -0
- data/dev/defs/zgbequb +128 -0
- data/dev/defs/zgbrfs +182 -0
- data/dev/defs/zgbrfsx +418 -0
- data/dev/defs/zgbsv +134 -0
- data/dev/defs/zgbsvx +356 -0
- data/dev/defs/zgbsvxx +536 -0
- data/dev/defs/zgbtf2 +110 -0
- data/dev/defs/zgbtrf +109 -0
- data/dev/defs/zgbtrs +106 -0
- data/dev/defs/zgebak +95 -0
- data/dev/defs/zgebal +125 -0
- data/dev/defs/zgebd2 +162 -0
- data/dev/defs/zgebrd +178 -0
- data/dev/defs/zgecon +90 -0
- data/dev/defs/zgeequ +107 -0
- data/dev/defs/zgeequb +114 -0
- data/dev/defs/zgees +170 -0
- data/dev/defs/zgeesx +209 -0
- data/dev/defs/zgeev +154 -0
- data/dev/defs/zgeevx +263 -0
- data/dev/defs/zgegs +205 -0
- data/dev/defs/zgegv +261 -0
- data/dev/defs/zgehd2 +115 -0
- data/dev/defs/zgehrd +136 -0
- data/dev/defs/zgelq2 +89 -0
- data/dev/defs/zgelqf +113 -0
- data/dev/defs/zgels +157 -0
- data/dev/defs/zgelsd +211 -0
- data/dev/defs/zgelss +156 -0
- data/dev/defs/zgelsx +155 -0
- data/dev/defs/zgelsy +188 -0
- data/dev/defs/zgeql2 +91 -0
- data/dev/defs/zgeqlf +116 -0
- data/dev/defs/zgeqp3 +127 -0
- data/dev/defs/zgeqpf +118 -0
- data/dev/defs/zgeqr2 +89 -0
- data/dev/defs/zgeqr2p +89 -0
- data/dev/defs/zgeqrf +114 -0
- data/dev/defs/zgeqrfp +114 -0
- data/dev/defs/zgerfs +164 -0
- data/dev/defs/zgerfsx +394 -0
- data/dev/defs/zgerq2 +91 -0
- data/dev/defs/zgerqf +116 -0
- data/dev/defs/zgesc2 +87 -0
- data/dev/defs/zgesdd +203 -0
- data/dev/defs/zgesv +97 -0
- data/dev/defs/zgesvd +195 -0
- data/dev/defs/zgesvx +333 -0
- data/dev/defs/zgesvxx +516 -0
- data/dev/defs/zgetc2 +82 -0
- data/dev/defs/zgetf2 +76 -0
- data/dev/defs/zgetrf +76 -0
- data/dev/defs/zgetri +86 -0
- data/dev/defs/zgetrs +91 -0
- data/dev/defs/zggbak +119 -0
- data/dev/defs/zggbal +144 -0
- data/dev/defs/zgges +247 -0
- data/dev/defs/zggesx +311 -0
- data/dev/defs/zggev +197 -0
- data/dev/defs/zggevx +353 -0
- data/dev/defs/zggglm +160 -0
- data/dev/defs/zgghrd +171 -0
- data/dev/defs/zgglse +157 -0
- data/dev/defs/zggqrf +195 -0
- data/dev/defs/zggrqf +194 -0
- data/dev/defs/zggsvd +324 -0
- data/dev/defs/zggsvp +240 -0
- data/dev/defs/zgtcon +112 -0
- data/dev/defs/zgtrfs +193 -0
- data/dev/defs/zgtsv +97 -0
- data/dev/defs/zgtsvx +275 -0
- data/dev/defs/zgttrf +97 -0
- data/dev/defs/zgttrs +119 -0
- data/dev/defs/zgtts2 +108 -0
- data/dev/defs/zhbev +124 -0
- data/dev/defs/zhbevd +194 -0
- data/dev/defs/zhbevx +234 -0
- data/dev/defs/zhbgst +137 -0
- data/dev/defs/zhbgv +163 -0
- data/dev/defs/zhbgvd +231 -0
- data/dev/defs/zhbgvx +265 -0
- data/dev/defs/zhbtrd +132 -0
- data/dev/defs/zhecon +91 -0
- data/dev/defs/zheequb +87 -0
- data/dev/defs/zheev +111 -0
- data/dev/defs/zheevd +178 -0
- data/dev/defs/zheevr +325 -0
- data/dev/defs/zheevx +225 -0
- data/dev/defs/zhegs2 +96 -0
- data/dev/defs/zhegst +96 -0
- data/dev/defs/zhegv +155 -0
- data/dev/defs/zhegvd +222 -0
- data/dev/defs/zhegvx +270 -0
- data/dev/defs/zherfs +170 -0
- data/dev/defs/zherfsx +380 -0
- data/dev/defs/zhesv +147 -0
- data/dev/defs/zhesvx +261 -0
- data/dev/defs/zhesvxx +478 -0
- data/dev/defs/zhetd2 +143 -0
- data/dev/defs/zhetf2 +141 -0
- data/dev/defs/zhetrd +162 -0
- data/dev/defs/zhetrf +151 -0
- data/dev/defs/zhetri +83 -0
- data/dev/defs/zhetrs +90 -0
- data/dev/defs/zhetrs2 +97 -0
- data/dev/defs/zhfrk +138 -0
- data/dev/defs/zhgeqz +258 -0
- data/dev/defs/zhpcon +85 -0
- data/dev/defs/zhpev +110 -0
- data/dev/defs/zhpevd +180 -0
- data/dev/defs/zhpevx +204 -0
- data/dev/defs/zhpgst +80 -0
- data/dev/defs/zhpgv +145 -0
- data/dev/defs/zhpgvd +221 -0
- data/dev/defs/zhpgvx +247 -0
- data/dev/defs/zhprfs +156 -0
- data/dev/defs/zhpsv +134 -0
- data/dev/defs/zhpsvx +248 -0
- data/dev/defs/zhptrd +118 -0
- data/dev/defs/zhptrf +120 -0
- data/dev/defs/zhptri +77 -0
- data/dev/defs/zhptrs +84 -0
- data/dev/defs/zhsein +217 -0
- data/dev/defs/zhseqr +263 -0
- data/dev/defs/zla_gbamv +154 -0
- data/dev/defs/zla_gbrcond_c +146 -0
- data/dev/defs/zla_gbrcond_x +140 -0
- data/dev/defs/zla_gbrfsx_extended +391 -0
- data/dev/defs/zla_gbrpvgrw +94 -0
- data/dev/defs/zla_geamv +142 -0
- data/dev/defs/zla_gercond_c +128 -0
- data/dev/defs/zla_gercond_x +122 -0
- data/dev/defs/zla_gerfsx_extended +378 -0
- data/dev/defs/zla_heamv +142 -0
- data/dev/defs/zla_hercond_c +125 -0
- data/dev/defs/zla_hercond_x +119 -0
- data/dev/defs/zla_herfsx_extended +375 -0
- data/dev/defs/zla_herpvgrw +105 -0
- data/dev/defs/zla_lin_berr +79 -0
- data/dev/defs/zla_porcond_c +116 -0
- data/dev/defs/zla_porcond_x +110 -0
- data/dev/defs/zla_porfsx_extended +366 -0
- data/dev/defs/zla_porpvgrw +85 -0
- data/dev/defs/zla_rpvgrw +76 -0
- data/dev/defs/zla_syamv +142 -0
- data/dev/defs/zla_syrcond_c +125 -0
- data/dev/defs/zla_syrcond_x +119 -0
- data/dev/defs/zla_syrfsx_extended +375 -0
- data/dev/defs/zla_syrpvgrw +105 -0
- data/dev/defs/zla_wwaddw +53 -0
- data/dev/defs/zlabrd +187 -0
- data/dev/defs/zlacgv +44 -0
- data/dev/defs/zlacn2 +91 -0
- data/dev/defs/zlacon +75 -0
- data/dev/defs/zlacp2 +78 -0
- data/dev/defs/zlacpy +78 -0
- data/dev/defs/zlacrm +88 -0
- data/dev/defs/zlacrt +73 -0
- data/dev/defs/zladiv +37 -0
- data/dev/defs/zlaed0 +121 -0
- data/dev/defs/zlaed7 +237 -0
- data/dev/defs/zlaed8 +211 -0
- data/dev/defs/zlaein +117 -0
- data/dev/defs/zlaesy +81 -0
- data/dev/defs/zlaev2 +83 -0
- data/dev/defs/zlag2c +82 -0
- data/dev/defs/zlags2 +116 -0
- data/dev/defs/zlagtm +115 -0
- data/dev/defs/zlahef +127 -0
- data/dev/defs/zlahqr +159 -0
- data/dev/defs/zlahr2 +153 -0
- data/dev/defs/zlahrd +141 -0
- data/dev/defs/zlaic1 +101 -0
- data/dev/defs/zlals0 +251 -0
- data/dev/defs/zlalsa +267 -0
- data/dev/defs/zlalsd +160 -0
- data/dev/defs/zlangb +92 -0
- data/dev/defs/zlange +84 -0
- data/dev/defs/zlangt +77 -0
- data/dev/defs/zlanhb +99 -0
- data/dev/defs/zlanhe +93 -0
- data/dev/defs/zlanhf +211 -0
- data/dev/defs/zlanhp +85 -0
- data/dev/defs/zlanhs +78 -0
- data/dev/defs/zlanht +69 -0
- data/dev/defs/zlansb +97 -0
- data/dev/defs/zlansp +83 -0
- data/dev/defs/zlansy +92 -0
- data/dev/defs/zlantb +108 -0
- data/dev/defs/zlantp +93 -0
- data/dev/defs/zlantr +109 -0
- data/dev/defs/zlapll +67 -0
- data/dev/defs/zlapmr +73 -0
- data/dev/defs/zlapmt +73 -0
- data/dev/defs/zlaqgb +124 -0
- data/dev/defs/zlaqge +107 -0
- data/dev/defs/zlaqhb +105 -0
- data/dev/defs/zlaqhe +98 -0
- data/dev/defs/zlaqhp +89 -0
- data/dev/defs/zlaqp2 +115 -0
- data/dev/defs/zlaqps +141 -0
- data/dev/defs/zlaqr0 +203 -0
- data/dev/defs/zlaqr1 +66 -0
- data/dev/defs/zlaqr2 +243 -0
- data/dev/defs/zlaqr3 +238 -0
- data/dev/defs/zlaqr4 +203 -0
- data/dev/defs/zlaqr5 +221 -0
- data/dev/defs/zlaqsb +105 -0
- data/dev/defs/zlaqsp +89 -0
- data/dev/defs/zlaqsy +98 -0
- data/dev/defs/zlar1v +199 -0
- data/dev/defs/zlar2v +88 -0
- data/dev/defs/zlarcm +88 -0
- data/dev/defs/zlarf +97 -0
- data/dev/defs/zlarfb +139 -0
- data/dev/defs/zlarfg +71 -0
- data/dev/defs/zlarfgp +69 -0
- data/dev/defs/zlarft +133 -0
- data/dev/defs/zlarfx +88 -0
- data/dev/defs/zlargv +88 -0
- data/dev/defs/zlarnv +63 -0
- data/dev/defs/zlarrv +259 -0
- data/dev/defs/zlarscl2 +61 -0
- data/dev/defs/zlartg +66 -0
- data/dev/defs/zlartv +82 -0
- data/dev/defs/zlarz +111 -0
- data/dev/defs/zlarzb +150 -0
- data/dev/defs/zlarzt +151 -0
- data/dev/defs/zlascl +102 -0
- data/dev/defs/zlascl2 +61 -0
- data/dev/defs/zlaset +77 -0
- data/dev/defs/zlasr +169 -0
- data/dev/defs/zlassq +71 -0
- data/dev/defs/zlaswp +81 -0
- data/dev/defs/zlasyf +127 -0
- data/dev/defs/zlat2c +85 -0
- data/dev/defs/zlatbs +206 -0
- data/dev/defs/zlatdf +133 -0
- data/dev/defs/zlatps +193 -0
- data/dev/defs/zlatrd +168 -0
- data/dev/defs/zlatrs +202 -0
- data/dev/defs/zlatrz +106 -0
- data/dev/defs/zlatzm +124 -0
- data/dev/defs/zlauu2 +68 -0
- data/dev/defs/zlauum +68 -0
- data/dev/defs/zpbcon +99 -0
- data/dev/defs/zpbequ +96 -0
- data/dev/defs/zpbrfs +166 -0
- data/dev/defs/zpbstf +116 -0
- data/dev/defs/zpbsv +136 -0
- data/dev/defs/zpbsvx +314 -0
- data/dev/defs/zpbtf2 +105 -0
- data/dev/defs/zpbtrf +103 -0
- data/dev/defs/zpbtrs +98 -0
- data/dev/defs/zpftrf +182 -0
- data/dev/defs/zpftri +175 -0
- data/dev/defs/zpftrs +185 -0
- data/dev/defs/zpocon +87 -0
- data/dev/defs/zpoequ +80 -0
- data/dev/defs/zpoequb +80 -0
- data/dev/defs/zporfs +160 -0
- data/dev/defs/zporfsx +370 -0
- data/dev/defs/zposv +105 -0
- data/dev/defs/zposvx +281 -0
- data/dev/defs/zposvxx +468 -0
- data/dev/defs/zpotf2 +75 -0
- data/dev/defs/zpotrf +73 -0
- data/dev/defs/zpotri +67 -0
- data/dev/defs/zpotrs +79 -0
- data/dev/defs/zppcon +85 -0
- data/dev/defs/zppequ +82 -0
- data/dev/defs/zpprfs +146 -0
- data/dev/defs/zppsv +115 -0
- data/dev/defs/zppsvx +283 -0
- data/dev/defs/zpptrf +81 -0
- data/dev/defs/zpptri +58 -0
- data/dev/defs/zpptrs +84 -0
- data/dev/defs/zpstf2 +108 -0
- data/dev/defs/zpstrf +108 -0
- data/dev/defs/zptcon +84 -0
- data/dev/defs/zpteqr +116 -0
- data/dev/defs/zptrfs +161 -0
- data/dev/defs/zptsv +89 -0
- data/dev/defs/zptsvx +210 -0
- data/dev/defs/zpttrf +59 -0
- data/dev/defs/zpttrs +98 -0
- data/dev/defs/zptts2 +89 -0
- data/dev/defs/zrot +72 -0
- data/dev/defs/zspcon +85 -0
- data/dev/defs/zspmv +119 -0
- data/dev/defs/zspr +98 -0
- data/dev/defs/zsprfs +156 -0
- data/dev/defs/zspsv +134 -0
- data/dev/defs/zspsvx +248 -0
- data/dev/defs/zsptrf +121 -0
- data/dev/defs/zsptri +77 -0
- data/dev/defs/zsptrs +84 -0
- data/dev/defs/zstedc +192 -0
- data/dev/defs/zstegr +233 -0
- data/dev/defs/zstein +159 -0
- data/dev/defs/zstemr +302 -0
- data/dev/defs/zsteqr +103 -0
- data/dev/defs/zsycon +91 -0
- data/dev/defs/zsyconv +90 -0
- data/dev/defs/zsyequb +104 -0
- data/dev/defs/zsymv +126 -0
- data/dev/defs/zsyr +102 -0
- data/dev/defs/zsyrfs +170 -0
- data/dev/defs/zsyrfsx +380 -0
- data/dev/defs/zsysv +149 -0
- data/dev/defs/zsysvx +261 -0
- data/dev/defs/zsysvxx +482 -0
- data/dev/defs/zsyswapr +70 -0
- data/dev/defs/zsytf2 +140 -0
- data/dev/defs/zsytrf +156 -0
- data/dev/defs/zsytri +83 -0
- data/dev/defs/zsytri2 +111 -0
- data/dev/defs/zsytri2x +90 -0
- data/dev/defs/zsytrs +90 -0
- data/dev/defs/zsytrs2 +97 -0
- data/dev/defs/ztbcon +109 -0
- data/dev/defs/ztbrfs +164 -0
- data/dev/defs/ztbtrs +113 -0
- data/dev/defs/ztfsm +259 -0
- data/dev/defs/ztftri +183 -0
- data/dev/defs/ztfttp +172 -0
- data/dev/defs/ztfttr +182 -0
- data/dev/defs/ztgevc +194 -0
- data/dev/defs/ztgex2 +158 -0
- data/dev/defs/ztgexc +176 -0
- data/dev/defs/ztgsen +406 -0
- data/dev/defs/ztgsja +344 -0
- data/dev/defs/ztgsna +282 -0
- data/dev/defs/ztgsy2 +235 -0
- data/dev/defs/ztgsyl +273 -0
- data/dev/defs/ztpcon +95 -0
- data/dev/defs/ztprfs +150 -0
- data/dev/defs/ztptri +79 -0
- data/dev/defs/ztptrs +98 -0
- data/dev/defs/ztpttf +172 -0
- data/dev/defs/ztpttr +73 -0
- data/dev/defs/ztrcon +103 -0
- data/dev/defs/ztrevc +188 -0
- data/dev/defs/ztrexc +99 -0
- data/dev/defs/ztrrfs +158 -0
- data/dev/defs/ztrsen +234 -0
- data/dev/defs/ztrsna +223 -0
- data/dev/defs/ztrsyl +126 -0
- data/dev/defs/ztrti2 +76 -0
- data/dev/defs/ztrtri +75 -0
- data/dev/defs/ztrtrs +107 -0
- data/dev/defs/ztrttf +181 -0
- data/dev/defs/ztrttp +72 -0
- data/dev/defs/ztzrqf +104 -0
- data/dev/defs/ztzrzf +128 -0
- data/dev/defs/zunbdb +270 -0
- data/dev/defs/zuncsd +283 -0
- data/dev/defs/zung2l +85 -0
- data/dev/defs/zung2r +85 -0
- data/dev/defs/zungbr +129 -0
- data/dev/defs/zunghr +97 -0
- data/dev/defs/zungl2 +84 -0
- data/dev/defs/zunglq +100 -0
- data/dev/defs/zungql +101 -0
- data/dev/defs/zungqr +101 -0
- data/dev/defs/zungr2 +85 -0
- data/dev/defs/zungrq +101 -0
- data/dev/defs/zungtr +95 -0
- data/dev/defs/zunm2l +130 -0
- data/dev/defs/zunm2r +130 -0
- data/dev/defs/zunmbr +177 -0
- data/dev/defs/zunmhr +157 -0
- data/dev/defs/zunml2 +130 -0
- data/dev/defs/zunmlq +143 -0
- data/dev/defs/zunmql +143 -0
- data/dev/defs/zunmqr +143 -0
- data/dev/defs/zunmr2 +130 -0
- data/dev/defs/zunmr3 +152 -0
- data/dev/defs/zunmrq +143 -0
- data/dev/defs/zunmrz +157 -0
- data/dev/defs/zunmtr +152 -0
- data/dev/defs/zupgtr +87 -0
- data/dev/defs/zupmtr +120 -0
- data/dev/make_csrc.rb +857 -0
- data/dev/mkdoc.rb +265 -0
- data/dev/parse.rb +1972 -0
- data/doc/bd.html +16 -0
- data/doc/c.html +36 -0
- data/doc/cbd.html +161 -0
- data/doc/cgb.html +1865 -0
- data/doc/cge.html +5261 -0
- data/doc/cgg.html +2027 -0
- data/doc/cgt.html +711 -0
- data/doc/chb.html +1031 -0
- data/doc/che.html +3165 -0
- data/doc/chg.html +201 -0
- data/doc/chp.html +1696 -0
- data/doc/chs.html +386 -0
- data/doc/cpb.html +994 -0
- data/doc/cpo.html +1520 -0
- data/doc/cpp.html +770 -0
- data/doc/cpt.html +706 -0
- data/doc/csp.html +905 -0
- data/doc/cst.html +742 -0
- data/doc/csy.html +2194 -0
- data/doc/ctb.html +284 -0
- data/doc/ctg.html +1544 -0
- data/doc/ctp.html +553 -0
- data/doc/ctr.html +1281 -0
- data/doc/ctz.html +211 -0
- data/doc/cun.html +2553 -0
- data/doc/cup.html +166 -0
- data/doc/d.html +35 -0
- data/doc/dbd.html +304 -0
- data/doc/ddi.html +87 -0
- data/doc/dgb.html +1857 -0
- data/doc/dge.html +7267 -0
- data/doc/dgg.html +2102 -0
- data/doc/dgt.html +713 -0
- data/doc/dhg.html +225 -0
- data/doc/dhs.html +414 -0
- data/doc/di.html +14 -0
- data/doc/dop.html +166 -0
- data/doc/dor.html +2540 -0
- data/doc/dpb.html +992 -0
- data/doc/dpo.html +1517 -0
- data/doc/dpp.html +770 -0
- data/doc/dpt.html +675 -0
- data/doc/dsb.html +995 -0
- data/doc/dsp.html +1777 -0
- data/doc/dst.html +1422 -0
- data/doc/dsy.html +3433 -0
- data/doc/dtb.html +284 -0
- data/doc/dtg.html +1730 -0
- data/doc/dtp.html +532 -0
- data/doc/dtr.html +1346 -0
- data/doc/dtz.html +211 -0
- data/doc/gb.html +16 -0
- data/doc/ge.html +16 -0
- data/doc/gg.html +16 -0
- data/doc/gt.html +16 -0
- data/doc/hb.html +14 -0
- data/doc/he.html +14 -0
- data/doc/hg.html +16 -0
- data/doc/hp.html +14 -0
- data/doc/hs.html +16 -0
- data/doc/index.html +53 -0
- data/doc/op.html +14 -0
- data/doc/or.html +14 -0
- data/doc/others.html +1142 -0
- data/doc/pb.html +16 -0
- data/doc/po.html +16 -0
- data/doc/pp.html +16 -0
- data/doc/pt.html +16 -0
- data/doc/s.html +35 -0
- data/doc/sb.html +14 -0
- data/doc/sbd.html +303 -0
- data/doc/sdi.html +87 -0
- data/doc/sgb.html +1863 -0
- data/doc/sge.html +7263 -0
- data/doc/sgg.html +2102 -0
- data/doc/sgt.html +713 -0
- data/doc/shg.html +225 -0
- data/doc/shs.html +414 -0
- data/doc/sop.html +166 -0
- data/doc/sor.html +2540 -0
- data/doc/sp.html +16 -0
- data/doc/spb.html +992 -0
- data/doc/spo.html +1520 -0
- data/doc/spp.html +770 -0
- data/doc/spt.html +675 -0
- data/doc/ssb.html +995 -0
- data/doc/ssp.html +1647 -0
- data/doc/sst.html +1423 -0
- data/doc/ssy.html +3438 -0
- data/doc/st.html +16 -0
- data/doc/stb.html +284 -0
- data/doc/stg.html +1729 -0
- data/doc/stp.html +532 -0
- data/doc/str.html +1346 -0
- data/doc/stz.html +211 -0
- data/doc/sy.html +16 -0
- data/doc/tb.html +16 -0
- data/doc/tg.html +16 -0
- data/doc/tp.html +16 -0
- data/doc/tr.html +16 -0
- data/doc/tz.html +16 -0
- data/doc/un.html +14 -0
- data/doc/up.html +14 -0
- data/doc/z.html +36 -0
- data/doc/zbd.html +161 -0
- data/doc/zgb.html +1862 -0
- data/doc/zge.html +5258 -0
- data/doc/zgg.html +2027 -0
- data/doc/zgt.html +711 -0
- data/doc/zhb.html +1031 -0
- data/doc/zhe.html +3162 -0
- data/doc/zhg.html +201 -0
- data/doc/zhp.html +1697 -0
- data/doc/zhs.html +386 -0
- data/doc/zpb.html +994 -0
- data/doc/zpo.html +1517 -0
- data/doc/zpp.html +770 -0
- data/doc/zpt.html +706 -0
- data/doc/zsp.html +905 -0
- data/doc/zst.html +743 -0
- data/doc/zsy.html +2191 -0
- data/doc/ztb.html +284 -0
- data/doc/ztg.html +1544 -0
- data/doc/ztp.html +553 -0
- data/doc/ztr.html +1281 -0
- data/doc/ztz.html +211 -0
- data/doc/zun.html +2553 -0
- data/doc/zup.html +166 -0
- data/ext/cbbcsd.c +279 -0
- data/ext/cbdsqr.c +178 -0
- data/ext/cgbbrd.c +153 -0
- data/ext/cgbcon.c +94 -0
- data/ext/cgbequ.c +94 -0
- data/ext/cgbequb.c +92 -0
- data/ext/cgbrfs.c +157 -0
- data/ext/cgbrfsx.c +245 -0
- data/ext/cgbsv.c +111 -0
- data/ext/cgbsvx.c +282 -0
- data/ext/cgbsvxx.c +285 -0
- data/ext/cgbtf2.c +89 -0
- data/ext/cgbtrf.c +89 -0
- data/ext/cgbtrs.c +107 -0
- data/ext/cgebak.c +97 -0
- data/ext/cgebal.c +87 -0
- data/ext/cgebd2.c +108 -0
- data/ext/cgebrd.c +123 -0
- data/ext/cgecon.c +74 -0
- data/ext/cgeequ.c +84 -0
- data/ext/cgeequb.c +84 -0
- data/ext/cgees.c +138 -0
- data/ext/cgeesx.c +148 -0
- data/ext/cgeev.c +128 -0
- data/ext/cgeevx.c +169 -0
- data/ext/cgegs.c +162 -0
- data/ext/cgegv.c +167 -0
- data/ext/cgehd2.c +88 -0
- data/ext/cgehrd.c +103 -0
- data/ext/cgelq2.c +82 -0
- data/ext/cgelqf.c +99 -0
- data/ext/cgels.c +133 -0
- data/ext/cgelsd.c +150 -0
- data/ext/cgelss.c +147 -0
- data/ext/cgelsx.c +135 -0
- data/ext/cgelsy.c +162 -0
- data/ext/cgeql2.c +84 -0
- data/ext/cgeqlf.c +99 -0
- data/ext/cgeqp3.c +125 -0
- data/ext/cgeqpf.c +110 -0
- data/ext/cgeqr2.c +84 -0
- data/ext/cgeqr2p.c +84 -0
- data/ext/cgeqrf.c +99 -0
- data/ext/cgeqrfp.c +99 -0
- data/ext/cgerfs.c +149 -0
- data/ext/cgerfsx.c +215 -0
- data/ext/cgerq2.c +82 -0
- data/ext/cgerqf.c +99 -0
- data/ext/cgesc2.c +104 -0
- data/ext/cgesdd.c +131 -0
- data/ext/cgesv.c +103 -0
- data/ext/cgesvd.c +142 -0
- data/ext/cgesvx.c +274 -0
- data/ext/cgesvxx.c +277 -0
- data/ext/cgetc2.c +85 -0
- data/ext/cgetf2.c +81 -0
- data/ext/cgetrf.c +81 -0
- data/ext/cgetri.c +99 -0
- data/ext/cgetrs.c +99 -0
- data/ext/cggbak.c +109 -0
- data/ext/cggbal.c +124 -0
- data/ext/cgges.c +188 -0
- data/ext/cggesx.c +226 -0
- data/ext/cggev.c +167 -0
- data/ext/cggevx.c +222 -0
- data/ext/cggglm.c +152 -0
- data/ext/cgghrd.c +163 -0
- data/ext/cgglse.c +167 -0
- data/ext/cggqrf.c +133 -0
- data/ext/cggrqf.c +137 -0
- data/ext/cggsvd.c +180 -0
- data/ext/cggsvp.c +170 -0
- data/ext/cgtcon.c +117 -0
- data/ext/cgtrfs.c +205 -0
- data/ext/cgtsv.c +138 -0
- data/ext/cgtsvx.c +252 -0
- data/ext/cgttrf.c +128 -0
- data/ext/cgttrs.c +133 -0
- data/ext/cgtts2.c +130 -0
- data/ext/chbev.c +106 -0
- data/ext/chbevd.c +154 -0
- data/ext/chbevx.c +156 -0
- data/ext/chbgst.c +116 -0
- data/ext/chbgv.c +136 -0
- data/ext/chbgvd.c +184 -0
- data/ext/chbgvx.c +185 -0
- data/ext/chbtrd.c +126 -0
- data/ext/checon.c +83 -0
- data/ext/cheequb.c +78 -0
- data/ext/cheev.c +106 -0
- data/ext/cheevd.c +139 -0
- data/ext/cheevr.c +186 -0
- data/ext/cheevx.c +156 -0
- data/ext/chegs2.c +91 -0
- data/ext/chegst.c +91 -0
- data/ext/chegv.c +136 -0
- data/ext/chegvd.c +169 -0
- data/ext/chegvx.c +186 -0
- data/ext/cherfs.c +149 -0
- data/ext/cherfsx.c +214 -0
- data/ext/chesv.c +119 -0
- data/ext/chesvx.c +179 -0
- data/ext/chesvxx.c +254 -0
- data/ext/chetd2.c +97 -0
- data/ext/chetf2.c +81 -0
- data/ext/chetrd.c +109 -0
- data/ext/chetrf.c +93 -0
- data/ext/chetri.c +88 -0
- data/ext/chetrs.c +99 -0
- data/ext/chetrs2.c +102 -0
- data/ext/chfrk.c +105 -0
- data/ext/chgeqz.c +204 -0
- data/ext/chla_transtype.c +47 -0
- data/ext/chpcon.c +81 -0
- data/ext/chpev.c +101 -0
- data/ext/chpevd.c +149 -0
- data/ext/chpevx.c +140 -0
- data/ext/chpgst.c +90 -0
- data/ext/chpgv.c +128 -0
- data/ext/chpgvd.c +166 -0
- data/ext/chpgvx.c +166 -0
- data/ext/chprfs.c +145 -0
- data/ext/chpsv.c +106 -0
- data/ext/chpsvx.c +159 -0
- data/ext/chptrd.c +96 -0
- data/ext/chptrf.c +80 -0
- data/ext/chptri.c +85 -0
- data/ext/chptrs.c +97 -0
- data/ext/chsein.c +181 -0
- data/ext/chseqr.c +141 -0
- data/ext/cla_gbamv.c +123 -0
- data/ext/cla_gbrcond_c.c +138 -0
- data/ext/cla_gbrcond_x.c +134 -0
- data/ext/cla_gbrfsx_extended.c +291 -0
- data/ext/cla_gbrpvgrw.c +83 -0
- data/ext/cla_geamv.c +113 -0
- data/ext/cla_gercond_c.c +130 -0
- data/ext/cla_gercond_x.c +126 -0
- data/ext/cla_gerfsx_extended.c +277 -0
- data/ext/cla_heamv.c +112 -0
- data/ext/cla_hercond_c.c +130 -0
- data/ext/cla_hercond_x.c +126 -0
- data/ext/cla_herfsx_extended.c +279 -0
- data/ext/cla_herpvgrw.c +103 -0
- data/ext/cla_lin_berr.c +80 -0
- data/ext/cla_porcond_c.c +118 -0
- data/ext/cla_porcond_x.c +114 -0
- data/ext/cla_porfsx_extended.c +267 -0
- data/ext/cla_porpvgrw.c +91 -0
- data/ext/cla_rpvgrw.c +75 -0
- data/ext/cla_syamv.c +111 -0
- data/ext/cla_syrcond_c.c +130 -0
- data/ext/cla_syrcond_x.c +126 -0
- data/ext/cla_syrfsx_extended.c +279 -0
- data/ext/cla_syrpvgrw.c +103 -0
- data/ext/cla_wwaddw.c +98 -0
- data/ext/clabrd.c +128 -0
- data/ext/clacgv.c +71 -0
- data/ext/clacn2.c +99 -0
- data/ext/clacon.c +76 -0
- data/ext/clacp2.c +73 -0
- data/ext/clacpy.c +73 -0
- data/ext/clacrm.c +86 -0
- data/ext/clacrt.c +104 -0
- data/ext/cladiv.c +53 -0
- data/ext/claed0.c +130 -0
- data/ext/claed7.c +243 -0
- data/ext/claed8.c +194 -0
- data/ext/claein.c +109 -0
- data/ext/claesy.c +70 -0
- data/ext/claev2.c +67 -0
- data/ext/clag2z.c +72 -0
- data/ext/clags2.c +88 -0
- data/ext/clagtm.c +128 -0
- data/ext/clahef.c +93 -0
- data/ext/clahqr.c +131 -0
- data/ext/clahr2.c +108 -0
- data/ext/clahrd.c +108 -0
- data/ext/claic1.c +86 -0
- data/ext/clals0.c +197 -0
- data/ext/clalsa.c +266 -0
- data/ext/clalsd.c +141 -0
- data/ext/clangb.c +72 -0
- data/ext/clange.c +70 -0
- data/ext/clangt.c +83 -0
- data/ext/clanhb.c +74 -0
- data/ext/clanhe.c +68 -0
- data/ext/clanhf.c +76 -0
- data/ext/clanhp.c +70 -0
- data/ext/clanhs.c +66 -0
- data/ext/clanht.c +71 -0
- data/ext/clansb.c +74 -0
- data/ext/clansp.c +70 -0
- data/ext/clansy.c +68 -0
- data/ext/clantb.c +76 -0
- data/ext/clantp.c +76 -0
- data/ext/clantr.c +78 -0
- data/ext/clapll.c +101 -0
- data/ext/clapmr.c +93 -0
- data/ext/clapmt.c +97 -0
- data/ext/claqgb.c +113 -0
- data/ext/claqge.c +105 -0
- data/ext/claqhb.c +93 -0
- data/ext/claqhe.c +93 -0
- data/ext/claqhp.c +90 -0
- data/ext/claqp2.c +154 -0
- data/ext/claqps.c +204 -0
- data/ext/claqr0.c +141 -0
- data/ext/claqr1.c +72 -0
- data/ext/claqr2.c +170 -0
- data/ext/claqr3.c +170 -0
- data/ext/claqr4.c +141 -0
- data/ext/claqr5.c +175 -0
- data/ext/claqsb.c +97 -0
- data/ext/claqsp.c +90 -0
- data/ext/claqsy.c +93 -0
- data/ext/clar1v.c +169 -0
- data/ext/clar2v.c +145 -0
- data/ext/clarcm.c +82 -0
- data/ext/clarf.c +98 -0
- data/ext/clarfb.c +119 -0
- data/ext/clarfg.c +80 -0
- data/ext/clarfgp.c +80 -0
- data/ext/clarft.c +101 -0
- data/ext/clarfx.c +90 -0
- data/ext/clargv.c +110 -0
- data/ext/clarnv.c +79 -0
- data/ext/clarrv.c +267 -0
- data/ext/clarscl2.c +78 -0
- data/ext/clartg.c +59 -0
- data/ext/clartv.c +126 -0
- data/ext/clarz.c +102 -0
- data/ext/clarzb.c +123 -0
- data/ext/clarzt.c +101 -0
- data/ext/clascl.c +93 -0
- data/ext/clascl2.c +78 -0
- data/ext/claset.c +84 -0
- data/ext/clasr.c +106 -0
- data/ext/classq.c +66 -0
- data/ext/claswp.c +90 -0
- data/ext/clasyf.c +93 -0
- data/ext/clatbs.c +126 -0
- data/ext/clatdf.c +115 -0
- data/ext/clatps.c +120 -0
- data/ext/clatrd.c +101 -0
- data/ext/clatrs.c +122 -0
- data/ext/clatrz.c +83 -0
- data/ext/clatzm.c +128 -0
- data/ext/clauu2.c +73 -0
- data/ext/clauum.c +73 -0
- data/ext/cpbcon.c +78 -0
- data/ext/cpbequ.c +79 -0
- data/ext/cpbrfs.c +141 -0
- data/ext/cpbstf.c +77 -0
- data/ext/cpbsv.c +103 -0
- data/ext/cpbsvx.c +197 -0
- data/ext/cpbtf2.c +77 -0
- data/ext/cpbtrf.c +77 -0
- data/ext/cpbtrs.c +91 -0
- data/ext/cpftrf.c +78 -0
- data/ext/cpftri.c +78 -0
- data/ext/cpftrs.c +93 -0
- data/ext/cpocon.c +74 -0
- data/ext/cpoequ.c +71 -0
- data/ext/cpoequb.c +71 -0
- data/ext/cporfs.c +137 -0
- data/ext/cporfsx.c +202 -0
- data/ext/cposv.c +99 -0
- data/ext/cposvx.c +193 -0
- data/ext/cposvxx.c +231 -0
- data/ext/cpotf2.c +73 -0
- data/ext/cpotrf.c +73 -0
- data/ext/cpotri.c +73 -0
- data/ext/cpotrs.c +87 -0
- data/ext/cppcon.c +74 -0
- data/ext/cppequ.c +75 -0
- data/ext/cpprfs.c +135 -0
- data/ext/cppsv.c +100 -0
- data/ext/cppsvx.c +187 -0
- data/ext/cpptrf.c +74 -0
- data/ext/cpptri.c +74 -0
- data/ext/cpptrs.c +89 -0
- data/ext/cpstf2.c +91 -0
- data/ext/cpstrf.c +91 -0
- data/ext/cptcon.c +77 -0
- data/ext/cpteqr.c +122 -0
- data/ext/cptrfs.c +157 -0
- data/ext/cptsv.c +115 -0
- data/ext/cptsvx.c +167 -0
- data/ext/cpttrf.c +89 -0
- data/ext/cpttrs.c +97 -0
- data/ext/cptts2.c +94 -0
- data/ext/crot.c +103 -0
- data/ext/cspcon.c +81 -0
- data/ext/cspmv.c +111 -0
- data/ext/cspr.c +92 -0
- data/ext/csprfs.c +145 -0
- data/ext/cspsv.c +106 -0
- data/ext/cspsvx.c +159 -0
- data/ext/csptrf.c +80 -0
- data/ext/csptri.c +85 -0
- data/ext/csptrs.c +97 -0
- data/ext/csrscl.c +75 -0
- data/ext/cstedc.c +173 -0
- data/ext/cstegr.c +184 -0
- data/ext/cstein.c +130 -0
- data/ext/cstemr.c +189 -0
- data/ext/csteqr.c +122 -0
- data/ext/csycon.c +83 -0
- data/ext/csyconv.c +80 -0
- data/ext/csyequb.c +78 -0
- data/ext/csymv.c +111 -0
- data/ext/csyr.c +91 -0
- data/ext/csyrfs.c +149 -0
- data/ext/csyrfsx.c +214 -0
- data/ext/csysv.c +125 -0
- data/ext/csysvx.c +179 -0
- data/ext/csysvxx.c +254 -0
- data/ext/csyswapr.c +78 -0
- data/ext/csytf2.c +81 -0
- data/ext/csytrf.c +93 -0
- data/ext/csytri.c +88 -0
- data/ext/csytri2.c +104 -0
- data/ext/csytri2x.c +92 -0
- data/ext/csytrs.c +99 -0
- data/ext/csytrs2.c +102 -0
- data/ext/ctbcon.c +82 -0
- data/ext/ctbrfs.c +123 -0
- data/ext/ctbtrs.c +99 -0
- data/ext/ctfsm.c +107 -0
- data/ext/ctftri.c +82 -0
- data/ext/ctfttp.c +75 -0
- data/ext/ctfttr.c +76 -0
- data/ext/ctgevc.c +152 -0
- data/ext/ctgex2.c +167 -0
- data/ext/ctgexc.c +168 -0
- data/ext/ctgsen.c +240 -0
- data/ext/ctgsja.c +223 -0
- data/ext/ctgsna.c +160 -0
- data/ext/ctgsy2.c +172 -0
- data/ext/ctgsyl.c +186 -0
- data/ext/ctpcon.c +78 -0
- data/ext/ctprfs.c +119 -0
- data/ext/ctptri.c +78 -0
- data/ext/ctptrs.c +97 -0
- data/ext/ctpttf.c +75 -0
- data/ext/ctpttr.c +72 -0
- data/ext/ctrcon.c +78 -0
- data/ext/ctrevc.c +150 -0
- data/ext/ctrexc.c +107 -0
- data/ext/ctrrfs.c +119 -0
- data/ext/ctrsen.c +150 -0
- data/ext/ctrsna.c +133 -0
- data/ext/ctrsyl.c +112 -0
- data/ext/ctrti2.c +77 -0
- data/ext/ctrtri.c +77 -0
- data/ext/ctrtrs.c +95 -0
- data/ext/ctrttf.c +73 -0
- data/ext/ctrttp.c +69 -0
- data/ext/ctzrqf.c +79 -0
- data/ext/ctzrzf.c +97 -0
- data/ext/cunbdb.c +228 -0
- data/ext/cuncsd.c +200 -0
- data/ext/cung2l.c +88 -0
- data/ext/cung2r.c +88 -0
- data/ext/cungbr.c +111 -0
- data/ext/cunghr.c +107 -0
- data/ext/cungl2.c +86 -0
- data/ext/cunglq.c +103 -0
- data/ext/cungql.c +103 -0
- data/ext/cungqr.c +103 -0
- data/ext/cungr2.c +86 -0
- data/ext/cungrq.c +103 -0
- data/ext/cungtr.c +103 -0
- data/ext/cunm2l.c +110 -0
- data/ext/cunm2r.c +110 -0
- data/ext/cunmbr.c +135 -0
- data/ext/cunmhr.c +129 -0
- data/ext/cunml2.c +106 -0
- data/ext/cunmlq.c +121 -0
- data/ext/cunmql.c +125 -0
- data/ext/cunmqr.c +125 -0
- data/ext/cunmr2.c +106 -0
- data/ext/cunmr3.c +110 -0
- data/ext/cunmrq.c +121 -0
- data/ext/cunmrz.c +125 -0
- data/ext/cunmtr.c +125 -0
- data/ext/cupgtr.c +87 -0
- data/ext/cupmtr.c +112 -0
- data/ext/dbbcsd.c +283 -0
- data/ext/dbdsdc.c +147 -0
- data/ext/dbdsqr.c +178 -0
- data/ext/ddisna.c +71 -0
- data/ext/dgbbrd.c +150 -0
- data/ext/dgbcon.c +94 -0
- data/ext/dgbequ.c +94 -0
- data/ext/dgbequb.c +92 -0
- data/ext/dgbrfs.c +157 -0
- data/ext/dgbrfsx.c +245 -0
- data/ext/dgbsv.c +111 -0
- data/ext/dgbsvx.c +282 -0
- data/ext/dgbsvxx.c +285 -0
- data/ext/dgbtf2.c +89 -0
- data/ext/dgbtrf.c +89 -0
- data/ext/dgbtrs.c +107 -0
- data/ext/dgebak.c +97 -0
- data/ext/dgebal.c +87 -0
- data/ext/dgebd2.c +108 -0
- data/ext/dgebrd.c +123 -0
- data/ext/dgecon.c +74 -0
- data/ext/dgeequ.c +84 -0
- data/ext/dgeequb.c +84 -0
- data/ext/dgees.c +144 -0
- data/ext/dgeesx.c +166 -0
- data/ext/dgeev.c +133 -0
- data/ext/dgeevx.c +177 -0
- data/ext/dgegs.c +167 -0
- data/ext/dgegv.c +167 -0
- data/ext/dgehd2.c +88 -0
- data/ext/dgehrd.c +103 -0
- data/ext/dgejsv.c +155 -0
- data/ext/dgelq2.c +82 -0
- data/ext/dgelqf.c +99 -0
- data/ext/dgels.c +133 -0
- data/ext/dgelsd.c +145 -0
- data/ext/dgelss.c +144 -0
- data/ext/dgelsx.c +132 -0
- data/ext/dgelsy.c +159 -0
- data/ext/dgeql2.c +84 -0
- data/ext/dgeqlf.c +99 -0
- data/ext/dgeqp3.c +122 -0
- data/ext/dgeqpf.c +107 -0
- data/ext/dgeqr2.c +84 -0
- data/ext/dgeqr2p.c +84 -0
- data/ext/dgeqrf.c +99 -0
- data/ext/dgeqrfp.c +99 -0
- data/ext/dgerfs.c +149 -0
- data/ext/dgerfsx.c +215 -0
- data/ext/dgerq2.c +82 -0
- data/ext/dgerqf.c +99 -0
- data/ext/dgesc2.c +104 -0
- data/ext/dgesdd.c +128 -0
- data/ext/dgesv.c +103 -0
- data/ext/dgesvd.c +139 -0
- data/ext/dgesvj.c +152 -0
- data/ext/dgesvx.c +274 -0
- data/ext/dgesvxx.c +277 -0
- data/ext/dgetc2.c +85 -0
- data/ext/dgetf2.c +81 -0
- data/ext/dgetrf.c +81 -0
- data/ext/dgetri.c +99 -0
- data/ext/dgetrs.c +99 -0
- data/ext/dggbak.c +109 -0
- data/ext/dggbal.c +124 -0
- data/ext/dgges.c +194 -0
- data/ext/dggesx.c +227 -0
- data/ext/dggev.c +167 -0
- data/ext/dggevx.c +225 -0
- data/ext/dggglm.c +152 -0
- data/ext/dgghrd.c +163 -0
- data/ext/dgglse.c +167 -0
- data/ext/dggqrf.c +133 -0
- data/ext/dggrqf.c +137 -0
- data/ext/dggsvd.c +177 -0
- data/ext/dggsvp.c +167 -0
- data/ext/dgsvj0.c +178 -0
- data/ext/dgsvj1.c +182 -0
- data/ext/dgtcon.c +120 -0
- data/ext/dgtrfs.c +205 -0
- data/ext/dgtsv.c +138 -0
- data/ext/dgtsvx.c +252 -0
- data/ext/dgttrf.c +128 -0
- data/ext/dgttrs.c +133 -0
- data/ext/dgtts2.c +130 -0
- data/ext/dhgeqz.c +209 -0
- data/ext/dhsein.c +201 -0
- data/ext/dhseqr.c +149 -0
- data/ext/disnan.c +47 -0
- data/ext/dla_gbamv.c +125 -0
- data/ext/dla_gbrcond.c +138 -0
- data/ext/dla_gbrfsx_extended.c +289 -0
- data/ext/dla_gbrpvgrw.c +83 -0
- data/ext/dla_geamv.c +115 -0
- data/ext/dla_gercond.c +130 -0
- data/ext/dla_gerfsx_extended.c +277 -0
- data/ext/dla_lin_berr.c +80 -0
- data/ext/dla_porcond.c +118 -0
- data/ext/dla_porfsx_extended.c +267 -0
- data/ext/dla_porpvgrw.c +91 -0
- data/ext/dla_rpvgrw.c +75 -0
- data/ext/dla_syamv.c +109 -0
- data/ext/dla_syrcond.c +130 -0
- data/ext/dla_syrfsx_extended.c +279 -0
- data/ext/dla_syrpvgrw.c +103 -0
- data/ext/dla_wwaddw.c +98 -0
- data/ext/dlabad.c +50 -0
- data/ext/dlabrd.c +128 -0
- data/ext/dlacn2.c +102 -0
- data/ext/dlacon.c +79 -0
- data/ext/dlacpy.c +73 -0
- data/ext/dladiv.c +62 -0
- data/ext/dlae2.c +58 -0
- data/ext/dlaebz.c +214 -0
- data/ext/dlaed0.c +123 -0
- data/ext/dlaed1.c +129 -0
- data/ext/dlaed2.c +185 -0
- data/ext/dlaed3.c +157 -0
- data/ext/dlaed4.c +86 -0
- data/ext/dlaed5.c +83 -0
- data/ext/dlaed6.c +86 -0
- data/ext/dlaed7.c +244 -0
- data/ext/dlaed8.c +202 -0
- data/ext/dlaed9.c +107 -0
- data/ext/dlaeda.c +156 -0
- data/ext/dlaein.c +139 -0
- data/ext/dlaev2.c +64 -0
- data/ext/dlaexc.c +114 -0
- data/ext/dlag2.c +87 -0
- data/ext/dlag2s.c +72 -0
- data/ext/dlags2.c +86 -0
- data/ext/dlagtf.c +136 -0
- data/ext/dlagtm.c +128 -0
- data/ext/dlagts.c +135 -0
- data/ext/dlagv2.c +128 -0
- data/ext/dlahqr.c +139 -0
- data/ext/dlahr2.c +108 -0
- data/ext/dlahrd.c +108 -0
- data/ext/dlaic1.c +85 -0
- data/ext/dlaln2.c +116 -0
- data/ext/dlals0.c +197 -0
- data/ext/dlalsa.c +266 -0
- data/ext/dlalsd.c +138 -0
- data/ext/dlamrg.c +76 -0
- data/ext/dlaneg.c +79 -0
- data/ext/dlangb.c +74 -0
- data/ext/dlange.c +70 -0
- data/ext/dlangt.c +83 -0
- data/ext/dlanhs.c +66 -0
- data/ext/dlansb.c +74 -0
- data/ext/dlansf.c +76 -0
- data/ext/dlansp.c +72 -0
- data/ext/dlanst.c +71 -0
- data/ext/dlansy.c +70 -0
- data/ext/dlantb.c +78 -0
- data/ext/dlantp.c +76 -0
- data/ext/dlantr.c +78 -0
- data/ext/dlanv2.c +78 -0
- data/ext/dlapll.c +101 -0
- data/ext/dlapmr.c +93 -0
- data/ext/dlapmt.c +97 -0
- data/ext/dlapy2.c +51 -0
- data/ext/dlapy3.c +55 -0
- data/ext/dlaqgb.c +113 -0
- data/ext/dlaqge.c +105 -0
- data/ext/dlaqp2.c +154 -0
- data/ext/dlaqps.c +204 -0
- data/ext/dlaqr0.c +149 -0
- data/ext/dlaqr1.c +78 -0
- data/ext/dlaqr2.c +178 -0
- data/ext/dlaqr3.c +178 -0
- data/ext/dlaqr4.c +149 -0
- data/ext/dlaqr5.c +196 -0
- data/ext/dlaqsb.c +97 -0
- data/ext/dlaqsp.c +90 -0
- data/ext/dlaqsy.c +93 -0
- data/ext/dlaqtr.c +110 -0
- data/ext/dlar1v.c +169 -0
- data/ext/dlar2v.c +145 -0
- data/ext/dlarf.c +97 -0
- data/ext/dlarfb.c +119 -0
- data/ext/dlarfg.c +79 -0
- data/ext/dlarfgp.c +79 -0
- data/ext/dlarft.c +101 -0
- data/ext/dlarfx.c +89 -0
- data/ext/dlargv.c +110 -0
- data/ext/dlarnv.c +79 -0
- data/ext/dlarra.c +120 -0
- data/ext/dlarrb.c +174 -0
- data/ext/dlarrc.c +92 -0
- data/ext/dlarrd.c +186 -0
- data/ext/dlarre.c +217 -0
- data/ext/dlarrf.c +172 -0
- data/ext/dlarrj.c +143 -0
- data/ext/dlarrk.c +93 -0
- data/ext/dlarrr.c +78 -0
- data/ext/dlarrv.c +267 -0
- data/ext/dlarscl2.c +78 -0
- data/ext/dlartg.c +57 -0
- data/ext/dlartgp.c +57 -0
- data/ext/dlartgs.c +58 -0
- data/ext/dlartv.c +126 -0
- data/ext/dlaruv.c +75 -0
- data/ext/dlarz.c +101 -0
- data/ext/dlarzb.c +123 -0
- data/ext/dlarzt.c +101 -0
- data/ext/dlas2.c +58 -0
- data/ext/dlascl.c +93 -0
- data/ext/dlascl2.c +78 -0
- data/ext/dlasd0.c +116 -0
- data/ext/dlasd1.c +158 -0
- data/ext/dlasd2.c +224 -0
- data/ext/dlasd3.c +198 -0
- data/ext/dlasd4.c +89 -0
- data/ext/dlasd5.c +86 -0
- data/ext/dlasd6.c +232 -0
- data/ext/dlasd7.c +221 -0
- data/ext/dlasd8.c +169 -0
- data/ext/dlasda.c +217 -0
- data/ext/dlasdq.c +182 -0
- data/ext/dlasdt.c +78 -0
- data/ext/dlaset.c +82 -0
- data/ext/dlasq1.c +92 -0
- data/ext/dlasq2.c +70 -0
- data/ext/dlasq3.c +134 -0
- data/ext/dlasq4.c +103 -0
- data/ext/dlasq5.c +90 -0
- data/ext/dlasq6.c +82 -0
- data/ext/dlasr.c +106 -0
- data/ext/dlasrt.c +70 -0
- data/ext/dlassq.c +66 -0
- data/ext/dlasv2.c +70 -0
- data/ext/dlaswp.c +90 -0
- data/ext/dlasy2.c +122 -0
- data/ext/dlasyf.c +93 -0
- data/ext/dlat2s.c +72 -0
- data/ext/dlatbs.c +126 -0
- data/ext/dlatdf.c +115 -0
- data/ext/dlatps.c +120 -0
- data/ext/dlatrd.c +101 -0
- data/ext/dlatrs.c +122 -0
- data/ext/dlatrz.c +83 -0
- data/ext/dlatzm.c +127 -0
- data/ext/dlauu2.c +73 -0
- data/ext/dlauum.c +73 -0
- data/ext/dopgtr.c +87 -0
- data/ext/dopmtr.c +112 -0
- data/ext/dorbdb.c +228 -0
- data/ext/dorcsd.c +193 -0
- data/ext/dorg2l.c +88 -0
- data/ext/dorg2r.c +88 -0
- data/ext/dorgbr.c +111 -0
- data/ext/dorghr.c +107 -0
- data/ext/dorgl2.c +86 -0
- data/ext/dorglq.c +103 -0
- data/ext/dorgql.c +103 -0
- data/ext/dorgqr.c +103 -0
- data/ext/dorgr2.c +86 -0
- data/ext/dorgrq.c +103 -0
- data/ext/dorgtr.c +103 -0
- data/ext/dorm2l.c +110 -0
- data/ext/dorm2r.c +110 -0
- data/ext/dormbr.c +135 -0
- data/ext/dormhr.c +129 -0
- data/ext/dorml2.c +106 -0
- data/ext/dormlq.c +121 -0
- data/ext/dormql.c +125 -0
- data/ext/dormqr.c +125 -0
- data/ext/dormr2.c +106 -0
- data/ext/dormr3.c +110 -0
- data/ext/dormrq.c +121 -0
- data/ext/dormrz.c +125 -0
- data/ext/dormtr.c +125 -0
- data/ext/dpbcon.c +78 -0
- data/ext/dpbequ.c +79 -0
- data/ext/dpbrfs.c +141 -0
- data/ext/dpbstf.c +77 -0
- data/ext/dpbsv.c +103 -0
- data/ext/dpbsvx.c +197 -0
- data/ext/dpbtf2.c +77 -0
- data/ext/dpbtrf.c +77 -0
- data/ext/dpbtrs.c +91 -0
- data/ext/dpftrf.c +78 -0
- data/ext/dpftri.c +78 -0
- data/ext/dpftrs.c +93 -0
- data/ext/dpocon.c +74 -0
- data/ext/dpoequ.c +71 -0
- data/ext/dpoequb.c +71 -0
- data/ext/dporfs.c +137 -0
- data/ext/dporfsx.c +202 -0
- data/ext/dposv.c +99 -0
- data/ext/dposvx.c +193 -0
- data/ext/dposvxx.c +231 -0
- data/ext/dpotf2.c +73 -0
- data/ext/dpotrf.c +73 -0
- data/ext/dpotri.c +73 -0
- data/ext/dpotrs.c +87 -0
- data/ext/dppcon.c +74 -0
- data/ext/dppequ.c +75 -0
- data/ext/dpprfs.c +135 -0
- data/ext/dppsv.c +100 -0
- data/ext/dppsvx.c +187 -0
- data/ext/dpptrf.c +74 -0
- data/ext/dpptri.c +74 -0
- data/ext/dpptrs.c +89 -0
- data/ext/dpstf2.c +91 -0
- data/ext/dpstrf.c +91 -0
- data/ext/dptcon.c +77 -0
- data/ext/dpteqr.c +122 -0
- data/ext/dptrfs.c +150 -0
- data/ext/dptsv.c +115 -0
- data/ext/dptsvx.c +164 -0
- data/ext/dpttrf.c +89 -0
- data/ext/dpttrs.c +93 -0
- data/ext/dptts2.c +90 -0
- data/ext/drscl.c +75 -0
- data/ext/dsbev.c +103 -0
- data/ext/dsbevd.c +136 -0
- data/ext/dsbevx.c +153 -0
- data/ext/dsbgst.c +113 -0
- data/ext/dsbgv.c +133 -0
- data/ext/dsbgvd.c +166 -0
- data/ext/dsbgvx.c +193 -0
- data/ext/dsbtrd.c +126 -0
- data/ext/dsfrk.c +105 -0
- data/ext/dsgesv.c +111 -0
- data/ext/dspcon.c +84 -0
- data/ext/dspev.c +98 -0
- data/ext/dspevd.c +131 -0
- data/ext/dspevx.c +137 -0
- data/ext/dspgst.c +90 -0
- data/ext/dspgv.c +125 -0
- data/ext/dspgvd.c +158 -0
- data/ext/dspgvx.c +164 -0
- data/ext/dsposv.c +107 -0
- data/ext/dsprfs.c +145 -0
- data/ext/dspsv.c +106 -0
- data/ext/dspsvx.c +159 -0
- data/ext/dsptrd.c +96 -0
- data/ext/dsptrf.c +80 -0
- data/ext/dsptri.c +85 -0
- data/ext/dsptrs.c +97 -0
- data/ext/dstebz.c +131 -0
- data/ext/dstedc.c +155 -0
- data/ext/dstegr.c +184 -0
- data/ext/dstein.c +130 -0
- data/ext/dstemr.c +189 -0
- data/ext/dsteqr.c +122 -0
- data/ext/dsterf.c +89 -0
- data/ext/dstev.c +107 -0
- data/ext/dstevd.c +140 -0
- data/ext/dstevr.c +184 -0
- data/ext/dstevx.c +154 -0
- data/ext/dsycon.c +86 -0
- data/ext/dsyconv.c +80 -0
- data/ext/dsyequb.c +78 -0
- data/ext/dsyev.c +103 -0
- data/ext/dsyevd.c +121 -0
- data/ext/dsyevr.c +168 -0
- data/ext/dsyevx.c +153 -0
- data/ext/dsygs2.c +91 -0
- data/ext/dsygst.c +91 -0
- data/ext/dsygv.c +133 -0
- data/ext/dsygvd.c +151 -0
- data/ext/dsygvx.c +183 -0
- data/ext/dsyrfs.c +149 -0
- data/ext/dsyrfsx.c +214 -0
- data/ext/dsysv.c +125 -0
- data/ext/dsysvx.c +179 -0
- data/ext/dsysvxx.c +254 -0
- data/ext/dsyswapr.c +78 -0
- data/ext/dsytd2.c +97 -0
- data/ext/dsytf2.c +81 -0
- data/ext/dsytrd.c +109 -0
- data/ext/dsytrf.c +93 -0
- data/ext/dsytri.c +88 -0
- data/ext/dsytri2.c +104 -0
- data/ext/dsytri2x.c +92 -0
- data/ext/dsytrs.c +99 -0
- data/ext/dsytrs2.c +102 -0
- data/ext/dtbcon.c +82 -0
- data/ext/dtbrfs.c +123 -0
- data/ext/dtbtrs.c +99 -0
- data/ext/dtfsm.c +106 -0
- data/ext/dtftri.c +82 -0
- data/ext/dtfttp.c +75 -0
- data/ext/dtfttr.c +76 -0
- data/ext/dtgevc.c +149 -0
- data/ext/dtgex2.c +176 -0
- data/ext/dtgexc.c +183 -0
- data/ext/dtgsen.c +248 -0
- data/ext/dtgsja.c +223 -0
- data/ext/dtgsna.c +160 -0
- data/ext/dtgsy2.c +178 -0
- data/ext/dtgsyl.c +186 -0
- data/ext/dtpcon.c +78 -0
- data/ext/dtprfs.c +119 -0
- data/ext/dtptri.c +78 -0
- data/ext/dtptrs.c +97 -0
- data/ext/dtpttf.c +75 -0
- data/ext/dtpttr.c +72 -0
- data/ext/dtrcon.c +78 -0
- data/ext/dtrevc.c +146 -0
- data/ext/dtrexc.c +112 -0
- data/ext/dtrrfs.c +119 -0
- data/ext/dtrsen.c +165 -0
- data/ext/dtrsna.c +133 -0
- data/ext/dtrsyl.c +112 -0
- data/ext/dtrti2.c +77 -0
- data/ext/dtrtri.c +77 -0
- data/ext/dtrtrs.c +95 -0
- data/ext/dtrttf.c +73 -0
- data/ext/dtrttp.c +69 -0
- data/ext/dtzrqf.c +79 -0
- data/ext/dtzrzf.c +97 -0
- data/ext/dzsum1.c +59 -0
- data/ext/extconf.rb +136 -0
- data/ext/f2c_minimal.h +36 -0
- data/ext/icmax1.c +59 -0
- data/ext/ieeeck.c +55 -0
- data/ext/ilaclc.c +61 -0
- data/ext/ilaclr.c +61 -0
- data/ext/iladiag.c +47 -0
- data/ext/iladlc.c +61 -0
- data/ext/iladlr.c +61 -0
- data/ext/ilaenv.c +71 -0
- data/ext/ilaprec.c +47 -0
- data/ext/ilaslc.c +61 -0
- data/ext/ilaslr.c +61 -0
- data/ext/ilatrans.c +47 -0
- data/ext/ilauplo.c +47 -0
- data/ext/ilaver.c +49 -0
- data/ext/ilazlc.c +61 -0
- data/ext/ilazlr.c +61 -0
- data/ext/iparmq.c +71 -0
- data/ext/izmax1.c +59 -0
- data/ext/lsamen.c +55 -0
- data/ext/rb_lapack.c +3279 -0
- data/ext/rb_lapack.h +18 -0
- data/ext/sbbcsd.c +283 -0
- data/ext/sbdsdc.c +153 -0
- data/ext/sbdsqr.c +178 -0
- data/ext/scsum1.c +59 -0
- data/ext/sdisna.c +71 -0
- data/ext/sgbbrd.c +150 -0
- data/ext/sgbcon.c +94 -0
- data/ext/sgbequ.c +94 -0
- data/ext/sgbequb.c +92 -0
- data/ext/sgbrfs.c +157 -0
- data/ext/sgbrfsx.c +245 -0
- data/ext/sgbsv.c +111 -0
- data/ext/sgbsvx.c +282 -0
- data/ext/sgbsvxx.c +285 -0
- data/ext/sgbtf2.c +89 -0
- data/ext/sgbtrf.c +89 -0
- data/ext/sgbtrs.c +107 -0
- data/ext/sgebak.c +97 -0
- data/ext/sgebal.c +87 -0
- data/ext/sgebd2.c +108 -0
- data/ext/sgebrd.c +123 -0
- data/ext/sgecon.c +74 -0
- data/ext/sgeequ.c +84 -0
- data/ext/sgeequb.c +84 -0
- data/ext/sgees.c +144 -0
- data/ext/sgeesx.c +166 -0
- data/ext/sgeev.c +133 -0
- data/ext/sgeevx.c +177 -0
- data/ext/sgegs.c +167 -0
- data/ext/sgegv.c +167 -0
- data/ext/sgehd2.c +88 -0
- data/ext/sgehrd.c +103 -0
- data/ext/sgejsv.c +155 -0
- data/ext/sgelq2.c +82 -0
- data/ext/sgelqf.c +99 -0
- data/ext/sgels.c +133 -0
- data/ext/sgelsd.c +145 -0
- data/ext/sgelss.c +144 -0
- data/ext/sgelsx.c +132 -0
- data/ext/sgelsy.c +159 -0
- data/ext/sgeql2.c +84 -0
- data/ext/sgeqlf.c +99 -0
- data/ext/sgeqp3.c +122 -0
- data/ext/sgeqpf.c +107 -0
- data/ext/sgeqr2.c +84 -0
- data/ext/sgeqr2p.c +84 -0
- data/ext/sgeqrf.c +99 -0
- data/ext/sgeqrfp.c +99 -0
- data/ext/sgerfs.c +149 -0
- data/ext/sgerfsx.c +215 -0
- data/ext/sgerq2.c +82 -0
- data/ext/sgerqf.c +99 -0
- data/ext/sgesc2.c +104 -0
- data/ext/sgesdd.c +128 -0
- data/ext/sgesv.c +103 -0
- data/ext/sgesvd.c +139 -0
- data/ext/sgesvj.c +152 -0
- data/ext/sgesvx.c +274 -0
- data/ext/sgesvxx.c +277 -0
- data/ext/sgetc2.c +85 -0
- data/ext/sgetf2.c +81 -0
- data/ext/sgetrf.c +81 -0
- data/ext/sgetri.c +99 -0
- data/ext/sgetrs.c +99 -0
- data/ext/sggbak.c +109 -0
- data/ext/sggbal.c +124 -0
- data/ext/sgges.c +194 -0
- data/ext/sggesx.c +227 -0
- data/ext/sggev.c +167 -0
- data/ext/sggevx.c +225 -0
- data/ext/sggglm.c +152 -0
- data/ext/sgghrd.c +163 -0
- data/ext/sgglse.c +167 -0
- data/ext/sggqrf.c +133 -0
- data/ext/sggrqf.c +137 -0
- data/ext/sggsvd.c +177 -0
- data/ext/sggsvp.c +167 -0
- data/ext/sgsvj0.c +178 -0
- data/ext/sgsvj1.c +182 -0
- data/ext/sgtcon.c +120 -0
- data/ext/sgtrfs.c +205 -0
- data/ext/sgtsv.c +138 -0
- data/ext/sgtsvx.c +252 -0
- data/ext/sgttrf.c +128 -0
- data/ext/sgttrs.c +133 -0
- data/ext/sgtts2.c +130 -0
- data/ext/shgeqz.c +209 -0
- data/ext/shsein.c +201 -0
- data/ext/shseqr.c +149 -0
- data/ext/sisnan.c +47 -0
- data/ext/sla_gbamv.c +125 -0
- data/ext/sla_gbrcond.c +138 -0
- data/ext/sla_gbrfsx_extended.c +287 -0
- data/ext/sla_gbrpvgrw.c +83 -0
- data/ext/sla_geamv.c +115 -0
- data/ext/sla_gercond.c +130 -0
- data/ext/sla_gerfsx_extended.c +279 -0
- data/ext/sla_lin_berr.c +80 -0
- data/ext/sla_porcond.c +118 -0
- data/ext/sla_porfsx_extended.c +267 -0
- data/ext/sla_porpvgrw.c +91 -0
- data/ext/sla_rpvgrw.c +75 -0
- data/ext/sla_syamv.c +112 -0
- data/ext/sla_syrcond.c +130 -0
- data/ext/sla_syrfsx_extended.c +279 -0
- data/ext/sla_syrpvgrw.c +103 -0
- data/ext/sla_wwaddw.c +98 -0
- data/ext/slabad.c +50 -0
- data/ext/slabrd.c +128 -0
- data/ext/slacn2.c +102 -0
- data/ext/slacon.c +79 -0
- data/ext/slacpy.c +73 -0
- data/ext/sladiv.c +62 -0
- data/ext/slae2.c +58 -0
- data/ext/slaebz.c +214 -0
- data/ext/slaed0.c +123 -0
- data/ext/slaed1.c +129 -0
- data/ext/slaed2.c +185 -0
- data/ext/slaed3.c +157 -0
- data/ext/slaed4.c +86 -0
- data/ext/slaed5.c +83 -0
- data/ext/slaed6.c +86 -0
- data/ext/slaed7.c +244 -0
- data/ext/slaed8.c +202 -0
- data/ext/slaed9.c +107 -0
- data/ext/slaeda.c +156 -0
- data/ext/slaein.c +139 -0
- data/ext/slaev2.c +64 -0
- data/ext/slaexc.c +114 -0
- data/ext/slag2.c +87 -0
- data/ext/slag2d.c +72 -0
- data/ext/slags2.c +86 -0
- data/ext/slagtf.c +136 -0
- data/ext/slagtm.c +128 -0
- data/ext/slagts.c +135 -0
- data/ext/slagv2.c +128 -0
- data/ext/slahqr.c +139 -0
- data/ext/slahr2.c +108 -0
- data/ext/slahrd.c +110 -0
- data/ext/slaic1.c +85 -0
- data/ext/slaln2.c +116 -0
- data/ext/slals0.c +197 -0
- data/ext/slalsa.c +266 -0
- data/ext/slalsd.c +138 -0
- data/ext/slamrg.c +76 -0
- data/ext/slaneg.c +79 -0
- data/ext/slangb.c +74 -0
- data/ext/slange.c +70 -0
- data/ext/slangt.c +83 -0
- data/ext/slanhs.c +66 -0
- data/ext/slansb.c +74 -0
- data/ext/slansf.c +74 -0
- data/ext/slansp.c +72 -0
- data/ext/slanst.c +71 -0
- data/ext/slansy.c +70 -0
- data/ext/slantb.c +78 -0
- data/ext/slantp.c +76 -0
- data/ext/slantr.c +78 -0
- data/ext/slanv2.c +78 -0
- data/ext/slapll.c +101 -0
- data/ext/slapmr.c +93 -0
- data/ext/slapmt.c +97 -0
- data/ext/slapy2.c +51 -0
- data/ext/slapy3.c +55 -0
- data/ext/slaqgb.c +113 -0
- data/ext/slaqge.c +105 -0
- data/ext/slaqp2.c +154 -0
- data/ext/slaqps.c +204 -0
- data/ext/slaqr0.c +149 -0
- data/ext/slaqr1.c +78 -0
- data/ext/slaqr2.c +178 -0
- data/ext/slaqr3.c +178 -0
- data/ext/slaqr4.c +149 -0
- data/ext/slaqr5.c +196 -0
- data/ext/slaqsb.c +97 -0
- data/ext/slaqsp.c +90 -0
- data/ext/slaqsy.c +93 -0
- data/ext/slaqtr.c +110 -0
- data/ext/slar1v.c +169 -0
- data/ext/slar2v.c +145 -0
- data/ext/slarf.c +97 -0
- data/ext/slarfb.c +119 -0
- data/ext/slarfg.c +79 -0
- data/ext/slarfgp.c +79 -0
- data/ext/slarft.c +101 -0
- data/ext/slarfx.c +89 -0
- data/ext/slargv.c +110 -0
- data/ext/slarnv.c +79 -0
- data/ext/slarra.c +120 -0
- data/ext/slarrb.c +174 -0
- data/ext/slarrc.c +92 -0
- data/ext/slarrd.c +186 -0
- data/ext/slarre.c +217 -0
- data/ext/slarrf.c +172 -0
- data/ext/slarrj.c +143 -0
- data/ext/slarrk.c +93 -0
- data/ext/slarrr.c +78 -0
- data/ext/slarrv.c +267 -0
- data/ext/slarscl2.c +78 -0
- data/ext/slartg.c +57 -0
- data/ext/slartgp.c +57 -0
- data/ext/slartgs.c +58 -0
- data/ext/slartv.c +126 -0
- data/ext/slaruv.c +75 -0
- data/ext/slarz.c +101 -0
- data/ext/slarzb.c +123 -0
- data/ext/slarzt.c +101 -0
- data/ext/slas2.c +58 -0
- data/ext/slascl.c +93 -0
- data/ext/slascl2.c +78 -0
- data/ext/slasd0.c +116 -0
- data/ext/slasd1.c +156 -0
- data/ext/slasd2.c +224 -0
- data/ext/slasd3.c +208 -0
- data/ext/slasd4.c +89 -0
- data/ext/slasd5.c +86 -0
- data/ext/slasd6.c +232 -0
- data/ext/slasd7.c +221 -0
- data/ext/slasd8.c +169 -0
- data/ext/slasda.c +217 -0
- data/ext/slasdq.c +182 -0
- data/ext/slasdt.c +78 -0
- data/ext/slaset.c +82 -0
- data/ext/slasq1.c +92 -0
- data/ext/slasq2.c +70 -0
- data/ext/slasq3.c +134 -0
- data/ext/slasq4.c +103 -0
- data/ext/slasq5.c +90 -0
- data/ext/slasq6.c +82 -0
- data/ext/slasr.c +106 -0
- data/ext/slasrt.c +70 -0
- data/ext/slassq.c +66 -0
- data/ext/slasv2.c +70 -0
- data/ext/slaswp.c +90 -0
- data/ext/slasy2.c +122 -0
- data/ext/slasyf.c +93 -0
- data/ext/slatbs.c +126 -0
- data/ext/slatdf.c +115 -0
- data/ext/slatps.c +120 -0
- data/ext/slatrd.c +101 -0
- data/ext/slatrs.c +122 -0
- data/ext/slatrz.c +83 -0
- data/ext/slatzm.c +127 -0
- data/ext/slauu2.c +73 -0
- data/ext/slauum.c +73 -0
- data/ext/sopgtr.c +87 -0
- data/ext/sopmtr.c +112 -0
- data/ext/sorbdb.c +228 -0
- data/ext/sorcsd.c +193 -0
- data/ext/sorg2l.c +88 -0
- data/ext/sorg2r.c +88 -0
- data/ext/sorgbr.c +111 -0
- data/ext/sorghr.c +107 -0
- data/ext/sorgl2.c +86 -0
- data/ext/sorglq.c +103 -0
- data/ext/sorgql.c +103 -0
- data/ext/sorgqr.c +103 -0
- data/ext/sorgr2.c +86 -0
- data/ext/sorgrq.c +103 -0
- data/ext/sorgtr.c +103 -0
- data/ext/sorm2l.c +110 -0
- data/ext/sorm2r.c +110 -0
- data/ext/sormbr.c +135 -0
- data/ext/sormhr.c +129 -0
- data/ext/sorml2.c +106 -0
- data/ext/sormlq.c +121 -0
- data/ext/sormql.c +125 -0
- data/ext/sormqr.c +125 -0
- data/ext/sormr2.c +106 -0
- data/ext/sormr3.c +110 -0
- data/ext/sormrq.c +121 -0
- data/ext/sormrz.c +125 -0
- data/ext/sormtr.c +125 -0
- data/ext/spbcon.c +78 -0
- data/ext/spbequ.c +79 -0
- data/ext/spbrfs.c +141 -0
- data/ext/spbstf.c +77 -0
- data/ext/spbsv.c +103 -0
- data/ext/spbsvx.c +197 -0
- data/ext/spbtf2.c +77 -0
- data/ext/spbtrf.c +77 -0
- data/ext/spbtrs.c +91 -0
- data/ext/spftrf.c +78 -0
- data/ext/spftri.c +78 -0
- data/ext/spftrs.c +93 -0
- data/ext/spocon.c +74 -0
- data/ext/spoequ.c +71 -0
- data/ext/spoequb.c +71 -0
- data/ext/sporfs.c +137 -0
- data/ext/sporfsx.c +202 -0
- data/ext/sposv.c +99 -0
- data/ext/sposvx.c +193 -0
- data/ext/sposvxx.c +231 -0
- data/ext/spotf2.c +73 -0
- data/ext/spotrf.c +73 -0
- data/ext/spotri.c +73 -0
- data/ext/spotrs.c +87 -0
- data/ext/sppcon.c +74 -0
- data/ext/sppequ.c +75 -0
- data/ext/spprfs.c +135 -0
- data/ext/sppsv.c +100 -0
- data/ext/sppsvx.c +187 -0
- data/ext/spptrf.c +74 -0
- data/ext/spptri.c +74 -0
- data/ext/spptrs.c +89 -0
- data/ext/spstf2.c +91 -0
- data/ext/spstrf.c +91 -0
- data/ext/sptcon.c +77 -0
- data/ext/spteqr.c +122 -0
- data/ext/sptrfs.c +150 -0
- data/ext/sptsv.c +115 -0
- data/ext/sptsvx.c +164 -0
- data/ext/spttrf.c +89 -0
- data/ext/spttrs.c +93 -0
- data/ext/sptts2.c +90 -0
- data/ext/srscl.c +75 -0
- data/ext/ssbev.c +103 -0
- data/ext/ssbevd.c +136 -0
- data/ext/ssbevx.c +153 -0
- data/ext/ssbgst.c +113 -0
- data/ext/ssbgv.c +133 -0
- data/ext/ssbgvd.c +166 -0
- data/ext/ssbgvx.c +193 -0
- data/ext/ssbtrd.c +126 -0
- data/ext/ssfrk.c +105 -0
- data/ext/sspcon.c +84 -0
- data/ext/sspev.c +98 -0
- data/ext/sspevd.c +131 -0
- data/ext/sspevx.c +137 -0
- data/ext/sspgst.c +90 -0
- data/ext/sspgv.c +125 -0
- data/ext/sspgvd.c +158 -0
- data/ext/sspgvx.c +164 -0
- data/ext/ssprfs.c +145 -0
- data/ext/sspsv.c +106 -0
- data/ext/sspsvx.c +159 -0
- data/ext/ssptrd.c +96 -0
- data/ext/ssptrf.c +80 -0
- data/ext/ssptri.c +85 -0
- data/ext/ssptrs.c +97 -0
- data/ext/sstebz.c +131 -0
- data/ext/sstedc.c +155 -0
- data/ext/sstegr.c +184 -0
- data/ext/sstein.c +130 -0
- data/ext/sstemr.c +189 -0
- data/ext/ssteqr.c +122 -0
- data/ext/ssterf.c +89 -0
- data/ext/sstev.c +107 -0
- data/ext/sstevd.c +140 -0
- data/ext/sstevr.c +184 -0
- data/ext/sstevx.c +154 -0
- data/ext/ssycon.c +86 -0
- data/ext/ssyconv.c +80 -0
- data/ext/ssyequb.c +78 -0
- data/ext/ssyev.c +103 -0
- data/ext/ssyevd.c +121 -0
- data/ext/ssyevr.c +168 -0
- data/ext/ssyevx.c +153 -0
- data/ext/ssygs2.c +91 -0
- data/ext/ssygst.c +91 -0
- data/ext/ssygv.c +133 -0
- data/ext/ssygvd.c +151 -0
- data/ext/ssygvx.c +187 -0
- data/ext/ssyrfs.c +149 -0
- data/ext/ssyrfsx.c +214 -0
- data/ext/ssysv.c +125 -0
- data/ext/ssysvx.c +179 -0
- data/ext/ssysvxx.c +254 -0
- data/ext/ssyswapr.c +78 -0
- data/ext/ssytd2.c +97 -0
- data/ext/ssytf2.c +81 -0
- data/ext/ssytrd.c +109 -0
- data/ext/ssytrf.c +93 -0
- data/ext/ssytri.c +88 -0
- data/ext/ssytri2.c +123 -0
- data/ext/ssytri2x.c +92 -0
- data/ext/ssytrs.c +99 -0
- data/ext/ssytrs2.c +102 -0
- data/ext/stbcon.c +82 -0
- data/ext/stbrfs.c +123 -0
- data/ext/stbtrs.c +99 -0
- data/ext/stfsm.c +108 -0
- data/ext/stftri.c +82 -0
- data/ext/stfttp.c +75 -0
- data/ext/stfttr.c +76 -0
- data/ext/stgevc.c +149 -0
- data/ext/stgex2.c +180 -0
- data/ext/stgexc.c +187 -0
- data/ext/stgsen.c +248 -0
- data/ext/stgsja.c +223 -0
- data/ext/stgsna.c +160 -0
- data/ext/stgsy2.c +178 -0
- data/ext/stgsyl.c +186 -0
- data/ext/stpcon.c +78 -0
- data/ext/stprfs.c +119 -0
- data/ext/stptri.c +78 -0
- data/ext/stptrs.c +97 -0
- data/ext/stpttf.c +75 -0
- data/ext/stpttr.c +72 -0
- data/ext/strcon.c +78 -0
- data/ext/strevc.c +146 -0
- data/ext/strexc.c +112 -0
- data/ext/strrfs.c +119 -0
- data/ext/strsen.c +165 -0
- data/ext/strsna.c +133 -0
- data/ext/strsyl.c +112 -0
- data/ext/strti2.c +77 -0
- data/ext/strtri.c +77 -0
- data/ext/strtrs.c +95 -0
- data/ext/strttf.c +73 -0
- data/ext/strttp.c +69 -0
- data/ext/stzrqf.c +79 -0
- data/ext/stzrzf.c +97 -0
- data/ext/xerbla.c +48 -0
- data/ext/xerbla_array.c +49 -0
- data/ext/zbbcsd.c +279 -0
- data/ext/zbdsqr.c +178 -0
- data/ext/zcgesv.c +114 -0
- data/ext/zcposv.c +110 -0
- data/ext/zdrscl.c +75 -0
- data/ext/zgbbrd.c +153 -0
- data/ext/zgbcon.c +94 -0
- data/ext/zgbequ.c +94 -0
- data/ext/zgbequb.c +92 -0
- data/ext/zgbrfs.c +157 -0
- data/ext/zgbrfsx.c +245 -0
- data/ext/zgbsv.c +111 -0
- data/ext/zgbsvx.c +282 -0
- data/ext/zgbsvxx.c +285 -0
- data/ext/zgbtf2.c +89 -0
- data/ext/zgbtrf.c +89 -0
- data/ext/zgbtrs.c +107 -0
- data/ext/zgebak.c +97 -0
- data/ext/zgebal.c +87 -0
- data/ext/zgebd2.c +108 -0
- data/ext/zgebrd.c +123 -0
- data/ext/zgecon.c +74 -0
- data/ext/zgeequ.c +84 -0
- data/ext/zgeequb.c +84 -0
- data/ext/zgees.c +138 -0
- data/ext/zgeesx.c +148 -0
- data/ext/zgeev.c +128 -0
- data/ext/zgeevx.c +169 -0
- data/ext/zgegs.c +162 -0
- data/ext/zgegv.c +167 -0
- data/ext/zgehd2.c +88 -0
- data/ext/zgehrd.c +103 -0
- data/ext/zgelq2.c +82 -0
- data/ext/zgelqf.c +99 -0
- data/ext/zgels.c +133 -0
- data/ext/zgelsd.c +150 -0
- data/ext/zgelss.c +147 -0
- data/ext/zgelsx.c +135 -0
- data/ext/zgelsy.c +162 -0
- data/ext/zgeql2.c +84 -0
- data/ext/zgeqlf.c +99 -0
- data/ext/zgeqp3.c +125 -0
- data/ext/zgeqpf.c +110 -0
- data/ext/zgeqr2.c +84 -0
- data/ext/zgeqr2p.c +84 -0
- data/ext/zgeqrf.c +99 -0
- data/ext/zgeqrfp.c +99 -0
- data/ext/zgerfs.c +149 -0
- data/ext/zgerfsx.c +215 -0
- data/ext/zgerq2.c +82 -0
- data/ext/zgerqf.c +99 -0
- data/ext/zgesc2.c +104 -0
- data/ext/zgesdd.c +131 -0
- data/ext/zgesv.c +103 -0
- data/ext/zgesvd.c +142 -0
- data/ext/zgesvx.c +274 -0
- data/ext/zgesvxx.c +277 -0
- data/ext/zgetc2.c +85 -0
- data/ext/zgetf2.c +81 -0
- data/ext/zgetrf.c +81 -0
- data/ext/zgetri.c +99 -0
- data/ext/zgetrs.c +99 -0
- data/ext/zggbak.c +109 -0
- data/ext/zggbal.c +124 -0
- data/ext/zgges.c +188 -0
- data/ext/zggesx.c +226 -0
- data/ext/zggev.c +167 -0
- data/ext/zggevx.c +222 -0
- data/ext/zggglm.c +152 -0
- data/ext/zgghrd.c +163 -0
- data/ext/zgglse.c +167 -0
- data/ext/zggqrf.c +133 -0
- data/ext/zggrqf.c +137 -0
- data/ext/zggsvd.c +180 -0
- data/ext/zggsvp.c +170 -0
- data/ext/zgtcon.c +117 -0
- data/ext/zgtrfs.c +205 -0
- data/ext/zgtsv.c +138 -0
- data/ext/zgtsvx.c +252 -0
- data/ext/zgttrf.c +128 -0
- data/ext/zgttrs.c +133 -0
- data/ext/zgtts2.c +130 -0
- data/ext/zhbev.c +106 -0
- data/ext/zhbevd.c +154 -0
- data/ext/zhbevx.c +156 -0
- data/ext/zhbgst.c +116 -0
- data/ext/zhbgv.c +136 -0
- data/ext/zhbgvd.c +184 -0
- data/ext/zhbgvx.c +185 -0
- data/ext/zhbtrd.c +126 -0
- data/ext/zhecon.c +83 -0
- data/ext/zheequb.c +78 -0
- data/ext/zheev.c +106 -0
- data/ext/zheevd.c +139 -0
- data/ext/zheevr.c +186 -0
- data/ext/zheevx.c +156 -0
- data/ext/zhegs2.c +91 -0
- data/ext/zhegst.c +91 -0
- data/ext/zhegv.c +136 -0
- data/ext/zhegvd.c +169 -0
- data/ext/zhegvx.c +186 -0
- data/ext/zherfs.c +149 -0
- data/ext/zherfsx.c +214 -0
- data/ext/zhesv.c +119 -0
- data/ext/zhesvx.c +179 -0
- data/ext/zhesvxx.c +254 -0
- data/ext/zhetd2.c +97 -0
- data/ext/zhetf2.c +81 -0
- data/ext/zhetrd.c +109 -0
- data/ext/zhetrf.c +93 -0
- data/ext/zhetri.c +88 -0
- data/ext/zhetrs.c +99 -0
- data/ext/zhetrs2.c +102 -0
- data/ext/zhfrk.c +105 -0
- data/ext/zhgeqz.c +204 -0
- data/ext/zhpcon.c +81 -0
- data/ext/zhpev.c +101 -0
- data/ext/zhpevd.c +149 -0
- data/ext/zhpevx.c +140 -0
- data/ext/zhpgst.c +90 -0
- data/ext/zhpgv.c +128 -0
- data/ext/zhpgvd.c +166 -0
- data/ext/zhpgvx.c +166 -0
- data/ext/zhprfs.c +145 -0
- data/ext/zhpsv.c +106 -0
- data/ext/zhpsvx.c +159 -0
- data/ext/zhptrd.c +96 -0
- data/ext/zhptrf.c +80 -0
- data/ext/zhptri.c +85 -0
- data/ext/zhptrs.c +97 -0
- data/ext/zhsein.c +181 -0
- data/ext/zhseqr.c +141 -0
- data/ext/zla_gbamv.c +123 -0
- data/ext/zla_gbrcond_c.c +138 -0
- data/ext/zla_gbrcond_x.c +134 -0
- data/ext/zla_gbrfsx_extended.c +291 -0
- data/ext/zla_gbrpvgrw.c +83 -0
- data/ext/zla_geamv.c +115 -0
- data/ext/zla_gercond_c.c +130 -0
- data/ext/zla_gercond_x.c +126 -0
- data/ext/zla_gerfsx_extended.c +277 -0
- data/ext/zla_heamv.c +112 -0
- data/ext/zla_hercond_c.c +130 -0
- data/ext/zla_hercond_x.c +126 -0
- data/ext/zla_herfsx_extended.c +279 -0
- data/ext/zla_herpvgrw.c +103 -0
- data/ext/zla_lin_berr.c +80 -0
- data/ext/zla_porcond_c.c +118 -0
- data/ext/zla_porcond_x.c +114 -0
- data/ext/zla_porfsx_extended.c +267 -0
- data/ext/zla_porpvgrw.c +91 -0
- data/ext/zla_rpvgrw.c +75 -0
- data/ext/zla_syamv.c +112 -0
- data/ext/zla_syrcond_c.c +130 -0
- data/ext/zla_syrcond_x.c +126 -0
- data/ext/zla_syrfsx_extended.c +279 -0
- data/ext/zla_syrpvgrw.c +103 -0
- data/ext/zla_wwaddw.c +98 -0
- data/ext/zlabrd.c +128 -0
- data/ext/zlacgv.c +71 -0
- data/ext/zlacn2.c +99 -0
- data/ext/zlacon.c +76 -0
- data/ext/zlacp2.c +73 -0
- data/ext/zlacpy.c +73 -0
- data/ext/zlacrm.c +86 -0
- data/ext/zlacrt.c +104 -0
- data/ext/zladiv.c +53 -0
- data/ext/zlaed0.c +130 -0
- data/ext/zlaed7.c +243 -0
- data/ext/zlaed8.c +194 -0
- data/ext/zlaein.c +109 -0
- data/ext/zlaesy.c +70 -0
- data/ext/zlaev2.c +67 -0
- data/ext/zlag2c.c +72 -0
- data/ext/zlags2.c +88 -0
- data/ext/zlagtm.c +128 -0
- data/ext/zlahef.c +93 -0
- data/ext/zlahqr.c +131 -0
- data/ext/zlahr2.c +108 -0
- data/ext/zlahrd.c +108 -0
- data/ext/zlaic1.c +86 -0
- data/ext/zlals0.c +197 -0
- data/ext/zlalsa.c +266 -0
- data/ext/zlalsd.c +141 -0
- data/ext/zlangb.c +72 -0
- data/ext/zlange.c +70 -0
- data/ext/zlangt.c +83 -0
- data/ext/zlanhb.c +74 -0
- data/ext/zlanhe.c +70 -0
- data/ext/zlanhf.c +76 -0
- data/ext/zlanhp.c +72 -0
- data/ext/zlanhs.c +66 -0
- data/ext/zlanht.c +71 -0
- data/ext/zlansb.c +74 -0
- data/ext/zlansp.c +72 -0
- data/ext/zlansy.c +70 -0
- data/ext/zlantb.c +78 -0
- data/ext/zlantp.c +76 -0
- data/ext/zlantr.c +78 -0
- data/ext/zlapll.c +101 -0
- data/ext/zlapmr.c +93 -0
- data/ext/zlapmt.c +97 -0
- data/ext/zlaqgb.c +113 -0
- data/ext/zlaqge.c +105 -0
- data/ext/zlaqhb.c +93 -0
- data/ext/zlaqhe.c +93 -0
- data/ext/zlaqhp.c +90 -0
- data/ext/zlaqp2.c +154 -0
- data/ext/zlaqps.c +204 -0
- data/ext/zlaqr0.c +149 -0
- data/ext/zlaqr1.c +72 -0
- data/ext/zlaqr2.c +170 -0
- data/ext/zlaqr3.c +170 -0
- data/ext/zlaqr4.c +143 -0
- data/ext/zlaqr5.c +175 -0
- data/ext/zlaqsb.c +97 -0
- data/ext/zlaqsp.c +90 -0
- data/ext/zlaqsy.c +93 -0
- data/ext/zlar1v.c +169 -0
- data/ext/zlar2v.c +145 -0
- data/ext/zlarcm.c +82 -0
- data/ext/zlarf.c +98 -0
- data/ext/zlarfb.c +119 -0
- data/ext/zlarfg.c +80 -0
- data/ext/zlarfgp.c +80 -0
- data/ext/zlarft.c +101 -0
- data/ext/zlarfx.c +90 -0
- data/ext/zlargv.c +110 -0
- data/ext/zlarnv.c +79 -0
- data/ext/zlarrv.c +267 -0
- data/ext/zlarscl2.c +78 -0
- data/ext/zlartg.c +59 -0
- data/ext/zlartv.c +126 -0
- data/ext/zlarz.c +102 -0
- data/ext/zlarzb.c +123 -0
- data/ext/zlarzt.c +101 -0
- data/ext/zlascl.c +93 -0
- data/ext/zlascl2.c +78 -0
- data/ext/zlaset.c +84 -0
- data/ext/zlasr.c +106 -0
- data/ext/zlassq.c +66 -0
- data/ext/zlaswp.c +90 -0
- data/ext/zlasyf.c +93 -0
- data/ext/zlat2c.c +72 -0
- data/ext/zlatbs.c +126 -0
- data/ext/zlatdf.c +115 -0
- data/ext/zlatps.c +120 -0
- data/ext/zlatrd.c +101 -0
- data/ext/zlatrs.c +122 -0
- data/ext/zlatrz.c +83 -0
- data/ext/zlatzm.c +128 -0
- data/ext/zlauu2.c +73 -0
- data/ext/zlauum.c +73 -0
- data/ext/zpbcon.c +78 -0
- data/ext/zpbequ.c +79 -0
- data/ext/zpbrfs.c +141 -0
- data/ext/zpbstf.c +77 -0
- data/ext/zpbsv.c +103 -0
- data/ext/zpbsvx.c +197 -0
- data/ext/zpbtf2.c +77 -0
- data/ext/zpbtrf.c +77 -0
- data/ext/zpbtrs.c +91 -0
- data/ext/zpftrf.c +78 -0
- data/ext/zpftri.c +78 -0
- data/ext/zpftrs.c +93 -0
- data/ext/zpocon.c +74 -0
- data/ext/zpoequ.c +71 -0
- data/ext/zpoequb.c +71 -0
- data/ext/zporfs.c +137 -0
- data/ext/zporfsx.c +202 -0
- data/ext/zposv.c +99 -0
- data/ext/zposvx.c +193 -0
- data/ext/zposvxx.c +231 -0
- data/ext/zpotf2.c +73 -0
- data/ext/zpotrf.c +73 -0
- data/ext/zpotri.c +73 -0
- data/ext/zpotrs.c +87 -0
- data/ext/zppcon.c +74 -0
- data/ext/zppequ.c +75 -0
- data/ext/zpprfs.c +135 -0
- data/ext/zppsv.c +100 -0
- data/ext/zppsvx.c +187 -0
- data/ext/zpptrf.c +74 -0
- data/ext/zpptri.c +74 -0
- data/ext/zpptrs.c +89 -0
- data/ext/zpstf2.c +91 -0
- data/ext/zpstrf.c +91 -0
- data/ext/zptcon.c +77 -0
- data/ext/zpteqr.c +122 -0
- data/ext/zptrfs.c +157 -0
- data/ext/zptsv.c +119 -0
- data/ext/zptsvx.c +167 -0
- data/ext/zpttrf.c +89 -0
- data/ext/zpttrs.c +97 -0
- data/ext/zptts2.c +94 -0
- data/ext/zrot.c +103 -0
- data/ext/zspcon.c +81 -0
- data/ext/zspmv.c +113 -0
- data/ext/zspr.c +92 -0
- data/ext/zsprfs.c +145 -0
- data/ext/zspsv.c +106 -0
- data/ext/zspsvx.c +159 -0
- data/ext/zsptrf.c +80 -0
- data/ext/zsptri.c +85 -0
- data/ext/zsptrs.c +97 -0
- data/ext/zstedc.c +173 -0
- data/ext/zstegr.c +184 -0
- data/ext/zstein.c +130 -0
- data/ext/zstemr.c +189 -0
- data/ext/zsteqr.c +122 -0
- data/ext/zsycon.c +83 -0
- data/ext/zsyconv.c +80 -0
- data/ext/zsyequb.c +78 -0
- data/ext/zsymv.c +111 -0
- data/ext/zsyr.c +91 -0
- data/ext/zsyrfs.c +149 -0
- data/ext/zsyrfsx.c +214 -0
- data/ext/zsysv.c +125 -0
- data/ext/zsysvx.c +179 -0
- data/ext/zsysvxx.c +254 -0
- data/ext/zsyswapr.c +78 -0
- data/ext/zsytf2.c +81 -0
- data/ext/zsytrf.c +93 -0
- data/ext/zsytri.c +88 -0
- data/ext/zsytri2.c +100 -0
- data/ext/zsytri2x.c +92 -0
- data/ext/zsytrs.c +99 -0
- data/ext/zsytrs2.c +102 -0
- data/ext/ztbcon.c +82 -0
- data/ext/ztbrfs.c +123 -0
- data/ext/ztbtrs.c +99 -0
- data/ext/ztfsm.c +107 -0
- data/ext/ztftri.c +82 -0
- data/ext/ztfttp.c +75 -0
- data/ext/ztfttr.c +76 -0
- data/ext/ztgevc.c +152 -0
- data/ext/ztgex2.c +167 -0
- data/ext/ztgexc.c +168 -0
- data/ext/ztgsen.c +240 -0
- data/ext/ztgsja.c +223 -0
- data/ext/ztgsna.c +160 -0
- data/ext/ztgsy2.c +172 -0
- data/ext/ztgsyl.c +186 -0
- data/ext/ztpcon.c +78 -0
- data/ext/ztprfs.c +119 -0
- data/ext/ztptri.c +78 -0
- data/ext/ztptrs.c +97 -0
- data/ext/ztpttf.c +75 -0
- data/ext/ztpttr.c +72 -0
- data/ext/ztrcon.c +78 -0
- data/ext/ztrevc.c +150 -0
- data/ext/ztrexc.c +107 -0
- data/ext/ztrrfs.c +119 -0
- data/ext/ztrsen.c +150 -0
- data/ext/ztrsna.c +133 -0
- data/ext/ztrsyl.c +112 -0
- data/ext/ztrti2.c +77 -0
- data/ext/ztrtri.c +77 -0
- data/ext/ztrtrs.c +95 -0
- data/ext/ztrttf.c +73 -0
- data/ext/ztrttp.c +69 -0
- data/ext/ztzrqf.c +79 -0
- data/ext/ztzrzf.c +97 -0
- data/ext/zunbdb.c +228 -0
- data/ext/zuncsd.c +200 -0
- data/ext/zung2l.c +88 -0
- data/ext/zung2r.c +88 -0
- data/ext/zungbr.c +111 -0
- data/ext/zunghr.c +107 -0
- data/ext/zungl2.c +86 -0
- data/ext/zunglq.c +103 -0
- data/ext/zungql.c +103 -0
- data/ext/zungqr.c +103 -0
- data/ext/zungr2.c +86 -0
- data/ext/zungrq.c +103 -0
- data/ext/zungtr.c +103 -0
- data/ext/zunm2l.c +110 -0
- data/ext/zunm2r.c +110 -0
- data/ext/zunmbr.c +135 -0
- data/ext/zunmhr.c +129 -0
- data/ext/zunml2.c +106 -0
- data/ext/zunmlq.c +121 -0
- data/ext/zunmql.c +125 -0
- data/ext/zunmqr.c +125 -0
- data/ext/zunmr2.c +106 -0
- data/ext/zunmr3.c +110 -0
- data/ext/zunmrq.c +121 -0
- data/ext/zunmrz.c +125 -0
- data/ext/zunmtr.c +125 -0
- data/ext/zupgtr.c +87 -0
- data/ext/zupmtr.c +112 -0
- data/lib/numru/lapack.rb +51 -0
- data/samples/dsyevr.rb +25 -0
- data/tests/eig/ge/test_gesdd.rb +90 -0
- data/tests/eig/ge/test_gesvd.rb +99 -0
- data/tests/eig/gg/test_ggev.rb +124 -0
- data/tests/eig/gg/test_ggsvd.rb +76 -0
- data/tests/eig/sb/test_sbev.rb +39 -0
- data/tests/lapack_test.rb +50 -0
- data/tests/lin/gb/test_gbsv.rb +46 -0
- data/tests/lin/gb/test_gbsvx.rb +56 -0
- data/tests/lin/ge/test_gels.rb +63 -0
- data/tests/lin/ge/test_gelsd.rb +54 -0
- data/tests/lin/ge/test_gelss.rb +73 -0
- data/tests/lin/ge/test_gelsy.rb +73 -0
- data/tests/lin/ge/test_gesv.rb +43 -0
- data/tests/lin/ge/test_gesvx.rb +52 -0
- data/tests/lin/gt/test_gtsv.rb +39 -0
- data/tests/test_all.rb +7 -0
- metadata +3513 -0
data/ext/ctbtrs.c
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
#include "rb_lapack.h"
|
|
2
|
+
|
|
3
|
+
extern VOID ctbtrs_(char* uplo, char* trans, char* diag, integer* n, integer* kd, integer* nrhs, complex* ab, integer* ldab, complex* b, integer* ldb, integer* info);
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
static VALUE
|
|
7
|
+
rblapack_ctbtrs(int argc, VALUE *argv, VALUE self){
|
|
8
|
+
VALUE rblapack_uplo;
|
|
9
|
+
char uplo;
|
|
10
|
+
VALUE rblapack_trans;
|
|
11
|
+
char trans;
|
|
12
|
+
VALUE rblapack_diag;
|
|
13
|
+
char diag;
|
|
14
|
+
VALUE rblapack_kd;
|
|
15
|
+
integer kd;
|
|
16
|
+
VALUE rblapack_ab;
|
|
17
|
+
complex *ab;
|
|
18
|
+
VALUE rblapack_b;
|
|
19
|
+
complex *b;
|
|
20
|
+
VALUE rblapack_info;
|
|
21
|
+
integer info;
|
|
22
|
+
VALUE rblapack_b_out__;
|
|
23
|
+
complex *b_out__;
|
|
24
|
+
|
|
25
|
+
integer ldab;
|
|
26
|
+
integer n;
|
|
27
|
+
integer ldb;
|
|
28
|
+
integer nrhs;
|
|
29
|
+
|
|
30
|
+
VALUE rblapack_options;
|
|
31
|
+
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
32
|
+
argc--;
|
|
33
|
+
rblapack_options = argv[argc];
|
|
34
|
+
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
35
|
+
printf("%s\n", "USAGE:\n info, b = NumRu::Lapack.ctbtrs( uplo, trans, diag, kd, ab, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE CTBTRS( UPLO, TRANS, DIAG, N, KD, NRHS, AB, LDAB, B, LDB, INFO )\n\n* Purpose\n* =======\n*\n* CTBTRS solves a triangular system of the form\n*\n* A * X = B, A**T * X = B, or A**H * X = B,\n*\n* where A is a triangular band matrix of order N, and B is an\n* N-by-NRHS matrix. A check is made to verify that A is nonsingular.\n*\n\n* Arguments\n* =========\n*\n* UPLO (input) CHARACTER*1\n* = 'U': A is upper triangular;\n* = 'L': A is lower triangular.\n*\n* TRANS (input) CHARACTER*1\n* Specifies the form of the system of equations:\n* = 'N': A * X = B (No transpose)\n* = 'T': A**T * X = B (Transpose)\n* = 'C': A**H * X = B (Conjugate transpose)\n*\n* DIAG (input) CHARACTER*1\n* = 'N': A is non-unit triangular;\n* = 'U': A is unit triangular.\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 0.\n*\n* KD (input) INTEGER\n* The number of superdiagonals or subdiagonals of the\n* triangular band matrix A. KD >= 0.\n*\n* NRHS (input) INTEGER\n* The number of right hand sides, i.e., the number of columns\n* of the matrix B. NRHS >= 0.\n*\n* AB (input) COMPLEX array, dimension (LDAB,N)\n* The upper or lower triangular band matrix A, stored in the\n* first kd+1 rows of AB. The j-th column of A is stored\n* in the j-th column of the array AB as follows:\n* if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd)<=i<=j;\n* if UPLO = 'L', AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+kd).\n* If DIAG = 'U', the diagonal elements of A are not referenced\n* and are assumed to be 1.\n*\n* LDAB (input) INTEGER\n* The leading dimension of the array AB. LDAB >= KD+1.\n*\n* B (input/output) COMPLEX array, dimension (LDB,NRHS)\n* On entry, the right hand side matrix B.\n* On exit, if INFO = 0, the solution matrix X.\n*\n* LDB (input) INTEGER\n* The leading dimension of the array B. LDB >= max(1,N).\n*\n* INFO (output) INTEGER\n* = 0: successful exit\n* < 0: if INFO = -i, the i-th argument had an illegal value\n* > 0: if INFO = i, the i-th diagonal element of A is zero,\n* indicating that the matrix is singular and the\n* solutions X have not been computed.\n*\n\n* =====================================================================\n*\n\n");
|
|
36
|
+
return Qnil;
|
|
37
|
+
}
|
|
38
|
+
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
39
|
+
printf("%s\n", "USAGE:\n info, b = NumRu::Lapack.ctbtrs( uplo, trans, diag, kd, ab, b, [:usage => usage, :help => help])\n");
|
|
40
|
+
return Qnil;
|
|
41
|
+
}
|
|
42
|
+
} else
|
|
43
|
+
rblapack_options = Qnil;
|
|
44
|
+
if (argc != 6 && argc != 6)
|
|
45
|
+
rb_raise(rb_eArgError,"wrong number of arguments (%d for 6)", argc);
|
|
46
|
+
rblapack_uplo = argv[0];
|
|
47
|
+
rblapack_trans = argv[1];
|
|
48
|
+
rblapack_diag = argv[2];
|
|
49
|
+
rblapack_kd = argv[3];
|
|
50
|
+
rblapack_ab = argv[4];
|
|
51
|
+
rblapack_b = argv[5];
|
|
52
|
+
if (argc == 6) {
|
|
53
|
+
} else if (rblapack_options != Qnil) {
|
|
54
|
+
} else {
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
if (!NA_IsNArray(rblapack_ab))
|
|
58
|
+
rb_raise(rb_eArgError, "ab (5th argument) must be NArray");
|
|
59
|
+
if (NA_RANK(rblapack_ab) != 2)
|
|
60
|
+
rb_raise(rb_eArgError, "rank of ab (5th argument) must be %d", 2);
|
|
61
|
+
ldab = NA_SHAPE0(rblapack_ab);
|
|
62
|
+
n = NA_SHAPE1(rblapack_ab);
|
|
63
|
+
if (NA_TYPE(rblapack_ab) != NA_SCOMPLEX)
|
|
64
|
+
rblapack_ab = na_change_type(rblapack_ab, NA_SCOMPLEX);
|
|
65
|
+
ab = NA_PTR_TYPE(rblapack_ab, complex*);
|
|
66
|
+
diag = StringValueCStr(rblapack_diag)[0];
|
|
67
|
+
trans = StringValueCStr(rblapack_trans)[0];
|
|
68
|
+
if (!NA_IsNArray(rblapack_b))
|
|
69
|
+
rb_raise(rb_eArgError, "b (6th argument) must be NArray");
|
|
70
|
+
if (NA_RANK(rblapack_b) != 2)
|
|
71
|
+
rb_raise(rb_eArgError, "rank of b (6th argument) must be %d", 2);
|
|
72
|
+
ldb = NA_SHAPE0(rblapack_b);
|
|
73
|
+
nrhs = NA_SHAPE1(rblapack_b);
|
|
74
|
+
if (NA_TYPE(rblapack_b) != NA_SCOMPLEX)
|
|
75
|
+
rblapack_b = na_change_type(rblapack_b, NA_SCOMPLEX);
|
|
76
|
+
b = NA_PTR_TYPE(rblapack_b, complex*);
|
|
77
|
+
uplo = StringValueCStr(rblapack_uplo)[0];
|
|
78
|
+
kd = NUM2INT(rblapack_kd);
|
|
79
|
+
{
|
|
80
|
+
int shape[2];
|
|
81
|
+
shape[0] = ldb;
|
|
82
|
+
shape[1] = nrhs;
|
|
83
|
+
rblapack_b_out__ = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
84
|
+
}
|
|
85
|
+
b_out__ = NA_PTR_TYPE(rblapack_b_out__, complex*);
|
|
86
|
+
MEMCPY(b_out__, b, complex, NA_TOTAL(rblapack_b));
|
|
87
|
+
rblapack_b = rblapack_b_out__;
|
|
88
|
+
b = b_out__;
|
|
89
|
+
|
|
90
|
+
ctbtrs_(&uplo, &trans, &diag, &n, &kd, &nrhs, ab, &ldab, b, &ldb, &info);
|
|
91
|
+
|
|
92
|
+
rblapack_info = INT2NUM(info);
|
|
93
|
+
return rb_ary_new3(2, rblapack_info, rblapack_b);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
void
|
|
97
|
+
init_lapack_ctbtrs(VALUE mLapack){
|
|
98
|
+
rb_define_module_function(mLapack, "ctbtrs", rblapack_ctbtrs, -1);
|
|
99
|
+
}
|
data/ext/ctfsm.c
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
#include "rb_lapack.h"
|
|
2
|
+
|
|
3
|
+
extern VOID ctfsm_(char* transr, char* side, char* uplo, char* trans, char* diag, integer* m, integer* n, complex* alpha, complex* a, complex* b, integer* ldb);
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
static VALUE
|
|
7
|
+
rblapack_ctfsm(int argc, VALUE *argv, VALUE self){
|
|
8
|
+
VALUE rblapack_transr;
|
|
9
|
+
char transr;
|
|
10
|
+
VALUE rblapack_side;
|
|
11
|
+
char side;
|
|
12
|
+
VALUE rblapack_uplo;
|
|
13
|
+
char uplo;
|
|
14
|
+
VALUE rblapack_trans;
|
|
15
|
+
char trans;
|
|
16
|
+
VALUE rblapack_diag;
|
|
17
|
+
char diag;
|
|
18
|
+
VALUE rblapack_m;
|
|
19
|
+
integer m;
|
|
20
|
+
VALUE rblapack_alpha;
|
|
21
|
+
complex alpha;
|
|
22
|
+
VALUE rblapack_a;
|
|
23
|
+
complex *a;
|
|
24
|
+
VALUE rblapack_b;
|
|
25
|
+
complex *b;
|
|
26
|
+
VALUE rblapack_b_out__;
|
|
27
|
+
complex *b_out__;
|
|
28
|
+
|
|
29
|
+
integer ldb;
|
|
30
|
+
integer n;
|
|
31
|
+
|
|
32
|
+
VALUE rblapack_options;
|
|
33
|
+
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
34
|
+
argc--;
|
|
35
|
+
rblapack_options = argv[argc];
|
|
36
|
+
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
37
|
+
printf("%s\n", "USAGE:\n b = NumRu::Lapack.ctfsm( transr, side, uplo, trans, diag, m, alpha, a, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE CTFSM( TRANSR, SIDE, UPLO, TRANS, DIAG, M, N, ALPHA, A, B, LDB )\n\n* Purpose\n* =======\n*\n* Level 3 BLAS like routine for A in RFP Format.\n*\n* CTFSM solves the matrix equation\n*\n* op( A )*X = alpha*B or X*op( A ) = alpha*B\n*\n* where alpha is a scalar, X and B are m by n matrices, A is a unit, or\n* non-unit, upper or lower triangular matrix and op( A ) is one of\n*\n* op( A ) = A or op( A ) = conjg( A' ).\n*\n* A is in Rectangular Full Packed (RFP) Format.\n*\n* The matrix X is overwritten on B.\n*\n\n* Arguments\n* ==========\n*\n* TRANSR (input) CHARACTER*1\n* = 'N': The Normal Form of RFP A is stored;\n* = 'C': The Conjugate-transpose Form of RFP A is stored.\n*\n* SIDE (input) CHARACTER*1\n* On entry, SIDE specifies whether op( A ) appears on the left\n* or right of X as follows:\n*\n* SIDE = 'L' or 'l' op( A )*X = alpha*B.\n*\n* SIDE = 'R' or 'r' X*op( A ) = alpha*B.\n*\n* Unchanged on exit.\n*\n* UPLO (input) CHARACTER*1\n* On entry, UPLO specifies whether the RFP matrix A came from\n* an upper or lower triangular matrix as follows:\n* UPLO = 'U' or 'u' RFP A came from an upper triangular matrix\n* UPLO = 'L' or 'l' RFP A came from a lower triangular matrix\n*\n* Unchanged on exit.\n*\n* TRANS (input) CHARACTER*1\n* On entry, TRANS specifies the form of op( A ) to be used\n* in the matrix multiplication as follows:\n*\n* TRANS = 'N' or 'n' op( A ) = A.\n*\n* TRANS = 'C' or 'c' op( A ) = conjg( A' ).\n*\n* Unchanged on exit.\n*\n* DIAG (input) CHARACTER*1\n* On entry, DIAG specifies whether or not RFP A is unit\n* triangular as follows:\n*\n* DIAG = 'U' or 'u' A is assumed to be unit triangular.\n*\n* DIAG = 'N' or 'n' A is not assumed to be unit\n* triangular.\n*\n* Unchanged on exit.\n*\n* M (input) INTEGER\n* On entry, M specifies the number of rows of B. M must be at\n* least zero.\n* Unchanged on exit.\n*\n* N (input) INTEGER\n* On entry, N specifies the number of columns of B. N must be\n* at least zero.\n* Unchanged on exit.\n*\n* ALPHA (input) COMPLEX\n* On entry, ALPHA specifies the scalar alpha. When alpha is\n* zero then A is not referenced and B need not be set before\n* entry.\n* Unchanged on exit.\n*\n* A (input) COMPLEX array, dimension (N*(N+1)/2)\n* NT = N*(N+1)/2. On entry, the matrix A in RFP Format.\n* RFP Format is described by TRANSR, UPLO and N as follows:\n* If TRANSR='N' then RFP A is (0:N,0:K-1) when N is even;\n* K=N/2. RFP A is (0:N-1,0:K) when N is odd; K=N/2. If\n* TRANSR = 'C' then RFP is the Conjugate-transpose of RFP A as\n* defined when TRANSR = 'N'. The contents of RFP A are defined\n* by UPLO as follows: If UPLO = 'U' the RFP A contains the NT\n* elements of upper packed A either in normal or\n* conjugate-transpose Format. If UPLO = 'L' the RFP A contains\n* the NT elements of lower packed A either in normal or\n* conjugate-transpose Format. The LDA of RFP A is (N+1)/2 when\n* TRANSR = 'C'. When TRANSR is 'N' the LDA is N+1 when N is\n* even and is N when is odd.\n* See the Note below for more details. Unchanged on exit.\n*\n* B (input/output) COMPLEX array, dimension (LDB,N)\n* Before entry, the leading m by n part of the array B must\n* contain the right-hand side matrix B, and on exit is\n* overwritten by the solution matrix X.\n*\n* LDB (input) INTEGER\n* On entry, LDB specifies the first dimension of B as declared\n* in the calling (sub) program. LDB must be at least\n* max( 1, m ).\n* Unchanged on exit.\n*\n\n* Further Details\n* ===============\n*\n* We first consider Standard Packed Format when N is even.\n* We give an example where N = 6.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 05 00\n* 11 12 13 14 15 10 11\n* 22 23 24 25 20 21 22\n* 33 34 35 30 31 32 33\n* 44 45 40 41 42 43 44\n* 55 50 51 52 53 54 55\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:5,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(4:6,0:2) consists of\n* conjugate-transpose of the first three columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(1:6,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:2,0:2) consists of\n* conjugate-transpose of the last three columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N even and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- -- --\n* 03 04 05 33 43 53\n* -- --\n* 13 14 15 00 44 54\n* --\n* 23 24 25 10 11 55\n*\n* 33 34 35 20 21 22\n* --\n* 00 44 45 30 31 32\n* -- --\n* 01 11 55 40 41 42\n* -- -- --\n* 02 12 22 50 51 52\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- -- --\n* 03 13 23 33 00 01 02 33 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 11 12 43 44 11 21 31 41 51\n* -- -- -- -- -- -- -- -- -- --\n* 05 15 25 35 45 55 22 53 54 55 22 32 42 52\n*\n*\n* We next consider Standard Packed Format when N is odd.\n* We give an example where N = 5.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 00\n* 11 12 13 14 10 11\n* 22 23 24 20 21 22\n* 33 34 30 31 32 33\n* 44 40 41 42 43 44\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:4,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(3:4,0:1) consists of\n* conjugate-transpose of the first two columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(0:4,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:1,1:2) consists of\n* conjugate-transpose of the last two columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N odd and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- --\n* 02 03 04 00 33 43\n* --\n* 12 13 14 10 11 44\n*\n* 22 23 24 20 21 22\n* --\n* 00 33 34 30 31 32\n* -- --\n* 01 11 44 40 41 42\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- --\n* 02 12 22 00 01 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- --\n* 03 13 23 33 11 33 11 21 31 41 51\n* -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 43 44 22 32 42 52\n*\n* ..\n\n");
|
|
38
|
+
return Qnil;
|
|
39
|
+
}
|
|
40
|
+
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
41
|
+
printf("%s\n", "USAGE:\n b = NumRu::Lapack.ctfsm( transr, side, uplo, trans, diag, m, alpha, a, b, [:usage => usage, :help => help])\n");
|
|
42
|
+
return Qnil;
|
|
43
|
+
}
|
|
44
|
+
} else
|
|
45
|
+
rblapack_options = Qnil;
|
|
46
|
+
if (argc != 9 && argc != 9)
|
|
47
|
+
rb_raise(rb_eArgError,"wrong number of arguments (%d for 9)", argc);
|
|
48
|
+
rblapack_transr = argv[0];
|
|
49
|
+
rblapack_side = argv[1];
|
|
50
|
+
rblapack_uplo = argv[2];
|
|
51
|
+
rblapack_trans = argv[3];
|
|
52
|
+
rblapack_diag = argv[4];
|
|
53
|
+
rblapack_m = argv[5];
|
|
54
|
+
rblapack_alpha = argv[6];
|
|
55
|
+
rblapack_a = argv[7];
|
|
56
|
+
rblapack_b = argv[8];
|
|
57
|
+
if (argc == 9) {
|
|
58
|
+
} else if (rblapack_options != Qnil) {
|
|
59
|
+
} else {
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
side = StringValueCStr(rblapack_side)[0];
|
|
63
|
+
m = NUM2INT(rblapack_m);
|
|
64
|
+
alpha.r = (real)NUM2DBL(rb_funcall(rblapack_alpha, rb_intern("real"), 0));
|
|
65
|
+
alpha.i = (real)NUM2DBL(rb_funcall(rblapack_alpha, rb_intern("imag"), 0));
|
|
66
|
+
uplo = StringValueCStr(rblapack_uplo)[0];
|
|
67
|
+
if (!NA_IsNArray(rblapack_b))
|
|
68
|
+
rb_raise(rb_eArgError, "b (9th argument) must be NArray");
|
|
69
|
+
if (NA_RANK(rblapack_b) != 2)
|
|
70
|
+
rb_raise(rb_eArgError, "rank of b (9th argument) must be %d", 2);
|
|
71
|
+
ldb = NA_SHAPE0(rblapack_b);
|
|
72
|
+
n = NA_SHAPE1(rblapack_b);
|
|
73
|
+
if (NA_TYPE(rblapack_b) != NA_SCOMPLEX)
|
|
74
|
+
rblapack_b = na_change_type(rblapack_b, NA_SCOMPLEX);
|
|
75
|
+
b = NA_PTR_TYPE(rblapack_b, complex*);
|
|
76
|
+
trans = StringValueCStr(rblapack_trans)[0];
|
|
77
|
+
if (!NA_IsNArray(rblapack_a))
|
|
78
|
+
rb_raise(rb_eArgError, "a (8th argument) must be NArray");
|
|
79
|
+
if (NA_RANK(rblapack_a) != 1)
|
|
80
|
+
rb_raise(rb_eArgError, "rank of a (8th argument) must be %d", 1);
|
|
81
|
+
if (NA_SHAPE0(rblapack_a) != (n*(n+1)/2))
|
|
82
|
+
rb_raise(rb_eRuntimeError, "shape 0 of a must be %d", n*(n+1)/2);
|
|
83
|
+
if (NA_TYPE(rblapack_a) != NA_SCOMPLEX)
|
|
84
|
+
rblapack_a = na_change_type(rblapack_a, NA_SCOMPLEX);
|
|
85
|
+
a = NA_PTR_TYPE(rblapack_a, complex*);
|
|
86
|
+
transr = StringValueCStr(rblapack_transr)[0];
|
|
87
|
+
diag = StringValueCStr(rblapack_diag)[0];
|
|
88
|
+
{
|
|
89
|
+
int shape[2];
|
|
90
|
+
shape[0] = ldb;
|
|
91
|
+
shape[1] = n;
|
|
92
|
+
rblapack_b_out__ = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
93
|
+
}
|
|
94
|
+
b_out__ = NA_PTR_TYPE(rblapack_b_out__, complex*);
|
|
95
|
+
MEMCPY(b_out__, b, complex, NA_TOTAL(rblapack_b));
|
|
96
|
+
rblapack_b = rblapack_b_out__;
|
|
97
|
+
b = b_out__;
|
|
98
|
+
|
|
99
|
+
ctfsm_(&transr, &side, &uplo, &trans, &diag, &m, &n, &alpha, a, b, &ldb);
|
|
100
|
+
|
|
101
|
+
return rblapack_b;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
void
|
|
105
|
+
init_lapack_ctfsm(VALUE mLapack){
|
|
106
|
+
rb_define_module_function(mLapack, "ctfsm", rblapack_ctfsm, -1);
|
|
107
|
+
}
|
data/ext/ctftri.c
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
#include "rb_lapack.h"
|
|
2
|
+
|
|
3
|
+
extern VOID ctftri_(char* transr, char* uplo, char* diag, integer* n, complex* a, integer* info);
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
static VALUE
|
|
7
|
+
rblapack_ctftri(int argc, VALUE *argv, VALUE self){
|
|
8
|
+
VALUE rblapack_transr;
|
|
9
|
+
char transr;
|
|
10
|
+
VALUE rblapack_uplo;
|
|
11
|
+
char uplo;
|
|
12
|
+
VALUE rblapack_diag;
|
|
13
|
+
char diag;
|
|
14
|
+
VALUE rblapack_n;
|
|
15
|
+
integer n;
|
|
16
|
+
VALUE rblapack_a;
|
|
17
|
+
complex *a;
|
|
18
|
+
VALUE rblapack_info;
|
|
19
|
+
integer info;
|
|
20
|
+
VALUE rblapack_a_out__;
|
|
21
|
+
complex *a_out__;
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
VALUE rblapack_options;
|
|
25
|
+
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
26
|
+
argc--;
|
|
27
|
+
rblapack_options = argv[argc];
|
|
28
|
+
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
29
|
+
printf("%s\n", "USAGE:\n info, a = NumRu::Lapack.ctftri( transr, uplo, diag, n, a, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE CTFTRI( TRANSR, UPLO, DIAG, N, A, INFO )\n\n* Purpose\n* =======\n*\n* CTFTRI computes the inverse of a triangular matrix A stored in RFP\n* format.\n*\n* This is a Level 3 BLAS version of the algorithm.\n*\n\n* Arguments\n* =========\n*\n* TRANSR (input) CHARACTER*1\n* = 'N': The Normal TRANSR of RFP A is stored;\n* = 'C': The Conjugate-transpose TRANSR of RFP A is stored.\n*\n* UPLO (input) CHARACTER*1\n* = 'U': A is upper triangular;\n* = 'L': A is lower triangular.\n*\n* DIAG (input) CHARACTER*1\n* = 'N': A is non-unit triangular;\n* = 'U': A is unit triangular.\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 0.\n*\n* A (input/output) COMPLEX array, dimension ( N*(N+1)/2 );\n* On entry, the triangular matrix A in RFP format. RFP format\n* is described by TRANSR, UPLO, and N as follows: If TRANSR =\n* 'N' then RFP A is (0:N,0:k-1) when N is even; k=N/2. RFP A is\n* (0:N-1,0:k) when N is odd; k=N/2. IF TRANSR = 'C' then RFP is\n* the Conjugate-transpose of RFP A as defined when\n* TRANSR = 'N'. The contents of RFP A are defined by UPLO as\n* follows: If UPLO = 'U' the RFP A contains the nt elements of\n* upper packed A; If UPLO = 'L' the RFP A contains the nt\n* elements of lower packed A. The LDA of RFP A is (N+1)/2 when\n* TRANSR = 'C'. When TRANSR is 'N' the LDA is N+1 when N is\n* even and N is odd. See the Note below for more details.\n*\n* On exit, the (triangular) inverse of the original matrix, in\n* the same storage format.\n*\n* INFO (output) INTEGER\n* = 0: successful exit\n* < 0: if INFO = -i, the i-th argument had an illegal value\n* > 0: if INFO = i, A(i,i) is exactly zero. The triangular\n* matrix is singular and its inverse can not be computed.\n*\n\n* Further Details\n* ===============\n*\n* We first consider Standard Packed Format when N is even.\n* We give an example where N = 6.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 05 00\n* 11 12 13 14 15 10 11\n* 22 23 24 25 20 21 22\n* 33 34 35 30 31 32 33\n* 44 45 40 41 42 43 44\n* 55 50 51 52 53 54 55\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:5,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(4:6,0:2) consists of\n* conjugate-transpose of the first three columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(1:6,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:2,0:2) consists of\n* conjugate-transpose of the last three columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N even and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- -- --\n* 03 04 05 33 43 53\n* -- --\n* 13 14 15 00 44 54\n* --\n* 23 24 25 10 11 55\n*\n* 33 34 35 20 21 22\n* --\n* 00 44 45 30 31 32\n* -- --\n* 01 11 55 40 41 42\n* -- -- --\n* 02 12 22 50 51 52\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- -- --\n* 03 13 23 33 00 01 02 33 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 11 12 43 44 11 21 31 41 51\n* -- -- -- -- -- -- -- -- -- --\n* 05 15 25 35 45 55 22 53 54 55 22 32 42 52\n*\n*\n* We next consider Standard Packed Format when N is odd.\n* We give an example where N = 5.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 00\n* 11 12 13 14 10 11\n* 22 23 24 20 21 22\n* 33 34 30 31 32 33\n* 44 40 41 42 43 44\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:4,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(3:4,0:1) consists of\n* conjugate-transpose of the first two columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(0:4,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:1,1:2) consists of\n* conjugate-transpose of the last two columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N odd and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- --\n* 02 03 04 00 33 43\n* --\n* 12 13 14 10 11 44\n*\n* 22 23 24 20 21 22\n* --\n* 00 33 34 30 31 32\n* -- --\n* 01 11 44 40 41 42\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- --\n* 02 12 22 00 01 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- --\n* 03 13 23 33 11 33 11 21 31 41 51\n* -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 43 44 22 32 42 52\n*\n* =====================================================================\n*\n\n");
|
|
30
|
+
return Qnil;
|
|
31
|
+
}
|
|
32
|
+
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
33
|
+
printf("%s\n", "USAGE:\n info, a = NumRu::Lapack.ctftri( transr, uplo, diag, n, a, [:usage => usage, :help => help])\n");
|
|
34
|
+
return Qnil;
|
|
35
|
+
}
|
|
36
|
+
} else
|
|
37
|
+
rblapack_options = Qnil;
|
|
38
|
+
if (argc != 5 && argc != 5)
|
|
39
|
+
rb_raise(rb_eArgError,"wrong number of arguments (%d for 5)", argc);
|
|
40
|
+
rblapack_transr = argv[0];
|
|
41
|
+
rblapack_uplo = argv[1];
|
|
42
|
+
rblapack_diag = argv[2];
|
|
43
|
+
rblapack_n = argv[3];
|
|
44
|
+
rblapack_a = argv[4];
|
|
45
|
+
if (argc == 5) {
|
|
46
|
+
} else if (rblapack_options != Qnil) {
|
|
47
|
+
} else {
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
diag = StringValueCStr(rblapack_diag)[0];
|
|
51
|
+
uplo = StringValueCStr(rblapack_uplo)[0];
|
|
52
|
+
n = NUM2INT(rblapack_n);
|
|
53
|
+
if (!NA_IsNArray(rblapack_a))
|
|
54
|
+
rb_raise(rb_eArgError, "a (5th argument) must be NArray");
|
|
55
|
+
if (NA_RANK(rblapack_a) != 1)
|
|
56
|
+
rb_raise(rb_eArgError, "rank of a (5th argument) must be %d", 1);
|
|
57
|
+
if (NA_SHAPE0(rblapack_a) != (n*(n+1)/2))
|
|
58
|
+
rb_raise(rb_eRuntimeError, "shape 0 of a must be %d", n*(n+1)/2);
|
|
59
|
+
if (NA_TYPE(rblapack_a) != NA_SCOMPLEX)
|
|
60
|
+
rblapack_a = na_change_type(rblapack_a, NA_SCOMPLEX);
|
|
61
|
+
a = NA_PTR_TYPE(rblapack_a, complex*);
|
|
62
|
+
transr = StringValueCStr(rblapack_transr)[0];
|
|
63
|
+
{
|
|
64
|
+
int shape[1];
|
|
65
|
+
shape[0] = n*(n+1)/2;
|
|
66
|
+
rblapack_a_out__ = na_make_object(NA_SCOMPLEX, 1, shape, cNArray);
|
|
67
|
+
}
|
|
68
|
+
a_out__ = NA_PTR_TYPE(rblapack_a_out__, complex*);
|
|
69
|
+
MEMCPY(a_out__, a, complex, NA_TOTAL(rblapack_a));
|
|
70
|
+
rblapack_a = rblapack_a_out__;
|
|
71
|
+
a = a_out__;
|
|
72
|
+
|
|
73
|
+
ctftri_(&transr, &uplo, &diag, &n, a, &info);
|
|
74
|
+
|
|
75
|
+
rblapack_info = INT2NUM(info);
|
|
76
|
+
return rb_ary_new3(2, rblapack_info, rblapack_a);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
void
|
|
80
|
+
init_lapack_ctftri(VALUE mLapack){
|
|
81
|
+
rb_define_module_function(mLapack, "ctftri", rblapack_ctftri, -1);
|
|
82
|
+
}
|
data/ext/ctfttp.c
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
#include "rb_lapack.h"
|
|
2
|
+
|
|
3
|
+
extern VOID ctfttp_(char* transr, char* uplo, integer* n, complex* arf, complex* ap, integer* info);
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
static VALUE
|
|
7
|
+
rblapack_ctfttp(int argc, VALUE *argv, VALUE self){
|
|
8
|
+
VALUE rblapack_transr;
|
|
9
|
+
char transr;
|
|
10
|
+
VALUE rblapack_uplo;
|
|
11
|
+
char uplo;
|
|
12
|
+
VALUE rblapack_n;
|
|
13
|
+
integer n;
|
|
14
|
+
VALUE rblapack_arf;
|
|
15
|
+
complex *arf;
|
|
16
|
+
VALUE rblapack_ap;
|
|
17
|
+
complex *ap;
|
|
18
|
+
VALUE rblapack_info;
|
|
19
|
+
integer info;
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
VALUE rblapack_options;
|
|
23
|
+
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
24
|
+
argc--;
|
|
25
|
+
rblapack_options = argv[argc];
|
|
26
|
+
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
27
|
+
printf("%s\n", "USAGE:\n ap, info = NumRu::Lapack.ctfttp( transr, uplo, n, arf, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE CTFTTP( TRANSR, UPLO, N, ARF, AP, INFO )\n\n* Purpose\n* =======\n*\n* CTFTTP copies a triangular matrix A from rectangular full packed\n* format (TF) to standard packed format (TP).\n*\n\n* Arguments\n* =========\n*\n* TRANSR (input) CHARACTER*1\n* = 'N': ARF is in Normal format;\n* = 'C': ARF is in Conjugate-transpose format;\n*\n* UPLO (input) CHARACTER*1\n* = 'U': A is upper triangular;\n* = 'L': A is lower triangular.\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 0.\n*\n* ARF (input) COMPLEX array, dimension ( N*(N+1)/2 ),\n* On entry, the upper or lower triangular matrix A stored in\n* RFP format. For a further discussion see Notes below.\n*\n* AP (output) COMPLEX array, dimension ( N*(N+1)/2 ),\n* On exit, the upper or lower triangular matrix A, packed\n* columnwise in a linear array. The j-th column of A is stored\n* in the array AP as follows:\n* if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;\n* if UPLO = 'L', AP(i + (j-1)*(2n-j)/2) = A(i,j) for j<=i<=n.\n*\n* INFO (output) INTEGER\n* = 0: successful exit\n* < 0: if INFO = -i, the i-th argument had an illegal value\n*\n\n* Further Details\n* ===============\n*\n* We first consider Standard Packed Format when N is even.\n* We give an example where N = 6.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 05 00\n* 11 12 13 14 15 10 11\n* 22 23 24 25 20 21 22\n* 33 34 35 30 31 32 33\n* 44 45 40 41 42 43 44\n* 55 50 51 52 53 54 55\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:5,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(4:6,0:2) consists of\n* conjugate-transpose of the first three columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(1:6,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:2,0:2) consists of\n* conjugate-transpose of the last three columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N even and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- -- --\n* 03 04 05 33 43 53\n* -- --\n* 13 14 15 00 44 54\n* --\n* 23 24 25 10 11 55\n*\n* 33 34 35 20 21 22\n* --\n* 00 44 45 30 31 32\n* -- --\n* 01 11 55 40 41 42\n* -- -- --\n* 02 12 22 50 51 52\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- -- --\n* 03 13 23 33 00 01 02 33 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 11 12 43 44 11 21 31 41 51\n* -- -- -- -- -- -- -- -- -- --\n* 05 15 25 35 45 55 22 53 54 55 22 32 42 52\n*\n*\n* We next consider Standard Packed Format when N is odd.\n* We give an example where N = 5.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 00\n* 11 12 13 14 10 11\n* 22 23 24 20 21 22\n* 33 34 30 31 32 33\n* 44 40 41 42 43 44\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:4,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(3:4,0:1) consists of\n* conjugate-transpose of the first two columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(0:4,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:1,1:2) consists of\n* conjugate-transpose of the last two columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N odd and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- --\n* 02 03 04 00 33 43\n* --\n* 12 13 14 10 11 44\n*\n* 22 23 24 20 21 22\n* --\n* 00 33 34 30 31 32\n* -- --\n* 01 11 44 40 41 42\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- --\n* 02 12 22 00 01 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- --\n* 03 13 23 33 11 33 11 21 31 41 51\n* -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 43 44 22 32 42 52\n*\n* =====================================================================\n*\n\n");
|
|
28
|
+
return Qnil;
|
|
29
|
+
}
|
|
30
|
+
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
31
|
+
printf("%s\n", "USAGE:\n ap, info = NumRu::Lapack.ctfttp( transr, uplo, n, arf, [:usage => usage, :help => help])\n");
|
|
32
|
+
return Qnil;
|
|
33
|
+
}
|
|
34
|
+
} else
|
|
35
|
+
rblapack_options = Qnil;
|
|
36
|
+
if (argc != 4 && argc != 4)
|
|
37
|
+
rb_raise(rb_eArgError,"wrong number of arguments (%d for 4)", argc);
|
|
38
|
+
rblapack_transr = argv[0];
|
|
39
|
+
rblapack_uplo = argv[1];
|
|
40
|
+
rblapack_n = argv[2];
|
|
41
|
+
rblapack_arf = argv[3];
|
|
42
|
+
if (argc == 4) {
|
|
43
|
+
} else if (rblapack_options != Qnil) {
|
|
44
|
+
} else {
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
n = NUM2INT(rblapack_n);
|
|
48
|
+
uplo = StringValueCStr(rblapack_uplo)[0];
|
|
49
|
+
if (!NA_IsNArray(rblapack_arf))
|
|
50
|
+
rb_raise(rb_eArgError, "arf (4th argument) must be NArray");
|
|
51
|
+
if (NA_RANK(rblapack_arf) != 1)
|
|
52
|
+
rb_raise(rb_eArgError, "rank of arf (4th argument) must be %d", 1);
|
|
53
|
+
if (NA_SHAPE0(rblapack_arf) != (( n*(n+1)/2 )))
|
|
54
|
+
rb_raise(rb_eRuntimeError, "shape 0 of arf must be %d", ( n*(n+1)/2 ));
|
|
55
|
+
if (NA_TYPE(rblapack_arf) != NA_SCOMPLEX)
|
|
56
|
+
rblapack_arf = na_change_type(rblapack_arf, NA_SCOMPLEX);
|
|
57
|
+
arf = NA_PTR_TYPE(rblapack_arf, complex*);
|
|
58
|
+
transr = StringValueCStr(rblapack_transr)[0];
|
|
59
|
+
{
|
|
60
|
+
int shape[1];
|
|
61
|
+
shape[0] = ( n*(n+1)/2 );
|
|
62
|
+
rblapack_ap = na_make_object(NA_SCOMPLEX, 1, shape, cNArray);
|
|
63
|
+
}
|
|
64
|
+
ap = NA_PTR_TYPE(rblapack_ap, complex*);
|
|
65
|
+
|
|
66
|
+
ctfttp_(&transr, &uplo, &n, arf, ap, &info);
|
|
67
|
+
|
|
68
|
+
rblapack_info = INT2NUM(info);
|
|
69
|
+
return rb_ary_new3(2, rblapack_ap, rblapack_info);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
void
|
|
73
|
+
init_lapack_ctfttp(VALUE mLapack){
|
|
74
|
+
rb_define_module_function(mLapack, "ctfttp", rblapack_ctfttp, -1);
|
|
75
|
+
}
|
data/ext/ctfttr.c
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
#include "rb_lapack.h"
|
|
2
|
+
|
|
3
|
+
extern VOID ctfttr_(char* transr, char* uplo, integer* n, complex* arf, complex* a, integer* lda, integer* info);
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
static VALUE
|
|
7
|
+
rblapack_ctfttr(int argc, VALUE *argv, VALUE self){
|
|
8
|
+
VALUE rblapack_transr;
|
|
9
|
+
char transr;
|
|
10
|
+
VALUE rblapack_uplo;
|
|
11
|
+
char uplo;
|
|
12
|
+
VALUE rblapack_arf;
|
|
13
|
+
complex *arf;
|
|
14
|
+
VALUE rblapack_a;
|
|
15
|
+
complex *a;
|
|
16
|
+
VALUE rblapack_info;
|
|
17
|
+
integer info;
|
|
18
|
+
|
|
19
|
+
integer ldarf;
|
|
20
|
+
integer lda;
|
|
21
|
+
integer n;
|
|
22
|
+
|
|
23
|
+
VALUE rblapack_options;
|
|
24
|
+
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
25
|
+
argc--;
|
|
26
|
+
rblapack_options = argv[argc];
|
|
27
|
+
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
28
|
+
printf("%s\n", "USAGE:\n a, info = NumRu::Lapack.ctfttr( transr, uplo, arf, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE CTFTTR( TRANSR, UPLO, N, ARF, A, LDA, INFO )\n\n* Purpose\n* =======\n*\n* CTFTTR copies a triangular matrix A from rectangular full packed\n* format (TF) to standard full format (TR).\n*\n\n* Arguments\n* =========\n*\n* TRANSR (input) CHARACTER*1\n* = 'N': ARF is in Normal format;\n* = 'C': ARF is in Conjugate-transpose format;\n*\n* UPLO (input) CHARACTER*1\n* = 'U': A is upper triangular;\n* = 'L': A is lower triangular.\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 0.\n*\n* ARF (input) COMPLEX array, dimension ( N*(N+1)/2 ),\n* On entry, the upper or lower triangular matrix A stored in\n* RFP format. For a further discussion see Notes below.\n*\n* A (output) COMPLEX array, dimension ( LDA, N ) \n* On exit, the triangular matrix A. If UPLO = 'U', the\n* leading N-by-N upper triangular part of the array A contains\n* the upper triangular matrix, and the strictly lower\n* triangular part of A is not referenced. If UPLO = 'L', the\n* leading N-by-N lower triangular part of the array A contains\n* the lower triangular matrix, and the strictly upper\n* triangular part of A is not referenced.\n*\n* LDA (input) INTEGER\n* The leading dimension of the array A. LDA >= max(1,N).\n*\n* INFO (output) INTEGER\n* = 0: successful exit\n* < 0: if INFO = -i, the i-th argument had an illegal value\n*\n\n* Further Details\n* ===============\n*\n* We first consider Standard Packed Format when N is even.\n* We give an example where N = 6.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 05 00\n* 11 12 13 14 15 10 11\n* 22 23 24 25 20 21 22\n* 33 34 35 30 31 32 33\n* 44 45 40 41 42 43 44\n* 55 50 51 52 53 54 55\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:5,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(4:6,0:2) consists of\n* conjugate-transpose of the first three columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(1:6,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:2,0:2) consists of\n* conjugate-transpose of the last three columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N even and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- -- --\n* 03 04 05 33 43 53\n* -- --\n* 13 14 15 00 44 54\n* --\n* 23 24 25 10 11 55\n*\n* 33 34 35 20 21 22\n* --\n* 00 44 45 30 31 32\n* -- --\n* 01 11 55 40 41 42\n* -- -- --\n* 02 12 22 50 51 52\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- -- --\n* 03 13 23 33 00 01 02 33 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 11 12 43 44 11 21 31 41 51\n* -- -- -- -- -- -- -- -- -- --\n* 05 15 25 35 45 55 22 53 54 55 22 32 42 52\n*\n*\n* We next consider Standard Packed Format when N is odd.\n* We give an example where N = 5.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 00\n* 11 12 13 14 10 11\n* 22 23 24 20 21 22\n* 33 34 30 31 32 33\n* 44 40 41 42 43 44\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:4,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(3:4,0:1) consists of\n* conjugate-transpose of the first two columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(0:4,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:1,1:2) consists of\n* conjugate-transpose of the last two columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N odd and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- --\n* 02 03 04 00 33 43\n* --\n* 12 13 14 10 11 44\n*\n* 22 23 24 20 21 22\n* --\n* 00 33 34 30 31 32\n* -- --\n* 01 11 44 40 41 42\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- --\n* 02 12 22 00 01 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- --\n* 03 13 23 33 11 33 11 21 31 41 51\n* -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 43 44 22 32 42 52\n*\n* =====================================================================\n*\n\n");
|
|
29
|
+
return Qnil;
|
|
30
|
+
}
|
|
31
|
+
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
32
|
+
printf("%s\n", "USAGE:\n a, info = NumRu::Lapack.ctfttr( transr, uplo, arf, [:usage => usage, :help => help])\n");
|
|
33
|
+
return Qnil;
|
|
34
|
+
}
|
|
35
|
+
} else
|
|
36
|
+
rblapack_options = Qnil;
|
|
37
|
+
if (argc != 3 && argc != 3)
|
|
38
|
+
rb_raise(rb_eArgError,"wrong number of arguments (%d for 3)", argc);
|
|
39
|
+
rblapack_transr = argv[0];
|
|
40
|
+
rblapack_uplo = argv[1];
|
|
41
|
+
rblapack_arf = argv[2];
|
|
42
|
+
if (argc == 3) {
|
|
43
|
+
} else if (rblapack_options != Qnil) {
|
|
44
|
+
} else {
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
if (!NA_IsNArray(rblapack_arf))
|
|
48
|
+
rb_raise(rb_eArgError, "arf (3th argument) must be NArray");
|
|
49
|
+
if (NA_RANK(rblapack_arf) != 1)
|
|
50
|
+
rb_raise(rb_eArgError, "rank of arf (3th argument) must be %d", 1);
|
|
51
|
+
ldarf = NA_SHAPE0(rblapack_arf);
|
|
52
|
+
if (NA_TYPE(rblapack_arf) != NA_SCOMPLEX)
|
|
53
|
+
rblapack_arf = na_change_type(rblapack_arf, NA_SCOMPLEX);
|
|
54
|
+
arf = NA_PTR_TYPE(rblapack_arf, complex*);
|
|
55
|
+
transr = StringValueCStr(rblapack_transr)[0];
|
|
56
|
+
n = ((int)sqrtf(ldarf*8+1.0f)-1)/2;
|
|
57
|
+
uplo = StringValueCStr(rblapack_uplo)[0];
|
|
58
|
+
lda = MAX(1,n);
|
|
59
|
+
{
|
|
60
|
+
int shape[2];
|
|
61
|
+
shape[0] = lda;
|
|
62
|
+
shape[1] = n;
|
|
63
|
+
rblapack_a = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
64
|
+
}
|
|
65
|
+
a = NA_PTR_TYPE(rblapack_a, complex*);
|
|
66
|
+
|
|
67
|
+
ctfttr_(&transr, &uplo, &n, arf, a, &lda, &info);
|
|
68
|
+
|
|
69
|
+
rblapack_info = INT2NUM(info);
|
|
70
|
+
return rb_ary_new3(2, rblapack_a, rblapack_info);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
void
|
|
74
|
+
init_lapack_ctfttr(VALUE mLapack){
|
|
75
|
+
rb_define_module_function(mLapack, "ctfttr", rblapack_ctfttr, -1);
|
|
76
|
+
}
|
data/ext/ctgevc.c
ADDED
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
#include "rb_lapack.h"
|
|
2
|
+
|
|
3
|
+
extern VOID ctgevc_(char* side, char* howmny, logical* select, integer* n, complex* s, integer* lds, complex* p, integer* ldp, complex* vl, integer* ldvl, complex* vr, integer* ldvr, integer* mm, integer* m, complex* work, real* rwork, integer* info);
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
static VALUE
|
|
7
|
+
rblapack_ctgevc(int argc, VALUE *argv, VALUE self){
|
|
8
|
+
VALUE rblapack_side;
|
|
9
|
+
char side;
|
|
10
|
+
VALUE rblapack_howmny;
|
|
11
|
+
char howmny;
|
|
12
|
+
VALUE rblapack_select;
|
|
13
|
+
logical *select;
|
|
14
|
+
VALUE rblapack_s;
|
|
15
|
+
complex *s;
|
|
16
|
+
VALUE rblapack_p;
|
|
17
|
+
complex *p;
|
|
18
|
+
VALUE rblapack_vl;
|
|
19
|
+
complex *vl;
|
|
20
|
+
VALUE rblapack_vr;
|
|
21
|
+
complex *vr;
|
|
22
|
+
VALUE rblapack_m;
|
|
23
|
+
integer m;
|
|
24
|
+
VALUE rblapack_info;
|
|
25
|
+
integer info;
|
|
26
|
+
VALUE rblapack_vl_out__;
|
|
27
|
+
complex *vl_out__;
|
|
28
|
+
VALUE rblapack_vr_out__;
|
|
29
|
+
complex *vr_out__;
|
|
30
|
+
complex *work;
|
|
31
|
+
real *rwork;
|
|
32
|
+
|
|
33
|
+
integer n;
|
|
34
|
+
integer lds;
|
|
35
|
+
integer ldp;
|
|
36
|
+
integer ldvl;
|
|
37
|
+
integer mm;
|
|
38
|
+
integer ldvr;
|
|
39
|
+
|
|
40
|
+
VALUE rblapack_options;
|
|
41
|
+
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
42
|
+
argc--;
|
|
43
|
+
rblapack_options = argv[argc];
|
|
44
|
+
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
45
|
+
printf("%s\n", "USAGE:\n m, info, vl, vr = NumRu::Lapack.ctgevc( side, howmny, select, s, p, vl, vr, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE CTGEVC( SIDE, HOWMNY, SELECT, N, S, LDS, P, LDP, VL, LDVL, VR, LDVR, MM, M, WORK, RWORK, INFO )\n\n* Purpose\n* =======\n*\n* CTGEVC computes some or all of the right and/or left eigenvectors of\n* a pair of complex matrices (S,P), where S and P are upper triangular.\n* Matrix pairs of this type are produced by the generalized Schur\n* factorization of a complex matrix pair (A,B):\n* \n* A = Q*S*Z**H, B = Q*P*Z**H\n* \n* as computed by CGGHRD + CHGEQZ.\n* \n* The right eigenvector x and the left eigenvector y of (S,P)\n* corresponding to an eigenvalue w are defined by:\n* \n* S*x = w*P*x, (y**H)*S = w*(y**H)*P,\n* \n* where y**H denotes the conjugate tranpose of y.\n* The eigenvalues are not input to this routine, but are computed\n* directly from the diagonal elements of S and P.\n* \n* This routine returns the matrices X and/or Y of right and left\n* eigenvectors of (S,P), or the products Z*X and/or Q*Y,\n* where Z and Q are input matrices.\n* If Q and Z are the unitary factors from the generalized Schur\n* factorization of a matrix pair (A,B), then Z*X and Q*Y\n* are the matrices of right and left eigenvectors of (A,B).\n*\n\n* Arguments\n* =========\n*\n* SIDE (input) CHARACTER*1\n* = 'R': compute right eigenvectors only;\n* = 'L': compute left eigenvectors only;\n* = 'B': compute both right and left eigenvectors.\n*\n* HOWMNY (input) CHARACTER*1\n* = 'A': compute all right and/or left eigenvectors;\n* = 'B': compute all right and/or left eigenvectors,\n* backtransformed by the matrices in VR and/or VL;\n* = 'S': compute selected right and/or left eigenvectors,\n* specified by the logical array SELECT.\n*\n* SELECT (input) LOGICAL array, dimension (N)\n* If HOWMNY='S', SELECT specifies the eigenvectors to be\n* computed. The eigenvector corresponding to the j-th\n* eigenvalue is computed if SELECT(j) = .TRUE..\n* Not referenced if HOWMNY = 'A' or 'B'.\n*\n* N (input) INTEGER\n* The order of the matrices S and P. N >= 0.\n*\n* S (input) COMPLEX array, dimension (LDS,N)\n* The upper triangular matrix S from a generalized Schur\n* factorization, as computed by CHGEQZ.\n*\n* LDS (input) INTEGER\n* The leading dimension of array S. LDS >= max(1,N).\n*\n* P (input) COMPLEX array, dimension (LDP,N)\n* The upper triangular matrix P from a generalized Schur\n* factorization, as computed by CHGEQZ. P must have real\n* diagonal elements.\n*\n* LDP (input) INTEGER\n* The leading dimension of array P. LDP >= max(1,N).\n*\n* VL (input/output) COMPLEX array, dimension (LDVL,MM)\n* On entry, if SIDE = 'L' or 'B' and HOWMNY = 'B', VL must\n* contain an N-by-N matrix Q (usually the unitary matrix Q\n* of left Schur vectors returned by CHGEQZ).\n* On exit, if SIDE = 'L' or 'B', VL contains:\n* if HOWMNY = 'A', the matrix Y of left eigenvectors of (S,P);\n* if HOWMNY = 'B', the matrix Q*Y;\n* if HOWMNY = 'S', the left eigenvectors of (S,P) specified by\n* SELECT, stored consecutively in the columns of\n* VL, in the same order as their eigenvalues.\n* Not referenced if SIDE = 'R'.\n*\n* LDVL (input) INTEGER\n* The leading dimension of array VL. LDVL >= 1, and if\n* SIDE = 'L' or 'l' or 'B' or 'b', LDVL >= N.\n*\n* VR (input/output) COMPLEX array, dimension (LDVR,MM)\n* On entry, if SIDE = 'R' or 'B' and HOWMNY = 'B', VR must\n* contain an N-by-N matrix Q (usually the unitary matrix Z\n* of right Schur vectors returned by CHGEQZ).\n* On exit, if SIDE = 'R' or 'B', VR contains:\n* if HOWMNY = 'A', the matrix X of right eigenvectors of (S,P);\n* if HOWMNY = 'B', the matrix Z*X;\n* if HOWMNY = 'S', the right eigenvectors of (S,P) specified by\n* SELECT, stored consecutively in the columns of\n* VR, in the same order as their eigenvalues.\n* Not referenced if SIDE = 'L'.\n*\n* LDVR (input) INTEGER\n* The leading dimension of the array VR. LDVR >= 1, and if\n* SIDE = 'R' or 'B', LDVR >= N.\n*\n* MM (input) INTEGER\n* The number of columns in the arrays VL and/or VR. MM >= M.\n*\n* M (output) INTEGER\n* The number of columns in the arrays VL and/or VR actually\n* used to store the eigenvectors. If HOWMNY = 'A' or 'B', M\n* is set to N. Each selected eigenvector occupies one column.\n*\n* WORK (workspace) COMPLEX array, dimension (2*N)\n*\n* RWORK (workspace) REAL array, dimension (2*N)\n*\n* INFO (output) INTEGER\n* = 0: successful exit.\n* < 0: if INFO = -i, the i-th argument had an illegal value.\n*\n\n* =====================================================================\n*\n\n");
|
|
46
|
+
return Qnil;
|
|
47
|
+
}
|
|
48
|
+
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
49
|
+
printf("%s\n", "USAGE:\n m, info, vl, vr = NumRu::Lapack.ctgevc( side, howmny, select, s, p, vl, vr, [:usage => usage, :help => help])\n");
|
|
50
|
+
return Qnil;
|
|
51
|
+
}
|
|
52
|
+
} else
|
|
53
|
+
rblapack_options = Qnil;
|
|
54
|
+
if (argc != 7 && argc != 7)
|
|
55
|
+
rb_raise(rb_eArgError,"wrong number of arguments (%d for 7)", argc);
|
|
56
|
+
rblapack_side = argv[0];
|
|
57
|
+
rblapack_howmny = argv[1];
|
|
58
|
+
rblapack_select = argv[2];
|
|
59
|
+
rblapack_s = argv[3];
|
|
60
|
+
rblapack_p = argv[4];
|
|
61
|
+
rblapack_vl = argv[5];
|
|
62
|
+
rblapack_vr = argv[6];
|
|
63
|
+
if (argc == 7) {
|
|
64
|
+
} else if (rblapack_options != Qnil) {
|
|
65
|
+
} else {
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
if (!NA_IsNArray(rblapack_vl))
|
|
69
|
+
rb_raise(rb_eArgError, "vl (6th argument) must be NArray");
|
|
70
|
+
if (NA_RANK(rblapack_vl) != 2)
|
|
71
|
+
rb_raise(rb_eArgError, "rank of vl (6th argument) must be %d", 2);
|
|
72
|
+
ldvl = NA_SHAPE0(rblapack_vl);
|
|
73
|
+
mm = NA_SHAPE1(rblapack_vl);
|
|
74
|
+
if (NA_TYPE(rblapack_vl) != NA_SCOMPLEX)
|
|
75
|
+
rblapack_vl = na_change_type(rblapack_vl, NA_SCOMPLEX);
|
|
76
|
+
vl = NA_PTR_TYPE(rblapack_vl, complex*);
|
|
77
|
+
if (!NA_IsNArray(rblapack_p))
|
|
78
|
+
rb_raise(rb_eArgError, "p (5th argument) must be NArray");
|
|
79
|
+
if (NA_RANK(rblapack_p) != 2)
|
|
80
|
+
rb_raise(rb_eArgError, "rank of p (5th argument) must be %d", 2);
|
|
81
|
+
ldp = NA_SHAPE0(rblapack_p);
|
|
82
|
+
n = NA_SHAPE1(rblapack_p);
|
|
83
|
+
if (NA_TYPE(rblapack_p) != NA_SCOMPLEX)
|
|
84
|
+
rblapack_p = na_change_type(rblapack_p, NA_SCOMPLEX);
|
|
85
|
+
p = NA_PTR_TYPE(rblapack_p, complex*);
|
|
86
|
+
if (!NA_IsNArray(rblapack_s))
|
|
87
|
+
rb_raise(rb_eArgError, "s (4th argument) must be NArray");
|
|
88
|
+
if (NA_RANK(rblapack_s) != 2)
|
|
89
|
+
rb_raise(rb_eArgError, "rank of s (4th argument) must be %d", 2);
|
|
90
|
+
lds = NA_SHAPE0(rblapack_s);
|
|
91
|
+
if (NA_SHAPE1(rblapack_s) != n)
|
|
92
|
+
rb_raise(rb_eRuntimeError, "shape 1 of s must be the same as shape 1 of p");
|
|
93
|
+
if (NA_TYPE(rblapack_s) != NA_SCOMPLEX)
|
|
94
|
+
rblapack_s = na_change_type(rblapack_s, NA_SCOMPLEX);
|
|
95
|
+
s = NA_PTR_TYPE(rblapack_s, complex*);
|
|
96
|
+
howmny = StringValueCStr(rblapack_howmny)[0];
|
|
97
|
+
side = StringValueCStr(rblapack_side)[0];
|
|
98
|
+
if (!NA_IsNArray(rblapack_select))
|
|
99
|
+
rb_raise(rb_eArgError, "select (3th argument) must be NArray");
|
|
100
|
+
if (NA_RANK(rblapack_select) != 1)
|
|
101
|
+
rb_raise(rb_eArgError, "rank of select (3th argument) must be %d", 1);
|
|
102
|
+
if (NA_SHAPE0(rblapack_select) != n)
|
|
103
|
+
rb_raise(rb_eRuntimeError, "shape 0 of select must be the same as shape 1 of p");
|
|
104
|
+
if (NA_TYPE(rblapack_select) != NA_LINT)
|
|
105
|
+
rblapack_select = na_change_type(rblapack_select, NA_LINT);
|
|
106
|
+
select = NA_PTR_TYPE(rblapack_select, logical*);
|
|
107
|
+
if (!NA_IsNArray(rblapack_vr))
|
|
108
|
+
rb_raise(rb_eArgError, "vr (7th argument) must be NArray");
|
|
109
|
+
if (NA_RANK(rblapack_vr) != 2)
|
|
110
|
+
rb_raise(rb_eArgError, "rank of vr (7th argument) must be %d", 2);
|
|
111
|
+
ldvr = NA_SHAPE0(rblapack_vr);
|
|
112
|
+
if (NA_SHAPE1(rblapack_vr) != mm)
|
|
113
|
+
rb_raise(rb_eRuntimeError, "shape 1 of vr must be the same as shape 1 of vl");
|
|
114
|
+
if (NA_TYPE(rblapack_vr) != NA_SCOMPLEX)
|
|
115
|
+
rblapack_vr = na_change_type(rblapack_vr, NA_SCOMPLEX);
|
|
116
|
+
vr = NA_PTR_TYPE(rblapack_vr, complex*);
|
|
117
|
+
{
|
|
118
|
+
int shape[2];
|
|
119
|
+
shape[0] = ldvl;
|
|
120
|
+
shape[1] = mm;
|
|
121
|
+
rblapack_vl_out__ = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
122
|
+
}
|
|
123
|
+
vl_out__ = NA_PTR_TYPE(rblapack_vl_out__, complex*);
|
|
124
|
+
MEMCPY(vl_out__, vl, complex, NA_TOTAL(rblapack_vl));
|
|
125
|
+
rblapack_vl = rblapack_vl_out__;
|
|
126
|
+
vl = vl_out__;
|
|
127
|
+
{
|
|
128
|
+
int shape[2];
|
|
129
|
+
shape[0] = ldvr;
|
|
130
|
+
shape[1] = mm;
|
|
131
|
+
rblapack_vr_out__ = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
132
|
+
}
|
|
133
|
+
vr_out__ = NA_PTR_TYPE(rblapack_vr_out__, complex*);
|
|
134
|
+
MEMCPY(vr_out__, vr, complex, NA_TOTAL(rblapack_vr));
|
|
135
|
+
rblapack_vr = rblapack_vr_out__;
|
|
136
|
+
vr = vr_out__;
|
|
137
|
+
work = ALLOC_N(complex, (2*n));
|
|
138
|
+
rwork = ALLOC_N(real, (2*n));
|
|
139
|
+
|
|
140
|
+
ctgevc_(&side, &howmny, select, &n, s, &lds, p, &ldp, vl, &ldvl, vr, &ldvr, &mm, &m, work, rwork, &info);
|
|
141
|
+
|
|
142
|
+
free(work);
|
|
143
|
+
free(rwork);
|
|
144
|
+
rblapack_m = INT2NUM(m);
|
|
145
|
+
rblapack_info = INT2NUM(info);
|
|
146
|
+
return rb_ary_new3(4, rblapack_m, rblapack_info, rblapack_vl, rblapack_vr);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
void
|
|
150
|
+
init_lapack_ctgevc(VALUE mLapack){
|
|
151
|
+
rb_define_module_function(mLapack, "ctgevc", rblapack_ctgevc, -1);
|
|
152
|
+
}
|