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/zpbtf2.c
DELETED
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID zpbtf2_(char* uplo, integer* n, integer* kd, doublecomplex* ab, integer* ldab, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_zpbtf2(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_uplo;
|
|
9
|
-
char uplo;
|
|
10
|
-
VALUE rblapack_kd;
|
|
11
|
-
integer kd;
|
|
12
|
-
VALUE rblapack_ab;
|
|
13
|
-
doublecomplex *ab;
|
|
14
|
-
VALUE rblapack_info;
|
|
15
|
-
integer info;
|
|
16
|
-
VALUE rblapack_ab_out__;
|
|
17
|
-
doublecomplex *ab_out__;
|
|
18
|
-
|
|
19
|
-
integer ldab;
|
|
20
|
-
integer n;
|
|
21
|
-
|
|
22
|
-
VALUE rblapack_options;
|
|
23
|
-
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
24
|
-
argc--;
|
|
25
|
-
rblapack_options = argv[argc];
|
|
26
|
-
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
27
|
-
printf("%s\n", "USAGE:\n info, ab = NumRu::Lapack.zpbtf2( uplo, kd, ab, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE ZPBTF2( UPLO, N, KD, AB, LDAB, INFO )\n\n* Purpose\n* =======\n*\n* ZPBTF2 computes the Cholesky factorization of a complex Hermitian\n* positive definite band matrix A.\n*\n* The factorization has the form\n* A = U' * U , if UPLO = 'U', or\n* A = L * L', if UPLO = 'L',\n* where U is an upper triangular matrix, U' is the conjugate transpose\n* of U, and L is lower triangular.\n*\n* This is the unblocked version of the algorithm, calling Level 2 BLAS.\n*\n\n* Arguments\n* =========\n*\n* UPLO (input) CHARACTER*1\n* Specifies whether the upper or lower triangular part of the\n* Hermitian matrix A is stored:\n* = 'U': Upper triangular\n* = 'L': Lower triangular\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 0.\n*\n* KD (input) INTEGER\n* The number of super-diagonals of the matrix A if UPLO = 'U',\n* or the number of sub-diagonals if UPLO = 'L'. KD >= 0.\n*\n* AB (input/output) COMPLEX*16 array, dimension (LDAB,N)\n* On entry, the upper or lower triangle of the Hermitian band\n* matrix A, stored in the first KD+1 rows of the array. The\n* j-th column of A is stored in the j-th column of the array AB\n* as follows:\n* if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd)<=i<=j;\n* if UPLO = 'L', AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+kd).\n*\n* On exit, if INFO = 0, the triangular factor U or L from the\n* Cholesky factorization A = U'*U or A = L*L' of the band\n* matrix A, in the same storage format as A.\n*\n* LDAB (input) INTEGER\n* The leading dimension of the array AB. LDAB >= KD+1.\n*\n* INFO (output) INTEGER\n* = 0: successful exit\n* < 0: if INFO = -k, the k-th argument had an illegal value\n* > 0: if INFO = k, the leading minor of order k is not\n* positive definite, and the factorization could not be\n* completed.\n*\n\n* Further Details\n* ===============\n*\n* The band storage scheme is illustrated by the following example, when\n* N = 6, KD = 2, and UPLO = 'U':\n*\n* On entry: On exit:\n*\n* * * a13 a24 a35 a46 * * u13 u24 u35 u46\n* * a12 a23 a34 a45 a56 * u12 u23 u34 u45 u56\n* a11 a22 a33 a44 a55 a66 u11 u22 u33 u44 u55 u66\n*\n* Similarly, if UPLO = 'L' the format of A is as follows:\n*\n* On entry: On exit:\n*\n* a11 a22 a33 a44 a55 a66 l11 l22 l33 l44 l55 l66\n* a21 a32 a43 a54 a65 * l21 l32 l43 l54 l65 *\n* a31 a42 a53 a64 * * l31 l42 l53 l64 * *\n*\n* Array elements marked * are not used by the routine.\n*\n* =====================================================================\n*\n\n");
|
|
28
|
-
return Qnil;
|
|
29
|
-
}
|
|
30
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
31
|
-
printf("%s\n", "USAGE:\n info, ab = NumRu::Lapack.zpbtf2( uplo, kd, ab, [:usage => usage, :help => help])\n");
|
|
32
|
-
return Qnil;
|
|
33
|
-
}
|
|
34
|
-
} else
|
|
35
|
-
rblapack_options = Qnil;
|
|
36
|
-
if (argc != 3 && argc != 3)
|
|
37
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 3)", argc);
|
|
38
|
-
rblapack_uplo = argv[0];
|
|
39
|
-
rblapack_kd = argv[1];
|
|
40
|
-
rblapack_ab = argv[2];
|
|
41
|
-
if (argc == 3) {
|
|
42
|
-
} else if (rblapack_options != Qnil) {
|
|
43
|
-
} else {
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
uplo = StringValueCStr(rblapack_uplo)[0];
|
|
47
|
-
if (!NA_IsNArray(rblapack_ab))
|
|
48
|
-
rb_raise(rb_eArgError, "ab (3th argument) must be NArray");
|
|
49
|
-
if (NA_RANK(rblapack_ab) != 2)
|
|
50
|
-
rb_raise(rb_eArgError, "rank of ab (3th argument) must be %d", 2);
|
|
51
|
-
ldab = NA_SHAPE0(rblapack_ab);
|
|
52
|
-
n = NA_SHAPE1(rblapack_ab);
|
|
53
|
-
if (NA_TYPE(rblapack_ab) != NA_DCOMPLEX)
|
|
54
|
-
rblapack_ab = na_change_type(rblapack_ab, NA_DCOMPLEX);
|
|
55
|
-
ab = NA_PTR_TYPE(rblapack_ab, doublecomplex*);
|
|
56
|
-
kd = NUM2INT(rblapack_kd);
|
|
57
|
-
{
|
|
58
|
-
int shape[2];
|
|
59
|
-
shape[0] = ldab;
|
|
60
|
-
shape[1] = n;
|
|
61
|
-
rblapack_ab_out__ = na_make_object(NA_DCOMPLEX, 2, shape, cNArray);
|
|
62
|
-
}
|
|
63
|
-
ab_out__ = NA_PTR_TYPE(rblapack_ab_out__, doublecomplex*);
|
|
64
|
-
MEMCPY(ab_out__, ab, doublecomplex, NA_TOTAL(rblapack_ab));
|
|
65
|
-
rblapack_ab = rblapack_ab_out__;
|
|
66
|
-
ab = ab_out__;
|
|
67
|
-
|
|
68
|
-
zpbtf2_(&uplo, &n, &kd, ab, &ldab, &info);
|
|
69
|
-
|
|
70
|
-
rblapack_info = INT2NUM(info);
|
|
71
|
-
return rb_ary_new3(2, rblapack_info, rblapack_ab);
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
void
|
|
75
|
-
init_lapack_zpbtf2(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
76
|
-
sHelp = sH;
|
|
77
|
-
sUsage = sU;
|
|
78
|
-
rblapack_ZERO = zero;
|
|
79
|
-
|
|
80
|
-
rb_define_module_function(mLapack, "zpbtf2", rblapack_zpbtf2, -1);
|
|
81
|
-
}
|
data/ext/zpbtrf.c
DELETED
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID zpbtrf_(char* uplo, integer* n, integer* kd, doublecomplex* ab, integer* ldab, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_zpbtrf(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_uplo;
|
|
9
|
-
char uplo;
|
|
10
|
-
VALUE rblapack_kd;
|
|
11
|
-
integer kd;
|
|
12
|
-
VALUE rblapack_ab;
|
|
13
|
-
doublecomplex *ab;
|
|
14
|
-
VALUE rblapack_info;
|
|
15
|
-
integer info;
|
|
16
|
-
VALUE rblapack_ab_out__;
|
|
17
|
-
doublecomplex *ab_out__;
|
|
18
|
-
|
|
19
|
-
integer ldab;
|
|
20
|
-
integer n;
|
|
21
|
-
|
|
22
|
-
VALUE rblapack_options;
|
|
23
|
-
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
24
|
-
argc--;
|
|
25
|
-
rblapack_options = argv[argc];
|
|
26
|
-
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
27
|
-
printf("%s\n", "USAGE:\n info, ab = NumRu::Lapack.zpbtrf( uplo, kd, ab, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE ZPBTRF( UPLO, N, KD, AB, LDAB, INFO )\n\n* Purpose\n* =======\n*\n* ZPBTRF computes the Cholesky factorization of a complex Hermitian\n* positive definite band matrix A.\n*\n* The factorization has the form\n* A = U**H * U, if UPLO = 'U', or\n* A = L * L**H, if UPLO = 'L',\n* where U is an upper triangular matrix and L is lower triangular.\n*\n\n* Arguments\n* =========\n*\n* UPLO (input) CHARACTER*1\n* = 'U': Upper triangle of A is stored;\n* = 'L': Lower triangle of A is stored.\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 0.\n*\n* KD (input) INTEGER\n* The number of superdiagonals of the matrix A if UPLO = 'U',\n* or the number of subdiagonals if UPLO = 'L'. KD >= 0.\n*\n* AB (input/output) COMPLEX*16 array, dimension (LDAB,N)\n* On entry, the upper or lower triangle of the Hermitian band\n* matrix A, stored in the first KD+1 rows of the array. The\n* j-th column of A is stored in the j-th column of the array AB\n* as follows:\n* if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd)<=i<=j;\n* if UPLO = 'L', AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+kd).\n*\n* On exit, if INFO = 0, the triangular factor U or L from the\n* Cholesky factorization A = U**H*U or A = L*L**H of the band\n* matrix A, in the same storage format as A.\n*\n* LDAB (input) INTEGER\n* The leading dimension of the array AB. LDAB >= KD+1.\n*\n* INFO (output) INTEGER\n* = 0: successful exit\n* < 0: if INFO = -i, the i-th argument had an illegal value\n* > 0: if INFO = i, the leading minor of order i is not\n* positive definite, and the factorization could not be\n* completed.\n*\n\n* Further Details\n* ===============\n*\n* The band storage scheme is illustrated by the following example, when\n* N = 6, KD = 2, and UPLO = 'U':\n*\n* On entry: On exit:\n*\n* * * a13 a24 a35 a46 * * u13 u24 u35 u46\n* * a12 a23 a34 a45 a56 * u12 u23 u34 u45 u56\n* a11 a22 a33 a44 a55 a66 u11 u22 u33 u44 u55 u66\n*\n* Similarly, if UPLO = 'L' the format of A is as follows:\n*\n* On entry: On exit:\n*\n* a11 a22 a33 a44 a55 a66 l11 l22 l33 l44 l55 l66\n* a21 a32 a43 a54 a65 * l21 l32 l43 l54 l65 *\n* a31 a42 a53 a64 * * l31 l42 l53 l64 * *\n*\n* Array elements marked * are not used by the routine.\n*\n* Contributed by\n* Peter Mayes and Giuseppe Radicati, IBM ECSEC, Rome, March 23, 1989\n*\n* =====================================================================\n*\n\n");
|
|
28
|
-
return Qnil;
|
|
29
|
-
}
|
|
30
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
31
|
-
printf("%s\n", "USAGE:\n info, ab = NumRu::Lapack.zpbtrf( uplo, kd, ab, [:usage => usage, :help => help])\n");
|
|
32
|
-
return Qnil;
|
|
33
|
-
}
|
|
34
|
-
} else
|
|
35
|
-
rblapack_options = Qnil;
|
|
36
|
-
if (argc != 3 && argc != 3)
|
|
37
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 3)", argc);
|
|
38
|
-
rblapack_uplo = argv[0];
|
|
39
|
-
rblapack_kd = argv[1];
|
|
40
|
-
rblapack_ab = argv[2];
|
|
41
|
-
if (argc == 3) {
|
|
42
|
-
} else if (rblapack_options != Qnil) {
|
|
43
|
-
} else {
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
uplo = StringValueCStr(rblapack_uplo)[0];
|
|
47
|
-
if (!NA_IsNArray(rblapack_ab))
|
|
48
|
-
rb_raise(rb_eArgError, "ab (3th argument) must be NArray");
|
|
49
|
-
if (NA_RANK(rblapack_ab) != 2)
|
|
50
|
-
rb_raise(rb_eArgError, "rank of ab (3th argument) must be %d", 2);
|
|
51
|
-
ldab = NA_SHAPE0(rblapack_ab);
|
|
52
|
-
n = NA_SHAPE1(rblapack_ab);
|
|
53
|
-
if (NA_TYPE(rblapack_ab) != NA_DCOMPLEX)
|
|
54
|
-
rblapack_ab = na_change_type(rblapack_ab, NA_DCOMPLEX);
|
|
55
|
-
ab = NA_PTR_TYPE(rblapack_ab, doublecomplex*);
|
|
56
|
-
kd = NUM2INT(rblapack_kd);
|
|
57
|
-
{
|
|
58
|
-
int shape[2];
|
|
59
|
-
shape[0] = ldab;
|
|
60
|
-
shape[1] = n;
|
|
61
|
-
rblapack_ab_out__ = na_make_object(NA_DCOMPLEX, 2, shape, cNArray);
|
|
62
|
-
}
|
|
63
|
-
ab_out__ = NA_PTR_TYPE(rblapack_ab_out__, doublecomplex*);
|
|
64
|
-
MEMCPY(ab_out__, ab, doublecomplex, NA_TOTAL(rblapack_ab));
|
|
65
|
-
rblapack_ab = rblapack_ab_out__;
|
|
66
|
-
ab = ab_out__;
|
|
67
|
-
|
|
68
|
-
zpbtrf_(&uplo, &n, &kd, ab, &ldab, &info);
|
|
69
|
-
|
|
70
|
-
rblapack_info = INT2NUM(info);
|
|
71
|
-
return rb_ary_new3(2, rblapack_info, rblapack_ab);
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
void
|
|
75
|
-
init_lapack_zpbtrf(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
76
|
-
sHelp = sH;
|
|
77
|
-
sUsage = sU;
|
|
78
|
-
rblapack_ZERO = zero;
|
|
79
|
-
|
|
80
|
-
rb_define_module_function(mLapack, "zpbtrf", rblapack_zpbtrf, -1);
|
|
81
|
-
}
|
data/ext/zpbtrs.c
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID zpbtrs_(char* uplo, integer* n, integer* kd, integer* nrhs, doublecomplex* ab, integer* ldab, doublecomplex* b, integer* ldb, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_zpbtrs(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_uplo;
|
|
9
|
-
char uplo;
|
|
10
|
-
VALUE rblapack_kd;
|
|
11
|
-
integer kd;
|
|
12
|
-
VALUE rblapack_ab;
|
|
13
|
-
doublecomplex *ab;
|
|
14
|
-
VALUE rblapack_b;
|
|
15
|
-
doublecomplex *b;
|
|
16
|
-
VALUE rblapack_info;
|
|
17
|
-
integer info;
|
|
18
|
-
VALUE rblapack_b_out__;
|
|
19
|
-
doublecomplex *b_out__;
|
|
20
|
-
|
|
21
|
-
integer ldab;
|
|
22
|
-
integer n;
|
|
23
|
-
integer ldb;
|
|
24
|
-
integer nrhs;
|
|
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 info, b = NumRu::Lapack.zpbtrs( uplo, kd, ab, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE ZPBTRS( UPLO, N, KD, NRHS, AB, LDAB, B, LDB, INFO )\n\n* Purpose\n* =======\n*\n* ZPBTRS solves a system of linear equations A*X = B with a Hermitian\n* positive definite band matrix A using the Cholesky factorization\n* A = U**H*U or A = L*L**H computed by ZPBTRF.\n*\n\n* Arguments\n* =========\n*\n* UPLO (input) CHARACTER*1\n* = 'U': Upper triangular factor stored in AB;\n* = 'L': Lower triangular factor stored in AB.\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 0.\n*\n* KD (input) INTEGER\n* The number of superdiagonals of the matrix A if UPLO = 'U',\n* or the number of subdiagonals if UPLO = 'L'. KD >= 0.\n*\n* NRHS (input) INTEGER\n* The number of right hand sides, i.e., the number of columns\n* of the matrix B. NRHS >= 0.\n*\n* AB (input) COMPLEX*16 array, dimension (LDAB,N)\n* The triangular factor U or L from the Cholesky factorization\n* A = U**H*U or A = L*L**H of the band matrix A, stored in the\n* first KD+1 rows of the array. The j-th column of U or L is\n* stored in the j-th column of the array AB as follows:\n* if UPLO ='U', AB(kd+1+i-j,j) = U(i,j) for max(1,j-kd)<=i<=j;\n* if UPLO ='L', AB(1+i-j,j) = L(i,j) for j<=i<=min(n,j+kd).\n*\n* LDAB (input) INTEGER\n* The leading dimension of the array AB. LDAB >= KD+1.\n*\n* B (input/output) COMPLEX*16 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* .. Local Scalars ..\n LOGICAL UPPER\n INTEGER J\n* ..\n* .. External Functions ..\n LOGICAL LSAME\n EXTERNAL LSAME\n* ..\n* .. External Subroutines ..\n EXTERNAL XERBLA, ZTBSV\n* ..\n* .. Intrinsic Functions ..\n INTRINSIC MAX\n* ..\n\n");
|
|
32
|
-
return Qnil;
|
|
33
|
-
}
|
|
34
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
35
|
-
printf("%s\n", "USAGE:\n info, b = NumRu::Lapack.zpbtrs( uplo, kd, ab, b, [:usage => usage, :help => help])\n");
|
|
36
|
-
return Qnil;
|
|
37
|
-
}
|
|
38
|
-
} else
|
|
39
|
-
rblapack_options = Qnil;
|
|
40
|
-
if (argc != 4 && argc != 4)
|
|
41
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 4)", argc);
|
|
42
|
-
rblapack_uplo = argv[0];
|
|
43
|
-
rblapack_kd = argv[1];
|
|
44
|
-
rblapack_ab = argv[2];
|
|
45
|
-
rblapack_b = argv[3];
|
|
46
|
-
if (argc == 4) {
|
|
47
|
-
} else if (rblapack_options != Qnil) {
|
|
48
|
-
} else {
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
uplo = StringValueCStr(rblapack_uplo)[0];
|
|
52
|
-
if (!NA_IsNArray(rblapack_ab))
|
|
53
|
-
rb_raise(rb_eArgError, "ab (3th argument) must be NArray");
|
|
54
|
-
if (NA_RANK(rblapack_ab) != 2)
|
|
55
|
-
rb_raise(rb_eArgError, "rank of ab (3th argument) must be %d", 2);
|
|
56
|
-
ldab = NA_SHAPE0(rblapack_ab);
|
|
57
|
-
n = NA_SHAPE1(rblapack_ab);
|
|
58
|
-
if (NA_TYPE(rblapack_ab) != NA_DCOMPLEX)
|
|
59
|
-
rblapack_ab = na_change_type(rblapack_ab, NA_DCOMPLEX);
|
|
60
|
-
ab = NA_PTR_TYPE(rblapack_ab, doublecomplex*);
|
|
61
|
-
kd = NUM2INT(rblapack_kd);
|
|
62
|
-
if (!NA_IsNArray(rblapack_b))
|
|
63
|
-
rb_raise(rb_eArgError, "b (4th argument) must be NArray");
|
|
64
|
-
if (NA_RANK(rblapack_b) != 2)
|
|
65
|
-
rb_raise(rb_eArgError, "rank of b (4th argument) must be %d", 2);
|
|
66
|
-
ldb = NA_SHAPE0(rblapack_b);
|
|
67
|
-
nrhs = NA_SHAPE1(rblapack_b);
|
|
68
|
-
if (NA_TYPE(rblapack_b) != NA_DCOMPLEX)
|
|
69
|
-
rblapack_b = na_change_type(rblapack_b, NA_DCOMPLEX);
|
|
70
|
-
b = NA_PTR_TYPE(rblapack_b, doublecomplex*);
|
|
71
|
-
{
|
|
72
|
-
int shape[2];
|
|
73
|
-
shape[0] = ldb;
|
|
74
|
-
shape[1] = nrhs;
|
|
75
|
-
rblapack_b_out__ = na_make_object(NA_DCOMPLEX, 2, shape, cNArray);
|
|
76
|
-
}
|
|
77
|
-
b_out__ = NA_PTR_TYPE(rblapack_b_out__, doublecomplex*);
|
|
78
|
-
MEMCPY(b_out__, b, doublecomplex, NA_TOTAL(rblapack_b));
|
|
79
|
-
rblapack_b = rblapack_b_out__;
|
|
80
|
-
b = b_out__;
|
|
81
|
-
|
|
82
|
-
zpbtrs_(&uplo, &n, &kd, &nrhs, ab, &ldab, b, &ldb, &info);
|
|
83
|
-
|
|
84
|
-
rblapack_info = INT2NUM(info);
|
|
85
|
-
return rb_ary_new3(2, rblapack_info, rblapack_b);
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
void
|
|
89
|
-
init_lapack_zpbtrs(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
90
|
-
sHelp = sH;
|
|
91
|
-
sUsage = sU;
|
|
92
|
-
rblapack_ZERO = zero;
|
|
93
|
-
|
|
94
|
-
rb_define_module_function(mLapack, "zpbtrs", rblapack_zpbtrs, -1);
|
|
95
|
-
}
|
data/ext/zpftrf.c
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID zpftrf_(char* transr, char* uplo, integer* n, complex* a, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_zpftrf(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_transr;
|
|
9
|
-
char transr;
|
|
10
|
-
VALUE rblapack_uplo;
|
|
11
|
-
char uplo;
|
|
12
|
-
VALUE rblapack_n;
|
|
13
|
-
integer n;
|
|
14
|
-
VALUE rblapack_a;
|
|
15
|
-
complex *a;
|
|
16
|
-
VALUE rblapack_info;
|
|
17
|
-
integer info;
|
|
18
|
-
VALUE rblapack_a_out__;
|
|
19
|
-
complex *a_out__;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
VALUE rblapack_options;
|
|
23
|
-
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
24
|
-
argc--;
|
|
25
|
-
rblapack_options = argv[argc];
|
|
26
|
-
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
27
|
-
printf("%s\n", "USAGE:\n info, a = NumRu::Lapack.zpftrf( transr, uplo, n, a, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE ZPFTRF( TRANSR, UPLO, N, A, INFO )\n\n* Purpose\n* =======\n*\n* ZPFTRF computes the Cholesky factorization of a complex Hermitian\n* positive definite matrix A.\n*\n* The factorization has the form\n* A = U**H * U, if UPLO = 'U', or\n* A = L * L**H, if UPLO = 'L',\n* where U is an upper triangular matrix and L is lower triangular.\n*\n* This is the block version of the algorithm, calling Level 3 BLAS.\n*\n\n* Arguments\n* =========\n*\n* TRANSR (input) CHARACTER*1\n* = 'N': The Normal TRANSR of RFP A is stored;\n* = 'C': The Conjugate-transpose TRANSR of RFP A is stored.\n*\n* UPLO (input) CHARACTER*1\n* = 'U': Upper triangle of RFP A is stored;\n* = 'L': Lower triangle of RFP A is stored.\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 0.\n*\n* A (input/output) COMPLEX array, dimension ( N*(N+1)/2 );\n* On entry, the Hermitian matrix A in RFP format. RFP format is\n* described by TRANSR, UPLO, and N as follows: If TRANSR = 'N'\n* then RFP A is (0:N,0:k-1) when N is even; k=N/2. RFP A is\n* (0:N-1,0:k) when N is odd; k=N/2. IF TRANSR = 'C' then RFP is\n* the Conjugate-transpose of RFP A as defined when\n* TRANSR = 'N'. The contents of RFP A are defined by UPLO as\n* follows: If UPLO = 'U' the RFP A contains the nt elements of\n* upper packed A. If UPLO = 'L' the RFP A contains the elements\n* of lower packed A. The LDA of RFP A is (N+1)/2 when TRANSR =\n* 'C'. When TRANSR is 'N' the LDA is N+1 when N is even and N\n* is odd. See the Note below for more details.\n*\n* On exit, if INFO = 0, the factor U or L from the Cholesky\n* factorization RFP A = U**H*U or RFP A = L*L**H.\n*\n* INFO (output) INTEGER\n* = 0: successful exit\n* < 0: if INFO = -i, the i-th argument had an illegal value\n* > 0: if INFO = i, the leading minor of order i is not\n* positive definite, and the factorization could not be\n* completed.\n*\n* Further Notes on RFP Format:\n* ============================\n*\n* We first consider Standard Packed Format when N is even.\n* We give an example where N = 6.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 05 00\n* 11 12 13 14 15 10 11\n* 22 23 24 25 20 21 22\n* 33 34 35 30 31 32 33\n* 44 45 40 41 42 43 44\n* 55 50 51 52 53 54 55\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:5,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(4:6,0:2) consists of\n* conjugate-transpose of the first three columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(1:6,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:2,0:2) consists of\n* conjugate-transpose of the last three columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N even and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- -- --\n* 03 04 05 33 43 53\n* -- --\n* 13 14 15 00 44 54\n* --\n* 23 24 25 10 11 55\n*\n* 33 34 35 20 21 22\n* --\n* 00 44 45 30 31 32\n* -- --\n* 01 11 55 40 41 42\n* -- -- --\n* 02 12 22 50 51 52\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- -- --\n* 03 13 23 33 00 01 02 33 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 11 12 43 44 11 21 31 41 51\n* -- -- -- -- -- -- -- -- -- --\n* 05 15 25 35 45 55 22 53 54 55 22 32 42 52\n*\n*\n* We next consider Standard Packed Format when N is odd.\n* We give an example where N = 5.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 00\n* 11 12 13 14 10 11\n* 22 23 24 20 21 22\n* 33 34 30 31 32 33\n* 44 40 41 42 43 44\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:4,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(3:4,0:1) consists of\n* conjugate-transpose of the first two columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(0:4,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:1,1:2) consists of\n* conjugate-transpose of the last two columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N odd and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- --\n* 02 03 04 00 33 43\n* --\n* 12 13 14 10 11 44\n*\n* 22 23 24 20 21 22\n* --\n* 00 33 34 30 31 32\n* -- --\n* 01 11 44 40 41 42\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- --\n* 02 12 22 00 01 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- --\n* 03 13 23 33 11 33 11 21 31 41 51\n* -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 43 44 22 32 42 52\n*\n\n* =====================================================================\n*\n\n");
|
|
28
|
-
return Qnil;
|
|
29
|
-
}
|
|
30
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
31
|
-
printf("%s\n", "USAGE:\n info, a = NumRu::Lapack.zpftrf( transr, uplo, n, a, [:usage => usage, :help => help])\n");
|
|
32
|
-
return Qnil;
|
|
33
|
-
}
|
|
34
|
-
} else
|
|
35
|
-
rblapack_options = Qnil;
|
|
36
|
-
if (argc != 4 && argc != 4)
|
|
37
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 4)", argc);
|
|
38
|
-
rblapack_transr = argv[0];
|
|
39
|
-
rblapack_uplo = argv[1];
|
|
40
|
-
rblapack_n = argv[2];
|
|
41
|
-
rblapack_a = argv[3];
|
|
42
|
-
if (argc == 4) {
|
|
43
|
-
} else if (rblapack_options != Qnil) {
|
|
44
|
-
} else {
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
transr = StringValueCStr(rblapack_transr)[0];
|
|
48
|
-
n = NUM2INT(rblapack_n);
|
|
49
|
-
uplo = StringValueCStr(rblapack_uplo)[0];
|
|
50
|
-
if (!NA_IsNArray(rblapack_a))
|
|
51
|
-
rb_raise(rb_eArgError, "a (4th argument) must be NArray");
|
|
52
|
-
if (NA_RANK(rblapack_a) != 1)
|
|
53
|
-
rb_raise(rb_eArgError, "rank of a (4th argument) must be %d", 1);
|
|
54
|
-
if (NA_SHAPE0(rblapack_a) != (n*(n+1)/2))
|
|
55
|
-
rb_raise(rb_eRuntimeError, "shape 0 of a must be %d", n*(n+1)/2);
|
|
56
|
-
if (NA_TYPE(rblapack_a) != NA_SCOMPLEX)
|
|
57
|
-
rblapack_a = na_change_type(rblapack_a, NA_SCOMPLEX);
|
|
58
|
-
a = NA_PTR_TYPE(rblapack_a, complex*);
|
|
59
|
-
{
|
|
60
|
-
int shape[1];
|
|
61
|
-
shape[0] = n*(n+1)/2;
|
|
62
|
-
rblapack_a_out__ = na_make_object(NA_SCOMPLEX, 1, shape, cNArray);
|
|
63
|
-
}
|
|
64
|
-
a_out__ = NA_PTR_TYPE(rblapack_a_out__, complex*);
|
|
65
|
-
MEMCPY(a_out__, a, complex, NA_TOTAL(rblapack_a));
|
|
66
|
-
rblapack_a = rblapack_a_out__;
|
|
67
|
-
a = a_out__;
|
|
68
|
-
|
|
69
|
-
zpftrf_(&transr, &uplo, &n, a, &info);
|
|
70
|
-
|
|
71
|
-
rblapack_info = INT2NUM(info);
|
|
72
|
-
return rb_ary_new3(2, rblapack_info, rblapack_a);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
void
|
|
76
|
-
init_lapack_zpftrf(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
77
|
-
sHelp = sH;
|
|
78
|
-
sUsage = sU;
|
|
79
|
-
rblapack_ZERO = zero;
|
|
80
|
-
|
|
81
|
-
rb_define_module_function(mLapack, "zpftrf", rblapack_zpftrf, -1);
|
|
82
|
-
}
|
data/ext/zpftri.c
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID zpftri_(char* transr, char* uplo, integer* n, doublecomplex* a, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_zpftri(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_transr;
|
|
9
|
-
char transr;
|
|
10
|
-
VALUE rblapack_uplo;
|
|
11
|
-
char uplo;
|
|
12
|
-
VALUE rblapack_n;
|
|
13
|
-
integer n;
|
|
14
|
-
VALUE rblapack_a;
|
|
15
|
-
doublecomplex *a;
|
|
16
|
-
VALUE rblapack_info;
|
|
17
|
-
integer info;
|
|
18
|
-
VALUE rblapack_a_out__;
|
|
19
|
-
doublecomplex *a_out__;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
VALUE rblapack_options;
|
|
23
|
-
if (argc > 0 && TYPE(argv[argc-1]) == T_HASH) {
|
|
24
|
-
argc--;
|
|
25
|
-
rblapack_options = argv[argc];
|
|
26
|
-
if (rb_hash_aref(rblapack_options, sHelp) == Qtrue) {
|
|
27
|
-
printf("%s\n", "USAGE:\n info, a = NumRu::Lapack.zpftri( transr, uplo, n, a, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE ZPFTRI( TRANSR, UPLO, N, A, INFO )\n\n* Purpose\n* =======\n*\n* ZPFTRI computes the inverse of a complex Hermitian positive definite\n* matrix A using the Cholesky factorization A = U**H*U or A = L*L**H\n* computed by ZPFTRF.\n*\n\n* Arguments\n* =========\n*\n* TRANSR (input) CHARACTER*1\n* = 'N': The Normal TRANSR of RFP A is stored;\n* = 'C': The Conjugate-transpose TRANSR of RFP A is stored.\n*\n* UPLO (input) CHARACTER*1\n* = 'U': Upper triangle of A is stored;\n* = 'L': Lower triangle of A is stored.\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 0.\n*\n* A (input/output) COMPLEX*16 array, dimension ( N*(N+1)/2 );\n* On entry, the Hermitian matrix A in RFP format. RFP format is\n* described by TRANSR, UPLO, and N as follows: If TRANSR = 'N'\n* then RFP A is (0:N,0:k-1) when N is even; k=N/2. RFP A is\n* (0:N-1,0:k) when N is odd; k=N/2. IF TRANSR = 'C' then RFP is\n* the Conjugate-transpose of RFP A as defined when\n* TRANSR = 'N'. The contents of RFP A are defined by UPLO as\n* follows: If UPLO = 'U' the RFP A contains the nt elements of\n* upper packed A. If UPLO = 'L' the RFP A contains the elements\n* of lower packed A. The LDA of RFP A is (N+1)/2 when TRANSR =\n* 'C'. When TRANSR is 'N' the LDA is N+1 when N is even and N\n* is odd. See the Note below for more details.\n*\n* On exit, the Hermitian inverse of the original matrix, in the\n* same storage format.\n*\n* INFO (output) INTEGER\n* = 0: successful exit\n* < 0: if INFO = -i, the i-th argument had an illegal value\n* > 0: if INFO = i, the (i,i) element of the factor U or L is\n* zero, and the inverse could not be computed.\n*\n\n* Further Details\n* ===============\n*\n* We first consider Standard Packed Format when N is even.\n* We give an example where N = 6.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 05 00\n* 11 12 13 14 15 10 11\n* 22 23 24 25 20 21 22\n* 33 34 35 30 31 32 33\n* 44 45 40 41 42 43 44\n* 55 50 51 52 53 54 55\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:5,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(4:6,0:2) consists of\n* conjugate-transpose of the first three columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(1:6,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:2,0:2) consists of\n* conjugate-transpose of the last three columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N even and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- -- --\n* 03 04 05 33 43 53\n* -- --\n* 13 14 15 00 44 54\n* --\n* 23 24 25 10 11 55\n*\n* 33 34 35 20 21 22\n* --\n* 00 44 45 30 31 32\n* -- --\n* 01 11 55 40 41 42\n* -- -- --\n* 02 12 22 50 51 52\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- -- --\n* 03 13 23 33 00 01 02 33 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 11 12 43 44 11 21 31 41 51\n* -- -- -- -- -- -- -- -- -- --\n* 05 15 25 35 45 55 22 53 54 55 22 32 42 52\n*\n*\n* We next consider Standard Packed Format when N is odd.\n* We give an example where N = 5.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 00\n* 11 12 13 14 10 11\n* 22 23 24 20 21 22\n* 33 34 30 31 32 33\n* 44 40 41 42 43 44\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:4,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(3:4,0:1) consists of\n* conjugate-transpose of the first two columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(0:4,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:1,1:2) consists of\n* conjugate-transpose of the last two columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N odd and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- --\n* 02 03 04 00 33 43\n* --\n* 12 13 14 10 11 44\n*\n* 22 23 24 20 21 22\n* --\n* 00 33 34 30 31 32\n* -- --\n* 01 11 44 40 41 42\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- --\n* 02 12 22 00 01 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- --\n* 03 13 23 33 11 33 11 21 31 41 51\n* -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 43 44 22 32 42 52\n*\n* =====================================================================\n*\n\n");
|
|
28
|
-
return Qnil;
|
|
29
|
-
}
|
|
30
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
31
|
-
printf("%s\n", "USAGE:\n info, a = NumRu::Lapack.zpftri( transr, uplo, n, a, [:usage => usage, :help => help])\n");
|
|
32
|
-
return Qnil;
|
|
33
|
-
}
|
|
34
|
-
} else
|
|
35
|
-
rblapack_options = Qnil;
|
|
36
|
-
if (argc != 4 && argc != 4)
|
|
37
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 4)", argc);
|
|
38
|
-
rblapack_transr = argv[0];
|
|
39
|
-
rblapack_uplo = argv[1];
|
|
40
|
-
rblapack_n = argv[2];
|
|
41
|
-
rblapack_a = argv[3];
|
|
42
|
-
if (argc == 4) {
|
|
43
|
-
} else if (rblapack_options != Qnil) {
|
|
44
|
-
} else {
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
transr = StringValueCStr(rblapack_transr)[0];
|
|
48
|
-
n = NUM2INT(rblapack_n);
|
|
49
|
-
uplo = StringValueCStr(rblapack_uplo)[0];
|
|
50
|
-
if (!NA_IsNArray(rblapack_a))
|
|
51
|
-
rb_raise(rb_eArgError, "a (4th argument) must be NArray");
|
|
52
|
-
if (NA_RANK(rblapack_a) != 1)
|
|
53
|
-
rb_raise(rb_eArgError, "rank of a (4th argument) must be %d", 1);
|
|
54
|
-
if (NA_SHAPE0(rblapack_a) != (n*(n+1)/2))
|
|
55
|
-
rb_raise(rb_eRuntimeError, "shape 0 of a must be %d", n*(n+1)/2);
|
|
56
|
-
if (NA_TYPE(rblapack_a) != NA_DCOMPLEX)
|
|
57
|
-
rblapack_a = na_change_type(rblapack_a, NA_DCOMPLEX);
|
|
58
|
-
a = NA_PTR_TYPE(rblapack_a, doublecomplex*);
|
|
59
|
-
{
|
|
60
|
-
int shape[1];
|
|
61
|
-
shape[0] = n*(n+1)/2;
|
|
62
|
-
rblapack_a_out__ = na_make_object(NA_DCOMPLEX, 1, shape, cNArray);
|
|
63
|
-
}
|
|
64
|
-
a_out__ = NA_PTR_TYPE(rblapack_a_out__, doublecomplex*);
|
|
65
|
-
MEMCPY(a_out__, a, doublecomplex, NA_TOTAL(rblapack_a));
|
|
66
|
-
rblapack_a = rblapack_a_out__;
|
|
67
|
-
a = a_out__;
|
|
68
|
-
|
|
69
|
-
zpftri_(&transr, &uplo, &n, a, &info);
|
|
70
|
-
|
|
71
|
-
rblapack_info = INT2NUM(info);
|
|
72
|
-
return rb_ary_new3(2, rblapack_info, rblapack_a);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
void
|
|
76
|
-
init_lapack_zpftri(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
77
|
-
sHelp = sH;
|
|
78
|
-
sUsage = sU;
|
|
79
|
-
rblapack_ZERO = zero;
|
|
80
|
-
|
|
81
|
-
rb_define_module_function(mLapack, "zpftri", rblapack_zpftri, -1);
|
|
82
|
-
}
|
data/ext/zpftrs.c
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
#include "rb_lapack.h"
|
|
2
|
-
|
|
3
|
-
extern VOID zpftrs_(char* transr, char* uplo, integer* n, integer* nrhs, doublecomplex* a, doublecomplex* b, integer* ldb, integer* info);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
static VALUE
|
|
7
|
-
rblapack_zpftrs(int argc, VALUE *argv, VALUE self){
|
|
8
|
-
VALUE rblapack_transr;
|
|
9
|
-
char transr;
|
|
10
|
-
VALUE rblapack_uplo;
|
|
11
|
-
char uplo;
|
|
12
|
-
VALUE rblapack_n;
|
|
13
|
-
integer n;
|
|
14
|
-
VALUE rblapack_a;
|
|
15
|
-
doublecomplex *a;
|
|
16
|
-
VALUE rblapack_b;
|
|
17
|
-
doublecomplex *b;
|
|
18
|
-
VALUE rblapack_info;
|
|
19
|
-
integer info;
|
|
20
|
-
VALUE rblapack_b_out__;
|
|
21
|
-
doublecomplex *b_out__;
|
|
22
|
-
|
|
23
|
-
integer ldb;
|
|
24
|
-
integer nrhs;
|
|
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 info, b = NumRu::Lapack.zpftrs( transr, uplo, n, a, b, [:usage => usage, :help => help])\n\n\nFORTRAN MANUAL\n SUBROUTINE ZPFTRS( TRANSR, UPLO, N, NRHS, A, B, LDB, INFO )\n\n* Purpose\n* =======\n*\n* ZPFTRS solves a system of linear equations A*X = B with a Hermitian\n* positive definite matrix A using the Cholesky factorization\n* A = U**H*U or A = L*L**H computed by ZPFTRF.\n*\n\n* Arguments\n* =========\n*\n* TRANSR (input) CHARACTER*1\n* = 'N': The Normal TRANSR of RFP A is stored;\n* = 'C': The Conjugate-transpose TRANSR of RFP A is stored.\n*\n* UPLO (input) CHARACTER*1\n* = 'U': Upper triangle of RFP A is stored;\n* = 'L': Lower triangle of RFP A is stored.\n*\n* N (input) INTEGER\n* The order of the matrix A. N >= 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* A (input) COMPLEX*16 array, dimension ( N*(N+1)/2 );\n* The triangular factor U or L from the Cholesky factorization\n* of RFP A = U**H*U or RFP A = L*L**H, as computed by ZPFTRF.\n* See note below for more details about RFP A.\n*\n* B (input/output) COMPLEX*16 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* Further Details\n* ===============\n*\n* We first consider Standard Packed Format when N is even.\n* We give an example where N = 6.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 05 00\n* 11 12 13 14 15 10 11\n* 22 23 24 25 20 21 22\n* 33 34 35 30 31 32 33\n* 44 45 40 41 42 43 44\n* 55 50 51 52 53 54 55\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:5,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(4:6,0:2) consists of\n* conjugate-transpose of the first three columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(1:6,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:2,0:2) consists of\n* conjugate-transpose of the last three columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N even and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- -- --\n* 03 04 05 33 43 53\n* -- --\n* 13 14 15 00 44 54\n* --\n* 23 24 25 10 11 55\n*\n* 33 34 35 20 21 22\n* --\n* 00 44 45 30 31 32\n* -- --\n* 01 11 55 40 41 42\n* -- -- --\n* 02 12 22 50 51 52\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- -- --\n* 03 13 23 33 00 01 02 33 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 11 12 43 44 11 21 31 41 51\n* -- -- -- -- -- -- -- -- -- --\n* 05 15 25 35 45 55 22 53 54 55 22 32 42 52\n*\n*\n* We next consider Standard Packed Format when N is odd.\n* We give an example where N = 5.\n*\n* AP is Upper AP is Lower\n*\n* 00 01 02 03 04 00\n* 11 12 13 14 10 11\n* 22 23 24 20 21 22\n* 33 34 30 31 32 33\n* 44 40 41 42 43 44\n*\n*\n* Let TRANSR = 'N'. RFP holds AP as follows:\n* For UPLO = 'U' the upper trapezoid A(0:4,0:2) consists of the last\n* three columns of AP upper. The lower triangle A(3:4,0:1) consists of\n* conjugate-transpose of the first two columns of AP upper.\n* For UPLO = 'L' the lower trapezoid A(0:4,0:2) consists of the first\n* three columns of AP lower. The upper triangle A(0:1,1:2) consists of\n* conjugate-transpose of the last two columns of AP lower.\n* To denote conjugate we place -- above the element. This covers the\n* case N odd and TRANSR = 'N'.\n*\n* RFP A RFP A\n*\n* -- --\n* 02 03 04 00 33 43\n* --\n* 12 13 14 10 11 44\n*\n* 22 23 24 20 21 22\n* --\n* 00 33 34 30 31 32\n* -- --\n* 01 11 44 40 41 42\n*\n* Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate-\n* transpose of RFP A above. One therefore gets:\n*\n*\n* RFP A RFP A\n*\n* -- -- -- -- -- -- -- -- --\n* 02 12 22 00 01 00 10 20 30 40 50\n* -- -- -- -- -- -- -- -- --\n* 03 13 23 33 11 33 11 21 31 41 51\n* -- -- -- -- -- -- -- -- --\n* 04 14 24 34 44 43 44 22 32 42 52\n*\n* =====================================================================\n*\n\n");
|
|
32
|
-
return Qnil;
|
|
33
|
-
}
|
|
34
|
-
if (rb_hash_aref(rblapack_options, sUsage) == Qtrue) {
|
|
35
|
-
printf("%s\n", "USAGE:\n info, b = NumRu::Lapack.zpftrs( transr, uplo, n, a, b, [:usage => usage, :help => help])\n");
|
|
36
|
-
return Qnil;
|
|
37
|
-
}
|
|
38
|
-
} else
|
|
39
|
-
rblapack_options = Qnil;
|
|
40
|
-
if (argc != 5 && argc != 5)
|
|
41
|
-
rb_raise(rb_eArgError,"wrong number of arguments (%d for 5)", argc);
|
|
42
|
-
rblapack_transr = argv[0];
|
|
43
|
-
rblapack_uplo = argv[1];
|
|
44
|
-
rblapack_n = argv[2];
|
|
45
|
-
rblapack_a = argv[3];
|
|
46
|
-
rblapack_b = argv[4];
|
|
47
|
-
if (argc == 5) {
|
|
48
|
-
} else if (rblapack_options != Qnil) {
|
|
49
|
-
} else {
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
transr = StringValueCStr(rblapack_transr)[0];
|
|
53
|
-
n = NUM2INT(rblapack_n);
|
|
54
|
-
if (!NA_IsNArray(rblapack_b))
|
|
55
|
-
rb_raise(rb_eArgError, "b (5th argument) must be NArray");
|
|
56
|
-
if (NA_RANK(rblapack_b) != 2)
|
|
57
|
-
rb_raise(rb_eArgError, "rank of b (5th argument) must be %d", 2);
|
|
58
|
-
ldb = NA_SHAPE0(rblapack_b);
|
|
59
|
-
nrhs = NA_SHAPE1(rblapack_b);
|
|
60
|
-
if (NA_TYPE(rblapack_b) != NA_DCOMPLEX)
|
|
61
|
-
rblapack_b = na_change_type(rblapack_b, NA_DCOMPLEX);
|
|
62
|
-
b = NA_PTR_TYPE(rblapack_b, doublecomplex*);
|
|
63
|
-
uplo = StringValueCStr(rblapack_uplo)[0];
|
|
64
|
-
if (!NA_IsNArray(rblapack_a))
|
|
65
|
-
rb_raise(rb_eArgError, "a (4th argument) must be NArray");
|
|
66
|
-
if (NA_RANK(rblapack_a) != 1)
|
|
67
|
-
rb_raise(rb_eArgError, "rank of a (4th argument) must be %d", 1);
|
|
68
|
-
if (NA_SHAPE0(rblapack_a) != (n*(n+1)/2))
|
|
69
|
-
rb_raise(rb_eRuntimeError, "shape 0 of a must be %d", n*(n+1)/2);
|
|
70
|
-
if (NA_TYPE(rblapack_a) != NA_DCOMPLEX)
|
|
71
|
-
rblapack_a = na_change_type(rblapack_a, NA_DCOMPLEX);
|
|
72
|
-
a = NA_PTR_TYPE(rblapack_a, doublecomplex*);
|
|
73
|
-
{
|
|
74
|
-
int shape[2];
|
|
75
|
-
shape[0] = ldb;
|
|
76
|
-
shape[1] = nrhs;
|
|
77
|
-
rblapack_b_out__ = na_make_object(NA_DCOMPLEX, 2, shape, cNArray);
|
|
78
|
-
}
|
|
79
|
-
b_out__ = NA_PTR_TYPE(rblapack_b_out__, doublecomplex*);
|
|
80
|
-
MEMCPY(b_out__, b, doublecomplex, NA_TOTAL(rblapack_b));
|
|
81
|
-
rblapack_b = rblapack_b_out__;
|
|
82
|
-
b = b_out__;
|
|
83
|
-
|
|
84
|
-
zpftrs_(&transr, &uplo, &n, &nrhs, a, b, &ldb, &info);
|
|
85
|
-
|
|
86
|
-
rblapack_info = INT2NUM(info);
|
|
87
|
-
return rb_ary_new3(2, rblapack_info, rblapack_b);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
void
|
|
91
|
-
init_lapack_zpftrs(VALUE mLapack, VALUE sH, VALUE sU, VALUE zero){
|
|
92
|
-
sHelp = sH;
|
|
93
|
-
sUsage = sU;
|
|
94
|
-
rblapack_ZERO = zero;
|
|
95
|
-
|
|
96
|
-
rb_define_module_function(mLapack, "zpftrs", rblapack_zpftrs, -1);
|
|
97
|
-
}
|