GNU Octave  3.8.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
d1mach.f
Go to the documentation of this file.
1  double precision function d1mach (i)
2  integer i
3  logical init
4  double precision dmach(5)
5  double precision dlamch
6  external dlamch
7  save init, dmach
8  data init /.false./
9  if (.not. init) then
10  dmach(1) = dlamch('u')
11  dmach(2) = dlamch('o')
12  dmach(3) = dlamch('e')
13  dmach(4) = dlamch('p')
14  dmach(5) = log10(dlamch('b'))
15  init = .true.
16  endif
17  if (i .lt. 1 .or. i .gt. 5) goto 999
18  d1mach = dmach(i)
19  return
20  999 write (*, 1999) i
21  1999 format (' d1mach - i out of bounds', i10)
22  call xstopx(' ')
23  d1mach = 0
24  end