Commit Graph
34 Commits
Author SHA1 Message Date
Johnathan Rhyne 6529fc14bc Merge branch 'master' into dlarftTermCase 2025-10-22 14:01:45 -06:00
Johnathan Rhyne 87d679164c changing names 2025-10-22 14:00:14 -06:00
Johnathan Rhyne 9ea006008e Adding larft VARIANTS folder back to test CI failures 2025-10-22 13:59:17 -06:00
Johnathan Rhyne 81c48a0a3a removed larft build instructions from VARIANTS Makefile 2025-10-22 13:53:19 -06:00
Johnathan Rhyne b9d53f4c5c adding nx behavior to *larft 2025-10-22 13:24:50 -06:00
Mark Gates b23d944046 implicit none in SRC/VARIANTS 2025-08-26 22:36:12 -04:00
Angelika Schwarz 1a92dcac7c Remove hardcoded "version 3.X" 2025-06-03 12:28:23 +02:00
Julie 59f136760f Update Source code to fix issue with links in Doxygen
Removed \htmlonly and \endhtmlonly (causing links to not work)
Increase DOT_GRAPH_MAX_NODES   to 200
2025-01-20 17:34:06 -08:00
Johnathan Rhyne e9b05ef6e9 Updated variants information as well as fixed trailing line in zlarft 2024-11-30 11:19:15 -05:00
Johnathan Rhyne 54956283e2 CAN MERGE: Implemented my version of xlarft with comments added, and moved the previous version into VARIANTS 2024-10-16 11:08:37 -06:00
kleine_li 88810e4079 Apply ROUNDUP_LWORK func in SRC/VARIANTS/qr/LL 2023-10-31 21:53:13 +07:00
Angelika Schwarz 8e4ad311c1 Use potrf2 in Cholesky variants
Replace the scalar potf2 with the recursive potrf2 implementation.
The latter is already used in the default Cholesky factorization.
2023-08-09 19:12:09 +02:00
Mikael Jagan 2202db0753 fix misuse of term "minor" 2023-06-05 10:33:54 -04:00
Angelika Schwarz 65df15e8f5 Remove SCEIL, replace calls with intrinsic CEILING
sceil.f is only referenced in SRC/VARIANTS/qr/LL/.
Replace all occurrences of calls to sceil with
the Fortran intrinsics CEILING, which is already
used by a bunch of other routines.
2023-06-02 18:02:13 +02:00
Angelika Schwarz de83ba6bb9 Fix typos in docs of variants of Cholesky and QR 2023-06-02 17:38:27 +02:00
Weslley da Silva Pereira e9c4a7af8e Fix the left-looking variant of geqrf following #638 thanks to @angsch. 2022-07-18 10:27:56 -06:00
Julie e18d437924 Making LAPACK's code eternal... no more version and date in source files.
GitHub is now enabling us to track accurately version and date.
No need for this anymore.
2021-03-25 10:16:58 -07:00
Kyle Guinn dd2f632f2e Add PHONY targets 2019-07-27 23:07:37 -05:00
Kyle Guinn be23965929 Handle relative paths consistently
Place built libraries in $(TOPSRCDIR) and refer to their location by
using $(TOPSRCDIR).
2019-07-27 18:48:52 -05:00
Kyle Guinn 33258cb4b2 Switch to POSIX make variable names
Allows us to use the built-in suffix rules where appropriate.

  FORTRAN   -> FC            (POSIX)
  OPTS      -> FFLAGS        (POSIX)
  DRVOPTS   -> FFLAGS_DRV
  NOOPT     -> FFLAGS_NOOPT

  LOADER    -> FC            (use the compiler driver for linking)
  LOADOPTS  -> LDFLAGS       (POSIX)

  ARCH      -> AR            (POSIX)
  ARCHFLAGS -> ARFLAGS       (POSIX)
2019-07-27 18:48:52 -05:00
Jean-Christophe Fillion-Robin 6e26afd41d style: Fix typo in docstrings
Issues were identified using the open-source tool codespell [1]
running the following command from the source directory:

[1] https://github.com/codespell-project/codespell#readme


$ codespell -q6 \
  --skip=".git,Doxyfile,Doxyfile_man,CMakeLists.txt,Makefile" \
  --regex="\w[a-z\-\_]+" \
  --ignore-words-list="fro,ith,nd,noe,numer" \
  --summary

[...]

-------8<-------
SUMMARY:
acoording     2
agressive     8
ajust        12
arithmetics   5
comleted      2
contraints    8
equaly        4
everytime     4
febuary       1
matix         8
otherwize     4
overwrittes   4
owerflow      8
parmeter      4
permutaions  32
specturm      8
2018-11-07 03:19:51 -05:00
luzpaz 3fac41ca28 Fix misc. typos
Mostly trivial source code comments.
2017-12-01 06:55:48 -05:00
Kyle Guinn 8fce0e24bd Simplify the clean targets
cleanobj:  Remove object files
cleanlib:  Remove libraries
cleanexe:  Remove test and example executables
cleantest: Remove test output and core dumps
clean:     All of the above
2017-02-06 01:07:10 -06:00
Kyle Guinn b6f15e6189 Remove VARIANTSDIR so we don't have to use mkdir
Make the target an actual filename to avoid rebuilding the variant
libraries.
2017-02-04 23:13:34 -06:00
Kyle Guinn a203318e67 Add libraries as prerequisites
Use the automatic variable $^ to refer to all prerequisites when
linking or creating an archive.
2017-02-04 22:47:19 -06:00
Julie bc6a755be4 Updating version number on source file modified since 3.6.1
This is really old school, but a lot of times we have users sending us
copy pasting of codes, and that is the only way to know the version of
the code.
2016-12-23 15:01:32 -08:00
Julie 3f23bd5d53 merging: Various cleanups to makefiles #84
Contribution by @turboencabulator
Closing #84
2016-11-25 17:03:13 -08:00
Hans Johnson 9dafba6d41 STYLE: Remove trailing whitespace in Fortran files
This is mostly a long term maintenance improvement.

Many coding styles require elimination of trailing whitespace, and
many editors and source code management configurations automatically
gobble up whitespace. When these tools gobble up whitespace, it
complicates reviewing the meaningful code changes.

By removing whitespace on one patch, it makes future
code reviews much easier.

=SCRIPT====================================================================

if which tempfile &>/dev/null; then
  TEMPMAKER=tempfile
elif which mktemp &>/dev/null; then
  TEMPMAKER=mktemp
else
  echo "Cannot find tempfile program." 2>&1
  exit 1
fi

MYTEMP=$($TEMPMAKER)
trap 'rm -f $MYTEMP' SIGINT SIGTERM

stripit() {
  echo "stripping $1"
  sed 's/[ \t]*$//' "$1" > $MYTEMP
  cp $MYTEMP "$1"
}

if [ $# -gt 0 ]; then
  while [ "$1" != "" ]; do
    stripit $1
    shift
  done
else
  while read -t 2; do
    stripit $REPLY
  done
fi

rm $MYTEMP
=================================================
2016-07-09 11:19:34 -05:00
Hans Johnson 9c7f84bd60 STYLE: Remove trailing whitespace in MISC files
This is mostly a long term maintenance improvement.

Many coding styles require elimination of trailing whitespace, and
many editors and source code management configurations automatically
gobble up whitespace. When these tools gobble up whitespace, it
complicates reviewing the meaningful code changes.

By removing whitespace on one patch, it makes future
code reviews much easier.

=SCRIPT====================================================================

if which tempfile &>/dev/null; then
  TEMPMAKER=tempfile
elif which mktemp &>/dev/null; then
  TEMPMAKER=mktemp
else
  echo "Cannot find tempfile program." 2>&1
  exit 1
fi

MYTEMP=$($TEMPMAKER)
trap 'rm -f $MYTEMP' SIGINT SIGTERM

stripit() {
  echo "stripping $1"
  sed 's/[ \t]*$//' "$1" > $MYTEMP
  cp $MYTEMP "$1"
}

if [ $# -gt 0 ]; then
  while [ "$1" != "" ]; do
    stripit $1
    shift
  done
else
  while read -t 2; do
    stripit $REPLY
  done
fi

rm $MYTEMP
=================================================
2016-07-09 11:19:33 -05:00
julie 1c3ba60067 Cosmetic changes in Doxygen presentation.
Use \par instead of \details for section.

add a Contributors Section and a Reference Section.
Remove (some) verbatim section when not needed.
Those changes have been done by hand so I am not sure I manage to catch them all.
2011-11-03 20:32:56 +00:00
julie e1d39294ae Integrating Doxygen in comments 2011-10-06 06:53:11 +00:00
julie 46e1b19474 Commit patch sent by Sven.
Patch was based on 3.3.0, so required a little bit of merging.
Thank you Sven for the corrections.
Julie



JL
TESTING/EIG
zerrgg.f
Declare ILO, IHI

SRC
---
I have corrected all the following warnings and errors:

c/d/s/zsysv.f, Unused external reference ILAENV
>JL OK
c/d/s/zsysv.f, Unused local variable NB
>JL  ALREADY CORRECTED

sgsvj0.f, Unused intrinsic AMIN1
> JL OK

d/sorbdb.f, Unused intrinsic MIN
> JL OK

sorcsd.f, Unused intrinsic SIN
sorcsd.f, Unused intrinsic COS
> JL OK MERGE

cpoequb.f, Unused intrinsic AIMAG
cpoequb.f, Unused intrinsic REAL
cpoequb.f, Unused local variable ZDUM

zgeequb.f, REAL --> DBLE
> JL OK

sorcsd.f, line 330: Inconsistent data type REAL (previously INTEGER) for argument 14 in reference to SORBDB
sorcsd.f, line 340: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGQR
sorcsd.f, line 345: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGQR
sorcsd.f, line 356: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGLQ
sorcsd.f, line 363: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGLQ
sorcsd.f, line 369: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGLQ
sorcsd.f, line 374: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGLQ
sorcsd.f, line 385: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGQR
sorcsd.f, line 392: Inconsistent data type REAL (previously INTEGER) for argument 4 in reference to SORGQR
sorcsd.f, line 399: Inconsistent data type REAL (previously INTEGER) for argument 9 in reference to SBBCSD
> JL OK MERGE


ila(s/d/c/z)lr.f
In the WHILE loop, at about line 59 I inserted
IF (I.EQ.0) THEN
   EXIT
END IF
since, otherwise when I = 0, A(0,J) is referenced.
> JL OK

TESTING/MATGEN
--------------
s/dlatm7.f
line 187: I replaced
IF( N.GT.1 ) THEN
by
IF( N.GT.1 .AND. RANK.GT.1 ) THEN
Otherwise I get a division by zero.
> JL OK

s/dlaror.f
I moved:
INFO = 0
from line 125 to line 121 in front of
 IF( N.EQ.0 .OR. M.EQ.0 )
$   RETURN
otherwise INFO is not defined on return when N or M are zero.
Similar change for
c/zlaror.f
> JL OK

TESTING/LIN
-----------
s/derrsy.f
In calls to S/DSYTRI2: I replaced IW by IW(1) since the dummy argument
(LWORK) is a scalar.
> JL OK

c/zerrrfp.f
I made ALPHA and BETA REAL/DOUBLE and introduced COMPLEX/COMPLEX*16
CALPHA since calls to C/ZHFRK need real alpha and beta.  In calls to
CTFSM, I then replaced ALPHA with CALPHA.
In cerrrfp.f, I replaced 1.0D0 with 1.0E0 (not strictly necessary, but
cleaner).
> JL OK

dpot06.f
Removed the unused declaration of LSAME
> JL OK

d/zdrvac.f
Removed the unused declaration of LSAME
> JL OK MERGE

s/d/c/z/ckcsd.f
Removed the unused declarations of S/D/C/ZLANGE, SIN and COS
> JL OK

c/zgennd.f
Removed the unused variable OUT
> JL already DONE

Corrected the following warnings and errors:

dchksy.f, Unused local variable MYWORK
> JL already DONE

ddrvgbx.f, line 792: Different number of arguments from the first call of DGBT02
> JL OK

cdrvgbx.f, line 726: Inconsistent data type REAL (previously COMPLEX) for argument 4 in reference to CLASET
cdrvgbx.f, line 728: Inconsistent data type REAL (previously COMPLEX) for argument 4 in reference to CLASET
cdrvgbx.f, line 780: Inconsistent data type REAL (previously COMPLEX) for argument 10 in reference to CGBT01
cdrvgbx.f, line 794: Different number of arguments from the first call of CGBT02
> JL OK

zdrvgbx.f, line 726: Inconsistent data type DOUBLE PRECISION (previously COMPLEX(KIND(0d0))) for argument 4 in reference to ZLASET
zdrvgbx.f, line 728: Inconsistent data type DOUBLE PRECISION (previously COMPLEX(KIND(0d0))) for argument 4 in reference to ZLASET
zdrvgbx.f, line 780: Inconsistent data type DOUBLE PRECISION (previously COMPLEX(KIND(0d0))) for argument 10 in reference to ZGBT01
zdrvgbx.f, line 794: Different number of arguments from the first call of ZGBT02
> JL OK

TESTING/EIG
-----------
s/d/c/zchkee.f
I inserted
CALL XLAENV( 12, 1 )
at line 1208, since IPARMS(ISPEC) with ISPEC = 12 needs to be set.
(I think I had to do this with them all, certainly with zchkee.f)
> JL OK zchkee.f cchkee.f

c/zchkee.f
In line 2316, the 15th argument of C/ZCKCSD should be real, not complex,
so I replaced A(1,7) by RWORK.
> JL OK

c/zcsdts.f
In calls to C/ZHERK I have replaced ONE by REALONE as arguments 5 and 8
should be real.
> JL OK

s/d/c/zcsdts.f
Division by zero occurs at line 155 in computing EPS when M = 0, so I
have modified
 EPS2 = MAX( ULP, CLANGE( '1', M, M, WORK, LDX, RWORK ) / REAL( M ) )
to
 IF (M.GT.0) THEN
    EPS2 = MAX( ULP, 
$               CLANGE( '1', M, M, WORK, LDX, RWORK ) / REAL( M ) )
 ELSE
    EPS2 = ULP
 END IF
> JL OK

SRC/VARIANTS/lu/CR
------------------
s/d/c/zgetrf
Removed the unused intrinsic MOD
> JL OK
2011-09-23 15:26:46 +00:00
langou 20d3177888 Adding Peng Du's name in the authors of the variants. 2010-12-17 00:09:40 +00:00
jason baba851215 Move LAPACK trunk into position. 2008-10-28 01:38:50 +00:00