]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | * |
2 | * $Id$ | |
3 | * | |
4 | * $Log$ | |
5 | * Revision 1.1.1.1 1996/04/01 15:02:14 mclareni | |
6 | * Mathlib gen | |
7 | * | |
8 | * | |
9 | #include "gen/pilot.h" | |
10 | SUBROUTINE DGS56P(F,A,B,RES,ERR) | |
11 | #if !defined(CERNLIB_DOUBLE) | |
12 | #include "gen/imp128.inc" | |
13 | CHARACTER*6 NAME | |
14 | NAME = 'DGS56P' | |
15 | CALL MTLPRT(NAME,'D106', | |
16 | +'not available on this machine - see documentation') | |
17 | RETURN | |
18 | END | |
19 | #endif | |
20 | #if defined(CERNLIB_DOUBLE) | |
21 | IMPLICIT DOUBLE PRECISION (A-H,O-Z) | |
22 | ||
23 | PARAMETER (R1 = 1, HF = R1/2) | |
24 | DIMENSION X5(5),W5(5),X6(6),W6(6) | |
25 | ||
26 | DATA (X5(I),W5(I),I=1,5) | |
27 | 1/4.6910077030668004D-02, 1.1846344252809454D-01, | |
28 | 2 2.3076534494715846D-01, 2.3931433524968324D-01, | |
29 | 3 5.0000000000000000D-01, 2.8444444444444444D-01, | |
30 | 4 7.6923465505284154D-01, 2.3931433524968324D-01, | |
31 | 5 9.5308992296933200D-01, 1.1846344252809454D-01/ | |
32 | ||
33 | DATA (X6(I),W6(I),I=1,6) | |
34 | 1/3.3765242898423989D-02, 8.5662246189585178D-02, | |
35 | 2 1.6939530676686775D-01, 1.8038078652406930D-01, | |
36 | 3 3.8069040695840155D-01, 2.3395696728634552D-01, | |
37 | 4 6.1930959304159845D-01, 2.3395696728634552D-01, | |
38 | 5 8.3060469323313225D-01, 1.8038078652406930D-01, | |
39 | 6 9.6623475710157601D-01, 8.5662246189585178D-02/ | |
40 | ||
41 | RANG=B-A | |
42 | E5=0 | |
43 | E6=0 | |
44 | DO 1 I = 1,5 | |
45 | E5=E5+W5(I)*F(A+RANG*X5(I)) | |
46 | E6=E6+W6(I)*F(A+RANG*X6(I)) | |
47 | 1 CONTINUE | |
48 | E6=E6+W6(6)*F(A+RANG*X6(6)) | |
49 | RES=HF*(E6+E5)*RANG | |
50 | ERR=ABS((E6-E5)*RANG) | |
51 | RETURN | |
52 | END | |
53 | #endif |