Parent: [93da36] (diff)

Download this file

F77func.def    96 lines (68 with data), 4.7 kB

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
DEFINITION MODULE F77func;
(*------------------------------------------------------------------------*)
(* Funktionen die das Portieren von Fortran-Quellen unterstuetzen. *)
(* Some Fortran intrinsics which can be used to translate Fortran to M2 *)
(*------------------------------------------------------------------------*)
(* Implementation : Michael Riedl *)
(* Licence : GNU Lesser General Public License (LGPL) *)
(*------------------------------------------------------------------------*)
(* $Id: F77func.def,v 1.4 2018/07/08 08:39:09 mriedl Exp mriedl $ *)
IMPORT LibDBlasL1F77;
TYPE INTEGER4 = LibDBlasL1F77.INTEGER4;
REAL8 = LibDBlasL1F77.REAL8;
COMPLEX16 = LibDBlasL1F77.COMPLEX16;
PROCEDURE DSIGN(a,b : REAL8) : REAL8;
(*----------------------------------------------------------------*)
(* FORTRAN DSIGN-Funktion (Vorzeichentransfer). Wenn b >= 0 wird *)
(* ABS(a) zurueckgegeben, wenn b < 0 wird -ABS(a) zurueckgegeben. *)
(*----------------------------------------------------------------*)
PROCEDURE DMAX(x,y : REAL8) : REAL8;
(*----------------------------------------------------------------*)
(* FORTRAN DMAX-Funktion (Maximum von x,y). *)
(*----------------------------------------------------------------*)
PROCEDURE DMIN(x,y : REAL8) : REAL8;
(*----------------------------------------------------------------*)
(* FORTRAN DMIN-Funktion (Minimum von x,y). *)
(*----------------------------------------------------------------*)
PROCEDURE MIN0(ix,iy : INTEGER4) : INTEGER4;
(*----------------------------------------------------------------*)
(* FORTRAN MIN0-Funktion (Maximum von x,y). *)
(*----------------------------------------------------------------*)
PROCEDURE MAX0(ix,iy : INTEGER4) : INTEGER4;
(*----------------------------------------------------------------*)
(* FORTRAN MAX0-Funktion (Maximum von x,y). *)
(*----------------------------------------------------------------*)
PROCEDURE DINT(x : REAL8) : REAL8;
(*----------------------------------------------------------------*)
(* FORTRAN DINT-Funktion (Abschneiden des Nachkommaanteils). *)
(*----------------------------------------------------------------*)
PROCEDURE NINT(x : LONGREAL) : INTEGER;
(*----------------------------------------------------------------*)
(* FORTRAN NINT-Funktion (rundet zur naechstliegende Ganzzahl) *)
(*----------------------------------------------------------------*)
PROCEDURE IAND(a,b : INTEGER) : INTEGER;
(*----------------------------------------------------------------*)
(* Returns the bitwise logical AND of a and b (set intersection) *)
(*----------------------------------------------------------------*)
PROCEDURE IOR(a,b : INTEGER) : INTEGER;
(*----------------------------------------------------------------*)
(* Returns the bitwise boolean inclusive OR of a and b *)
(* (set union) *)
(*----------------------------------------------------------------*)
PROCEDURE IEOR(a,b : INTEGER) : INTEGER;
(*----------------------------------------------------------------*)
(* Returns the bitwise boolean exclusive OR of a and b *)
(* (symmetric set difference) *)
(*----------------------------------------------------------------*)
PROCEDURE D1Mach (i: INTEGER): LONGREAL;
(*----------------------------------------------------------------*)
(* D1Mach liefert verschiende Maschinenkonstanten *)
(* *)
(* 1 : the smallest positive magnitude TINY(1.0D0) *)
(* 2 : the largest magnitude (HUGE(1.0D0), MAX(LONGREAL)). *)
(* 3 : the smallest relative spacing epsilon(1) / radix (1) *)
(* 4 : the largest relative spacing. *)
(* 5 : the machine precision EPSILON(1.0D0) (MachEps) *)
(* 6 : the nearest numbner to 1 (LowLong.succ(1.0) - 1.0) *)
(*----------------------------------------------------------------*)
END F77func.