Skip to content

Commit 970a772

Browse files
committed
Add BLAS-3 robust triangular solver T*X = B*diag(s1, ..., sN)
An extensions of LATRS solving T*x = s*x to many right-hand sides, allowing the usage of BLAS-3. The new algorithm tends to use less aggressive scaling, in particular for larger matrices.
1 parent 1c1263e commit 970a772

File tree

15 files changed

+3015
-63
lines changed

15 files changed

+3015
-63
lines changed

SRC/CMakeLists.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ set(SLASRC
109109
slargv.f slarmm.f slarrv.f slartv.f
110110
slarz.f slarzb.f slarzt.f slasy2.f
111111
slasyf.f slasyf_rook.f slasyf_rk.f slasyf_aa.f
112-
slatbs.f slatdf.f slatps.f slatrd.f slatrs.f slatrz.f
112+
slatbs.f slatdf.f slatps.f slatrd.f slatrs.f slatrs3.f slatrz.f
113113
slauu2.f slauum.f sopgtr.f sopmtr.f sorg2l.f sorg2r.f
114114
sorgbr.f sorghr.f sorgl2.f sorglq.f sorgql.f sorgqr.f sorgr2.f
115115
sorgrq.f sorgtr.f sorgtsqr.f sorgtsqr_row.f sorm2l.f sorm2r.f sorm22.f
@@ -220,7 +220,7 @@ set(CLASRC
220220
clarfx.f clarfy.f clargv.f clarnv.f clarrv.f clartg.f90 clartv.f
221221
clarz.f clarzb.f clarzt.f clascl.f claset.f clasr.f classq.f90
222222
claswp.f clasyf.f clasyf_rook.f clasyf_rk.f clasyf_aa.f
223-
clatbs.f clatdf.f clatps.f clatrd.f clatrs.f clatrz.f
223+
clatbs.f clatdf.f clatps.f clatrd.f clatrs.f clatrs3.f clatrz.f
224224
clauu2.f clauum.f cpbcon.f cpbequ.f cpbrfs.f cpbstf.f cpbsv.f
225225
cpbsvx.f cpbtf2.f cpbtrf.f cpbtrs.f cpocon.f cpoequ.f cporfs.f
226226
cposv.f cposvx.f cpotf2.f cpotrf2.f cpotri.f cpstrf.f cpstf2.f
@@ -309,7 +309,7 @@ set(DLASRC
309309
dlargv.f dlarmm.f dlarrv.f dlartv.f
310310
dlarz.f dlarzb.f dlarzt.f dlaswp.f dlasy2.f
311311
dlasyf.f dlasyf_rook.f dlasyf_rk.f dlasyf_aa.f
312-
dlatbs.f dlatdf.f dlatps.f dlatrd.f dlatrs.f dlatrz.f dlauu2.f
312+
dlatbs.f dlatdf.f dlatps.f dlatrd.f dlatrs.f dlatrs3.f dlatrz.f dlauu2.f
313313
dlauum.f dopgtr.f dopmtr.f dorg2l.f dorg2r.f
314314
dorgbr.f dorghr.f dorgl2.f dorglq.f dorgql.f dorgqr.f dorgr2.f
315315
dorgrq.f dorgtr.f dorgtsqr.f dorgtsqr_row.f dorm2l.f dorm2r.f dorm22.f
@@ -420,7 +420,7 @@ set(ZLASRC
420420
zlarfx.f zlarfy.f zlargv.f zlarnv.f zlarrv.f zlartg.f90 zlartv.f
421421
zlarz.f zlarzb.f zlarzt.f zlascl.f zlaset.f zlasr.f
422422
zlassq.f90 zlaswp.f zlasyf.f zlasyf_rook.f zlasyf_rk.f zlasyf_aa.f
423-
zlatbs.f zlatdf.f zlatps.f zlatrd.f zlatrs.f zlatrz.f zlauu2.f
423+
zlatbs.f zlatdf.f zlatps.f zlatrd.f zlatrs.f zlatrs3.f zlatrz.f zlauu2.f
424424
zlauum.f zpbcon.f zpbequ.f zpbrfs.f zpbstf.f zpbsv.f
425425
zpbsvx.f zpbtf2.f zpbtrf.f zpbtrs.f zpocon.f zpoequ.f zporfs.f
426426
zposv.f zposvx.f zpotf2.f zpotrf.f zpotrf2.f zpotri.f zpotrs.f zpstrf.f zpstf2.f

SRC/Makefile

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ SLASRC = \
141141
slargv.o slarmm.o slarrv.o slartv.o \
142142
slarz.o slarzb.o slarzt.o slaswp.o slasy2.o slasyf.o slasyf_rook.o \
143143
slasyf_rk.o \
144-
slatbs.o slatdf.o slatps.o slatrd.o slatrs.o slatrz.o \
144+
slatbs.o slatdf.o slatps.o slatrd.o slatrs.o slatrs3.o slatrz.o \
145145
slauu2.o slauum.o sopgtr.o sopmtr.o sorg2l.o sorg2r.o \
146146
sorgbr.o sorghr.o sorgl2.o sorglq.o sorgql.o sorgqr.o sorgr2.o \
147147
sorgrq.o sorgtr.o sorgtsqr.o sorgtsqr_row.o sorm2l.o sorm2r.o sorm22.o \
@@ -253,7 +253,7 @@ CLASRC = \
253253
clarfx.o clarfy.o clargv.o clarnv.o clarrv.o clartg.o clartv.o \
254254
clarz.o clarzb.o clarzt.o clascl.o claset.o clasr.o classq.o \
255255
claswp.o clasyf.o clasyf_rook.o clasyf_rk.o clasyf_aa.o \
256-
clatbs.o clatdf.o clatps.o clatrd.o clatrs.o clatrz.o \
256+
clatbs.o clatdf.o clatps.o clatrd.o clatrs.o clatrs3.o clatrz.o \
257257
clauu2.o clauum.o cpbcon.o cpbequ.o cpbrfs.o cpbstf.o cpbsv.o \
258258
cpbsvx.o cpbtf2.o cpbtrf.o cpbtrs.o cpocon.o cpoequ.o cporfs.o \
259259
cposv.o cposvx.o cpotf2.o cpotri.o cpstrf.o cpstf2.o \
@@ -343,7 +343,7 @@ DLASRC = \
343343
dlargv.o dlarmm.o dlarrv.o dlartv.o \
344344
dlarz.o dlarzb.o dlarzt.o dlaswp.o dlasy2.o \
345345
dlasyf.o dlasyf_rook.o dlasyf_rk.o \
346-
dlatbs.o dlatdf.o dlatps.o dlatrd.o dlatrs.o dlatrz.o dlauu2.o \
346+
dlatbs.o dlatdf.o dlatps.o dlatrd.o dlatrs.o dlatrs3.o dlatrz.o dlauu2.o \
347347
dlauum.o dopgtr.o dopmtr.o dorg2l.o dorg2r.o \
348348
dorgbr.o dorghr.o dorgl2.o dorglq.o dorgql.o dorgqr.o dorgr2.o \
349349
dorgrq.o dorgtr.o dorgtsqr.o dorgtsqr_row.o dorm2l.o dorm2r.o dorm22.o \
@@ -457,7 +457,7 @@ ZLASRC = \
457457
zlarfx.o zlarfy.o zlargv.o zlarnv.o zlarrv.o zlartg.o zlartv.o \
458458
zlarz.o zlarzb.o zlarzt.o zlascl.o zlaset.o zlasr.o \
459459
zlassq.o zlaswp.o zlasyf.o zlasyf_rook.o zlasyf_rk.o zlasyf_aa.o \
460-
zlatbs.o zlatdf.o zlatps.o zlatrd.o zlatrs.o zlatrz.o zlauu2.o \
460+
zlatbs.o zlatdf.o zlatps.o zlatrd.o zlatrs.o zlatrs3.o zlatrz.o zlauu2.o \
461461
zlauum.o zpbcon.o zpbequ.o zpbrfs.o zpbstf.o zpbsv.o \
462462
zpbsvx.o zpbtf2.o zpbtrf.o zpbtrs.o zpocon.o zpoequ.o zporfs.o \
463463
zposv.o zposvx.o zpotf2.o zpotrf.o zpotri.o zpotrs.o zpstrf.o zpstf2.o \

0 commit comments

Comments
 (0)