ruby-lapack 1.6 → 1.7
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.
- checksums.yaml +7 -0
- data/Rakefile +1 -1
- data/dev/make_csrc.rb +8 -2
- data/ext/extconf.rb +15 -11
- data/ext/rb_lapack.h +7 -1
- metadata +48 -1700
- data/ext/cbbcsd.c +0 -283
- data/ext/cbdsqr.c +0 -182
- data/ext/cgbbrd.c +0 -157
- data/ext/cgbcon.c +0 -98
- data/ext/cgbequ.c +0 -98
- data/ext/cgbequb.c +0 -96
- data/ext/cgbrfs.c +0 -161
- data/ext/cgbrfsx.c +0 -249
- data/ext/cgbsv.c +0 -115
- data/ext/cgbsvx.c +0 -286
- data/ext/cgbsvxx.c +0 -289
- data/ext/cgbtf2.c +0 -93
- data/ext/cgbtrf.c +0 -93
- data/ext/cgbtrs.c +0 -111
- data/ext/cgebak.c +0 -101
- data/ext/cgebal.c +0 -91
- data/ext/cgebd2.c +0 -112
- data/ext/cgebrd.c +0 -127
- data/ext/cgecon.c +0 -78
- data/ext/cgeequ.c +0 -88
- data/ext/cgeequb.c +0 -88
- data/ext/cgees.c +0 -142
- data/ext/cgeesx.c +0 -152
- data/ext/cgeev.c +0 -132
- data/ext/cgeevx.c +0 -173
- data/ext/cgegs.c +0 -166
- data/ext/cgegv.c +0 -171
- data/ext/cgehd2.c +0 -92
- data/ext/cgehrd.c +0 -107
- data/ext/cgelq2.c +0 -86
- data/ext/cgelqf.c +0 -103
- data/ext/cgels.c +0 -137
- data/ext/cgelsd.c +0 -154
- data/ext/cgelss.c +0 -151
- data/ext/cgelsx.c +0 -139
- data/ext/cgelsy.c +0 -166
- data/ext/cgeql2.c +0 -88
- data/ext/cgeqlf.c +0 -103
- data/ext/cgeqp3.c +0 -129
- data/ext/cgeqpf.c +0 -114
- data/ext/cgeqr2.c +0 -88
- data/ext/cgeqr2p.c +0 -88
- data/ext/cgeqrf.c +0 -103
- data/ext/cgeqrfp.c +0 -103
- data/ext/cgerfs.c +0 -153
- data/ext/cgerfsx.c +0 -219
- data/ext/cgerq2.c +0 -86
- data/ext/cgerqf.c +0 -103
- data/ext/cgesc2.c +0 -108
- data/ext/cgesdd.c +0 -135
- data/ext/cgesv.c +0 -107
- data/ext/cgesvd.c +0 -146
- data/ext/cgesvx.c +0 -278
- data/ext/cgesvxx.c +0 -281
- data/ext/cgetc2.c +0 -89
- data/ext/cgetf2.c +0 -85
- data/ext/cgetrf.c +0 -85
- data/ext/cgetri.c +0 -103
- data/ext/cgetrs.c +0 -103
- data/ext/cggbak.c +0 -113
- data/ext/cggbal.c +0 -128
- data/ext/cgges.c +0 -192
- data/ext/cggesx.c +0 -230
- data/ext/cggev.c +0 -171
- data/ext/cggevx.c +0 -226
- data/ext/cggglm.c +0 -156
- data/ext/cgghrd.c +0 -167
- data/ext/cgglse.c +0 -171
- data/ext/cggqrf.c +0 -137
- data/ext/cggrqf.c +0 -141
- data/ext/cggsvd.c +0 -184
- data/ext/cggsvp.c +0 -174
- data/ext/cgtcon.c +0 -121
- data/ext/cgtrfs.c +0 -209
- data/ext/cgtsv.c +0 -142
- data/ext/cgtsvx.c +0 -256
- data/ext/cgttrf.c +0 -132
- data/ext/cgttrs.c +0 -137
- data/ext/cgtts2.c +0 -134
- data/ext/chbev.c +0 -110
- data/ext/chbevd.c +0 -158
- data/ext/chbevx.c +0 -160
- data/ext/chbgst.c +0 -120
- data/ext/chbgv.c +0 -140
- data/ext/chbgvd.c +0 -188
- data/ext/chbgvx.c +0 -189
- data/ext/chbtrd.c +0 -130
- data/ext/checon.c +0 -87
- data/ext/cheequb.c +0 -82
- data/ext/cheev.c +0 -110
- data/ext/cheevd.c +0 -143
- data/ext/cheevr.c +0 -190
- data/ext/cheevx.c +0 -160
- data/ext/chegs2.c +0 -95
- data/ext/chegst.c +0 -95
- data/ext/chegv.c +0 -140
- data/ext/chegvd.c +0 -173
- data/ext/chegvx.c +0 -190
- data/ext/cherfs.c +0 -153
- data/ext/cherfsx.c +0 -218
- data/ext/chesv.c +0 -123
- data/ext/chesvx.c +0 -183
- data/ext/chesvxx.c +0 -258
- data/ext/chetd2.c +0 -101
- data/ext/chetf2.c +0 -85
- data/ext/chetrd.c +0 -113
- data/ext/chetrf.c +0 -97
- data/ext/chetri.c +0 -92
- data/ext/chetrs.c +0 -103
- data/ext/chetrs2.c +0 -106
- data/ext/chfrk.c +0 -109
- data/ext/chgeqz.c +0 -208
- data/ext/chla_transtype.c +0 -51
- data/ext/chpcon.c +0 -85
- data/ext/chpev.c +0 -105
- data/ext/chpevd.c +0 -153
- data/ext/chpevx.c +0 -144
- data/ext/chpgst.c +0 -94
- data/ext/chpgv.c +0 -132
- data/ext/chpgvd.c +0 -170
- data/ext/chpgvx.c +0 -170
- data/ext/chprfs.c +0 -149
- data/ext/chpsv.c +0 -110
- data/ext/chpsvx.c +0 -163
- data/ext/chptrd.c +0 -100
- data/ext/chptrf.c +0 -84
- data/ext/chptri.c +0 -89
- data/ext/chptrs.c +0 -101
- data/ext/chsein.c +0 -185
- data/ext/chseqr.c +0 -145
- data/ext/cla_gbamv.c +0 -127
- data/ext/cla_gbrcond_c.c +0 -142
- data/ext/cla_gbrcond_x.c +0 -138
- data/ext/cla_gbrfsx_extended.c +0 -295
- data/ext/cla_gbrpvgrw.c +0 -87
- data/ext/cla_geamv.c +0 -117
- data/ext/cla_gercond_c.c +0 -134
- data/ext/cla_gercond_x.c +0 -130
- data/ext/cla_gerfsx_extended.c +0 -281
- data/ext/cla_heamv.c +0 -116
- data/ext/cla_hercond_c.c +0 -134
- data/ext/cla_hercond_x.c +0 -130
- data/ext/cla_herfsx_extended.c +0 -283
- data/ext/cla_herpvgrw.c +0 -107
- data/ext/cla_lin_berr.c +0 -84
- data/ext/cla_porcond_c.c +0 -122
- data/ext/cla_porcond_x.c +0 -118
- data/ext/cla_porfsx_extended.c +0 -271
- data/ext/cla_porpvgrw.c +0 -95
- data/ext/cla_rpvgrw.c +0 -79
- data/ext/cla_syamv.c +0 -115
- data/ext/cla_syrcond_c.c +0 -134
- data/ext/cla_syrcond_x.c +0 -130
- data/ext/cla_syrfsx_extended.c +0 -283
- data/ext/cla_syrpvgrw.c +0 -107
- data/ext/cla_wwaddw.c +0 -102
- data/ext/clabrd.c +0 -132
- data/ext/clacgv.c +0 -75
- data/ext/clacn2.c +0 -103
- data/ext/clacon.c +0 -80
- data/ext/clacp2.c +0 -77
- data/ext/clacpy.c +0 -77
- data/ext/clacrm.c +0 -90
- data/ext/clacrt.c +0 -108
- data/ext/cladiv.c +0 -57
- data/ext/claed0.c +0 -134
- data/ext/claed7.c +0 -247
- data/ext/claed8.c +0 -198
- data/ext/claein.c +0 -113
- data/ext/claesy.c +0 -74
- data/ext/claev2.c +0 -71
- data/ext/clag2z.c +0 -76
- data/ext/clags2.c +0 -92
- data/ext/clagtm.c +0 -132
- data/ext/clahef.c +0 -97
- data/ext/clahqr.c +0 -135
- data/ext/clahr2.c +0 -112
- data/ext/clahrd.c +0 -112
- data/ext/claic1.c +0 -90
- data/ext/clals0.c +0 -201
- data/ext/clalsa.c +0 -270
- data/ext/clalsd.c +0 -145
- data/ext/clangb.c +0 -76
- data/ext/clange.c +0 -74
- data/ext/clangt.c +0 -87
- data/ext/clanhb.c +0 -78
- data/ext/clanhe.c +0 -72
- data/ext/clanhf.c +0 -80
- data/ext/clanhp.c +0 -74
- data/ext/clanhs.c +0 -70
- data/ext/clanht.c +0 -75
- data/ext/clansb.c +0 -78
- data/ext/clansp.c +0 -74
- data/ext/clansy.c +0 -72
- data/ext/clantb.c +0 -80
- data/ext/clantp.c +0 -80
- data/ext/clantr.c +0 -82
- data/ext/clapll.c +0 -105
- data/ext/clapmr.c +0 -97
- data/ext/clapmt.c +0 -101
- data/ext/claqgb.c +0 -117
- data/ext/claqge.c +0 -109
- data/ext/claqhb.c +0 -97
- data/ext/claqhe.c +0 -97
- data/ext/claqhp.c +0 -94
- data/ext/claqp2.c +0 -158
- data/ext/claqps.c +0 -208
- data/ext/claqr0.c +0 -145
- data/ext/claqr1.c +0 -76
- data/ext/claqr2.c +0 -174
- data/ext/claqr3.c +0 -174
- data/ext/claqr4.c +0 -145
- data/ext/claqr5.c +0 -179
- data/ext/claqsb.c +0 -101
- data/ext/claqsp.c +0 -94
- data/ext/claqsy.c +0 -97
- data/ext/clar1v.c +0 -173
- data/ext/clar2v.c +0 -149
- data/ext/clarcm.c +0 -86
- data/ext/clarf.c +0 -102
- data/ext/clarfb.c +0 -123
- data/ext/clarfg.c +0 -84
- data/ext/clarfgp.c +0 -84
- data/ext/clarft.c +0 -105
- data/ext/clarfx.c +0 -94
- data/ext/clargv.c +0 -114
- data/ext/clarnv.c +0 -83
- data/ext/clarrv.c +0 -271
- data/ext/clarscl2.c +0 -82
- data/ext/clartg.c +0 -63
- data/ext/clartv.c +0 -130
- data/ext/clarz.c +0 -106
- data/ext/clarzb.c +0 -127
- data/ext/clarzt.c +0 -105
- data/ext/clascl.c +0 -97
- data/ext/clascl2.c +0 -82
- data/ext/claset.c +0 -88
- data/ext/clasr.c +0 -110
- data/ext/classq.c +0 -70
- data/ext/claswp.c +0 -94
- data/ext/clasyf.c +0 -97
- data/ext/clatbs.c +0 -130
- data/ext/clatdf.c +0 -119
- data/ext/clatps.c +0 -124
- data/ext/clatrd.c +0 -105
- data/ext/clatrs.c +0 -126
- data/ext/clatrz.c +0 -87
- data/ext/clatzm.c +0 -132
- data/ext/clauu2.c +0 -77
- data/ext/clauum.c +0 -77
- data/ext/cpbcon.c +0 -82
- data/ext/cpbequ.c +0 -83
- data/ext/cpbrfs.c +0 -145
- data/ext/cpbstf.c +0 -81
- data/ext/cpbsv.c +0 -107
- data/ext/cpbsvx.c +0 -201
- data/ext/cpbtf2.c +0 -81
- data/ext/cpbtrf.c +0 -81
- data/ext/cpbtrs.c +0 -95
- data/ext/cpftrf.c +0 -82
- data/ext/cpftri.c +0 -82
- data/ext/cpftrs.c +0 -97
- data/ext/cpocon.c +0 -78
- data/ext/cpoequ.c +0 -75
- data/ext/cpoequb.c +0 -75
- data/ext/cporfs.c +0 -141
- data/ext/cporfsx.c +0 -206
- data/ext/cposv.c +0 -103
- data/ext/cposvx.c +0 -197
- data/ext/cposvxx.c +0 -235
- data/ext/cpotf2.c +0 -77
- data/ext/cpotrf.c +0 -77
- data/ext/cpotri.c +0 -77
- data/ext/cpotrs.c +0 -91
- data/ext/cppcon.c +0 -78
- data/ext/cppequ.c +0 -79
- data/ext/cpprfs.c +0 -139
- data/ext/cppsv.c +0 -104
- data/ext/cppsvx.c +0 -191
- data/ext/cpptrf.c +0 -78
- data/ext/cpptri.c +0 -78
- data/ext/cpptrs.c +0 -93
- data/ext/cpstf2.c +0 -95
- data/ext/cpstrf.c +0 -95
- data/ext/cptcon.c +0 -81
- data/ext/cpteqr.c +0 -126
- data/ext/cptrfs.c +0 -161
- data/ext/cptsv.c +0 -119
- data/ext/cptsvx.c +0 -171
- data/ext/cpttrf.c +0 -93
- data/ext/cpttrs.c +0 -101
- data/ext/cptts2.c +0 -98
- data/ext/crot.c +0 -107
- data/ext/cspcon.c +0 -85
- data/ext/cspmv.c +0 -115
- data/ext/cspr.c +0 -96
- data/ext/csprfs.c +0 -149
- data/ext/cspsv.c +0 -110
- data/ext/cspsvx.c +0 -163
- data/ext/csptrf.c +0 -84
- data/ext/csptri.c +0 -89
- data/ext/csptrs.c +0 -101
- data/ext/csrscl.c +0 -79
- data/ext/cstedc.c +0 -177
- data/ext/cstegr.c +0 -188
- data/ext/cstein.c +0 -134
- data/ext/cstemr.c +0 -193
- data/ext/csteqr.c +0 -126
- data/ext/csycon.c +0 -87
- data/ext/csyconv.c +0 -84
- data/ext/csyequb.c +0 -82
- data/ext/csymv.c +0 -115
- data/ext/csyr.c +0 -95
- data/ext/csyrfs.c +0 -153
- data/ext/csyrfsx.c +0 -218
- data/ext/csysv.c +0 -129
- data/ext/csysvx.c +0 -183
- data/ext/csysvxx.c +0 -258
- data/ext/csyswapr.c +0 -82
- data/ext/csytf2.c +0 -85
- data/ext/csytrf.c +0 -97
- data/ext/csytri.c +0 -92
- data/ext/csytri2.c +0 -108
- data/ext/csytri2x.c +0 -96
- data/ext/csytrs.c +0 -103
- data/ext/csytrs2.c +0 -106
- data/ext/ctbcon.c +0 -86
- data/ext/ctbrfs.c +0 -127
- data/ext/ctbtrs.c +0 -103
- data/ext/ctfsm.c +0 -111
- data/ext/ctftri.c +0 -86
- data/ext/ctfttp.c +0 -79
- data/ext/ctfttr.c +0 -80
- data/ext/ctgevc.c +0 -156
- data/ext/ctgex2.c +0 -171
- data/ext/ctgexc.c +0 -172
- data/ext/ctgsen.c +0 -244
- data/ext/ctgsja.c +0 -227
- data/ext/ctgsna.c +0 -164
- data/ext/ctgsy2.c +0 -176
- data/ext/ctgsyl.c +0 -190
- data/ext/ctpcon.c +0 -82
- data/ext/ctprfs.c +0 -123
- data/ext/ctptri.c +0 -82
- data/ext/ctptrs.c +0 -101
- data/ext/ctpttf.c +0 -79
- data/ext/ctpttr.c +0 -76
- data/ext/ctrcon.c +0 -82
- data/ext/ctrevc.c +0 -154
- data/ext/ctrexc.c +0 -111
- data/ext/ctrrfs.c +0 -123
- data/ext/ctrsen.c +0 -154
- data/ext/ctrsna.c +0 -137
- data/ext/ctrsyl.c +0 -116
- data/ext/ctrti2.c +0 -81
- data/ext/ctrtri.c +0 -81
- data/ext/ctrtrs.c +0 -99
- data/ext/ctrttf.c +0 -77
- data/ext/ctrttp.c +0 -73
- data/ext/ctzrqf.c +0 -83
- data/ext/ctzrzf.c +0 -101
- data/ext/cunbdb.c +0 -232
- data/ext/cuncsd.c +0 -204
- data/ext/cung2l.c +0 -92
- data/ext/cung2r.c +0 -92
- data/ext/cungbr.c +0 -115
- data/ext/cunghr.c +0 -111
- data/ext/cungl2.c +0 -90
- data/ext/cunglq.c +0 -107
- data/ext/cungql.c +0 -107
- data/ext/cungqr.c +0 -107
- data/ext/cungr2.c +0 -90
- data/ext/cungrq.c +0 -107
- data/ext/cungtr.c +0 -107
- data/ext/cunm2l.c +0 -114
- data/ext/cunm2r.c +0 -114
- data/ext/cunmbr.c +0 -139
- data/ext/cunmhr.c +0 -133
- data/ext/cunml2.c +0 -110
- data/ext/cunmlq.c +0 -125
- data/ext/cunmql.c +0 -129
- data/ext/cunmqr.c +0 -129
- data/ext/cunmr2.c +0 -110
- data/ext/cunmr3.c +0 -114
- data/ext/cunmrq.c +0 -125
- data/ext/cunmrz.c +0 -129
- data/ext/cunmtr.c +0 -129
- data/ext/cupgtr.c +0 -91
- data/ext/cupmtr.c +0 -116
- data/ext/dbbcsd.c +0 -287
- data/ext/dbdsdc.c +0 -151
- data/ext/dbdsqr.c +0 -182
- data/ext/ddisna.c +0 -75
- data/ext/dgbbrd.c +0 -154
- data/ext/dgbcon.c +0 -98
- data/ext/dgbequ.c +0 -98
- data/ext/dgbequb.c +0 -96
- data/ext/dgbrfs.c +0 -161
- data/ext/dgbrfsx.c +0 -249
- data/ext/dgbsv.c +0 -115
- data/ext/dgbsvx.c +0 -286
- data/ext/dgbsvxx.c +0 -289
- data/ext/dgbtf2.c +0 -93
- data/ext/dgbtrf.c +0 -93
- data/ext/dgbtrs.c +0 -111
- data/ext/dgebak.c +0 -101
- data/ext/dgebal.c +0 -91
- data/ext/dgebd2.c +0 -112
- data/ext/dgebrd.c +0 -127
- data/ext/dgecon.c +0 -78
- data/ext/dgeequ.c +0 -88
- data/ext/dgeequb.c +0 -88
- data/ext/dgees.c +0 -148
- data/ext/dgeesx.c +0 -170
- data/ext/dgeev.c +0 -137
- data/ext/dgeevx.c +0 -181
- data/ext/dgegs.c +0 -171
- data/ext/dgegv.c +0 -171
- data/ext/dgehd2.c +0 -92
- data/ext/dgehrd.c +0 -107
- data/ext/dgejsv.c +0 -159
- data/ext/dgelq2.c +0 -86
- data/ext/dgelqf.c +0 -103
- data/ext/dgels.c +0 -137
- data/ext/dgelsd.c +0 -149
- data/ext/dgelss.c +0 -148
- data/ext/dgelsx.c +0 -136
- data/ext/dgelsy.c +0 -163
- data/ext/dgeql2.c +0 -88
- data/ext/dgeqlf.c +0 -103
- data/ext/dgeqp3.c +0 -126
- data/ext/dgeqpf.c +0 -111
- data/ext/dgeqr2.c +0 -88
- data/ext/dgeqr2p.c +0 -88
- data/ext/dgeqrf.c +0 -103
- data/ext/dgeqrfp.c +0 -103
- data/ext/dgerfs.c +0 -153
- data/ext/dgerfsx.c +0 -219
- data/ext/dgerq2.c +0 -86
- data/ext/dgerqf.c +0 -103
- data/ext/dgesc2.c +0 -108
- data/ext/dgesdd.c +0 -132
- data/ext/dgesv.c +0 -107
- data/ext/dgesvd.c +0 -143
- data/ext/dgesvj.c +0 -156
- data/ext/dgesvx.c +0 -278
- data/ext/dgesvxx.c +0 -281
- data/ext/dgetc2.c +0 -89
- data/ext/dgetf2.c +0 -85
- data/ext/dgetrf.c +0 -85
- data/ext/dgetri.c +0 -103
- data/ext/dgetrs.c +0 -103
- data/ext/dggbak.c +0 -113
- data/ext/dggbal.c +0 -128
- data/ext/dgges.c +0 -198
- data/ext/dggesx.c +0 -231
- data/ext/dggev.c +0 -171
- data/ext/dggevx.c +0 -229
- data/ext/dggglm.c +0 -156
- data/ext/dgghrd.c +0 -167
- data/ext/dgglse.c +0 -171
- data/ext/dggqrf.c +0 -137
- data/ext/dggrqf.c +0 -141
- data/ext/dggsvd.c +0 -181
- data/ext/dggsvp.c +0 -171
- data/ext/dgsvj0.c +0 -182
- data/ext/dgsvj1.c +0 -186
- data/ext/dgtcon.c +0 -124
- data/ext/dgtrfs.c +0 -209
- data/ext/dgtsv.c +0 -142
- data/ext/dgtsvx.c +0 -256
- data/ext/dgttrf.c +0 -132
- data/ext/dgttrs.c +0 -137
- data/ext/dgtts2.c +0 -134
- data/ext/dhgeqz.c +0 -213
- data/ext/dhsein.c +0 -205
- data/ext/dhseqr.c +0 -153
- data/ext/disnan.c +0 -51
- data/ext/dla_gbamv.c +0 -129
- data/ext/dla_gbrcond.c +0 -142
- data/ext/dla_gbrfsx_extended.c +0 -293
- data/ext/dla_gbrpvgrw.c +0 -87
- data/ext/dla_geamv.c +0 -119
- data/ext/dla_gercond.c +0 -134
- data/ext/dla_gerfsx_extended.c +0 -281
- data/ext/dla_lin_berr.c +0 -84
- data/ext/dla_porcond.c +0 -122
- data/ext/dla_porfsx_extended.c +0 -271
- data/ext/dla_porpvgrw.c +0 -95
- data/ext/dla_rpvgrw.c +0 -79
- data/ext/dla_syamv.c +0 -113
- data/ext/dla_syrcond.c +0 -134
- data/ext/dla_syrfsx_extended.c +0 -283
- data/ext/dla_syrpvgrw.c +0 -107
- data/ext/dla_wwaddw.c +0 -102
- data/ext/dlabad.c +0 -54
- data/ext/dlabrd.c +0 -132
- data/ext/dlacn2.c +0 -106
- data/ext/dlacon.c +0 -83
- data/ext/dlacpy.c +0 -77
- data/ext/dladiv.c +0 -66
- data/ext/dlae2.c +0 -62
- data/ext/dlaebz.c +0 -218
- data/ext/dlaed0.c +0 -127
- data/ext/dlaed1.c +0 -133
- data/ext/dlaed2.c +0 -189
- data/ext/dlaed3.c +0 -161
- data/ext/dlaed4.c +0 -90
- data/ext/dlaed5.c +0 -87
- data/ext/dlaed6.c +0 -90
- data/ext/dlaed7.c +0 -248
- data/ext/dlaed8.c +0 -206
- data/ext/dlaed9.c +0 -111
- data/ext/dlaeda.c +0 -160
- data/ext/dlaein.c +0 -143
- data/ext/dlaev2.c +0 -68
- data/ext/dlaexc.c +0 -118
- data/ext/dlag2.c +0 -91
- data/ext/dlag2s.c +0 -76
- data/ext/dlags2.c +0 -90
- data/ext/dlagtf.c +0 -140
- data/ext/dlagtm.c +0 -132
- data/ext/dlagts.c +0 -139
- data/ext/dlagv2.c +0 -132
- data/ext/dlahqr.c +0 -143
- data/ext/dlahr2.c +0 -112
- data/ext/dlahrd.c +0 -112
- data/ext/dlaic1.c +0 -89
- data/ext/dlaln2.c +0 -120
- data/ext/dlals0.c +0 -201
- data/ext/dlalsa.c +0 -270
- data/ext/dlalsd.c +0 -142
- data/ext/dlamrg.c +0 -80
- data/ext/dlaneg.c +0 -83
- data/ext/dlangb.c +0 -78
- data/ext/dlange.c +0 -74
- data/ext/dlangt.c +0 -87
- data/ext/dlanhs.c +0 -70
- data/ext/dlansb.c +0 -78
- data/ext/dlansf.c +0 -80
- data/ext/dlansp.c +0 -76
- data/ext/dlanst.c +0 -75
- data/ext/dlansy.c +0 -74
- data/ext/dlantb.c +0 -82
- data/ext/dlantp.c +0 -80
- data/ext/dlantr.c +0 -82
- data/ext/dlanv2.c +0 -82
- data/ext/dlapll.c +0 -105
- data/ext/dlapmr.c +0 -97
- data/ext/dlapmt.c +0 -101
- data/ext/dlapy2.c +0 -55
- data/ext/dlapy3.c +0 -59
- data/ext/dlaqgb.c +0 -117
- data/ext/dlaqge.c +0 -109
- data/ext/dlaqp2.c +0 -158
- data/ext/dlaqps.c +0 -208
- data/ext/dlaqr0.c +0 -153
- data/ext/dlaqr1.c +0 -82
- data/ext/dlaqr2.c +0 -182
- data/ext/dlaqr3.c +0 -182
- data/ext/dlaqr4.c +0 -153
- data/ext/dlaqr5.c +0 -200
- data/ext/dlaqsb.c +0 -101
- data/ext/dlaqsp.c +0 -94
- data/ext/dlaqsy.c +0 -97
- data/ext/dlaqtr.c +0 -114
- data/ext/dlar1v.c +0 -173
- data/ext/dlar2v.c +0 -149
- data/ext/dlarf.c +0 -101
- data/ext/dlarfb.c +0 -123
- data/ext/dlarfg.c +0 -83
- data/ext/dlarfgp.c +0 -83
- data/ext/dlarft.c +0 -105
- data/ext/dlarfx.c +0 -93
- data/ext/dlargv.c +0 -114
- data/ext/dlarnv.c +0 -83
- data/ext/dlarra.c +0 -124
- data/ext/dlarrb.c +0 -178
- data/ext/dlarrc.c +0 -96
- data/ext/dlarrd.c +0 -190
- data/ext/dlarre.c +0 -221
- data/ext/dlarrf.c +0 -176
- data/ext/dlarrj.c +0 -147
- data/ext/dlarrk.c +0 -97
- data/ext/dlarrr.c +0 -82
- data/ext/dlarrv.c +0 -271
- data/ext/dlarscl2.c +0 -82
- data/ext/dlartg.c +0 -61
- data/ext/dlartgp.c +0 -61
- data/ext/dlartgs.c +0 -62
- data/ext/dlartv.c +0 -130
- data/ext/dlaruv.c +0 -79
- data/ext/dlarz.c +0 -105
- data/ext/dlarzb.c +0 -127
- data/ext/dlarzt.c +0 -105
- data/ext/dlas2.c +0 -62
- data/ext/dlascl.c +0 -97
- data/ext/dlascl2.c +0 -82
- data/ext/dlasd0.c +0 -120
- data/ext/dlasd1.c +0 -162
- data/ext/dlasd2.c +0 -228
- data/ext/dlasd3.c +0 -202
- data/ext/dlasd4.c +0 -93
- data/ext/dlasd5.c +0 -90
- data/ext/dlasd6.c +0 -236
- data/ext/dlasd7.c +0 -225
- data/ext/dlasd8.c +0 -173
- data/ext/dlasda.c +0 -221
- data/ext/dlasdq.c +0 -186
- data/ext/dlasdt.c +0 -82
- data/ext/dlaset.c +0 -86
- data/ext/dlasq1.c +0 -96
- data/ext/dlasq2.c +0 -74
- data/ext/dlasq3.c +0 -138
- data/ext/dlasq4.c +0 -107
- data/ext/dlasq5.c +0 -94
- data/ext/dlasq6.c +0 -86
- data/ext/dlasr.c +0 -110
- data/ext/dlasrt.c +0 -74
- data/ext/dlassq.c +0 -70
- data/ext/dlasv2.c +0 -74
- data/ext/dlaswp.c +0 -94
- data/ext/dlasy2.c +0 -126
- data/ext/dlasyf.c +0 -97
- data/ext/dlat2s.c +0 -76
- data/ext/dlatbs.c +0 -130
- data/ext/dlatdf.c +0 -119
- data/ext/dlatps.c +0 -124
- data/ext/dlatrd.c +0 -105
- data/ext/dlatrs.c +0 -126
- data/ext/dlatrz.c +0 -87
- data/ext/dlatzm.c +0 -131
- data/ext/dlauu2.c +0 -77
- data/ext/dlauum.c +0 -77
- data/ext/dopgtr.c +0 -91
- data/ext/dopmtr.c +0 -116
- data/ext/dorbdb.c +0 -232
- data/ext/dorcsd.c +0 -197
- data/ext/dorg2l.c +0 -92
- data/ext/dorg2r.c +0 -92
- data/ext/dorgbr.c +0 -115
- data/ext/dorghr.c +0 -111
- data/ext/dorgl2.c +0 -90
- data/ext/dorglq.c +0 -107
- data/ext/dorgql.c +0 -107
- data/ext/dorgqr.c +0 -107
- data/ext/dorgr2.c +0 -90
- data/ext/dorgrq.c +0 -107
- data/ext/dorgtr.c +0 -107
- data/ext/dorm2l.c +0 -114
- data/ext/dorm2r.c +0 -114
- data/ext/dormbr.c +0 -139
- data/ext/dormhr.c +0 -133
- data/ext/dorml2.c +0 -110
- data/ext/dormlq.c +0 -125
- data/ext/dormql.c +0 -129
- data/ext/dormqr.c +0 -129
- data/ext/dormr2.c +0 -110
- data/ext/dormr3.c +0 -114
- data/ext/dormrq.c +0 -125
- data/ext/dormrz.c +0 -129
- data/ext/dormtr.c +0 -129
- data/ext/dpbcon.c +0 -82
- data/ext/dpbequ.c +0 -83
- data/ext/dpbrfs.c +0 -145
- data/ext/dpbstf.c +0 -81
- data/ext/dpbsv.c +0 -107
- data/ext/dpbsvx.c +0 -201
- data/ext/dpbtf2.c +0 -81
- data/ext/dpbtrf.c +0 -81
- data/ext/dpbtrs.c +0 -95
- data/ext/dpftrf.c +0 -82
- data/ext/dpftri.c +0 -82
- data/ext/dpftrs.c +0 -97
- data/ext/dpocon.c +0 -78
- data/ext/dpoequ.c +0 -75
- data/ext/dpoequb.c +0 -75
- data/ext/dporfs.c +0 -141
- data/ext/dporfsx.c +0 -206
- data/ext/dposv.c +0 -103
- data/ext/dposvx.c +0 -197
- data/ext/dposvxx.c +0 -235
- data/ext/dpotf2.c +0 -77
- data/ext/dpotrf.c +0 -77
- data/ext/dpotri.c +0 -77
- data/ext/dpotrs.c +0 -91
- data/ext/dppcon.c +0 -78
- data/ext/dppequ.c +0 -79
- data/ext/dpprfs.c +0 -139
- data/ext/dppsv.c +0 -104
- data/ext/dppsvx.c +0 -191
- data/ext/dpptrf.c +0 -78
- data/ext/dpptri.c +0 -78
- data/ext/dpptrs.c +0 -93
- data/ext/dpstf2.c +0 -95
- data/ext/dpstrf.c +0 -95
- data/ext/dptcon.c +0 -81
- data/ext/dpteqr.c +0 -126
- data/ext/dptrfs.c +0 -154
- data/ext/dptsv.c +0 -119
- data/ext/dptsvx.c +0 -168
- data/ext/dpttrf.c +0 -93
- data/ext/dpttrs.c +0 -97
- data/ext/dptts2.c +0 -94
- data/ext/drscl.c +0 -79
- data/ext/dsbev.c +0 -107
- data/ext/dsbevd.c +0 -140
- data/ext/dsbevx.c +0 -157
- data/ext/dsbgst.c +0 -117
- data/ext/dsbgv.c +0 -137
- data/ext/dsbgvd.c +0 -170
- data/ext/dsbgvx.c +0 -197
- data/ext/dsbtrd.c +0 -130
- data/ext/dsfrk.c +0 -109
- data/ext/dsgesv.c +0 -115
- data/ext/dspcon.c +0 -88
- data/ext/dspev.c +0 -102
- data/ext/dspevd.c +0 -135
- data/ext/dspevx.c +0 -141
- data/ext/dspgst.c +0 -94
- data/ext/dspgv.c +0 -129
- data/ext/dspgvd.c +0 -162
- data/ext/dspgvx.c +0 -168
- data/ext/dsposv.c +0 -111
- data/ext/dsprfs.c +0 -149
- data/ext/dspsv.c +0 -110
- data/ext/dspsvx.c +0 -163
- data/ext/dsptrd.c +0 -100
- data/ext/dsptrf.c +0 -84
- data/ext/dsptri.c +0 -89
- data/ext/dsptrs.c +0 -101
- data/ext/dstebz.c +0 -135
- data/ext/dstedc.c +0 -159
- data/ext/dstegr.c +0 -188
- data/ext/dstein.c +0 -134
- data/ext/dstemr.c +0 -193
- data/ext/dsteqr.c +0 -126
- data/ext/dsterf.c +0 -93
- data/ext/dstev.c +0 -111
- data/ext/dstevd.c +0 -144
- data/ext/dstevr.c +0 -188
- data/ext/dstevx.c +0 -158
- data/ext/dsycon.c +0 -90
- data/ext/dsyconv.c +0 -84
- data/ext/dsyequb.c +0 -82
- data/ext/dsyev.c +0 -107
- data/ext/dsyevd.c +0 -125
- data/ext/dsyevr.c +0 -172
- data/ext/dsyevx.c +0 -157
- data/ext/dsygs2.c +0 -95
- data/ext/dsygst.c +0 -95
- data/ext/dsygv.c +0 -137
- data/ext/dsygvd.c +0 -155
- data/ext/dsygvx.c +0 -187
- data/ext/dsyrfs.c +0 -153
- data/ext/dsyrfsx.c +0 -218
- data/ext/dsysv.c +0 -129
- data/ext/dsysvx.c +0 -183
- data/ext/dsysvxx.c +0 -258
- data/ext/dsyswapr.c +0 -82
- data/ext/dsytd2.c +0 -101
- data/ext/dsytf2.c +0 -85
- data/ext/dsytrd.c +0 -113
- data/ext/dsytrf.c +0 -97
- data/ext/dsytri.c +0 -92
- data/ext/dsytri2.c +0 -108
- data/ext/dsytri2x.c +0 -96
- data/ext/dsytrs.c +0 -103
- data/ext/dsytrs2.c +0 -106
- data/ext/dtbcon.c +0 -86
- data/ext/dtbrfs.c +0 -127
- data/ext/dtbtrs.c +0 -103
- data/ext/dtfsm.c +0 -110
- data/ext/dtftri.c +0 -86
- data/ext/dtfttp.c +0 -79
- data/ext/dtfttr.c +0 -80
- data/ext/dtgevc.c +0 -153
- data/ext/dtgex2.c +0 -180
- data/ext/dtgexc.c +0 -187
- data/ext/dtgsen.c +0 -252
- data/ext/dtgsja.c +0 -227
- data/ext/dtgsna.c +0 -164
- data/ext/dtgsy2.c +0 -182
- data/ext/dtgsyl.c +0 -190
- data/ext/dtpcon.c +0 -82
- data/ext/dtprfs.c +0 -123
- data/ext/dtptri.c +0 -82
- data/ext/dtptrs.c +0 -101
- data/ext/dtpttf.c +0 -79
- data/ext/dtpttr.c +0 -76
- data/ext/dtrcon.c +0 -82
- data/ext/dtrevc.c +0 -150
- data/ext/dtrexc.c +0 -116
- data/ext/dtrrfs.c +0 -123
- data/ext/dtrsen.c +0 -169
- data/ext/dtrsna.c +0 -137
- data/ext/dtrsyl.c +0 -116
- data/ext/dtrti2.c +0 -81
- data/ext/dtrtri.c +0 -81
- data/ext/dtrtrs.c +0 -99
- data/ext/dtrttf.c +0 -77
- data/ext/dtrttp.c +0 -73
- data/ext/dtzrqf.c +0 -83
- data/ext/dtzrzf.c +0 -101
- data/ext/dzsum1.c +0 -63
- data/ext/icmax1.c +0 -63
- data/ext/ieeeck.c +0 -59
- data/ext/ilaclc.c +0 -65
- data/ext/ilaclr.c +0 -65
- data/ext/iladiag.c +0 -51
- data/ext/iladlc.c +0 -65
- data/ext/iladlr.c +0 -65
- data/ext/ilaenv.c +0 -75
- data/ext/ilaprec.c +0 -51
- data/ext/ilaslc.c +0 -65
- data/ext/ilaslr.c +0 -65
- data/ext/ilatrans.c +0 -51
- data/ext/ilauplo.c +0 -51
- data/ext/ilaver.c +0 -53
- data/ext/ilazlc.c +0 -65
- data/ext/ilazlr.c +0 -65
- data/ext/iparmq.c +0 -75
- data/ext/izmax1.c +0 -63
- data/ext/lsamen.c +0 -59
- data/ext/rb_lapack.c +0 -3279
- data/ext/sbbcsd.c +0 -287
- data/ext/sbdsdc.c +0 -157
- data/ext/sbdsqr.c +0 -182
- data/ext/scsum1.c +0 -63
- data/ext/sdisna.c +0 -75
- data/ext/sgbbrd.c +0 -154
- data/ext/sgbcon.c +0 -98
- data/ext/sgbequ.c +0 -98
- data/ext/sgbequb.c +0 -96
- data/ext/sgbrfs.c +0 -161
- data/ext/sgbrfsx.c +0 -249
- data/ext/sgbsv.c +0 -115
- data/ext/sgbsvx.c +0 -286
- data/ext/sgbsvxx.c +0 -289
- data/ext/sgbtf2.c +0 -93
- data/ext/sgbtrf.c +0 -93
- data/ext/sgbtrs.c +0 -111
- data/ext/sgebak.c +0 -101
- data/ext/sgebal.c +0 -91
- data/ext/sgebd2.c +0 -112
- data/ext/sgebrd.c +0 -127
- data/ext/sgecon.c +0 -78
- data/ext/sgeequ.c +0 -88
- data/ext/sgeequb.c +0 -88
- data/ext/sgees.c +0 -148
- data/ext/sgeesx.c +0 -170
- data/ext/sgeev.c +0 -137
- data/ext/sgeevx.c +0 -181
- data/ext/sgegs.c +0 -171
- data/ext/sgegv.c +0 -171
- data/ext/sgehd2.c +0 -92
- data/ext/sgehrd.c +0 -107
- data/ext/sgejsv.c +0 -159
- data/ext/sgelq2.c +0 -86
- data/ext/sgelqf.c +0 -103
- data/ext/sgels.c +0 -137
- data/ext/sgelsd.c +0 -149
- data/ext/sgelss.c +0 -148
- data/ext/sgelsx.c +0 -136
- data/ext/sgelsy.c +0 -163
- data/ext/sgeql2.c +0 -88
- data/ext/sgeqlf.c +0 -103
- data/ext/sgeqp3.c +0 -126
- data/ext/sgeqpf.c +0 -111
- data/ext/sgeqr2.c +0 -88
- data/ext/sgeqr2p.c +0 -88
- data/ext/sgeqrf.c +0 -103
- data/ext/sgeqrfp.c +0 -103
- data/ext/sgerfs.c +0 -153
- data/ext/sgerfsx.c +0 -219
- data/ext/sgerq2.c +0 -86
- data/ext/sgerqf.c +0 -103
- data/ext/sgesc2.c +0 -108
- data/ext/sgesdd.c +0 -132
- data/ext/sgesv.c +0 -107
- data/ext/sgesvd.c +0 -143
- data/ext/sgesvj.c +0 -156
- data/ext/sgesvx.c +0 -278
- data/ext/sgesvxx.c +0 -281
- data/ext/sgetc2.c +0 -89
- data/ext/sgetf2.c +0 -85
- data/ext/sgetrf.c +0 -85
- data/ext/sgetri.c +0 -103
- data/ext/sgetrs.c +0 -103
- data/ext/sggbak.c +0 -113
- data/ext/sggbal.c +0 -128
- data/ext/sgges.c +0 -198
- data/ext/sggesx.c +0 -231
- data/ext/sggev.c +0 -171
- data/ext/sggevx.c +0 -229
- data/ext/sggglm.c +0 -156
- data/ext/sgghrd.c +0 -167
- data/ext/sgglse.c +0 -171
- data/ext/sggqrf.c +0 -137
- data/ext/sggrqf.c +0 -141
- data/ext/sggsvd.c +0 -181
- data/ext/sggsvp.c +0 -171
- data/ext/sgsvj0.c +0 -182
- data/ext/sgsvj1.c +0 -186
- data/ext/sgtcon.c +0 -124
- data/ext/sgtrfs.c +0 -209
- data/ext/sgtsv.c +0 -142
- data/ext/sgtsvx.c +0 -256
- data/ext/sgttrf.c +0 -132
- data/ext/sgttrs.c +0 -137
- data/ext/sgtts2.c +0 -134
- data/ext/shgeqz.c +0 -213
- data/ext/shsein.c +0 -205
- data/ext/shseqr.c +0 -153
- data/ext/sisnan.c +0 -51
- data/ext/sla_gbamv.c +0 -129
- data/ext/sla_gbrcond.c +0 -142
- data/ext/sla_gbrfsx_extended.c +0 -291
- data/ext/sla_gbrpvgrw.c +0 -87
- data/ext/sla_geamv.c +0 -119
- data/ext/sla_gercond.c +0 -134
- data/ext/sla_gerfsx_extended.c +0 -283
- data/ext/sla_lin_berr.c +0 -84
- data/ext/sla_porcond.c +0 -122
- data/ext/sla_porfsx_extended.c +0 -271
- data/ext/sla_porpvgrw.c +0 -95
- data/ext/sla_rpvgrw.c +0 -79
- data/ext/sla_syamv.c +0 -116
- data/ext/sla_syrcond.c +0 -134
- data/ext/sla_syrfsx_extended.c +0 -283
- data/ext/sla_syrpvgrw.c +0 -107
- data/ext/sla_wwaddw.c +0 -102
- data/ext/slabad.c +0 -54
- data/ext/slabrd.c +0 -132
- data/ext/slacn2.c +0 -106
- data/ext/slacon.c +0 -83
- data/ext/slacpy.c +0 -77
- data/ext/sladiv.c +0 -66
- data/ext/slae2.c +0 -62
- data/ext/slaebz.c +0 -218
- data/ext/slaed0.c +0 -127
- data/ext/slaed1.c +0 -133
- data/ext/slaed2.c +0 -189
- data/ext/slaed3.c +0 -161
- data/ext/slaed4.c +0 -90
- data/ext/slaed5.c +0 -87
- data/ext/slaed6.c +0 -90
- data/ext/slaed7.c +0 -248
- data/ext/slaed8.c +0 -206
- data/ext/slaed9.c +0 -111
- data/ext/slaeda.c +0 -160
- data/ext/slaein.c +0 -143
- data/ext/slaev2.c +0 -68
- data/ext/slaexc.c +0 -118
- data/ext/slag2.c +0 -91
- data/ext/slag2d.c +0 -76
- data/ext/slags2.c +0 -90
- data/ext/slagtf.c +0 -140
- data/ext/slagtm.c +0 -132
- data/ext/slagts.c +0 -139
- data/ext/slagv2.c +0 -132
- data/ext/slahqr.c +0 -143
- data/ext/slahr2.c +0 -112
- data/ext/slahrd.c +0 -114
- data/ext/slaic1.c +0 -89
- data/ext/slaln2.c +0 -120
- data/ext/slals0.c +0 -201
- data/ext/slalsa.c +0 -270
- data/ext/slalsd.c +0 -142
- data/ext/slamrg.c +0 -80
- data/ext/slaneg.c +0 -83
- data/ext/slangb.c +0 -78
- data/ext/slange.c +0 -74
- data/ext/slangt.c +0 -87
- data/ext/slanhs.c +0 -70
- data/ext/slansb.c +0 -78
- data/ext/slansf.c +0 -78
- data/ext/slansp.c +0 -76
- data/ext/slanst.c +0 -75
- data/ext/slansy.c +0 -74
- data/ext/slantb.c +0 -82
- data/ext/slantp.c +0 -80
- data/ext/slantr.c +0 -82
- data/ext/slanv2.c +0 -82
- data/ext/slapll.c +0 -105
- data/ext/slapmr.c +0 -97
- data/ext/slapmt.c +0 -101
- data/ext/slapy2.c +0 -55
- data/ext/slapy3.c +0 -59
- data/ext/slaqgb.c +0 -117
- data/ext/slaqge.c +0 -109
- data/ext/slaqp2.c +0 -158
- data/ext/slaqps.c +0 -208
- data/ext/slaqr0.c +0 -153
- data/ext/slaqr1.c +0 -82
- data/ext/slaqr2.c +0 -182
- data/ext/slaqr3.c +0 -182
- data/ext/slaqr4.c +0 -153
- data/ext/slaqr5.c +0 -200
- data/ext/slaqsb.c +0 -101
- data/ext/slaqsp.c +0 -94
- data/ext/slaqsy.c +0 -97
- data/ext/slaqtr.c +0 -114
- data/ext/slar1v.c +0 -173
- data/ext/slar2v.c +0 -149
- data/ext/slarf.c +0 -101
- data/ext/slarfb.c +0 -123
- data/ext/slarfg.c +0 -83
- data/ext/slarfgp.c +0 -83
- data/ext/slarft.c +0 -105
- data/ext/slarfx.c +0 -93
- data/ext/slargv.c +0 -114
- data/ext/slarnv.c +0 -83
- data/ext/slarra.c +0 -124
- data/ext/slarrb.c +0 -178
- data/ext/slarrc.c +0 -96
- data/ext/slarrd.c +0 -190
- data/ext/slarre.c +0 -221
- data/ext/slarrf.c +0 -176
- data/ext/slarrj.c +0 -147
- data/ext/slarrk.c +0 -97
- data/ext/slarrr.c +0 -82
- data/ext/slarrv.c +0 -271
- data/ext/slarscl2.c +0 -82
- data/ext/slartg.c +0 -61
- data/ext/slartgp.c +0 -61
- data/ext/slartgs.c +0 -62
- data/ext/slartv.c +0 -130
- data/ext/slaruv.c +0 -79
- data/ext/slarz.c +0 -105
- data/ext/slarzb.c +0 -127
- data/ext/slarzt.c +0 -105
- data/ext/slas2.c +0 -62
- data/ext/slascl.c +0 -97
- data/ext/slascl2.c +0 -82
- data/ext/slasd0.c +0 -120
- data/ext/slasd1.c +0 -160
- data/ext/slasd2.c +0 -228
- data/ext/slasd3.c +0 -212
- data/ext/slasd4.c +0 -93
- data/ext/slasd5.c +0 -90
- data/ext/slasd6.c +0 -236
- data/ext/slasd7.c +0 -225
- data/ext/slasd8.c +0 -173
- data/ext/slasda.c +0 -221
- data/ext/slasdq.c +0 -186
- data/ext/slasdt.c +0 -82
- data/ext/slaset.c +0 -86
- data/ext/slasq1.c +0 -96
- data/ext/slasq2.c +0 -74
- data/ext/slasq3.c +0 -138
- data/ext/slasq4.c +0 -107
- data/ext/slasq5.c +0 -94
- data/ext/slasq6.c +0 -86
- data/ext/slasr.c +0 -110
- data/ext/slasrt.c +0 -74
- data/ext/slassq.c +0 -70
- data/ext/slasv2.c +0 -74
- data/ext/slaswp.c +0 -94
- data/ext/slasy2.c +0 -126
- data/ext/slasyf.c +0 -97
- data/ext/slatbs.c +0 -130
- data/ext/slatdf.c +0 -119
- data/ext/slatps.c +0 -124
- data/ext/slatrd.c +0 -105
- data/ext/slatrs.c +0 -126
- data/ext/slatrz.c +0 -87
- data/ext/slatzm.c +0 -131
- data/ext/slauu2.c +0 -77
- data/ext/slauum.c +0 -77
- data/ext/sopgtr.c +0 -91
- data/ext/sopmtr.c +0 -116
- data/ext/sorbdb.c +0 -232
- data/ext/sorcsd.c +0 -197
- data/ext/sorg2l.c +0 -92
- data/ext/sorg2r.c +0 -92
- data/ext/sorgbr.c +0 -115
- data/ext/sorghr.c +0 -111
- data/ext/sorgl2.c +0 -90
- data/ext/sorglq.c +0 -107
- data/ext/sorgql.c +0 -107
- data/ext/sorgqr.c +0 -107
- data/ext/sorgr2.c +0 -90
- data/ext/sorgrq.c +0 -107
- data/ext/sorgtr.c +0 -107
- data/ext/sorm2l.c +0 -114
- data/ext/sorm2r.c +0 -114
- data/ext/sormbr.c +0 -139
- data/ext/sormhr.c +0 -133
- data/ext/sorml2.c +0 -110
- data/ext/sormlq.c +0 -125
- data/ext/sormql.c +0 -129
- data/ext/sormqr.c +0 -129
- data/ext/sormr2.c +0 -110
- data/ext/sormr3.c +0 -114
- data/ext/sormrq.c +0 -125
- data/ext/sormrz.c +0 -129
- data/ext/sormtr.c +0 -129
- data/ext/spbcon.c +0 -82
- data/ext/spbequ.c +0 -83
- data/ext/spbrfs.c +0 -145
- data/ext/spbstf.c +0 -81
- data/ext/spbsv.c +0 -107
- data/ext/spbsvx.c +0 -201
- data/ext/spbtf2.c +0 -81
- data/ext/spbtrf.c +0 -81
- data/ext/spbtrs.c +0 -95
- data/ext/spftrf.c +0 -82
- data/ext/spftri.c +0 -82
- data/ext/spftrs.c +0 -97
- data/ext/spocon.c +0 -78
- data/ext/spoequ.c +0 -75
- data/ext/spoequb.c +0 -75
- data/ext/sporfs.c +0 -141
- data/ext/sporfsx.c +0 -206
- data/ext/sposv.c +0 -103
- data/ext/sposvx.c +0 -197
- data/ext/sposvxx.c +0 -235
- data/ext/spotf2.c +0 -77
- data/ext/spotrf.c +0 -77
- data/ext/spotri.c +0 -77
- data/ext/spotrs.c +0 -91
- data/ext/sppcon.c +0 -78
- data/ext/sppequ.c +0 -79
- data/ext/spprfs.c +0 -139
- data/ext/sppsv.c +0 -104
- data/ext/sppsvx.c +0 -191
- data/ext/spptrf.c +0 -78
- data/ext/spptri.c +0 -78
- data/ext/spptrs.c +0 -93
- data/ext/spstf2.c +0 -95
- data/ext/spstrf.c +0 -95
- data/ext/sptcon.c +0 -81
- data/ext/spteqr.c +0 -126
- data/ext/sptrfs.c +0 -154
- data/ext/sptsv.c +0 -119
- data/ext/sptsvx.c +0 -168
- data/ext/spttrf.c +0 -93
- data/ext/spttrs.c +0 -97
- data/ext/sptts2.c +0 -94
- data/ext/srscl.c +0 -79
- data/ext/ssbev.c +0 -107
- data/ext/ssbevd.c +0 -140
- data/ext/ssbevx.c +0 -157
- data/ext/ssbgst.c +0 -117
- data/ext/ssbgv.c +0 -137
- data/ext/ssbgvd.c +0 -170
- data/ext/ssbgvx.c +0 -197
- data/ext/ssbtrd.c +0 -130
- data/ext/ssfrk.c +0 -109
- data/ext/sspcon.c +0 -88
- data/ext/sspev.c +0 -102
- data/ext/sspevd.c +0 -135
- data/ext/sspevx.c +0 -141
- data/ext/sspgst.c +0 -94
- data/ext/sspgv.c +0 -129
- data/ext/sspgvd.c +0 -162
- data/ext/sspgvx.c +0 -168
- data/ext/ssprfs.c +0 -149
- data/ext/sspsv.c +0 -110
- data/ext/sspsvx.c +0 -163
- data/ext/ssptrd.c +0 -100
- data/ext/ssptrf.c +0 -84
- data/ext/ssptri.c +0 -89
- data/ext/ssptrs.c +0 -101
- data/ext/sstebz.c +0 -135
- data/ext/sstedc.c +0 -159
- data/ext/sstegr.c +0 -188
- data/ext/sstein.c +0 -134
- data/ext/sstemr.c +0 -193
- data/ext/ssteqr.c +0 -126
- data/ext/ssterf.c +0 -93
- data/ext/sstev.c +0 -111
- data/ext/sstevd.c +0 -144
- data/ext/sstevr.c +0 -188
- data/ext/sstevx.c +0 -158
- data/ext/ssycon.c +0 -90
- data/ext/ssyconv.c +0 -84
- data/ext/ssyequb.c +0 -82
- data/ext/ssyev.c +0 -107
- data/ext/ssyevd.c +0 -125
- data/ext/ssyevr.c +0 -172
- data/ext/ssyevx.c +0 -157
- data/ext/ssygs2.c +0 -95
- data/ext/ssygst.c +0 -95
- data/ext/ssygv.c +0 -137
- data/ext/ssygvd.c +0 -155
- data/ext/ssygvx.c +0 -191
- data/ext/ssyrfs.c +0 -153
- data/ext/ssyrfsx.c +0 -218
- data/ext/ssysv.c +0 -129
- data/ext/ssysvx.c +0 -183
- data/ext/ssysvxx.c +0 -258
- data/ext/ssyswapr.c +0 -82
- data/ext/ssytd2.c +0 -101
- data/ext/ssytf2.c +0 -85
- data/ext/ssytrd.c +0 -113
- data/ext/ssytrf.c +0 -97
- data/ext/ssytri.c +0 -92
- data/ext/ssytri2.c +0 -127
- data/ext/ssytri2x.c +0 -96
- data/ext/ssytrs.c +0 -103
- data/ext/ssytrs2.c +0 -106
- data/ext/stbcon.c +0 -86
- data/ext/stbrfs.c +0 -127
- data/ext/stbtrs.c +0 -103
- data/ext/stfsm.c +0 -112
- data/ext/stftri.c +0 -86
- data/ext/stfttp.c +0 -79
- data/ext/stfttr.c +0 -80
- data/ext/stgevc.c +0 -153
- data/ext/stgex2.c +0 -184
- data/ext/stgexc.c +0 -191
- data/ext/stgsen.c +0 -252
- data/ext/stgsja.c +0 -227
- data/ext/stgsna.c +0 -164
- data/ext/stgsy2.c +0 -182
- data/ext/stgsyl.c +0 -190
- data/ext/stpcon.c +0 -82
- data/ext/stprfs.c +0 -123
- data/ext/stptri.c +0 -82
- data/ext/stptrs.c +0 -101
- data/ext/stpttf.c +0 -79
- data/ext/stpttr.c +0 -76
- data/ext/strcon.c +0 -82
- data/ext/strevc.c +0 -150
- data/ext/strexc.c +0 -116
- data/ext/strrfs.c +0 -123
- data/ext/strsen.c +0 -169
- data/ext/strsna.c +0 -137
- data/ext/strsyl.c +0 -116
- data/ext/strti2.c +0 -81
- data/ext/strtri.c +0 -81
- data/ext/strtrs.c +0 -99
- data/ext/strttf.c +0 -77
- data/ext/strttp.c +0 -73
- data/ext/stzrqf.c +0 -83
- data/ext/stzrzf.c +0 -101
- data/ext/xerbla.c +0 -52
- data/ext/xerbla_array.c +0 -53
- data/ext/zbbcsd.c +0 -283
- data/ext/zbdsqr.c +0 -182
- data/ext/zcgesv.c +0 -118
- data/ext/zcposv.c +0 -114
- data/ext/zdrscl.c +0 -79
- data/ext/zgbbrd.c +0 -157
- data/ext/zgbcon.c +0 -98
- data/ext/zgbequ.c +0 -98
- data/ext/zgbequb.c +0 -96
- data/ext/zgbrfs.c +0 -161
- data/ext/zgbrfsx.c +0 -249
- data/ext/zgbsv.c +0 -115
- data/ext/zgbsvx.c +0 -286
- data/ext/zgbsvxx.c +0 -289
- data/ext/zgbtf2.c +0 -93
- data/ext/zgbtrf.c +0 -93
- data/ext/zgbtrs.c +0 -111
- data/ext/zgebak.c +0 -101
- data/ext/zgebal.c +0 -91
- data/ext/zgebd2.c +0 -112
- data/ext/zgebrd.c +0 -127
- data/ext/zgecon.c +0 -78
- data/ext/zgeequ.c +0 -88
- data/ext/zgeequb.c +0 -88
- data/ext/zgees.c +0 -142
- data/ext/zgeesx.c +0 -152
- data/ext/zgeev.c +0 -132
- data/ext/zgeevx.c +0 -173
- data/ext/zgegs.c +0 -166
- data/ext/zgegv.c +0 -171
- data/ext/zgehd2.c +0 -92
- data/ext/zgehrd.c +0 -107
- data/ext/zgelq2.c +0 -86
- data/ext/zgelqf.c +0 -103
- data/ext/zgels.c +0 -137
- data/ext/zgelsd.c +0 -154
- data/ext/zgelss.c +0 -151
- data/ext/zgelsx.c +0 -139
- data/ext/zgelsy.c +0 -166
- data/ext/zgeql2.c +0 -88
- data/ext/zgeqlf.c +0 -103
- data/ext/zgeqp3.c +0 -129
- data/ext/zgeqpf.c +0 -114
- data/ext/zgeqr2.c +0 -88
- data/ext/zgeqr2p.c +0 -88
- data/ext/zgeqrf.c +0 -103
- data/ext/zgeqrfp.c +0 -103
- data/ext/zgerfs.c +0 -153
- data/ext/zgerfsx.c +0 -219
- data/ext/zgerq2.c +0 -86
- data/ext/zgerqf.c +0 -103
- data/ext/zgesc2.c +0 -108
- data/ext/zgesdd.c +0 -135
- data/ext/zgesv.c +0 -107
- data/ext/zgesvd.c +0 -146
- data/ext/zgesvx.c +0 -278
- data/ext/zgesvxx.c +0 -281
- data/ext/zgetc2.c +0 -89
- data/ext/zgetf2.c +0 -85
- data/ext/zgetrf.c +0 -85
- data/ext/zgetri.c +0 -103
- data/ext/zgetrs.c +0 -103
- data/ext/zggbak.c +0 -113
- data/ext/zggbal.c +0 -128
- data/ext/zgges.c +0 -192
- data/ext/zggesx.c +0 -230
- data/ext/zggev.c +0 -171
- data/ext/zggevx.c +0 -226
- data/ext/zggglm.c +0 -156
- data/ext/zgghrd.c +0 -167
- data/ext/zgglse.c +0 -171
- data/ext/zggqrf.c +0 -137
- data/ext/zggrqf.c +0 -141
- data/ext/zggsvd.c +0 -184
- data/ext/zggsvp.c +0 -174
- data/ext/zgtcon.c +0 -121
- data/ext/zgtrfs.c +0 -209
- data/ext/zgtsv.c +0 -142
- data/ext/zgtsvx.c +0 -256
- data/ext/zgttrf.c +0 -132
- data/ext/zgttrs.c +0 -137
- data/ext/zgtts2.c +0 -134
- data/ext/zhbev.c +0 -110
- data/ext/zhbevd.c +0 -158
- data/ext/zhbevx.c +0 -160
- data/ext/zhbgst.c +0 -120
- data/ext/zhbgv.c +0 -140
- data/ext/zhbgvd.c +0 -188
- data/ext/zhbgvx.c +0 -189
- data/ext/zhbtrd.c +0 -130
- data/ext/zhecon.c +0 -87
- data/ext/zheequb.c +0 -82
- data/ext/zheev.c +0 -110
- data/ext/zheevd.c +0 -143
- data/ext/zheevr.c +0 -190
- data/ext/zheevx.c +0 -160
- data/ext/zhegs2.c +0 -95
- data/ext/zhegst.c +0 -95
- data/ext/zhegv.c +0 -140
- data/ext/zhegvd.c +0 -173
- data/ext/zhegvx.c +0 -190
- data/ext/zherfs.c +0 -153
- data/ext/zherfsx.c +0 -218
- data/ext/zhesv.c +0 -123
- data/ext/zhesvx.c +0 -183
- data/ext/zhesvxx.c +0 -258
- data/ext/zhetd2.c +0 -101
- data/ext/zhetf2.c +0 -85
- data/ext/zhetrd.c +0 -113
- data/ext/zhetrf.c +0 -97
- data/ext/zhetri.c +0 -92
- data/ext/zhetrs.c +0 -103
- data/ext/zhetrs2.c +0 -106
- data/ext/zhfrk.c +0 -109
- data/ext/zhgeqz.c +0 -208
- data/ext/zhpcon.c +0 -85
- data/ext/zhpev.c +0 -105
- data/ext/zhpevd.c +0 -153
- data/ext/zhpevx.c +0 -144
- data/ext/zhpgst.c +0 -94
- data/ext/zhpgv.c +0 -132
- data/ext/zhpgvd.c +0 -170
- data/ext/zhpgvx.c +0 -170
- data/ext/zhprfs.c +0 -149
- data/ext/zhpsv.c +0 -110
- data/ext/zhpsvx.c +0 -163
- data/ext/zhptrd.c +0 -100
- data/ext/zhptrf.c +0 -84
- data/ext/zhptri.c +0 -89
- data/ext/zhptrs.c +0 -101
- data/ext/zhsein.c +0 -185
- data/ext/zhseqr.c +0 -145
- data/ext/zla_gbamv.c +0 -127
- data/ext/zla_gbrcond_c.c +0 -142
- data/ext/zla_gbrcond_x.c +0 -138
- data/ext/zla_gbrfsx_extended.c +0 -295
- data/ext/zla_gbrpvgrw.c +0 -87
- data/ext/zla_geamv.c +0 -119
- data/ext/zla_gercond_c.c +0 -134
- data/ext/zla_gercond_x.c +0 -130
- data/ext/zla_gerfsx_extended.c +0 -281
- data/ext/zla_heamv.c +0 -116
- data/ext/zla_hercond_c.c +0 -134
- data/ext/zla_hercond_x.c +0 -130
- data/ext/zla_herfsx_extended.c +0 -283
- data/ext/zla_herpvgrw.c +0 -107
- data/ext/zla_lin_berr.c +0 -84
- data/ext/zla_porcond_c.c +0 -122
- data/ext/zla_porcond_x.c +0 -118
- data/ext/zla_porfsx_extended.c +0 -271
- data/ext/zla_porpvgrw.c +0 -95
- data/ext/zla_rpvgrw.c +0 -79
- data/ext/zla_syamv.c +0 -116
- data/ext/zla_syrcond_c.c +0 -134
- data/ext/zla_syrcond_x.c +0 -130
- data/ext/zla_syrfsx_extended.c +0 -283
- data/ext/zla_syrpvgrw.c +0 -107
- data/ext/zla_wwaddw.c +0 -102
- data/ext/zlabrd.c +0 -132
- data/ext/zlacgv.c +0 -75
- data/ext/zlacn2.c +0 -103
- data/ext/zlacon.c +0 -80
- data/ext/zlacp2.c +0 -77
- data/ext/zlacpy.c +0 -77
- data/ext/zlacrm.c +0 -90
- data/ext/zlacrt.c +0 -108
- data/ext/zladiv.c +0 -57
- data/ext/zlaed0.c +0 -134
- data/ext/zlaed7.c +0 -247
- data/ext/zlaed8.c +0 -198
- data/ext/zlaein.c +0 -113
- data/ext/zlaesy.c +0 -74
- data/ext/zlaev2.c +0 -71
- data/ext/zlag2c.c +0 -76
- data/ext/zlags2.c +0 -92
- data/ext/zlagtm.c +0 -132
- data/ext/zlahef.c +0 -97
- data/ext/zlahqr.c +0 -135
- data/ext/zlahr2.c +0 -112
- data/ext/zlahrd.c +0 -112
- data/ext/zlaic1.c +0 -90
- data/ext/zlals0.c +0 -201
- data/ext/zlalsa.c +0 -270
- data/ext/zlalsd.c +0 -145
- data/ext/zlangb.c +0 -76
- data/ext/zlange.c +0 -74
- data/ext/zlangt.c +0 -87
- data/ext/zlanhb.c +0 -78
- data/ext/zlanhe.c +0 -74
- data/ext/zlanhf.c +0 -80
- data/ext/zlanhp.c +0 -76
- data/ext/zlanhs.c +0 -70
- data/ext/zlanht.c +0 -75
- data/ext/zlansb.c +0 -78
- data/ext/zlansp.c +0 -76
- data/ext/zlansy.c +0 -74
- data/ext/zlantb.c +0 -82
- data/ext/zlantp.c +0 -80
- data/ext/zlantr.c +0 -82
- data/ext/zlapll.c +0 -105
- data/ext/zlapmr.c +0 -97
- data/ext/zlapmt.c +0 -101
- data/ext/zlaqgb.c +0 -117
- data/ext/zlaqge.c +0 -109
- data/ext/zlaqhb.c +0 -97
- data/ext/zlaqhe.c +0 -97
- data/ext/zlaqhp.c +0 -94
- data/ext/zlaqp2.c +0 -158
- data/ext/zlaqps.c +0 -208
- data/ext/zlaqr0.c +0 -153
- data/ext/zlaqr1.c +0 -76
- data/ext/zlaqr2.c +0 -174
- data/ext/zlaqr3.c +0 -174
- data/ext/zlaqr4.c +0 -147
- data/ext/zlaqr5.c +0 -179
- data/ext/zlaqsb.c +0 -101
- data/ext/zlaqsp.c +0 -94
- data/ext/zlaqsy.c +0 -97
- data/ext/zlar1v.c +0 -173
- data/ext/zlar2v.c +0 -149
- data/ext/zlarcm.c +0 -86
- data/ext/zlarf.c +0 -102
- data/ext/zlarfb.c +0 -123
- data/ext/zlarfg.c +0 -84
- data/ext/zlarfgp.c +0 -84
- data/ext/zlarft.c +0 -105
- data/ext/zlarfx.c +0 -94
- data/ext/zlargv.c +0 -114
- data/ext/zlarnv.c +0 -83
- data/ext/zlarrv.c +0 -271
- data/ext/zlarscl2.c +0 -82
- data/ext/zlartg.c +0 -63
- data/ext/zlartv.c +0 -130
- data/ext/zlarz.c +0 -106
- data/ext/zlarzb.c +0 -127
- data/ext/zlarzt.c +0 -105
- data/ext/zlascl.c +0 -97
- data/ext/zlascl2.c +0 -82
- data/ext/zlaset.c +0 -88
- data/ext/zlasr.c +0 -110
- data/ext/zlassq.c +0 -70
- data/ext/zlaswp.c +0 -94
- data/ext/zlasyf.c +0 -97
- data/ext/zlat2c.c +0 -76
- data/ext/zlatbs.c +0 -130
- data/ext/zlatdf.c +0 -119
- data/ext/zlatps.c +0 -124
- data/ext/zlatrd.c +0 -105
- data/ext/zlatrs.c +0 -126
- data/ext/zlatrz.c +0 -87
- data/ext/zlatzm.c +0 -132
- data/ext/zlauu2.c +0 -77
- data/ext/zlauum.c +0 -77
- data/ext/zpbcon.c +0 -82
- data/ext/zpbequ.c +0 -83
- data/ext/zpbrfs.c +0 -145
- data/ext/zpbstf.c +0 -81
- data/ext/zpbsv.c +0 -107
- data/ext/zpbsvx.c +0 -201
- data/ext/zpbtf2.c +0 -81
- data/ext/zpbtrf.c +0 -81
- data/ext/zpbtrs.c +0 -95
- data/ext/zpftrf.c +0 -82
- data/ext/zpftri.c +0 -82
- data/ext/zpftrs.c +0 -97
- data/ext/zpocon.c +0 -78
- data/ext/zpoequ.c +0 -75
- data/ext/zpoequb.c +0 -75
- data/ext/zporfs.c +0 -141
- data/ext/zporfsx.c +0 -206
- data/ext/zposv.c +0 -103
- data/ext/zposvx.c +0 -197
- data/ext/zposvxx.c +0 -235
- data/ext/zpotf2.c +0 -77
- data/ext/zpotrf.c +0 -77
- data/ext/zpotri.c +0 -77
- data/ext/zpotrs.c +0 -91
- data/ext/zppcon.c +0 -78
- data/ext/zppequ.c +0 -79
- data/ext/zpprfs.c +0 -139
- data/ext/zppsv.c +0 -104
- data/ext/zppsvx.c +0 -191
- data/ext/zpptrf.c +0 -78
- data/ext/zpptri.c +0 -78
- data/ext/zpptrs.c +0 -93
- data/ext/zpstf2.c +0 -95
- data/ext/zpstrf.c +0 -95
- data/ext/zptcon.c +0 -81
- data/ext/zpteqr.c +0 -126
- data/ext/zptrfs.c +0 -161
- data/ext/zptsv.c +0 -123
- data/ext/zptsvx.c +0 -171
- data/ext/zpttrf.c +0 -93
- data/ext/zpttrs.c +0 -101
- data/ext/zptts2.c +0 -98
- data/ext/zrot.c +0 -107
- data/ext/zspcon.c +0 -85
- data/ext/zspmv.c +0 -117
- data/ext/zspr.c +0 -96
- data/ext/zsprfs.c +0 -149
- data/ext/zspsv.c +0 -110
- data/ext/zspsvx.c +0 -163
- data/ext/zsptrf.c +0 -84
- data/ext/zsptri.c +0 -89
- data/ext/zsptrs.c +0 -101
- data/ext/zstedc.c +0 -177
- data/ext/zstegr.c +0 -188
- data/ext/zstein.c +0 -134
- data/ext/zstemr.c +0 -193
- data/ext/zsteqr.c +0 -126
- data/ext/zsycon.c +0 -87
- data/ext/zsyconv.c +0 -84
- data/ext/zsyequb.c +0 -82
- data/ext/zsymv.c +0 -115
- data/ext/zsyr.c +0 -95
- data/ext/zsyrfs.c +0 -153
- data/ext/zsyrfsx.c +0 -218
- data/ext/zsysv.c +0 -129
- data/ext/zsysvx.c +0 -183
- data/ext/zsysvxx.c +0 -258
- data/ext/zsyswapr.c +0 -82
- data/ext/zsytf2.c +0 -85
- data/ext/zsytrf.c +0 -97
- data/ext/zsytri.c +0 -92
- data/ext/zsytri2.c +0 -104
- data/ext/zsytri2x.c +0 -96
- data/ext/zsytrs.c +0 -103
- data/ext/zsytrs2.c +0 -106
- data/ext/ztbcon.c +0 -86
- data/ext/ztbrfs.c +0 -127
- data/ext/ztbtrs.c +0 -103
- data/ext/ztfsm.c +0 -111
- data/ext/ztftri.c +0 -86
- data/ext/ztfttp.c +0 -79
- data/ext/ztfttr.c +0 -80
- data/ext/ztgevc.c +0 -156
- data/ext/ztgex2.c +0 -171
- data/ext/ztgexc.c +0 -172
- data/ext/ztgsen.c +0 -244
- data/ext/ztgsja.c +0 -227
- data/ext/ztgsna.c +0 -164
- data/ext/ztgsy2.c +0 -176
- data/ext/ztgsyl.c +0 -190
- data/ext/ztpcon.c +0 -82
- data/ext/ztprfs.c +0 -123
- data/ext/ztptri.c +0 -82
- data/ext/ztptrs.c +0 -101
- data/ext/ztpttf.c +0 -79
- data/ext/ztpttr.c +0 -76
- data/ext/ztrcon.c +0 -82
- data/ext/ztrevc.c +0 -154
- data/ext/ztrexc.c +0 -111
- data/ext/ztrrfs.c +0 -123
- data/ext/ztrsen.c +0 -154
- data/ext/ztrsna.c +0 -137
- data/ext/ztrsyl.c +0 -116
- data/ext/ztrti2.c +0 -81
- data/ext/ztrtri.c +0 -81
- data/ext/ztrtrs.c +0 -99
- data/ext/ztrttf.c +0 -77
- data/ext/ztrttp.c +0 -73
- data/ext/ztzrqf.c +0 -83
- data/ext/ztzrzf.c +0 -101
- data/ext/zunbdb.c +0 -232
- data/ext/zuncsd.c +0 -204
- data/ext/zung2l.c +0 -92
- data/ext/zung2r.c +0 -92
- data/ext/zungbr.c +0 -115
- data/ext/zunghr.c +0 -111
- data/ext/zungl2.c +0 -90
- data/ext/zunglq.c +0 -107
- data/ext/zungql.c +0 -107
- data/ext/zungqr.c +0 -107
- data/ext/zungr2.c +0 -90
- data/ext/zungrq.c +0 -107
- data/ext/zungtr.c +0 -107
- data/ext/zunm2l.c +0 -114
- data/ext/zunm2r.c +0 -114
- data/ext/zunmbr.c +0 -139
- data/ext/zunmhr.c +0 -133
- data/ext/zunml2.c +0 -110
- data/ext/zunmlq.c +0 -125
- data/ext/zunmql.c +0 -129
- data/ext/zunmqr.c +0 -129
- data/ext/zunmr2.c +0 -110
- data/ext/zunmr3.c +0 -114
- data/ext/zunmrq.c +0 -125
- data/ext/zunmrz.c +0 -129
- data/ext/zunmtr.c +0 -129
- data/ext/zupgtr.c +0 -91
- data/ext/zupmtr.c +0 -116
data/ext/cggsvd.c
DELETED
|
@@ -1,184 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID cggsvd_(char* jobu, char* jobv, char* jobq, integer* m, integer* n, integer* p, integer* k, integer* l, complex* a, integer* lda, complex* b, integer* ldb, real* alpha, real* beta, complex* u, integer* ldu, complex* v, integer* ldv, complex* q, integer* ldq, complex* work, real* rwork, integer* iwork, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_cggsvd(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_jobu;
|
|
9
|
-
char jobu;
|
|
10
|
-
VALUE rblapack_jobv;
|
|
11
|
-
char jobv;
|
|
12
|
-
VALUE rblapack_jobq;
|
|
13
|
-
char jobq;
|
|
14
|
-
VALUE rblapack_a;
|
|
15
|
-
complex *a;
|
|
16
|
-
VALUE rblapack_b;
|
|
17
|
-
complex *b;
|
|
18
|
-
VALUE rblapack_k;
|
|
19
|
-
integer k;
|
|
20
|
-
VALUE rblapack_l;
|
|
21
|
-
integer l;
|
|
22
|
-
VALUE rblapack_alpha;
|
|
23
|
-
real *alpha;
|
|
24
|
-
VALUE rblapack_beta;
|
|
25
|
-
real *beta;
|
|
26
|
-
VALUE rblapack_u;
|
|
27
|
-
complex *u;
|
|
28
|
-
VALUE rblapack_v;
|
|
29
|
-
complex *v;
|
|
30
|
-
VALUE rblapack_q;
|
|
31
|
-
complex *q;
|
|
32
|
-
VALUE rblapack_iwork;
|
|
33
|
-
integer *iwork;
|
|
34
|
-
VALUE rblapack_info;
|
|
35
|
-
integer info;
|
|
36
|
-
VALUE rblapack_a_out__;
|
|
37
|
-
complex *a_out__;
|
|
38
|
-
VALUE rblapack_b_out__;
|
|
39
|
-
complex *b_out__;
|
|
40
|
-
complex *work;
|
|
41
|
-
real *rwork;
|
|
42
|
-
|
|
43
|
-
integer lda;
|
|
44
|
-
integer n;
|
|
45
|
-
integer ldb;
|
|
46
|
-
integer ldu;
|
|
47
|
-
integer m;
|
|
48
|
-
integer ldv;
|
|
49
|
-
integer p;
|
|
50
|
-
integer ldq;
|
|
51
|
-
|
|
52
|
-
VALUE rblapack_options;
|
|
53
|
-
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
54
|
-
argc--;
|
|
55
|
-
rblapack_options = argv[argc];
|
|
56
|
-
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
57
|
-
printf("%s\n", "USAGE:\n k, l, alpha, beta, u, v, q, iwork, info, a, b = NumRu::Lapack.cggsvd( jobu, jobv, jobq, a, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE CGGSVD( JOBU, JOBV, JOBQ, M, N, P, K, L, A, LDA, B, LDB, ALPHA, BETA, U, LDU, V, LDV, Q, LDQ, WORK, RWORK, IWORK, INFO )\n\n* Purpose\n* =======\n*\n* CGGSVD computes the generalized singular value decomposition (GSVD)\n* of an M-by-N complex matrix A and P-by-N complex matrix B:\n*\n* U'*A*Q = D1*( 0 R ), V'*B*Q = D2*( 0 R )\n*\n* where U, V and Q are unitary matrices, and Z' means the conjugate\n* transpose of Z. Let K+L = the effective numerical rank of the\n* matrix (A',B')', then R is a (K+L)-by-(K+L) nonsingular upper\n* triangular matrix, D1 and D2 are M-by-(K+L) and P-by-(K+L) \"diagonal\"\n* matrices and of the following structures, respectively:\n*\n* If M-K-L >= 0,\n*\n* K L\n* D1 = K ( I 0 )\n* L ( 0 C )\n* M-K-L ( 0 0 )\n*\n* K L\n* D2 = L ( 0 S )\n* P-L ( 0 0 )\n*\n* N-K-L K L\n* ( 0 R ) = K ( 0 R11 R12 )\n* L ( 0 0 R22 )\n* where\n*\n* C = diag( ALPHA(K+1), ... , ALPHA(K+L) ),\n* S = diag( BETA(K+1), ... , BETA(K+L) ),\n* C**2 + S**2 = I.\n*\n* R is stored in A(1:K+L,N-K-L+1:N) on exit.\n*\n* If M-K-L < 0,\n*\n* K M-K K+L-M\n* D1 = K ( I 0 0 )\n* M-K ( 0 C 0 )\n*\n* K M-K K+L-M\n* D2 = M-K ( 0 S 0 )\n* K+L-M ( 0 0 I )\n* P-L ( 0 0 0 )\n*\n* N-K-L K M-K K+L-M\n* ( 0 R ) = K ( 0 R11 R12 R13 )\n* M-K ( 0 0 R22 R23 )\n* K+L-M ( 0 0 0 R33 )\n*\n* where\n*\n* C = diag( ALPHA(K+1), ... , ALPHA(M) ),\n* S = diag( BETA(K+1), ... , BETA(M) ),\n* C**2 + S**2 = I.\n*\n* (R11 R12 R13 ) is stored in A(1:M, N-K-L+1:N), and R33 is stored\n* ( 0 R22 R23 )\n* in B(M-K+1:L,N+M-K-L+1:N) on exit.\n*\n* The routine computes C, S, R, and optionally the unitary\n* transformation matrices U, V and Q.\n*\n* In particular, if B is an N-by-N nonsingular matrix, then the GSVD of\n* A and B implicitly gives the SVD of A*inv(B):\n* A*inv(B) = U*(D1*inv(D2))*V'.\n* If ( A',B')' has orthnormal columns, then the GSVD of A and B is also\n* equal to the CS decomposition of A and B. Furthermore, the GSVD can\n* be used to derive the solution of the eigenvalue problem:\n* A'*A x = lambda* B'*B x.\n* In some literature, the GSVD of A and B is presented in the form\n* U'*A*X = ( 0 D1 ), V'*B*X = ( 0 D2 )\n* where U and V are orthogonal and X is nonsingular, and D1 and D2 are\n* ``diagonal''. The former GSVD form can be converted to the latter\n* form by taking the nonsingular matrix X as\n*\n* X = Q*( I 0 )\n* ( 0 inv(R) )\n*\n\n* Arguments\n* =========\n*\n* JOBU (input) CHARACTER*1\n* = 'U': Unitary matrix U is computed;\n* = 'N': U is not computed.\n*\n* JOBV (input) CHARACTER*1\n* = 'V': Unitary matrix V is computed;\n* = 'N': V is not computed.\n*\n* JOBQ (input) CHARACTER*1\n* = 'Q': Unitary matrix Q is computed;\n* = 'N': Q is not computed.\n*\n* M (input) INTEGER\n* The number of rows of the matrix A. M >= 0.\n*\n* N (input) INTEGER\n* The number of columns of the matrices A and B. N >= 0.\n*\n* P (input) INTEGER\n* The number of rows of the matrix B. P >= 0.\n*\n* K (output) INTEGER\n* L (output) INTEGER\n* On exit, K and L specify the dimension of the subblocks\n* described in Purpose.\n* K + L = effective numerical rank of (A',B')'.\n*\n* A (input/output) COMPLEX array, dimension (LDA,N)\n* On entry, the M-by-N matrix A.\n* On exit, A contains the triangular matrix R, or part of R.\n* See Purpose for details.\n*\n* LDA (input) INTEGER\n* The leading dimension of the array A. LDA >= max(1,M).\n*\n* B (input/output) COMPLEX array, dimension (LDB,N)\n* On entry, the P-by-N matrix B.\n* On exit, B contains part of the triangular matrix R if\n* M-K-L < 0. See Purpose for details.\n*\n* LDB (input) INTEGER\n* The leading dimension of the array B. LDB >= max(1,P).\n*\n* ALPHA (output) REAL array, dimension (N)\n* BETA (output) REAL array, dimension (N)\n* On exit, ALPHA and BETA contain the generalized singular\n* value pairs of A and B;\n* ALPHA(1:K) = 1,\n* BETA(1:K) = 0,\n* and if M-K-L >= 0,\n* ALPHA(K+1:K+L) = C,\n* BETA(K+1:K+L) = S,\n* or if M-K-L < 0,\n* ALPHA(K+1:M)= C, ALPHA(M+1:K+L)= 0\n* BETA(K+1:M) = S, BETA(M+1:K+L) = 1\n* and\n* ALPHA(K+L+1:N) = 0\n* BETA(K+L+1:N) = 0\n*\n* U (output) COMPLEX array, dimension (LDU,M)\n* If JOBU = 'U', U contains the M-by-M unitary matrix U.\n* If JOBU = 'N', U is not referenced.\n*\n* LDU (input) INTEGER\n* The leading dimension of the array U. LDU >= max(1,M) if\n* JOBU = 'U'; LDU >= 1 otherwise.\n*\n* V (output) COMPLEX array, dimension (LDV,P)\n* If JOBV = 'V', V contains the P-by-P unitary matrix V.\n* If JOBV = 'N', V is not referenced.\n*\n* LDV (input) INTEGER\n* The leading dimension of the array V. LDV >= max(1,P) if\n* JOBV = 'V'; LDV >= 1 otherwise.\n*\n* Q (output) COMPLEX array, dimension (LDQ,N)\n* If JOBQ = 'Q', Q contains the N-by-N unitary matrix Q.\n* If JOBQ = 'N', Q is not referenced.\n*\n* LDQ (input) INTEGER\n* The leading dimension of the array Q. LDQ >= max(1,N) if\n* JOBQ = 'Q'; LDQ >= 1 otherwise.\n*\n* WORK (workspace) COMPLEX array, dimension (max(3*N,M,P)+N)\n*\n* RWORK (workspace) REAL array, dimension (2*N)\n*\n* IWORK (workspace/output) INTEGER array, dimension (N)\n* On exit, IWORK stores the sorting information. More\n* precisely, the following loop will sort ALPHA\n* for I = K+1, min(M,K+L)\n* swap ALPHA(I) and ALPHA(IWORK(I))\n* endfor\n* such that ALPHA(1) >= ALPHA(2) >= ... >= ALPHA(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 = 1, the Jacobi-type procedure failed to\n* converge. For further details, see subroutine CTGSJA.\n*\n* Internal Parameters\n* ===================\n*\n* TOLA REAL\n* TOLB REAL\n* TOLA and TOLB are the thresholds to determine the effective\n* rank of (A',B')'. Generally, they are set to\n* TOLA = MAX(M,N)*norm(A)*MACHEPS,\n* TOLB = MAX(P,N)*norm(B)*MACHEPS.\n* The size of TOLA and TOLB may affect the size of backward\n* errors of the decomposition.\n*\n\n* Further Details\n* ===============\n*\n* 2-96 Based on modifications by\n* Ming Gu and Huan Ren, Computer Science Division, University of\n* California at Berkeley, USA\n*\n* =====================================================================\n*\n* .. Local Scalars ..\n LOGICAL WANTQ, WANTU, WANTV\n INTEGER I, IBND, ISUB, J, NCYCLE\n REAL ANORM, BNORM, SMAX, TEMP, TOLA, TOLB, ULP, UNFL\n* ..\n* .. External Functions ..\n LOGICAL LSAME\n REAL CLANGE, SLAMCH\n EXTERNAL LSAME, CLANGE, SLAMCH\n* ..\n* .. External Subroutines ..\n EXTERNAL CGGSVP, CTGSJA, SCOPY, XERBLA\n* ..\n* .. Intrinsic Functions ..\n INTRINSIC MAX, MIN\n* ..\n\n");
|
|
58
|
-
return Qnil;
|
|
59
|
-
}
|
|
60
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
61
|
-
printf("%s\n", "USAGE:\n k, l, alpha, beta, u, v, q, iwork, info, a, b = NumRu::Lapack.cggsvd( jobu, jobv, jobq, a, b, [:usage => usage, :help => help])\n");
|
|
62
|
-
return Qnil;
|
|
63
|
-
}
|
|
64
|
-
} else
|
|
65
|
-
rblapack_options = Qnil;
|
|
66
|
-
if (argc != 5 && argc != 5)
|
|
67
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 5)", argc);
|
|
68
|
-
rblapack_jobu = argv[0];
|
|
69
|
-
rblapack_jobv = argv[1];
|
|
70
|
-
rblapack_jobq = argv[2];
|
|
71
|
-
rblapack_a = argv[3];
|
|
72
|
-
rblapack_b = argv[4];
|
|
73
|
-
if (argc == 5) {
|
|
74
|
-
} else if (rblapack_options != Qnil) {
|
|
75
|
-
} else {
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
jobu = StringValueCStr(rblapack_jobu)[0];
|
|
79
|
-
jobq = StringValueCStr(rblapack_jobq)[0];
|
|
80
|
-
if (!NA_IsNArray(rblapack_b))
|
|
81
|
-
rb_raise(rb_eArgError, "b (5th argument) must be NArray");
|
|
82
|
-
if (NA_RANK(rblapack_b) != 2)
|
|
83
|
-
rb_raise(rb_eArgError, "rank of b (5th argument) must be %d", 2);
|
|
84
|
-
ldb = NA_SHAPE0(rblapack_b);
|
|
85
|
-
n = NA_SHAPE1(rblapack_b);
|
|
86
|
-
if (NA_TYPE(rblapack_b) != NA_SCOMPLEX)
|
|
87
|
-
rblapack_b = na_change_type(rblapack_b, NA_SCOMPLEX);
|
|
88
|
-
b = NA_PTR_TYPE(rblapack_b, complex*);
|
|
89
|
-
p = ldb;
|
|
90
|
-
jobv = StringValueCStr(rblapack_jobv)[0];
|
|
91
|
-
ldv = lsame_(&jobv,"V") ? MAX(1,p) : 1;
|
|
92
|
-
if (!NA_IsNArray(rblapack_a))
|
|
93
|
-
rb_raise(rb_eArgError, "a (4th argument) must be NArray");
|
|
94
|
-
if (NA_RANK(rblapack_a) != 2)
|
|
95
|
-
rb_raise(rb_eArgError, "rank of a (4th argument) must be %d", 2);
|
|
96
|
-
lda = NA_SHAPE0(rblapack_a);
|
|
97
|
-
if (NA_SHAPE1(rblapack_a) != n)
|
|
98
|
-
rb_raise(rb_eRuntimeError, "shape 1 of a must be the same as shape 1 of b");
|
|
99
|
-
if (NA_TYPE(rblapack_a) != NA_SCOMPLEX)
|
|
100
|
-
rblapack_a = na_change_type(rblapack_a, NA_SCOMPLEX);
|
|
101
|
-
a = NA_PTR_TYPE(rblapack_a, complex*);
|
|
102
|
-
ldq = lsame_(&jobq,"Q") ? MAX(1,n) : 1;
|
|
103
|
-
m = lda;
|
|
104
|
-
ldu = lsame_(&jobu,"U") ? MAX(1,m) : 1;
|
|
105
|
-
{
|
|
106
|
-
int shape[1];
|
|
107
|
-
shape[0] = n;
|
|
108
|
-
rblapack_alpha = na_make_object(NA_SFLOAT, 1, shape, cNArray);
|
|
109
|
-
}
|
|
110
|
-
alpha = NA_PTR_TYPE(rblapack_alpha, real*);
|
|
111
|
-
{
|
|
112
|
-
int shape[1];
|
|
113
|
-
shape[0] = n;
|
|
114
|
-
rblapack_beta = na_make_object(NA_SFLOAT, 1, shape, cNArray);
|
|
115
|
-
}
|
|
116
|
-
beta = NA_PTR_TYPE(rblapack_beta, real*);
|
|
117
|
-
{
|
|
118
|
-
int shape[2];
|
|
119
|
-
shape[0] = ldu;
|
|
120
|
-
shape[1] = m;
|
|
121
|
-
rblapack_u = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
122
|
-
}
|
|
123
|
-
u = NA_PTR_TYPE(rblapack_u, complex*);
|
|
124
|
-
{
|
|
125
|
-
int shape[2];
|
|
126
|
-
shape[0] = ldv;
|
|
127
|
-
shape[1] = p;
|
|
128
|
-
rblapack_v = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
129
|
-
}
|
|
130
|
-
v = NA_PTR_TYPE(rblapack_v, complex*);
|
|
131
|
-
{
|
|
132
|
-
int shape[2];
|
|
133
|
-
shape[0] = ldq;
|
|
134
|
-
shape[1] = n;
|
|
135
|
-
rblapack_q = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
136
|
-
}
|
|
137
|
-
q = NA_PTR_TYPE(rblapack_q, complex*);
|
|
138
|
-
{
|
|
139
|
-
int shape[1];
|
|
140
|
-
shape[0] = n;
|
|
141
|
-
rblapack_iwork = na_make_object(NA_LINT, 1, shape, cNArray);
|
|
142
|
-
}
|
|
143
|
-
iwork = NA_PTR_TYPE(rblapack_iwork, integer*);
|
|
144
|
-
{
|
|
145
|
-
int shape[2];
|
|
146
|
-
shape[0] = lda;
|
|
147
|
-
shape[1] = n;
|
|
148
|
-
rblapack_a_out__ = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
149
|
-
}
|
|
150
|
-
a_out__ = NA_PTR_TYPE(rblapack_a_out__, complex*);
|
|
151
|
-
MEMCPY(a_out__, a, complex, NA_TOTAL(rblapack_a));
|
|
152
|
-
rblapack_a = rblapack_a_out__;
|
|
153
|
-
a = a_out__;
|
|
154
|
-
{
|
|
155
|
-
int shape[2];
|
|
156
|
-
shape[0] = ldb;
|
|
157
|
-
shape[1] = n;
|
|
158
|
-
rblapack_b_out__ = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
159
|
-
}
|
|
160
|
-
b_out__ = NA_PTR_TYPE(rblapack_b_out__, complex*);
|
|
161
|
-
MEMCPY(b_out__, b, complex, NA_TOTAL(rblapack_b));
|
|
162
|
-
rblapack_b = rblapack_b_out__;
|
|
163
|
-
b = b_out__;
|
|
164
|
-
work = ALLOC_N(complex, (MAX(3*n,m)*(p)+n));
|
|
165
|
-
rwork = ALLOC_N(real, (2*n));
|
|
166
|
-
|
|
167
|
-
cggsvd_(&jobu, &jobv, &jobq, &m, &n, &p, &k, &l, a, &lda, b, &ldb, alpha, beta, u, &ldu, v, &ldv, q, &ldq, work, rwork, iwork, &info);
|
|
168
|
-
|
|
169
|
-
free(work);
|
|
170
|
-
free(rwork);
|
|
171
|
-
rblapack_k = INT2NUM(k);
|
|
172
|
-
rblapack_l = INT2NUM(l);
|
|
173
|
-
rblapack_info = INT2NUM(info);
|
|
174
|
-
return rb_ary_new3(11, rblapack_k, rblapack_l, rblapack_alpha, rblapack_beta, rblapack_u, rblapack_v, rblapack_q, rblapack_iwork, rblapack_info, rblapack_a, rblapack_b);
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
void
|
|
178
|
-
init_lapack_cggsvd(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
179
|
-
sHelp = sH;
|
|
180
|
-
sUsage = sU;
|
|
181
|
-
rblapack_ZERO = zero;
|
|
182
|
-
|
|
183
|
-
rb_define_module_function(mLapack, "cggsvd", rblapack_cggsvd, -1);
|
|
184
|
-
}
|
data/ext/cggsvp.c
DELETED
|
@@ -1,174 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID cggsvp_(char* jobu, char* jobv, char* jobq, integer* m, integer* p, integer* n, complex* a, integer* lda, complex* b, integer* ldb, real* tola, real* tolb, integer* k, integer* l, complex* u, integer* ldu, complex* v, integer* ldv, complex* q, integer* ldq, integer* iwork, real* rwork, complex* tau, complex* work, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_cggsvp(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_jobu;
|
|
9
|
-
char jobu;
|
|
10
|
-
VALUE rblapack_jobv;
|
|
11
|
-
char jobv;
|
|
12
|
-
VALUE rblapack_jobq;
|
|
13
|
-
char jobq;
|
|
14
|
-
VALUE rblapack_a;
|
|
15
|
-
complex *a;
|
|
16
|
-
VALUE rblapack_b;
|
|
17
|
-
complex *b;
|
|
18
|
-
VALUE rblapack_tola;
|
|
19
|
-
real tola;
|
|
20
|
-
VALUE rblapack_tolb;
|
|
21
|
-
real tolb;
|
|
22
|
-
VALUE rblapack_k;
|
|
23
|
-
integer k;
|
|
24
|
-
VALUE rblapack_l;
|
|
25
|
-
integer l;
|
|
26
|
-
VALUE rblapack_u;
|
|
27
|
-
complex *u;
|
|
28
|
-
VALUE rblapack_v;
|
|
29
|
-
complex *v;
|
|
30
|
-
VALUE rblapack_q;
|
|
31
|
-
complex *q;
|
|
32
|
-
VALUE rblapack_info;
|
|
33
|
-
integer info;
|
|
34
|
-
VALUE rblapack_a_out__;
|
|
35
|
-
complex *a_out__;
|
|
36
|
-
VALUE rblapack_b_out__;
|
|
37
|
-
complex *b_out__;
|
|
38
|
-
integer *iwork;
|
|
39
|
-
real *rwork;
|
|
40
|
-
complex *tau;
|
|
41
|
-
complex *work;
|
|
42
|
-
|
|
43
|
-
integer lda;
|
|
44
|
-
integer n;
|
|
45
|
-
integer ldb;
|
|
46
|
-
integer ldu;
|
|
47
|
-
integer m;
|
|
48
|
-
integer ldv;
|
|
49
|
-
integer p;
|
|
50
|
-
integer ldq;
|
|
51
|
-
|
|
52
|
-
VALUE rblapack_options;
|
|
53
|
-
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
54
|
-
argc--;
|
|
55
|
-
rblapack_options = argv[argc];
|
|
56
|
-
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
57
|
-
printf("%s\n", "USAGE:\n k, l, u, v, q, info, a, b = NumRu::Lapack.cggsvp( jobu, jobv, jobq, a, b, tola, tolb, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE CGGSVP( JOBU, JOBV, JOBQ, M, P, N, A, LDA, B, LDB, TOLA, TOLB, K, L, U, LDU, V, LDV, Q, LDQ, IWORK, RWORK, TAU, WORK, INFO )\n\n* Purpose\n* =======\n*\n* CGGSVP computes unitary matrices U, V and Q such that\n*\n* N-K-L K L\n* U'*A*Q = K ( 0 A12 A13 ) if M-K-L >= 0;\n* L ( 0 0 A23 )\n* M-K-L ( 0 0 0 )\n*\n* N-K-L K L\n* = K ( 0 A12 A13 ) if M-K-L < 0;\n* M-K ( 0 0 A23 )\n*\n* N-K-L K L\n* V'*B*Q = L ( 0 0 B13 )\n* P-L ( 0 0 0 )\n*\n* where the K-by-K matrix A12 and L-by-L matrix B13 are nonsingular\n* upper triangular; A23 is L-by-L upper triangular if M-K-L >= 0,\n* otherwise A23 is (M-K)-by-L upper trapezoidal. K+L = the effective\n* numerical rank of the (M+P)-by-N matrix (A',B')'. Z' denotes the\n* conjugate transpose of Z.\n*\n* This decomposition is the preprocessing step for computing the\n* Generalized Singular Value Decomposition (GSVD), see subroutine\n* CGGSVD.\n*\n\n* Arguments\n* =========\n*\n* JOBU (input) CHARACTER*1\n* = 'U': Unitary matrix U is computed;\n* = 'N': U is not computed.\n*\n* JOBV (input) CHARACTER*1\n* = 'V': Unitary matrix V is computed;\n* = 'N': V is not computed.\n*\n* JOBQ (input) CHARACTER*1\n* = 'Q': Unitary matrix Q is computed;\n* = 'N': Q is not computed.\n*\n* M (input) INTEGER\n* The number of rows of the matrix A. M >= 0.\n*\n* P (input) INTEGER\n* The number of rows of the matrix B. P >= 0.\n*\n* N (input) INTEGER\n* The number of columns of the matrices A and B. N >= 0.\n*\n* A (input/output) COMPLEX array, dimension (LDA,N)\n* On entry, the M-by-N matrix A.\n* On exit, A contains the triangular (or trapezoidal) matrix\n* described in the Purpose section.\n*\n* LDA (input) INTEGER\n* The leading dimension of the array A. LDA >= max(1,M).\n*\n* B (input/output) COMPLEX array, dimension (LDB,N)\n* On entry, the P-by-N matrix B.\n* On exit, B contains the triangular matrix described in\n* the Purpose section.\n*\n* LDB (input) INTEGER\n* The leading dimension of the array B. LDB >= max(1,P).\n*\n* TOLA (input) REAL\n* TOLB (input) REAL\n* TOLA and TOLB are the thresholds to determine the effective\n* numerical rank of matrix B and a subblock of A. Generally,\n* they are set to\n* TOLA = MAX(M,N)*norm(A)*MACHEPS,\n* TOLB = MAX(P,N)*norm(B)*MACHEPS.\n* The size of TOLA and TOLB may affect the size of backward\n* errors of the decomposition.\n*\n* K (output) INTEGER\n* L (output) INTEGER\n* On exit, K and L specify the dimension of the subblocks\n* described in Purpose section.\n* K + L = effective numerical rank of (A',B')'.\n*\n* U (output) COMPLEX array, dimension (LDU,M)\n* If JOBU = 'U', U contains the unitary matrix U.\n* If JOBU = 'N', U is not referenced.\n*\n* LDU (input) INTEGER\n* The leading dimension of the array U. LDU >= max(1,M) if\n* JOBU = 'U'; LDU >= 1 otherwise.\n*\n* V (output) COMPLEX array, dimension (LDV,P)\n* If JOBV = 'V', V contains the unitary matrix V.\n* If JOBV = 'N', V is not referenced.\n*\n* LDV (input) INTEGER\n* The leading dimension of the array V. LDV >= max(1,P) if\n* JOBV = 'V'; LDV >= 1 otherwise.\n*\n* Q (output) COMPLEX array, dimension (LDQ,N)\n* If JOBQ = 'Q', Q contains the unitary matrix Q.\n* If JOBQ = 'N', Q is not referenced.\n*\n* LDQ (input) INTEGER\n* The leading dimension of the array Q. LDQ >= max(1,N) if\n* JOBQ = 'Q'; LDQ >= 1 otherwise.\n*\n* IWORK (workspace) INTEGER array, dimension (N)\n*\n* RWORK (workspace) REAL array, dimension (2*N)\n*\n* TAU (workspace) COMPLEX array, dimension (N)\n*\n* WORK (workspace) COMPLEX array, dimension (max(3*N,M,P))\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* The subroutine uses LAPACK subroutine CGEQPF for the QR factorization\n* with column pivoting to detect the effective numerical rank of the\n* a matrix. It may be replaced by a better rank determination strategy.\n*\n* =====================================================================\n*\n\n");
|
|
58
|
-
return Qnil;
|
|
59
|
-
}
|
|
60
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
61
|
-
printf("%s\n", "USAGE:\n k, l, u, v, q, info, a, b = NumRu::Lapack.cggsvp( jobu, jobv, jobq, a, b, tola, tolb, [:usage => usage, :help => help])\n");
|
|
62
|
-
return Qnil;
|
|
63
|
-
}
|
|
64
|
-
} else
|
|
65
|
-
rblapack_options = Qnil;
|
|
66
|
-
if (argc != 7 && argc != 7)
|
|
67
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 7)", argc);
|
|
68
|
-
rblapack_jobu = argv[0];
|
|
69
|
-
rblapack_jobv = argv[1];
|
|
70
|
-
rblapack_jobq = argv[2];
|
|
71
|
-
rblapack_a = argv[3];
|
|
72
|
-
rblapack_b = argv[4];
|
|
73
|
-
rblapack_tola = argv[5];
|
|
74
|
-
rblapack_tolb = argv[6];
|
|
75
|
-
if (argc == 7) {
|
|
76
|
-
} else if (rblapack_options != Qnil) {
|
|
77
|
-
} else {
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
jobu = StringValueCStr(rblapack_jobu)[0];
|
|
81
|
-
jobq = StringValueCStr(rblapack_jobq)[0];
|
|
82
|
-
if (!NA_IsNArray(rblapack_b))
|
|
83
|
-
rb_raise(rb_eArgError, "b (5th argument) must be NArray");
|
|
84
|
-
if (NA_RANK(rblapack_b) != 2)
|
|
85
|
-
rb_raise(rb_eArgError, "rank of b (5th argument) must be %d", 2);
|
|
86
|
-
ldb = NA_SHAPE0(rblapack_b);
|
|
87
|
-
n = NA_SHAPE1(rblapack_b);
|
|
88
|
-
if (NA_TYPE(rblapack_b) != NA_SCOMPLEX)
|
|
89
|
-
rblapack_b = na_change_type(rblapack_b, NA_SCOMPLEX);
|
|
90
|
-
b = NA_PTR_TYPE(rblapack_b, complex*);
|
|
91
|
-
tolb = (real)NUM2DBL(rblapack_tolb);
|
|
92
|
-
p = ldb;
|
|
93
|
-
jobv = StringValueCStr(rblapack_jobv)[0];
|
|
94
|
-
tola = (real)NUM2DBL(rblapack_tola);
|
|
95
|
-
ldv = lsame_(&jobv,"V") ? MAX(1,p) : 1;
|
|
96
|
-
if (!NA_IsNArray(rblapack_a))
|
|
97
|
-
rb_raise(rb_eArgError, "a (4th argument) must be NArray");
|
|
98
|
-
if (NA_RANK(rblapack_a) != 2)
|
|
99
|
-
rb_raise(rb_eArgError, "rank of a (4th argument) must be %d", 2);
|
|
100
|
-
lda = NA_SHAPE0(rblapack_a);
|
|
101
|
-
if (NA_SHAPE1(rblapack_a) != n)
|
|
102
|
-
rb_raise(rb_eRuntimeError, "shape 1 of a must be the same as shape 1 of b");
|
|
103
|
-
if (NA_TYPE(rblapack_a) != NA_SCOMPLEX)
|
|
104
|
-
rblapack_a = na_change_type(rblapack_a, NA_SCOMPLEX);
|
|
105
|
-
a = NA_PTR_TYPE(rblapack_a, complex*);
|
|
106
|
-
ldq = lsame_(&jobq,"Q") ? MAX(1,n) : 1;
|
|
107
|
-
m = lda;
|
|
108
|
-
ldu = lsame_(&jobu,"U") ? MAX(1,m) : 1;
|
|
109
|
-
{
|
|
110
|
-
int shape[2];
|
|
111
|
-
shape[0] = ldu;
|
|
112
|
-
shape[1] = m;
|
|
113
|
-
rblapack_u = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
114
|
-
}
|
|
115
|
-
u = NA_PTR_TYPE(rblapack_u, complex*);
|
|
116
|
-
{
|
|
117
|
-
int shape[2];
|
|
118
|
-
shape[0] = ldv;
|
|
119
|
-
shape[1] = p;
|
|
120
|
-
rblapack_v = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
121
|
-
}
|
|
122
|
-
v = NA_PTR_TYPE(rblapack_v, complex*);
|
|
123
|
-
{
|
|
124
|
-
int shape[2];
|
|
125
|
-
shape[0] = ldq;
|
|
126
|
-
shape[1] = n;
|
|
127
|
-
rblapack_q = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
128
|
-
}
|
|
129
|
-
q = NA_PTR_TYPE(rblapack_q, complex*);
|
|
130
|
-
{
|
|
131
|
-
int shape[2];
|
|
132
|
-
shape[0] = lda;
|
|
133
|
-
shape[1] = n;
|
|
134
|
-
rblapack_a_out__ = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
135
|
-
}
|
|
136
|
-
a_out__ = NA_PTR_TYPE(rblapack_a_out__, complex*);
|
|
137
|
-
MEMCPY(a_out__, a, complex, NA_TOTAL(rblapack_a));
|
|
138
|
-
rblapack_a = rblapack_a_out__;
|
|
139
|
-
a = a_out__;
|
|
140
|
-
{
|
|
141
|
-
int shape[2];
|
|
142
|
-
shape[0] = ldb;
|
|
143
|
-
shape[1] = n;
|
|
144
|
-
rblapack_b_out__ = na_make_object(NA_SCOMPLEX, 2, shape, cNArray);
|
|
145
|
-
}
|
|
146
|
-
b_out__ = NA_PTR_TYPE(rblapack_b_out__, complex*);
|
|
147
|
-
MEMCPY(b_out__, b, complex, NA_TOTAL(rblapack_b));
|
|
148
|
-
rblapack_b = rblapack_b_out__;
|
|
149
|
-
b = b_out__;
|
|
150
|
-
iwork = ALLOC_N(integer, (n));
|
|
151
|
-
rwork = ALLOC_N(real, (2*n));
|
|
152
|
-
tau = ALLOC_N(complex, (n));
|
|
153
|
-
work = ALLOC_N(complex, (MAX(3*n,m)*(p)));
|
|
154
|
-
|
|
155
|
-
cggsvp_(&jobu, &jobv, &jobq, &m, &p, &n, a, &lda, b, &ldb, &tola, &tolb, &k, &l, u, &ldu, v, &ldv, q, &ldq, iwork, rwork, tau, work, &info);
|
|
156
|
-
|
|
157
|
-
free(iwork);
|
|
158
|
-
free(rwork);
|
|
159
|
-
free(tau);
|
|
160
|
-
free(work);
|
|
161
|
-
rblapack_k = INT2NUM(k);
|
|
162
|
-
rblapack_l = INT2NUM(l);
|
|
163
|
-
rblapack_info = INT2NUM(info);
|
|
164
|
-
return rb_ary_new3(8, rblapack_k, rblapack_l, rblapack_u, rblapack_v, rblapack_q, rblapack_info, rblapack_a, rblapack_b);
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
void
|
|
168
|
-
init_lapack_cggsvp(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
169
|
-
sHelp = sH;
|
|
170
|
-
sUsage = sU;
|
|
171
|
-
rblapack_ZERO = zero;
|
|
172
|
-
|
|
173
|
-
rb_define_module_function(mLapack, "cggsvp", rblapack_cggsvp, -1);
|
|
174
|
-
}
|
data/ext/cgtcon.c
DELETED
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID cgtcon_(char* norm, integer* n, complex* dl, complex* d, complex* du, complex* du2, integer* ipiv, real* anorm, real* rcond, complex* work, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_cgtcon(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_norm;
|
|
9
|
-
char norm;
|
|
10
|
-
VALUE rblapack_dl;
|
|
11
|
-
complex *dl;
|
|
12
|
-
VALUE rblapack_d;
|
|
13
|
-
complex *d;
|
|
14
|
-
VALUE rblapack_du;
|
|
15
|
-
complex *du;
|
|
16
|
-
VALUE rblapack_du2;
|
|
17
|
-
complex *du2;
|
|
18
|
-
VALUE rblapack_ipiv;
|
|
19
|
-
integer *ipiv;
|
|
20
|
-
VALUE rblapack_anorm;
|
|
21
|
-
real anorm;
|
|
22
|
-
VALUE rblapack_rcond;
|
|
23
|
-
real rcond;
|
|
24
|
-
VALUE rblapack_info;
|
|
25
|
-
integer info;
|
|
26
|
-
complex *work;
|
|
27
|
-
|
|
28
|
-
integer n;
|
|
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 rcond, info = NumRu::Lapack.cgtcon( norm, dl, d, du, du2, ipiv, anorm, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE CGTCON( NORM, N, DL, D, DU, DU2, IPIV, ANORM, RCOND, WORK, INFO )\n\n* Purpose\n* =======\n*\n* CGTCON estimates the reciprocal of the condition number of a complex\n* tridiagonal matrix A using the LU factorization as computed by\n* CGTTRF.\n*\n* An estimate is obtained for norm(inv(A)), and the reciprocal of the\n* condition number is computed as RCOND = 1 / (ANORM * norm(inv(A))).\n*\n\n* Arguments\n* =========\n*\n* NORM (input) CHARACTER*1\n* Specifies whether the 1-norm condition number or the\n* infinity-norm condition number is required:\n* = '1' or 'O': 1-norm;\n* = 'I': Infinity-norm.\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 0.\n*\n* DL (input) COMPLEX array, dimension (N-1)\n* The (n-1) multipliers that define the matrix L from the\n* LU factorization of A as computed by CGTTRF.\n*\n* D (input) COMPLEX array, dimension (N)\n* The n diagonal elements of the upper triangular matrix U from\n* the LU factorization of A.\n*\n* DU (input) COMPLEX array, dimension (N-1)\n* The (n-1) elements of the first superdiagonal of U.\n*\n* DU2 (input) COMPLEX array, dimension (N-2)\n* The (n-2) elements of the second superdiagonal of U.\n*\n* IPIV (input) INTEGER array, dimension (N)\n* The pivot indices; for 1 <= i <= n, row i of the matrix was\n* interchanged with row IPIV(i). IPIV(i) will always be either\n* i or i+1; IPIV(i) = i indicates a row interchange was not\n* required.\n*\n* ANORM (input) REAL\n* If NORM = '1' or 'O', the 1-norm of the original matrix A.\n* If NORM = 'I', the infinity-norm of the original matrix A.\n*\n* RCOND (output) REAL\n* The reciprocal of the condition number of the matrix A,\n* computed as RCOND = 1/(ANORM * AINVNM), where AINVNM is an\n* estimate of the 1-norm of inv(A) computed in this routine.\n*\n* WORK (workspace) COMPLEX 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");
|
|
36
|
-
return Qnil;
|
|
37
|
-
}
|
|
38
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
39
|
-
printf("%s\n", "USAGE:\n rcond, info = NumRu::Lapack.cgtcon( norm, dl, d, du, du2, ipiv, anorm, [:usage => usage, :help => help])\n");
|
|
40
|
-
return Qnil;
|
|
41
|
-
}
|
|
42
|
-
} else
|
|
43
|
-
rblapack_options = Qnil;
|
|
44
|
-
if (argc != 7 && argc != 7)
|
|
45
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 7)", argc);
|
|
46
|
-
rblapack_norm = argv[0];
|
|
47
|
-
rblapack_dl = argv[1];
|
|
48
|
-
rblapack_d = argv[2];
|
|
49
|
-
rblapack_du = argv[3];
|
|
50
|
-
rblapack_du2 = argv[4];
|
|
51
|
-
rblapack_ipiv = argv[5];
|
|
52
|
-
rblapack_anorm = argv[6];
|
|
53
|
-
if (argc == 7) {
|
|
54
|
-
} else if (rblapack_options != Qnil) {
|
|
55
|
-
} else {
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
norm = StringValueCStr(rblapack_norm)[0];
|
|
59
|
-
if (!NA_IsNArray(rblapack_d))
|
|
60
|
-
rb_raise(rb_eArgError, "d (3th argument) must be NArray");
|
|
61
|
-
if (NA_RANK(rblapack_d) != 1)
|
|
62
|
-
rb_raise(rb_eArgError, "rank of d (3th argument) must be %d", 1);
|
|
63
|
-
n = NA_SHAPE0(rblapack_d);
|
|
64
|
-
if (NA_TYPE(rblapack_d) != NA_SCOMPLEX)
|
|
65
|
-
rblapack_d = na_change_type(rblapack_d, NA_SCOMPLEX);
|
|
66
|
-
d = NA_PTR_TYPE(rblapack_d, complex*);
|
|
67
|
-
if (!NA_IsNArray(rblapack_ipiv))
|
|
68
|
-
rb_raise(rb_eArgError, "ipiv (6th argument) must be NArray");
|
|
69
|
-
if (NA_RANK(rblapack_ipiv) != 1)
|
|
70
|
-
rb_raise(rb_eArgError, "rank of ipiv (6th argument) must be %d", 1);
|
|
71
|
-
if (NA_SHAPE0(rblapack_ipiv) != n)
|
|
72
|
-
rb_raise(rb_eRuntimeError, "shape 0 of ipiv must be the same as shape 0 of d");
|
|
73
|
-
if (NA_TYPE(rblapack_ipiv) != NA_LINT)
|
|
74
|
-
rblapack_ipiv = na_change_type(rblapack_ipiv, NA_LINT);
|
|
75
|
-
ipiv = NA_PTR_TYPE(rblapack_ipiv, integer*);
|
|
76
|
-
if (!NA_IsNArray(rblapack_dl))
|
|
77
|
-
rb_raise(rb_eArgError, "dl (2th argument) must be NArray");
|
|
78
|
-
if (NA_RANK(rblapack_dl) != 1)
|
|
79
|
-
rb_raise(rb_eArgError, "rank of dl (2th argument) must be %d", 1);
|
|
80
|
-
if (NA_SHAPE0(rblapack_dl) != (n-1))
|
|
81
|
-
rb_raise(rb_eRuntimeError, "shape 0 of dl must be %d", n-1);
|
|
82
|
-
if (NA_TYPE(rblapack_dl) != NA_SCOMPLEX)
|
|
83
|
-
rblapack_dl = na_change_type(rblapack_dl, NA_SCOMPLEX);
|
|
84
|
-
dl = NA_PTR_TYPE(rblapack_dl, complex*);
|
|
85
|
-
if (!NA_IsNArray(rblapack_du2))
|
|
86
|
-
rb_raise(rb_eArgError, "du2 (5th argument) must be NArray");
|
|
87
|
-
if (NA_RANK(rblapack_du2) != 1)
|
|
88
|
-
rb_raise(rb_eArgError, "rank of du2 (5th argument) must be %d", 1);
|
|
89
|
-
if (NA_SHAPE0(rblapack_du2) != (n-2))
|
|
90
|
-
rb_raise(rb_eRuntimeError, "shape 0 of du2 must be %d", n-2);
|
|
91
|
-
if (NA_TYPE(rblapack_du2) != NA_SCOMPLEX)
|
|
92
|
-
rblapack_du2 = na_change_type(rblapack_du2, NA_SCOMPLEX);
|
|
93
|
-
du2 = NA_PTR_TYPE(rblapack_du2, complex*);
|
|
94
|
-
if (!NA_IsNArray(rblapack_du))
|
|
95
|
-
rb_raise(rb_eArgError, "du (4th argument) must be NArray");
|
|
96
|
-
if (NA_RANK(rblapack_du) != 1)
|
|
97
|
-
rb_raise(rb_eArgError, "rank of du (4th argument) must be %d", 1);
|
|
98
|
-
if (NA_SHAPE0(rblapack_du) != (n-1))
|
|
99
|
-
rb_raise(rb_eRuntimeError, "shape 0 of du must be %d", n-1);
|
|
100
|
-
if (NA_TYPE(rblapack_du) != NA_SCOMPLEX)
|
|
101
|
-
rblapack_du = na_change_type(rblapack_du, NA_SCOMPLEX);
|
|
102
|
-
du = NA_PTR_TYPE(rblapack_du, complex*);
|
|
103
|
-
anorm = (real)NUM2DBL(rblapack_anorm);
|
|
104
|
-
work = ALLOC_N(complex, (2*n));
|
|
105
|
-
|
|
106
|
-
cgtcon_(&norm, &n, dl, d, du, du2, ipiv, &anorm, &rcond, work, &info);
|
|
107
|
-
|
|
108
|
-
free(work);
|
|
109
|
-
rblapack_rcond = rb_float_new((double)rcond);
|
|
110
|
-
rblapack_info = INT2NUM(info);
|
|
111
|
-
return rb_ary_new3(2, rblapack_rcond, rblapack_info);
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
void
|
|
115
|
-
init_lapack_cgtcon(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
116
|
-
sHelp = sH;
|
|
117
|
-
sUsage = sU;
|
|
118
|
-
rblapack_ZERO = zero;
|
|
119
|
-
|
|
120
|
-
rb_define_module_function(mLapack, "cgtcon", rblapack_cgtcon, -1);
|
|
121
|
-
}
|