Commit 410c0dfaf8eea8efccb308511ddfb16021214225

Authored by daniau
1 parent b930260397

git-svn-id: https://lxsd.femto-st.fr/svn/fvn@44 b657c933-2333-4658-acf2-d3c7c2708721

Showing 3 changed files with 4 additions and 81 deletions Side-by-side Diff

... ... @@ -45,7 +45,7 @@
45 45 fvn_fnlib.o gamic.o gami.o gamit.o \
46 46 gamma.o gamr.o i1mach.o i8save.o \
47 47 initds.o inits.o nerror.o poch1.o \
48   -poch.o psi.o r1mach.o r9admp.o \
  48 +poch.o psi.o r9admp.o \
49 49 r9aimp.o r9atn1.o r9chm.o r9chu.o \
50 50 r9gaml.o r9gmic.o r9gmit.o r9knus.o \
51 51 r9lgic.o r9lgit.o r9lgmc.o r9ln2r.o \
fvn_fnlib/r1mach.f90
1   -!DECK R1MACH
2   - REAL FUNCTION R1MACH (I)
3   - IMPLICIT NONE
4   - INTEGER :: I
5   - REAL :: B, X
6   -!***BEGIN PROLOGUE R1MACH
7   -!***PURPOSE Return floating point machine dependent constants.
8   -!***LIBRARY SLATEC
9   -!***CATEGORY R1
10   -!***TYPE SINGLE PRECISION (R1MACH-S, D1MACH-D)
11   -!***KEYWORDS MACHINE CONSTANTS
12   -!***AUTHOR Fox, P. A., (Bell Labs)
13   -! Hall, A. D., (Bell Labs)
14   -! Schryer, N. L., (Bell Labs)
15   -!***DESCRIPTION
16   -!
17   -! R1MACH can be used to obtain machine-dependent parameters for the
18   -! local machine environment. It is a function subprogram with one
19   -! (input) argument, and can be referenced as follows:
20   -!
21   -! A = R1MACH(I)
22   -!
23   -! where I=1,...,5. The (output) value of A above is determined by
24   -! the (input) value of I. The results for various values of I are
25   -! discussed below.
26   -!
27   -! R1MACH(1) = B**(EMIN-1), the smallest positive magnitude.
28   -! R1MACH(2) = B**EMAX*(1 - B**(-T)), the largest magnitude.
29   -! R1MACH(3) = B**(-T), the smallest relative spacing.
30   -! R1MACH(4) = B**(1-T), the largest relative spacing.
31   -! R1MACH(5) = LOG10(B)
32   -!
33   -! Assume single precision numbers are represented in the T-digit,
34   -! base-B form
35   -!
36   -! sign (B**E)*( (X(1)/B) + ... + (X(T)/B**T) )
37   -!
38   -! where 0 .LE. X(I) .LT. B for I=1,...,T, 0 .LT. X(1), and
39   -! EMIN .LE. E .LE. EMAX.
40   -!
41   -! The values of B, T, EMIN and EMAX are provided in I1MACH as
42   -! follows:
43   -! I1MACH(10) = B, the base.
44   -! I1MACH(11) = T, the number of base-B digits.
45   -! I1MACH(12) = EMIN, the smallest exponent E.
46   -! I1MACH(13) = EMAX, the largest exponent E.
47   -!
48   -!
49   -!***REFERENCES P. A. Fox, A. D. Hall and N. L. Schryer, Framework for
50   -! a portable library, ACM Transactions on Mathematical
51   -! Software 4, 2 (June 1978), pp. 177-188.
52   -!***ROUTINES CALLED XERMSG
53   -!***REVISION HISTORY (YYMMDD)
54   -! 790101 DATE WRITTEN
55   -! 960329 Modified for Fortran 90 (BE after suggestions by EG)
56   -!***END PROLOGUE R1MACH
57   -!
58   - X = 1.0
59   - B = RADIX(X)
60   - SELECT CASE (I)
61   - CASE (1)
62   - R1MACH = B**(MINEXPONENT(X)-1) ! the smallest positive magnitude.
63   - CASE (2)
64   - R1MACH = HUGE(X) ! the largest magnitude.
65   - CASE (3)
66   - R1MACH = B**(-DIGITS(X)) ! the smallest relative spacing.
67   - CASE (4)
68   - R1MACH = B**(1-DIGITS(X)) ! the largest relative spacing.
69   - CASE (5)
70   - R1MACH = LOG10(B)
71   - CASE DEFAULT
72   - WRITE (*, FMT = 9000)
73   - 9000 FORMAT ('1ERROR 1 IN R1MACH - I OUT OF BOUNDS')
74   - STOP
75   - END SELECT
76   - RETURN
77   - END
... ... @@ -3,10 +3,10 @@
3 3  
4 4 objects = fvn_sparse.o umfpack_wrapper.o
5 5  
6   -all: umfpack $(objects)
  6 +all: suitesparse $(objects)
7 7  
8   -umfpack:
9   - ( cd UMFPACK ; make )
  8 +suitesparse:
  9 + ( cd UMFPACK && make )
10 10  
11 11 clean:
12 12 ( cd AMD && make clean )