@@ -258,11 +258,9 @@ module stdlib_linalg
258
258
!! or several (from a 2-d right-hand-side vector `b(:,:)`) systems.
259
259
!!
260
260
!!@note The solution is based on LAPACK's generic LU decomposition based solvers `*GESV`.
261
- !!@note BLAS/LAPACK backends do not currently support extended precision (``xdp``).
262
261
!!
263
262
#:for nd,ndsuf,nde in ALL_RHS
264
263
#:for rk,rt,ri in RC_KINDS_TYPES
265
- #:if rk!="xdp"
266
264
module function stdlib_linalg_${ri}$_solve_${ndsuf}$(a,b,overwrite_a,err) result(x)
267
265
!> Input matrix a[n,n]
268
266
${rt}$, intent(inout), target :: a(:,:)
@@ -283,7 +281,6 @@ module stdlib_linalg
283
281
!> Result array/matrix x[n] or x[n,nrhs]
284
282
${rt}$, allocatable, target :: x${nd}$
285
283
end function stdlib_linalg_${ri}$_pure_solve_${ndsuf}$
286
- #:endif
287
284
#:endfor
288
285
#:endfor
289
286
end interface solve
@@ -309,11 +306,9 @@ module stdlib_linalg
309
306
!! or several (from a 2-d right-hand-side vector `b(:,:)`) systems.
310
307
!!
311
308
!!@note The solution is based on LAPACK's generic LU decomposition based solvers `*GESV`.
312
- !!@note BLAS/LAPACK backends do not currently support extended precision (``xdp``).
313
309
!!
314
310
#:for nd,ndsuf,nde in ALL_RHS
315
311
#:for rk,rt,ri in RC_KINDS_TYPES
316
- #:if rk!="xdp"
317
312
pure module subroutine stdlib_linalg_${ri}$_solve_lu_${ndsuf}$(a,b,x,pivot,overwrite_a,err)
318
313
!> Input matrix a[n,n]
319
314
${rt}$, intent(inout), target :: a(:,:)
@@ -328,7 +323,6 @@ module stdlib_linalg
328
323
!> [optional] state return flag. On error if not requested, the code will stop
329
324
type(linalg_state_type), optional, intent(out) :: err
330
325
end subroutine stdlib_linalg_${ri}$_solve_lu_${ndsuf}$
331
- #:endif
332
326
#:endfor
333
327
#:endfor
334
328
end interface solve_lu
@@ -349,11 +343,9 @@ module stdlib_linalg
349
343
!! Supported data types include `real` and `complex`.
350
344
!!
351
345
!!@note The solution is based on LAPACK's singular value decomposition `*GELSD` methods.
352
- !!@note BLAS/LAPACK backends do not currently support extended precision (``xdp``).
353
346
!!
354
347
#:for nd,ndsuf,nde in ALL_RHS
355
348
#:for rk,rt,ri in RC_KINDS_TYPES
356
- #:if rk!="xdp"
357
349
module function stdlib_linalg_${ri}$_lstsq_${ndsuf}$(a,b,cond,overwrite_a,rank,err) result(x)
358
350
!> Input matrix a[n,n]
359
351
${rt}$, intent(inout), target :: a(:,:)
@@ -370,7 +362,6 @@ module stdlib_linalg
370
362
!> Result array/matrix x[n] or x[n,nrhs]
371
363
${rt}$, allocatable, target :: x${nd}$
372
364
end function stdlib_linalg_${ri}$_lstsq_${ndsuf}$
373
- #:endif
374
365
#:endfor
375
366
#:endfor
376
367
end interface lstsq
@@ -392,11 +383,9 @@ module stdlib_linalg
392
383
!! are provided, no internal memory allocations take place when using this interface.
393
384
!!
394
385
!!@note The solution is based on LAPACK's singular value decomposition `*GELSD` methods.
395
- !!@note BLAS/LAPACK backends do not currently support extended precision (``xdp``).
396
386
!!
397
387
#:for nd,ndsuf,nde in ALL_RHS
398
388
#:for rk,rt,ri in RC_KINDS_TYPES
399
- #:if rk!="xdp"
400
389
module subroutine stdlib_linalg_${ri}$_solve_lstsq_${ndsuf}$(a,b,x,real_storage,int_storage,&
401
390
#{if rt.startswith('c')}#cmpl_storage,#{endif}#cond,singvals,overwrite_a,rank,err)
402
391
!> Input matrix a[n,n]
@@ -424,7 +413,6 @@ module stdlib_linalg
424
413
!> [optional] state return flag. On error if not requested, the code will stop
425
414
type(linalg_state_type), optional, intent(out) :: err
426
415
end subroutine stdlib_linalg_${ri}$_solve_lstsq_${ndsuf}$
427
- #:endif
428
416
#:endfor
429
417
#:endfor
430
418
end interface solve_lstsq
@@ -445,7 +433,6 @@ module stdlib_linalg
445
433
!!
446
434
#:for nd,ndsuf,nde in ALL_RHS
447
435
#:for rk,rt,ri in RC_KINDS_TYPES
448
- #:if rk!="xdp"
449
436
pure module subroutine stdlib_linalg_${ri}$_lstsq_space_${ndsuf}$(a,b,lrwork,liwork#{if rt.startswith('c')}#,lcwork#{endif}#)
450
437
!> Input matrix a[m,n]
451
438
${rt}$, intent(in), target :: a(:,:)
@@ -454,7 +441,6 @@ module stdlib_linalg
454
441
!> Size of the working space arrays
455
442
integer(ilp), intent(out) :: lrwork,liwork#{if rt.startswith('c')}#,lcwork#{endif}#
456
443
end subroutine stdlib_linalg_${ri}$_lstsq_space_${ndsuf}$
457
- #:endif
458
444
#:endfor
459
445
#:endfor
460
446
end interface lstsq_space
@@ -900,7 +886,6 @@ module stdlib_linalg
900
886
!! It is possible to use partial storage [m,k] and [k,n], `k=min(m,n)`, choosing `full_matrices=.false.`.
901
887
!!
902
888
!!@note The solution is based on LAPACK's singular value decomposition `*GESDD` methods.
903
- !!@note BLAS/LAPACK backends do not currently support extended precision (``xdp``).
904
889
!!
905
890
!!### Example
906
891
!!
@@ -913,7 +898,6 @@ module stdlib_linalg
913
898
!!```
914
899
!!
915
900
#:for rk,rt,ri in RC_KINDS_TYPES
916
- #:if rk!="xdp"
917
901
module subroutine stdlib_linalg_svd_${ri}$(a,s,u,vt,overwrite_a,full_matrices,err)
918
902
!!### Summary
919
903
!! Compute singular value decomposition of a matrix \( A = U \cdot S \cdot \V^T \)
@@ -949,7 +933,6 @@ module stdlib_linalg
949
933
!> [optional] state return flag. On error if not requested, the code will stop
950
934
type(linalg_state_type), optional, intent(out) :: err
951
935
end subroutine stdlib_linalg_svd_${ri}$
952
- #:endif
953
936
#:endfor
954
937
end interface svd
955
938
@@ -972,7 +955,6 @@ module stdlib_linalg
972
955
!! singular values, with size [min(m,n)].
973
956
!!
974
957
!!@note The solution is based on LAPACK's singular value decomposition `*GESDD` methods.
975
- !!@note BLAS/LAPACK backends do not currently support extended precision (``xdp``).
976
958
!!
977
959
!!### Example
978
960
!!
@@ -985,7 +967,6 @@ module stdlib_linalg
985
967
!!```
986
968
!!
987
969
#:for rk,rt,ri in RC_KINDS_TYPES
988
- #:if rk!="xdp"
989
970
module function stdlib_linalg_svdvals_${ri}$(a,err) result(s)
990
971
!!### Summary
991
972
!! Compute singular values \(S \) from the singular-value decomposition of a matrix \( A = U \cdot S \cdot \V^T \).
@@ -1009,7 +990,6 @@ module stdlib_linalg
1009
990
!> Array of singular values
1010
991
real(${rk}$), allocatable :: s(:)
1011
992
end function stdlib_linalg_svdvals_${ri}$
1012
- #:endif
1013
993
#:endfor
1014
994
end interface svdvals
1015
995
0 commit comments