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/dgbtrs.c
DELETED
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID dgbtrs_(char* trans, integer* n, integer* kl, integer* ku, integer* nrhs, doublereal* ab, integer* ldab, integer* ipiv, doublereal* b, integer* ldb, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_dgbtrs(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_trans;
|
|
9
|
-
char trans;
|
|
10
|
-
VALUE rblapack_kl;
|
|
11
|
-
integer kl;
|
|
12
|
-
VALUE rblapack_ku;
|
|
13
|
-
integer ku;
|
|
14
|
-
VALUE rblapack_ab;
|
|
15
|
-
doublereal *ab;
|
|
16
|
-
VALUE rblapack_ipiv;
|
|
17
|
-
integer *ipiv;
|
|
18
|
-
VALUE rblapack_b;
|
|
19
|
-
doublereal *b;
|
|
20
|
-
VALUE rblapack_info;
|
|
21
|
-
integer info;
|
|
22
|
-
VALUE rblapack_b_out__;
|
|
23
|
-
doublereal *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.dgbtrs( trans, kl, ku, ab, ipiv, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE DGBTRS( TRANS, N, KL, KU, NRHS, AB, LDAB, IPIV, B, LDB, INFO )\n\n* Purpose\n* =======\n*\n* DGBTRS solves a system of linear equations\n* A * X = B or A' * X = B\n* with a general band matrix A using the LU factorization computed\n* by DGBTRF.\n*\n\n* Arguments\n* =========\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'* X = B (Transpose)\n* = 'C': A'* X = B (Conjugate transpose = Transpose)\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 0.\n*\n* KL (input) INTEGER\n* The number of subdiagonals within the band of A. KL >= 0.\n*\n* KU (input) INTEGER\n* The number of superdiagonals within the band of A. KU >= 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) DOUBLE PRECISION array, dimension (LDAB,N)\n* Details of the LU factorization of the band matrix A, as\n* computed by DGBTRF. U is stored as an upper triangular band\n* matrix with KL+KU superdiagonals in rows 1 to KL+KU+1, and\n* the multipliers used during the factorization are stored in\n* rows KL+KU+2 to 2*KL+KU+1.\n*\n* LDAB (input) INTEGER\n* The leading dimension of the array AB. LDAB >= 2*KL+KU+1.\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).\n*\n* B (input/output) DOUBLE PRECISION array, dimension (LDB,NRHS)\n* On entry, the right hand side matrix B.\n* On exit, 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*\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.dgbtrs( trans, kl, ku, ab, ipiv, 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_trans = argv[0];
|
|
47
|
-
rblapack_kl = argv[1];
|
|
48
|
-
rblapack_ku = argv[2];
|
|
49
|
-
rblapack_ab = argv[3];
|
|
50
|
-
rblapack_ipiv = argv[4];
|
|
51
|
-
rblapack_b = argv[5];
|
|
52
|
-
if (argc == 6) {
|
|
53
|
-
} else if (rblapack_options != Qnil) {
|
|
54
|
-
} else {
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
trans = StringValueCStr(rblapack_trans)[0];
|
|
58
|
-
ku = NUM2INT(rblapack_ku);
|
|
59
|
-
if (!NA_IsNArray(rblapack_ipiv))
|
|
60
|
-
rb_raise(rb_eArgError, "ipiv (5th argument) must be NArray");
|
|
61
|
-
if (NA_RANK(rblapack_ipiv) != 1)
|
|
62
|
-
rb_raise(rb_eArgError, "rank of ipiv (5th argument) must be %d", 1);
|
|
63
|
-
n = NA_SHAPE0(rblapack_ipiv);
|
|
64
|
-
if (NA_TYPE(rblapack_ipiv) != NA_LINT)
|
|
65
|
-
rblapack_ipiv = na_change_type(rblapack_ipiv, NA_LINT);
|
|
66
|
-
ipiv = NA_PTR_TYPE(rblapack_ipiv, integer*);
|
|
67
|
-
kl = NUM2INT(rblapack_kl);
|
|
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_DFLOAT)
|
|
75
|
-
rblapack_b = na_change_type(rblapack_b, NA_DFLOAT);
|
|
76
|
-
b = NA_PTR_TYPE(rblapack_b, doublereal*);
|
|
77
|
-
if (!NA_IsNArray(rblapack_ab))
|
|
78
|
-
rb_raise(rb_eArgError, "ab (4th argument) must be NArray");
|
|
79
|
-
if (NA_RANK(rblapack_ab) != 2)
|
|
80
|
-
rb_raise(rb_eArgError, "rank of ab (4th argument) must be %d", 2);
|
|
81
|
-
ldab = NA_SHAPE0(rblapack_ab);
|
|
82
|
-
if (NA_SHAPE1(rblapack_ab) != n)
|
|
83
|
-
rb_raise(rb_eRuntimeError, "shape 1 of ab must be the same as shape 0 of ipiv");
|
|
84
|
-
if (NA_TYPE(rblapack_ab) != NA_DFLOAT)
|
|
85
|
-
rblapack_ab = na_change_type(rblapack_ab, NA_DFLOAT);
|
|
86
|
-
ab = NA_PTR_TYPE(rblapack_ab, doublereal*);
|
|
87
|
-
{
|
|
88
|
-
int shape[2];
|
|
89
|
-
shape[0] = ldb;
|
|
90
|
-
shape[1] = nrhs;
|
|
91
|
-
rblapack_b_out__ = na_make_object(NA_DFLOAT, 2, shape, cNArray);
|
|
92
|
-
}
|
|
93
|
-
b_out__ = NA_PTR_TYPE(rblapack_b_out__, doublereal*);
|
|
94
|
-
MEMCPY(b_out__, b, doublereal, NA_TOTAL(rblapack_b));
|
|
95
|
-
rblapack_b = rblapack_b_out__;
|
|
96
|
-
b = b_out__;
|
|
97
|
-
|
|
98
|
-
dgbtrs_(&trans, &n, &kl, &ku, &nrhs, ab, &ldab, ipiv, b, &ldb, &info);
|
|
99
|
-
|
|
100
|
-
rblapack_info = INT2NUM(info);
|
|
101
|
-
return rb_ary_new3(2, rblapack_info, rblapack_b);
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
void
|
|
105
|
-
init_lapack_dgbtrs(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
106
|
-
sHelp = sH;
|
|
107
|
-
sUsage = sU;
|
|
108
|
-
rblapack_ZERO = zero;
|
|
109
|
-
|
|
110
|
-
rb_define_module_function(mLapack, "dgbtrs", rblapack_dgbtrs, -1);
|
|
111
|
-
}
|
data/ext/dgebak.c
DELETED
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID dgebak_(char* job, char* side, integer* n, integer* ilo, integer* ihi, doublereal* scale, integer* m, doublereal* v, integer* ldv, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_dgebak(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_job;
|
|
9
|
-
char job;
|
|
10
|
-
VALUE rblapack_side;
|
|
11
|
-
char side;
|
|
12
|
-
VALUE rblapack_ilo;
|
|
13
|
-
integer ilo;
|
|
14
|
-
VALUE rblapack_ihi;
|
|
15
|
-
integer ihi;
|
|
16
|
-
VALUE rblapack_scale;
|
|
17
|
-
doublereal *scale;
|
|
18
|
-
VALUE rblapack_v;
|
|
19
|
-
doublereal *v;
|
|
20
|
-
VALUE rblapack_info;
|
|
21
|
-
integer info;
|
|
22
|
-
VALUE rblapack_v_out__;
|
|
23
|
-
doublereal *v_out__;
|
|
24
|
-
|
|
25
|
-
integer n;
|
|
26
|
-
integer ldv;
|
|
27
|
-
integer m;
|
|
28
|
-
|
|
29
|
-
VALUE rblapack_options;
|
|
30
|
-
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
31
|
-
argc--;
|
|
32
|
-
rblapack_options = argv[argc];
|
|
33
|
-
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
34
|
-
printf("%s\n", "USAGE:\n info, v = NumRu::Lapack.dgebak( job, side, ilo, ihi, scale, v, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE DGEBAK( JOB, SIDE, N, ILO, IHI, SCALE, M, V, LDV, INFO )\n\n* Purpose\n* =======\n*\n* DGEBAK forms the right or left eigenvectors of a real general matrix\n* by backward transformation on the computed eigenvectors of the\n* balanced matrix output by DGEBAL.\n*\n\n* Arguments\n* =========\n*\n* JOB (input) CHARACTER*1\n* Specifies the type of backward transformation required:\n* = 'N', do nothing, return immediately;\n* = 'P', do backward transformation for permutation only;\n* = 'S', do backward transformation for scaling only;\n* = 'B', do backward transformations for both permutation and\n* scaling.\n* JOB must be the same as the argument JOB supplied to DGEBAL.\n*\n* SIDE (input) CHARACTER*1\n* = 'R': V contains right eigenvectors;\n* = 'L': V contains left eigenvectors.\n*\n* N (input) INTEGER\n* The number of rows of the matrix V. N >= 0.\n*\n* ILO (input) INTEGER\n* IHI (input) INTEGER\n* The integers ILO and IHI determined by DGEBAL.\n* 1 <= ILO <= IHI <= N, if N > 0; ILO=1 and IHI=0, if N=0.\n*\n* SCALE (input) DOUBLE PRECISION array, dimension (N)\n* Details of the permutation and scaling factors, as returned\n* by DGEBAL.\n*\n* M (input) INTEGER\n* The number of columns of the matrix V. M >= 0.\n*\n* V (input/output) DOUBLE PRECISION array, dimension (LDV,M)\n* On entry, the matrix of right or left eigenvectors to be\n* transformed, as returned by DHSEIN or DTREVC.\n* On exit, V is overwritten by the transformed eigenvectors.\n*\n* LDV (input) INTEGER\n* The leading dimension of the array V. LDV >= 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* =====================================================================\n*\n\n");
|
|
35
|
-
return Qnil;
|
|
36
|
-
}
|
|
37
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
38
|
-
printf("%s\n", "USAGE:\n info, v = NumRu::Lapack.dgebak( job, side, ilo, ihi, scale, v, [:usage => usage, :help => help])\n");
|
|
39
|
-
return Qnil;
|
|
40
|
-
}
|
|
41
|
-
} else
|
|
42
|
-
rblapack_options = Qnil;
|
|
43
|
-
if (argc != 6 && argc != 6)
|
|
44
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 6)", argc);
|
|
45
|
-
rblapack_job = argv[0];
|
|
46
|
-
rblapack_side = argv[1];
|
|
47
|
-
rblapack_ilo = argv[2];
|
|
48
|
-
rblapack_ihi = argv[3];
|
|
49
|
-
rblapack_scale = argv[4];
|
|
50
|
-
rblapack_v = argv[5];
|
|
51
|
-
if (argc == 6) {
|
|
52
|
-
} else if (rblapack_options != Qnil) {
|
|
53
|
-
} else {
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
job = StringValueCStr(rblapack_job)[0];
|
|
57
|
-
ilo = NUM2INT(rblapack_ilo);
|
|
58
|
-
if (!NA_IsNArray(rblapack_scale))
|
|
59
|
-
rb_raise(rb_eArgError, "scale (5th argument) must be NArray");
|
|
60
|
-
if (NA_RANK(rblapack_scale) != 1)
|
|
61
|
-
rb_raise(rb_eArgError, "rank of scale (5th argument) must be %d", 1);
|
|
62
|
-
n = NA_SHAPE0(rblapack_scale);
|
|
63
|
-
if (NA_TYPE(rblapack_scale) != NA_DFLOAT)
|
|
64
|
-
rblapack_scale = na_change_type(rblapack_scale, NA_DFLOAT);
|
|
65
|
-
scale = NA_PTR_TYPE(rblapack_scale, doublereal*);
|
|
66
|
-
side = StringValueCStr(rblapack_side)[0];
|
|
67
|
-
if (!NA_IsNArray(rblapack_v))
|
|
68
|
-
rb_raise(rb_eArgError, "v (6th argument) must be NArray");
|
|
69
|
-
if (NA_RANK(rblapack_v) != 2)
|
|
70
|
-
rb_raise(rb_eArgError, "rank of v (6th argument) must be %d", 2);
|
|
71
|
-
ldv = NA_SHAPE0(rblapack_v);
|
|
72
|
-
m = NA_SHAPE1(rblapack_v);
|
|
73
|
-
if (NA_TYPE(rblapack_v) != NA_DFLOAT)
|
|
74
|
-
rblapack_v = na_change_type(rblapack_v, NA_DFLOAT);
|
|
75
|
-
v = NA_PTR_TYPE(rblapack_v, doublereal*);
|
|
76
|
-
ihi = NUM2INT(rblapack_ihi);
|
|
77
|
-
{
|
|
78
|
-
int shape[2];
|
|
79
|
-
shape[0] = ldv;
|
|
80
|
-
shape[1] = m;
|
|
81
|
-
rblapack_v_out__ = na_make_object(NA_DFLOAT, 2, shape, cNArray);
|
|
82
|
-
}
|
|
83
|
-
v_out__ = NA_PTR_TYPE(rblapack_v_out__, doublereal*);
|
|
84
|
-
MEMCPY(v_out__, v, doublereal, NA_TOTAL(rblapack_v));
|
|
85
|
-
rblapack_v = rblapack_v_out__;
|
|
86
|
-
v = v_out__;
|
|
87
|
-
|
|
88
|
-
dgebak_(&job, &side, &n, &ilo, &ihi, scale, &m, v, &ldv, &info);
|
|
89
|
-
|
|
90
|
-
rblapack_info = INT2NUM(info);
|
|
91
|
-
return rb_ary_new3(2, rblapack_info, rblapack_v);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
void
|
|
95
|
-
init_lapack_dgebak(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
96
|
-
sHelp = sH;
|
|
97
|
-
sUsage = sU;
|
|
98
|
-
rblapack_ZERO = zero;
|
|
99
|
-
|
|
100
|
-
rb_define_module_function(mLapack, "dgebak", rblapack_dgebak, -1);
|
|
101
|
-
}
|
data/ext/dgebal.c
DELETED
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID dgebal_(char* job, integer* n, doublereal* a, integer* lda, integer* ilo, integer* ihi, doublereal* scale, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_dgebal(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_job;
|
|
9
|
-
char job;
|
|
10
|
-
VALUE rblapack_a;
|
|
11
|
-
doublereal *a;
|
|
12
|
-
VALUE rblapack_ilo;
|
|
13
|
-
integer ilo;
|
|
14
|
-
VALUE rblapack_ihi;
|
|
15
|
-
integer ihi;
|
|
16
|
-
VALUE rblapack_scale;
|
|
17
|
-
doublereal *scale;
|
|
18
|
-
VALUE rblapack_info;
|
|
19
|
-
integer info;
|
|
20
|
-
VALUE rblapack_a_out__;
|
|
21
|
-
doublereal *a_out__;
|
|
22
|
-
|
|
23
|
-
integer lda;
|
|
24
|
-
integer n;
|
|
25
|
-
|
|
26
|
-
VALUE rblapack_options;
|
|
27
|
-
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
28
|
-
argc--;
|
|
29
|
-
rblapack_options = argv[argc];
|
|
30
|
-
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
31
|
-
printf("%s\n", "USAGE:\n ilo, ihi, scale, info, a = NumRu::Lapack.dgebal( job, a, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE DGEBAL( JOB, N, A, LDA, ILO, IHI, SCALE, INFO )\n\n* Purpose\n* =======\n*\n* DGEBAL balances a general real matrix A. This involves, first,\n* permuting A by a similarity transformation to isolate eigenvalues\n* in the first 1 to ILO-1 and last IHI+1 to N elements on the\n* diagonal; and second, applying a diagonal similarity transformation\n* to rows and columns ILO to IHI to make the rows and columns as\n* close in norm as possible. Both steps are optional.\n*\n* Balancing may reduce the 1-norm of the matrix, and improve the\n* accuracy of the computed eigenvalues and/or eigenvectors.\n*\n\n* Arguments\n* =========\n*\n* JOB (input) CHARACTER*1\n* Specifies the operations to be performed on A:\n* = 'N': none: simply set ILO = 1, IHI = N, SCALE(I) = 1.0\n* for i = 1,...,N;\n* = 'P': permute only;\n* = 'S': scale only;\n* = 'B': both permute and scale.\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 0.\n*\n* A (input/output) DOUBLE PRECISION array, dimension (LDA,N)\n* On entry, the input matrix A.\n* On exit, A is overwritten by the balanced matrix.\n* If JOB = 'N', A is not referenced.\n* See Further Details.\n*\n* LDA (input) INTEGER\n* The leading dimension of the array A. LDA >= max(1,N).\n*\n* ILO (output) INTEGER\n* IHI (output) INTEGER\n* ILO and IHI are set to integers such that on exit\n* A(i,j) = 0 if i > j and j = 1,...,ILO-1 or I = IHI+1,...,N.\n* If JOB = 'N' or 'S', ILO = 1 and IHI = N.\n*\n* SCALE (output) DOUBLE PRECISION array, dimension (N)\n* Details of the permutations and scaling factors applied to\n* A. If P(j) is the index of the row and column interchanged\n* with row and column j and D(j) is the scaling factor\n* applied to row and column j, then\n* SCALE(j) = P(j) for j = 1,...,ILO-1\n* = D(j) for j = ILO,...,IHI\n* = P(j) for j = IHI+1,...,N.\n* The order in which the interchanges are made is N to IHI+1,\n* then 1 to ILO-1.\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 permutations consist of row and column interchanges which put\n* the matrix in the form\n*\n* ( T1 X Y )\n* P A P = ( 0 B Z )\n* ( 0 0 T2 )\n*\n* where T1 and T2 are upper triangular matrices whose eigenvalues lie\n* along the diagonal. The column indices ILO and IHI mark the starting\n* and ending columns of the submatrix B. Balancing consists of applying\n* a diagonal similarity transformation inv(D) * B * D to make the\n* 1-norms of each row of B and its corresponding column nearly equal.\n* The output matrix is\n*\n* ( T1 X*D Y )\n* ( 0 inv(D)*B*D inv(D)*Z ).\n* ( 0 0 T2 )\n*\n* Information about the permutations P and the diagonal matrix D is\n* returned in the vector SCALE.\n*\n* This subroutine is based on the EISPACK routine BALANC.\n*\n* Modified by Tzu-Yi Chen, Computer Science Division, University of\n* California at Berkeley, USA\n*\n* =====================================================================\n*\n\n");
|
|
32
|
-
return Qnil;
|
|
33
|
-
}
|
|
34
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
35
|
-
printf("%s\n", "USAGE:\n ilo, ihi, scale, info, a = NumRu::Lapack.dgebal( job, a, [:usage => usage, :help => help])\n");
|
|
36
|
-
return Qnil;
|
|
37
|
-
}
|
|
38
|
-
} else
|
|
39
|
-
rblapack_options = Qnil;
|
|
40
|
-
if (argc != 2 && argc != 2)
|
|
41
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 2)", argc);
|
|
42
|
-
rblapack_job = argv[0];
|
|
43
|
-
rblapack_a = argv[1];
|
|
44
|
-
if (argc == 2) {
|
|
45
|
-
} else if (rblapack_options != Qnil) {
|
|
46
|
-
} else {
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
job = StringValueCStr(rblapack_job)[0];
|
|
50
|
-
if (!NA_IsNArray(rblapack_a))
|
|
51
|
-
rb_raise(rb_eArgError, "a (2th argument) must be NArray");
|
|
52
|
-
if (NA_RANK(rblapack_a) != 2)
|
|
53
|
-
rb_raise(rb_eArgError, "rank of a (2th argument) must be %d", 2);
|
|
54
|
-
lda = NA_SHAPE0(rblapack_a);
|
|
55
|
-
n = NA_SHAPE1(rblapack_a);
|
|
56
|
-
if (NA_TYPE(rblapack_a) != NA_DFLOAT)
|
|
57
|
-
rblapack_a = na_change_type(rblapack_a, NA_DFLOAT);
|
|
58
|
-
a = NA_PTR_TYPE(rblapack_a, doublereal*);
|
|
59
|
-
{
|
|
60
|
-
int shape[1];
|
|
61
|
-
shape[0] = n;
|
|
62
|
-
rblapack_scale = na_make_object(NA_DFLOAT, 1, shape, cNArray);
|
|
63
|
-
}
|
|
64
|
-
scale = NA_PTR_TYPE(rblapack_scale, doublereal*);
|
|
65
|
-
{
|
|
66
|
-
int shape[2];
|
|
67
|
-
shape[0] = lda;
|
|
68
|
-
shape[1] = n;
|
|
69
|
-
rblapack_a_out__ = na_make_object(NA_DFLOAT, 2, shape, cNArray);
|
|
70
|
-
}
|
|
71
|
-
a_out__ = NA_PTR_TYPE(rblapack_a_out__, doublereal*);
|
|
72
|
-
MEMCPY(a_out__, a, doublereal, NA_TOTAL(rblapack_a));
|
|
73
|
-
rblapack_a = rblapack_a_out__;
|
|
74
|
-
a = a_out__;
|
|
75
|
-
|
|
76
|
-
dgebal_(&job, &n, a, &lda, &ilo, &ihi, scale, &info);
|
|
77
|
-
|
|
78
|
-
rblapack_ilo = INT2NUM(ilo);
|
|
79
|
-
rblapack_ihi = INT2NUM(ihi);
|
|
80
|
-
rblapack_info = INT2NUM(info);
|
|
81
|
-
return rb_ary_new3(5, rblapack_ilo, rblapack_ihi, rblapack_scale, rblapack_info, rblapack_a);
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
void
|
|
85
|
-
init_lapack_dgebal(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
86
|
-
sHelp = sH;
|
|
87
|
-
sUsage = sU;
|
|
88
|
-
rblapack_ZERO = zero;
|
|
89
|
-
|
|
90
|
-
rb_define_module_function(mLapack, "dgebal", rblapack_dgebal, -1);
|
|
91
|
-
}
|
data/ext/dgebd2.c
DELETED
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID dgebd2_(integer* m, integer* n, doublereal* a, integer* lda, doublereal* d, doublereal* e, doublereal* tauq, doublereal* taup, doublereal* work, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_dgebd2(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_m;
|
|
9
|
-
integer m;
|
|
10
|
-
VALUE rblapack_a;
|
|
11
|
-
doublereal *a;
|
|
12
|
-
VALUE rblapack_d;
|
|
13
|
-
doublereal *d;
|
|
14
|
-
VALUE rblapack_e;
|
|
15
|
-
doublereal *e;
|
|
16
|
-
VALUE rblapack_tauq;
|
|
17
|
-
doublereal *tauq;
|
|
18
|
-
VALUE rblapack_taup;
|
|
19
|
-
doublereal *taup;
|
|
20
|
-
VALUE rblapack_info;
|
|
21
|
-
integer info;
|
|
22
|
-
VALUE rblapack_a_out__;
|
|
23
|
-
doublereal *a_out__;
|
|
24
|
-
doublereal *work;
|
|
25
|
-
|
|
26
|
-
integer lda;
|
|
27
|
-
integer n;
|
|
28
|
-
|
|
29
|
-
VALUE rblapack_options;
|
|
30
|
-
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
31
|
-
argc--;
|
|
32
|
-
rblapack_options = argv[argc];
|
|
33
|
-
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
34
|
-
printf("%s\n", "USAGE:\n d, e, tauq, taup, info, a = NumRu::Lapack.dgebd2( m, a, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE DGEBD2( M, N, A, LDA, D, E, TAUQ, TAUP, WORK, INFO )\n\n* Purpose\n* =======\n*\n* DGEBD2 reduces a real general m by n matrix A to upper or lower\n* bidiagonal form B by an orthogonal transformation: Q' * A * P = B.\n*\n* If m >= n, B is upper bidiagonal; if m < n, B is lower bidiagonal.\n*\n\n* Arguments\n* =========\n*\n* M (input) INTEGER\n* The number of rows in the matrix A. M >= 0.\n*\n* N (input) INTEGER\n* The number of columns in the matrix A. N >= 0.\n*\n* A (input/output) DOUBLE PRECISION array, dimension (LDA,N)\n* On entry, the m by n general matrix to be reduced.\n* On exit,\n* if m >= n, the diagonal and the first superdiagonal are\n* overwritten with the upper bidiagonal matrix B; the\n* elements below the diagonal, with the array TAUQ, represent\n* the orthogonal matrix Q as a product of elementary\n* reflectors, and the elements above the first superdiagonal,\n* with the array TAUP, represent the orthogonal matrix P as\n* a product of elementary reflectors;\n* if m < n, the diagonal and the first subdiagonal are\n* overwritten with the lower bidiagonal matrix B; the\n* elements below the first subdiagonal, with the array TAUQ,\n* represent the orthogonal matrix Q as a product of\n* elementary reflectors, and the elements above the diagonal,\n* with the array TAUP, represent the orthogonal matrix P as\n* a product of elementary reflectors.\n* See Further Details.\n*\n* LDA (input) INTEGER\n* The leading dimension of the array A. LDA >= max(1,M).\n*\n* D (output) DOUBLE PRECISION array, dimension (min(M,N))\n* The diagonal elements of the bidiagonal matrix B:\n* D(i) = A(i,i).\n*\n* E (output) DOUBLE PRECISION array, dimension (min(M,N)-1)\n* The off-diagonal elements of the bidiagonal matrix B:\n* if m >= n, E(i) = A(i,i+1) for i = 1,2,...,n-1;\n* if m < n, E(i) = A(i+1,i) for i = 1,2,...,m-1.\n*\n* TAUQ (output) DOUBLE PRECISION array dimension (min(M,N))\n* The scalar factors of the elementary reflectors which\n* represent the orthogonal matrix Q. See Further Details.\n*\n* TAUP (output) DOUBLE PRECISION array, dimension (min(M,N))\n* The scalar factors of the elementary reflectors which\n* represent the orthogonal matrix P. See Further Details.\n*\n* WORK (workspace) DOUBLE PRECISION array, dimension (max(M,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* The matrices Q and P are represented as products of elementary\n* reflectors:\n*\n* If m >= n,\n*\n* Q = H(1) H(2) . . . H(n) and P = G(1) G(2) . . . G(n-1)\n*\n* Each H(i) and G(i) has the form:\n*\n* H(i) = I - tauq * v * v' and G(i) = I - taup * u * u'\n*\n* where tauq and taup are real scalars, and v and u are real vectors;\n* v(1:i-1) = 0, v(i) = 1, and v(i+1:m) is stored on exit in A(i+1:m,i);\n* u(1:i) = 0, u(i+1) = 1, and u(i+2:n) is stored on exit in A(i,i+2:n);\n* tauq is stored in TAUQ(i) and taup in TAUP(i).\n*\n* If m < n,\n*\n* Q = H(1) H(2) . . . H(m-1) and P = G(1) G(2) . . . G(m)\n*\n* Each H(i) and G(i) has the form:\n*\n* H(i) = I - tauq * v * v' and G(i) = I - taup * u * u'\n*\n* where tauq and taup are real scalars, and v and u are real vectors;\n* v(1:i) = 0, v(i+1) = 1, and v(i+2:m) is stored on exit in A(i+2:m,i);\n* u(1:i-1) = 0, u(i) = 1, and u(i+1:n) is stored on exit in A(i,i+1:n);\n* tauq is stored in TAUQ(i) and taup in TAUP(i).\n*\n* The contents of A on exit are illustrated by the following examples:\n*\n* m = 6 and n = 5 (m > n): m = 5 and n = 6 (m < n):\n*\n* ( d e u1 u1 u1 ) ( d u1 u1 u1 u1 u1 )\n* ( v1 d e u2 u2 ) ( e d u2 u2 u2 u2 )\n* ( v1 v2 d e u3 ) ( v1 e d u3 u3 u3 )\n* ( v1 v2 v3 d e ) ( v1 v2 e d u4 u4 )\n* ( v1 v2 v3 v4 d ) ( v1 v2 v3 e d u5 )\n* ( v1 v2 v3 v4 v5 )\n*\n* where d and e denote diagonal and off-diagonal elements of B, vi\n* denotes an element of the vector defining H(i), and ui an element of\n* the vector defining G(i).\n*\n* =====================================================================\n*\n\n");
|
|
35
|
-
return Qnil;
|
|
36
|
-
}
|
|
37
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
38
|
-
printf("%s\n", "USAGE:\n d, e, tauq, taup, info, a = NumRu::Lapack.dgebd2( m, a, [:usage => usage, :help => help])\n");
|
|
39
|
-
return Qnil;
|
|
40
|
-
}
|
|
41
|
-
} else
|
|
42
|
-
rblapack_options = Qnil;
|
|
43
|
-
if (argc != 2 && argc != 2)
|
|
44
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 2)", argc);
|
|
45
|
-
rblapack_m = argv[0];
|
|
46
|
-
rblapack_a = argv[1];
|
|
47
|
-
if (argc == 2) {
|
|
48
|
-
} else if (rblapack_options != Qnil) {
|
|
49
|
-
} else {
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
m = NUM2INT(rblapack_m);
|
|
53
|
-
if (!NA_IsNArray(rblapack_a))
|
|
54
|
-
rb_raise(rb_eArgError, "a (2th argument) must be NArray");
|
|
55
|
-
if (NA_RANK(rblapack_a) != 2)
|
|
56
|
-
rb_raise(rb_eArgError, "rank of a (2th argument) must be %d", 2);
|
|
57
|
-
lda = NA_SHAPE0(rblapack_a);
|
|
58
|
-
n = NA_SHAPE1(rblapack_a);
|
|
59
|
-
if (NA_TYPE(rblapack_a) != NA_DFLOAT)
|
|
60
|
-
rblapack_a = na_change_type(rblapack_a, NA_DFLOAT);
|
|
61
|
-
a = NA_PTR_TYPE(rblapack_a, doublereal*);
|
|
62
|
-
{
|
|
63
|
-
int shape[1];
|
|
64
|
-
shape[0] = MIN(m,n);
|
|
65
|
-
rblapack_d = na_make_object(NA_DFLOAT, 1, shape, cNArray);
|
|
66
|
-
}
|
|
67
|
-
d = NA_PTR_TYPE(rblapack_d, doublereal*);
|
|
68
|
-
{
|
|
69
|
-
int shape[1];
|
|
70
|
-
shape[0] = MIN(m,n)-1;
|
|
71
|
-
rblapack_e = na_make_object(NA_DFLOAT, 1, shape, cNArray);
|
|
72
|
-
}
|
|
73
|
-
e = NA_PTR_TYPE(rblapack_e, doublereal*);
|
|
74
|
-
{
|
|
75
|
-
int shape[1];
|
|
76
|
-
shape[0] = MIN(m,n);
|
|
77
|
-
rblapack_tauq = na_make_object(NA_DFLOAT, 1, shape, cNArray);
|
|
78
|
-
}
|
|
79
|
-
tauq = NA_PTR_TYPE(rblapack_tauq, doublereal*);
|
|
80
|
-
{
|
|
81
|
-
int shape[1];
|
|
82
|
-
shape[0] = MIN(m,n);
|
|
83
|
-
rblapack_taup = na_make_object(NA_DFLOAT, 1, shape, cNArray);
|
|
84
|
-
}
|
|
85
|
-
taup = NA_PTR_TYPE(rblapack_taup, doublereal*);
|
|
86
|
-
{
|
|
87
|
-
int shape[2];
|
|
88
|
-
shape[0] = lda;
|
|
89
|
-
shape[1] = n;
|
|
90
|
-
rblapack_a_out__ = na_make_object(NA_DFLOAT, 2, shape, cNArray);
|
|
91
|
-
}
|
|
92
|
-
a_out__ = NA_PTR_TYPE(rblapack_a_out__, doublereal*);
|
|
93
|
-
MEMCPY(a_out__, a, doublereal, NA_TOTAL(rblapack_a));
|
|
94
|
-
rblapack_a = rblapack_a_out__;
|
|
95
|
-
a = a_out__;
|
|
96
|
-
work = ALLOC_N(doublereal, (MAX(m,n)));
|
|
97
|
-
|
|
98
|
-
dgebd2_(&m, &n, a, &lda, d, e, tauq, taup, work, &info);
|
|
99
|
-
|
|
100
|
-
free(work);
|
|
101
|
-
rblapack_info = INT2NUM(info);
|
|
102
|
-
return rb_ary_new3(6, rblapack_d, rblapack_e, rblapack_tauq, rblapack_taup, rblapack_info, rblapack_a);
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
void
|
|
106
|
-
init_lapack_dgebd2(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
107
|
-
sHelp = sH;
|
|
108
|
-
sUsage = sU;
|
|
109
|
-
rblapack_ZERO = zero;
|
|
110
|
-
|
|
111
|
-
rb_define_module_function(mLapack, "dgebd2", rblapack_dgebd2, -1);
|
|
112
|
-
}
|
data/ext/dgebrd.c
DELETED
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID dgebrd_(integer* m, integer* n, doublereal* a, integer* lda, doublereal* d, doublereal* e, doublereal* tauq, doublereal* taup, doublereal* work, integer* lwork, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_dgebrd(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_m;
|
|
9
|
-
integer m;
|
|
10
|
-
VALUE rblapack_a;
|
|
11
|
-
doublereal *a;
|
|
12
|
-
VALUE rblapack_lwork;
|
|
13
|
-
integer lwork;
|
|
14
|
-
VALUE rblapack_d;
|
|
15
|
-
doublereal *d;
|
|
16
|
-
VALUE rblapack_e;
|
|
17
|
-
doublereal *e;
|
|
18
|
-
VALUE rblapack_tauq;
|
|
19
|
-
doublereal *tauq;
|
|
20
|
-
VALUE rblapack_taup;
|
|
21
|
-
doublereal *taup;
|
|
22
|
-
VALUE rblapack_work;
|
|
23
|
-
doublereal *work;
|
|
24
|
-
VALUE rblapack_info;
|
|
25
|
-
integer info;
|
|
26
|
-
VALUE rblapack_a_out__;
|
|
27
|
-
doublereal *a_out__;
|
|
28
|
-
|
|
29
|
-
integer lda;
|
|
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 d, e, tauq, taup, work, info, a = NumRu::Lapack.dgebrd( m, a, [:lwork => lwork, :usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE DGEBRD( M, N, A, LDA, D, E, TAUQ, TAUP, WORK, LWORK, INFO )\n\n* Purpose\n* =======\n*\n* DGEBRD reduces a general real M-by-N matrix A to upper or lower\n* bidiagonal form B by an orthogonal transformation: Q**T * A * P = B.\n*\n* If m >= n, B is upper bidiagonal; if m < n, B is lower bidiagonal.\n*\n\n* Arguments\n* =========\n*\n* M (input) INTEGER\n* The number of rows in the matrix A. M >= 0.\n*\n* N (input) INTEGER\n* The number of columns in the matrix A. N >= 0.\n*\n* A (input/output) DOUBLE PRECISION array, dimension (LDA,N)\n* On entry, the M-by-N general matrix to be reduced.\n* On exit,\n* if m >= n, the diagonal and the first superdiagonal are\n* overwritten with the upper bidiagonal matrix B; the\n* elements below the diagonal, with the array TAUQ, represent\n* the orthogonal matrix Q as a product of elementary\n* reflectors, and the elements above the first superdiagonal,\n* with the array TAUP, represent the orthogonal matrix P as\n* a product of elementary reflectors;\n* if m < n, the diagonal and the first subdiagonal are\n* overwritten with the lower bidiagonal matrix B; the\n* elements below the first subdiagonal, with the array TAUQ,\n* represent the orthogonal matrix Q as a product of\n* elementary reflectors, and the elements above the diagonal,\n* with the array TAUP, represent the orthogonal matrix P as\n* a product of elementary reflectors.\n* See Further Details.\n*\n* LDA (input) INTEGER\n* The leading dimension of the array A. LDA >= max(1,M).\n*\n* D (output) DOUBLE PRECISION array, dimension (min(M,N))\n* The diagonal elements of the bidiagonal matrix B:\n* D(i) = A(i,i).\n*\n* E (output) DOUBLE PRECISION array, dimension (min(M,N)-1)\n* The off-diagonal elements of the bidiagonal matrix B:\n* if m >= n, E(i) = A(i,i+1) for i = 1,2,...,n-1;\n* if m < n, E(i) = A(i+1,i) for i = 1,2,...,m-1.\n*\n* TAUQ (output) DOUBLE PRECISION array dimension (min(M,N))\n* The scalar factors of the elementary reflectors which\n* represent the orthogonal matrix Q. See Further Details.\n*\n* TAUP (output) DOUBLE PRECISION array, dimension (min(M,N))\n* The scalar factors of the elementary reflectors which\n* represent the orthogonal matrix P. See Further Details.\n*\n* WORK (workspace/output) DOUBLE PRECISION array, dimension (MAX(1,LWORK))\n* On exit, if INFO = 0, WORK(1) returns the optimal LWORK.\n*\n* LWORK (input) INTEGER\n* The length of the array WORK. LWORK >= max(1,M,N).\n* For optimum performance LWORK >= (M+N)*NB, where NB\n* is the optimal blocksize.\n*\n* If LWORK = -1, then a workspace query is assumed; the routine\n* only calculates the optimal size of the WORK array, returns\n* this value as the first entry of the WORK array, and no error\n* message related to LWORK is issued by XERBLA.\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 matrices Q and P are represented as products of elementary\n* reflectors:\n*\n* If m >= n,\n*\n* Q = H(1) H(2) . . . H(n) and P = G(1) G(2) . . . G(n-1)\n*\n* Each H(i) and G(i) has the form:\n*\n* H(i) = I - tauq * v * v' and G(i) = I - taup * u * u'\n*\n* where tauq and taup are real scalars, and v and u are real vectors;\n* v(1:i-1) = 0, v(i) = 1, and v(i+1:m) is stored on exit in A(i+1:m,i);\n* u(1:i) = 0, u(i+1) = 1, and u(i+2:n) is stored on exit in A(i,i+2:n);\n* tauq is stored in TAUQ(i) and taup in TAUP(i).\n*\n* If m < n,\n*\n* Q = H(1) H(2) . . . H(m-1) and P = G(1) G(2) . . . G(m)\n*\n* Each H(i) and G(i) has the form:\n*\n* H(i) = I - tauq * v * v' and G(i) = I - taup * u * u'\n*\n* where tauq and taup are real scalars, and v and u are real vectors;\n* v(1:i) = 0, v(i+1) = 1, and v(i+2:m) is stored on exit in A(i+2:m,i);\n* u(1:i-1) = 0, u(i) = 1, and u(i+1:n) is stored on exit in A(i,i+1:n);\n* tauq is stored in TAUQ(i) and taup in TAUP(i).\n*\n* The contents of A on exit are illustrated by the following examples:\n*\n* m = 6 and n = 5 (m > n): m = 5 and n = 6 (m < n):\n*\n* ( d e u1 u1 u1 ) ( d u1 u1 u1 u1 u1 )\n* ( v1 d e u2 u2 ) ( e d u2 u2 u2 u2 )\n* ( v1 v2 d e u3 ) ( v1 e d u3 u3 u3 )\n* ( v1 v2 v3 d e ) ( v1 v2 e d u4 u4 )\n* ( v1 v2 v3 v4 d ) ( v1 v2 v3 e d u5 )\n* ( v1 v2 v3 v4 v5 )\n*\n* where d and e denote diagonal and off-diagonal elements of B, vi\n* denotes an element of the vector defining H(i), and ui an element of\n* the vector defining G(i).\n*\n* =====================================================================\n*\n\n");
|
|
38
|
-
return Qnil;
|
|
39
|
-
}
|
|
40
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
41
|
-
printf("%s\n", "USAGE:\n d, e, tauq, taup, work, info, a = NumRu::Lapack.dgebrd( m, a, [:lwork => lwork, :usage => usage, :help => help])\n");
|
|
42
|
-
return Qnil;
|
|
43
|
-
}
|
|
44
|
-
} else
|
|
45
|
-
rblapack_options = Qnil;
|
|
46
|
-
if (argc != 2 && argc != 3)
|
|
47
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 2)", argc);
|
|
48
|
-
rblapack_m = argv[0];
|
|
49
|
-
rblapack_a = argv[1];
|
|
50
|
-
if (argc == 3) {
|
|
51
|
-
rblapack_lwork = argv[2];
|
|
52
|
-
} else if (rblapack_options != Qnil) {
|
|
53
|
-
rblapack_lwork = rb_hash_aref(rblapack_options, ID2SYM(rb_intern("lwork")));
|
|
54
|
-
} else {
|
|
55
|
-
rblapack_lwork = Qnil;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
m = NUM2INT(rblapack_m);
|
|
59
|
-
if (!NA_IsNArray(rblapack_a))
|
|
60
|
-
rb_raise(rb_eArgError, "a (2th argument) must be NArray");
|
|
61
|
-
if (NA_RANK(rblapack_a) != 2)
|
|
62
|
-
rb_raise(rb_eArgError, "rank of a (2th argument) must be %d", 2);
|
|
63
|
-
lda = NA_SHAPE0(rblapack_a);
|
|
64
|
-
n = NA_SHAPE1(rblapack_a);
|
|
65
|
-
if (NA_TYPE(rblapack_a) != NA_DFLOAT)
|
|
66
|
-
rblapack_a = na_change_type(rblapack_a, NA_DFLOAT);
|
|
67
|
-
a = NA_PTR_TYPE(rblapack_a, doublereal*);
|
|
68
|
-
if (rblapack_lwork == Qnil)
|
|
69
|
-
lwork = MAX(m,n);
|
|
70
|
-
else {
|
|
71
|
-
lwork = NUM2INT(rblapack_lwork);
|
|
72
|
-
}
|
|
73
|
-
{
|
|
74
|
-
int shape[1];
|
|
75
|
-
shape[0] = MIN(m,n);
|
|
76
|
-
rblapack_d = na_make_object(NA_DFLOAT, 1, shape, cNArray);
|
|
77
|
-
}
|
|
78
|
-
d = NA_PTR_TYPE(rblapack_d, doublereal*);
|
|
79
|
-
{
|
|
80
|
-
int shape[1];
|
|
81
|
-
shape[0] = MIN(m,n)-1;
|
|
82
|
-
rblapack_e = na_make_object(NA_DFLOAT, 1, shape, cNArray);
|
|
83
|
-
}
|
|
84
|
-
e = NA_PTR_TYPE(rblapack_e, doublereal*);
|
|
85
|
-
{
|
|
86
|
-
int shape[1];
|
|
87
|
-
shape[0] = MIN(m,n);
|
|
88
|
-
rblapack_tauq = na_make_object(NA_DFLOAT, 1, shape, cNArray);
|
|
89
|
-
}
|
|
90
|
-
tauq = NA_PTR_TYPE(rblapack_tauq, doublereal*);
|
|
91
|
-
{
|
|
92
|
-
int shape[1];
|
|
93
|
-
shape[0] = MIN(m,n);
|
|
94
|
-
rblapack_taup = na_make_object(NA_DFLOAT, 1, shape, cNArray);
|
|
95
|
-
}
|
|
96
|
-
taup = NA_PTR_TYPE(rblapack_taup, doublereal*);
|
|
97
|
-
{
|
|
98
|
-
int shape[1];
|
|
99
|
-
shape[0] = MAX(1,lwork);
|
|
100
|
-
rblapack_work = na_make_object(NA_DFLOAT, 1, shape, cNArray);
|
|
101
|
-
}
|
|
102
|
-
work = NA_PTR_TYPE(rblapack_work, doublereal*);
|
|
103
|
-
{
|
|
104
|
-
int shape[2];
|
|
105
|
-
shape[0] = lda;
|
|
106
|
-
shape[1] = n;
|
|
107
|
-
rblapack_a_out__ = na_make_object(NA_DFLOAT, 2, shape, cNArray);
|
|
108
|
-
}
|
|
109
|
-
a_out__ = NA_PTR_TYPE(rblapack_a_out__, doublereal*);
|
|
110
|
-
MEMCPY(a_out__, a, doublereal, NA_TOTAL(rblapack_a));
|
|
111
|
-
rblapack_a = rblapack_a_out__;
|
|
112
|
-
a = a_out__;
|
|
113
|
-
|
|
114
|
-
dgebrd_(&m, &n, a, &lda, d, e, tauq, taup, work, &lwork, &info);
|
|
115
|
-
|
|
116
|
-
rblapack_info = INT2NUM(info);
|
|
117
|
-
return rb_ary_new3(7, rblapack_d, rblapack_e, rblapack_tauq, rblapack_taup, rblapack_work, rblapack_info, rblapack_a);
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
void
|
|
121
|
-
init_lapack_dgebrd(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
122
|
-
sHelp = sH;
|
|
123
|
-
sUsage = sU;
|
|
124
|
-
rblapack_ZERO = zero;
|
|
125
|
-
|
|
126
|
-
rb_define_module_function(mLapack, "dgebrd", rblapack_dgebrd, -1);
|
|
127
|
-
}
|