C                                                                       DG000010
C     ..................................................................DG000020
C                                                                       DG000030
C        SUBROUTINE DQG256                                              DG000040
C                                                                       DG000050
C        PURPOSE                                                        DG000060
C           TO COMPUTE INTEGRAL(FCT(X), SUMMED OVER X FROM XL TO XU)    DG000070
C                                                                       DG000080
C        USAGE                                                          DG000090
C           CALL DQG256 (XL,XU,FCT,Y)                                   DG000100
C           PARAMETER FCT REQUIRES AN EXTERNAL STATEMENT                DG000110
C                                                                       DG000120
C        DESCRIPTION OF PARAMETERS                                      DG000130
C           XL     - DOUBLE PRECISION LOWER BOUND OF THE INTERVAL.      DG000140
C           XU     - DOUBLE PRECISION UPPER BOUND OF THE INTERVAL.      DG000150
C           FCT    - THE NAME OF AN EXTERNAL DOUBLE PRECISION FUNCTION  DG000160
C                    SUBPROGRAM USED.                                   DG000170
C           Y      - THE RESULTING DOUBLE PRECISION INTEGRAL VALUE.     DG000180
C                                                                       DG000190
C        REMARKS                                                        DG000200
C           NONE                                                        DG000210
C                                                                       DG000220
C        SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED                  DG000230
C           THE EXTERNAL DOUBLE PRECISION FUNCTION SUBPROGRAM FCT(X)    DG000240
C           MUST BE FURNISHED BY THE USER.                              DG000250
C                                                                       DG000260
C        METHOD                                                         DG000270
C           EVALUATION IS DONE BY MEANS OF 256-POINT GAUSS QUADRATURE   DG000280
C           FORMULA, WHICH INTEGRATES POLYNOMIALS UP TO DEGREE 511      DG000290
C           EXACTLY. FOR REFERENCE, SEE                                 DG000300
C           V.I.KRYLOV, APPROXIMATE CALCULATION OF INTEGRALS,           DG000310
C           MACMILLAN, NEW YORK/LONDON, 1962, PP.100-111 AND 337-340.   DG000320
C                                                                       DG000330
C        COLOPHON                                                       DG000340
C           THIS FILE IS GENERATED BY LETHER-WENSTON-MPFR.LUA           DG000350
C           VERSION 2017-06-29                                          DG000360
C           MPFR DEFAULT PRECISION = 200 BIT                            DG000370
C     ..................................................................DG000380
C                                                                       DG000390
      SUBROUTINE DQG256(XL,XU,FCT,Y)                                    DG000400
C                                                                       DG000410
C                                                                       DG000420
      DOUBLE PRECISION XL,XU,Y,A,B,C,FCT                                DG000430
C                                                                       DG000440
      A=.5D0*(XU+XL)                                                    DG000450
      B=XU-XL                                                           DG000460
      C=0.4999780250094961153674006*B                                   DG000470
      Y=5.639450891113608775626944D-05*(FCT(A+C)+FCT(A-C))              DG000480
      C=0.4998842187046315930524393*B                                   DG000490
      Y=Y+0.0001312674721482229531437288*(FCT(A+C)+FCT(A-C))            DG000500
      C=0.4997154687331307041204271*B                                   DG000510
      Y=Y+0.0002062316272130881642160929*(FCT(A+C)+FCT(A-C))            DG000520
      C=0.4994717629217044282775131*B                                   DG000530
      Y=Y+0.0002811744770157049014076184*(FCT(A+C)+FCT(A-C))            DG000540
      C=0.4991531332365032220277502*B                                   DG000550
      Y=Y+0.0003560770817366603334544946*(FCT(A+C)+FCT(A-C))            DG000560
      C=0.4987596263783604137817044*B                                   DG000570
      Y=Y+0.0004309268507100445189070467*(FCT(A+C)+FCT(A-C))            DG000580
      C=0.4982913010116907702152522*B                                   DG000590
      Y=Y+0.0005057121966042202263029064*(FCT(A+C)+FCT(A-C))            DG000600
      C=0.4977482272405481782963235*B                                   DG000610
      Y=Y+0.0005804217787838623619852991*(FCT(A+C)+FCT(A-C))            DG000620
      C=0.4971304864612048324814388*B                                   DG000630
      Y=Y+0.0006550443409512522289158402*(FCT(A+C)+FCT(A-C))            DG000640
      C=0.4964381713044110585717669*B                                   DG000650
      Y=Y+0.0007295686666553666005441932*(FCT(A+C)+FCT(A-C))            DG000660
      C=0.4956713856037915434610943*B                                   DG000670
      Y=Y+0.0008039835653746636212249698*(FCT(A+C)+FCT(A-C))            DG000680
      C=0.4948302443725326091596219*B                                   DG000690
      Y=Y+0.0008782778681653649968034573*(FCT(A+C)+FCT(A-C))            DG000700
      C=0.4939148737824303044582439*B                                   DG000710
      Y=Y+0.0009524404267498592022095706*(FCT(A+C)+FCT(A-C))            DG000720
      C=0.4929254111430629782396226*B                                   DG000730
      Y=Y+0.001026460113983071587274391*(FCT(A+C)+FCT(A-C))             DG000740
      C=0.4918620048801577480833431*B                                   DG000750
      Y=Y+0.001100325824919955249842442*(FCT(A+C)+FCT(A-C))             DG000760
      C=0.4907248145127322028846516*B                                   DG000770
      Y=Y+0.00117402647816365600850323*(FCT(A+C)+FCT(A-C))              DG000780
      C=0.489514010628811019412119*B                                    DG000790
      Y=Y+0.001247551017351853425419768*(FCT(A+C)+FCT(A-C))             DG000800
      C=0.4882297748596170778105053*B                                   DG000810
      Y=Y+0.001320888412713745282060415*(FCT(A+C)+FCT(A-C))             DG000820
      C=0.4868722998521852026330393*B                                   DG000830
      Y=Y+0.001394027662663853440287381*(FCT(A+C)+FCT(A-C))             DG000840
      C=0.4854417892403715146604616*B                                   DG000850
      Y=Y+0.001466957795414858323006163*(FCT(A+C)+FCT(A-C))             DG000860
      C=0.4839384576142447274545019*B                                   DG000870
      Y=Y+0.001539667870599668791602676*(FCT(A+C)+FCT(A-C))             DG000880
      C=0.4823625304878532154663061*B                                   DG000890
      Y=Y+0.001612146980897099078505357*(FCT(A+C)+FCT(A-C))             DG000900
      C=0.4807142442653660720032037*B                                   DG000910
      Y=Y+0.001684384253657775506009553*(FCT(A+C)+FCT(A-C))             DG000920
      C=0.4789938462055890646828952*B                                   DG000930
      Y=Y+0.001756368852528153665485527*(FCT(A+C)+FCT(A-C))             DG000940
      C=0.477201594384858120882224*B                                    DG000950
      Y=Y+0.001828089979071251084694621*(FCT(A+C)+FCT(A-C))             DG000960
      C=0.4753377576583141381819261*B                                   DG000970
      Y=Y+0.00189953687438312899905851*(FCT(A+C)+FCT(A-C))              DG000980
      C=0.4734026156195637406860259*B                                   DG000990
      Y=Y+0.001970698820704416813864517*(FCT(A+C)+FCT(A-C))             DG001000
      C=0.4713964585587312215915381*B                                   DG001010
      Y=Y+0.002041565143026334204299888*(FCT(A+C)+FCT(A-C))             DG001020
      C=0.469319587418907402490963*B                                    DG001030
      Y=Y+0.002112125210690768136178252*(FCT(A+C)+FCT(A-C))             DG001040
      C=0.4671723137510015471462383*B                                   DG001050
      Y=Y+0.00218236843898402834078421*(FCT(A+C)+FCT(A-C))              DG001060
      C=0.4649549596670028205901228*B                                   DG001070
      Y=Y+0.002252284290723948534320896*(FCT(A+C)+FCT(A-C))             DG001080
      C=0.4626678577916581014363651*B                                   DG001090
      Y=Y+0.002321862277840030156989546*(FCT(A+C)+FCT(A-C))             DG001100
      C=0.4603113512125732477525235*B                                   DG001110
      Y=Y+0.002391091962946345686465867*(FCT(A+C)+FCT(A-C))             DG001120
      C=0.4578857934287451922633348*B                                   DG001130
      Y=Y+0.002459962960906932834779388*(FCT(A+C)+FCT(A-C))             DG001140
      C=0.4553915482975325059454536*B                                   DG001150
      Y=Y+0.002528464940393421193778908*(FCT(A+C)+FCT(A-C))             DG001160
      C=0.452828989980072323541341*B                                    DG001170
      Y=Y+0.002596587625434640465164377*(FCT(A+C)+FCT(A-C))             DG001180
      C=0.45019850288515177238581*B                                     DG001190
      Y=Y+0.002664320796957965158540556*(FCT(A+C)+FCT(A-C))             DG001200
      C=0.4475004816115422887206114*B                                   DG001210
      Y=Y+0.002731654294322155138785266*(FCT(A+C)+FCT(A-C))             DG001220
      C=0.4447353308888054444143383*B                                   DG001230
      Y=Y+0.002798578016841455038775723*(FCT(A+C)+FCT(A-C))             DG001240
      C=0.4419034655165791424299131*B                                   DG001250
      Y=Y+0.002865081925300718588692209*(FCT(A+C)+FCT(A-C))             DG001260
      C=0.4390053103023532719932174*B                                   DG001270
      Y=Y+0.002931156043461326530330799*(FCT(A+C)+FCT(A-C))             DG001280
      C=0.4360412999977441445650229*B                                   DG001290
      Y=Y+0.002996790459557669110563848*(FCT(A+C)+FCT(A-C))             DG001300
      C=0.4330118792332772596487577*B                                   DG001310
      Y=Y+0.003061975327783966271194541*(FCT(A+C)+FCT(A-C))             DG001320
      C=0.4299175024516881753480865*B                                   DG001330
      Y=Y+0.003126700869771200636031823*(FCT(A+C)+FCT(A-C))             DG001340
      C=0.4267586338397514825365178*B                                   DG001350
      Y=Y+0.003190957376053940285187582*(FCT(A+C)+FCT(A-C))             DG001360
      C=0.4235357472586481035935362*B                                   DG001370
      Y=Y+0.00325473520752683013390495*(FCT(A+C)+FCT(A-C))              DG001380
      C=0.420249326172881356947534*B                                    DG001390
      Y=Y+0.003318024796890532522295019*(FCT(A+C)+FCT(A-C))             DG001400
      C=0.4168998635777524471742219*B                                   DG001410
      Y=Y+0.003380816650086899390463931*(FCT(A+C)+FCT(A-C))             DG001420
      C=0.4134878619254062571445464*B                                   DG001430
      Y=Y+0.003443101347723160173356662*(FCT(A+C)+FCT(A-C))             DG001440
      C=0.410013833049458533701739*B                                    DG001450
      Y=Y+0.003504869546484911310617218*(FCT(A+C)+FCT(A-C))             DG001460
      C=0.4064782980882157715682052*B                                   DG001470
      Y=Y+0.003566111980537695035836211*(FCT(A+C)+FCT(A-C))             DG001480
      C=0.4028817874064993116286946*B                                   DG001490
      Y=Y+0.003626819462916956891914569*(FCT(A+C)+FCT(A-C))             DG001500
      C=0.3992248405160853793912714*B                                   DG001510
      Y=Y+0.00368698288690617321878622*(FCT(A+C)+FCT(A-C))              DG001520
      C=0.3955080059947729972733537*B                                   DG001530
      Y=Y+0.003746593227402941679299881*(FCT(A+C)+FCT(A-C))             DG001540
      C=0.3917318414040919103753351*B                                   DG001550
      Y=Y+0.00380564154227282973080936*(FCT(A+C)+FCT(A-C))              DG001560
      C=0.3878969132056628695660263*B                                   DG001570
      Y=Y+0.003864118973690777815555097*(FCT(A+C)+FCT(A-C))             DG001580
      C=0.3840037966762228179879453*B                                   DG001590
      Y=Y+0.003922016749469855933405158*(FCT(A+C)+FCT(A-C))             DG001600
      C=0.3800530758213277274709534*B                                   DG001610
      Y=Y+0.003979326184377174176806581*(FCT(A+C)+FCT(A-C))             DG001620
      C=0.3760453432877460297937649*B                                   DG001630
      Y=Y+0.004036038681436749750473487*(FCT(A+C)+FCT(A-C))             DG001640
      C=0.3719812002745557842278416*B                                   DG001650
      Y=Y+0.004092145733219134967809881*(FCT(A+C)+FCT(A-C))             DG001660
      C=0.3678612564429589173101864*B                                   DG001670
      Y=Y+0.004147638923117612712585706*(FCT(A+C)+FCT(A-C))             DG001680
      C=0.3636861298248260632934472*B                                   DG001690
      Y=Y+0.004202509926610767878090151*(FCT(A+C)+FCT(A-C))             DG001700
      C=0.3594564467299857241863199*B                                   DG001710
      Y=Y+0.004256750512511245346919177*(FCT(A+C)+FCT(A-C))             DG001720
      C=0.3551728416522716566972832*B                                   DG001730
      Y=Y+0.004310352544200507152684419*(FCT(A+C)+FCT(A-C))             DG001740
      C=0.3508359571743425797030418*B                                   DG001750
      Y=Y+0.004363307980849403570168316*(FCT(A+C)+FCT(A-C))             DG001760
      C=0.3464464438712884800526708*B                                   DG001770
      Y=Y+0.004415608878624375012659136*(FCT(A+C)+FCT(A-C))             DG001780
      C=0.3420049602130379765624386*B                                   DG001790
      Y=Y+0.004467247391879103774204209*(FCT(A+C)+FCT(A-C))             DG001800
      C=0.3375121724655813819279594*B                                   DG001810
      Y=Y+0.004518215774331436840113888*(FCT(A+C)+FCT(A-C))             DG001820
      C=0.3329687545910242799532042*B                                   DG001830
      Y=Y+0.004568506380225403201000236*(FCT(A+C)+FCT(A-C))             DG001840
      C=0.3283753881464866109437501*B                                   DG001850
      Y=Y+0.004618111665478151343689358*(FCT(A+C)+FCT(A-C))             DG001860
      C=0.3237327621818624313085081*B                                   DG001870
      Y=Y+0.004667024188811634856233007*(FCT(A+C)+FCT(A-C))             DG001880
      C=0.3190415731364556843343443*B                                   DG001890
      Y=Y+0.004715236612868876373676382*(FCT(A+C)+FCT(A-C))             DG001900
      C=0.3143025247345074877161049*B                                   DG001910
      Y=Y+0.004762741705314642405914843*(FCT(A+C)+FCT(A-C))             DG001920
      C=0.3095163278796306097154838*B                                   DG001930
      Y=Y+0.004809532339920363928581082*(FCT(A+C)+FCT(A-C))             DG001940
      C=0.3046837005481669697611554*B                                   DG001950
      Y=Y+0.004855601497633139982124835*(FCT(A+C)+FCT(A-C))             DG001960
      C=0.2998053676814841608651941*B                                   DG001970
      Y=Y+0.0049009422676286639127494*(FCT(A+C)+FCT(A-C))               DG001980
      C=0.2948820610772271503928931*B                                   DG001990
      Y=Y+0.004945547848347914301315342*(FCT(A+C)+FCT(A-C))             DG002000
      C=0.2899145192795414724609159*B                                   DG002010
      Y=Y+0.004989411548517455062366975*(FCT(A+C)+FCT(A-C))             DG002020
      C=0.2849034874682843795288338*B                                   DG002030
      Y=Y+0.005032526788153191654730489*(FCT(A+C)+FCT(A-C))             DG002040
      C=0.2798497173472405725684537*B                                   DG002050
      Y=Y+0.005074887099547432827317033*(FCT(A+C)+FCT(A-C))             DG002060
      C=0.2747539670313592785212134*B                                   DG002070
      Y=Y+0.005116486128239109828477429*(FCT(A+C)+FCT(A-C))             DG002080
      C=0.2696170009330295905639681*B                                   DG002090
      Y=Y+0.005157317633967007534130357*(FCT(A+C)+FCT(A-C))             DG002100
      C=0.2644395896474111309757382*B                                   DG002110
      Y=Y+0.005197375491605864498550863*(FCT(A+C)+FCT(A-C))             DG002120
      C=0.2592225098368372381108309*B                                   DG002130
      Y=Y+0.005236653692085201501784783*(FCT(A+C)+FCT(A-C))             DG002140
      C=0.2539665441143080181159625*B                                   DG002150
      Y=Y+0.005275146343290740758766788*(FCT(A+C)+FCT(A-C))             DG002160
      C=0.2486724809260907385597562*B                                   DG002170
      Y=Y+0.005312847670948280566980841*(FCT(A+C)+FCT(A-C))             DG002180
      C=0.2433411144334451750518107*B                                   DG002190
      Y=Y+0.0053497520194898928015241*(FCT(A+C)+FCT(A-C))               DG002200
      C=0.2379732443934916531953688*B                                   DG002210
      Y=Y+0.005385853852902313318326816*(FCT(A+C)+FCT(A-C))             DG002220
      C=0.2325696760392396568227852*B                                   DG002230
      Y=Y+0.005421147755557397997646739*(FCT(A+C)+FCT(A-C))             DG002240
      C=0.2271312199587949993872276*B                                   DG002250
      Y=Y+0.005455628433024519850398424*(FCT(A+C)+FCT(A-C))             DG002260
      C=0.2216586919737636786084629*B                                   DG002270
      Y=Y+0.005489290712864785318994102*(FCT(A+C)+FCT(A-C))             DG002280
      C=0.2161529130168706549767205*B                                   DG002290
      Y=Y+0.005522129545406950631758786*(FCT(A+C)+FCT(A-C))             DG002300
      C=0.2106147090088119124884062*B                                   DG002310
      Y=Y+0.005554140004504921815230408*(FCT(A+C)+FCT(A-C))             DG002320
      C=0.2050449107343582750032168*B                                   DG002330
      Y=Y+0.005585317288276724731355441*(FCT(A+C)+FCT(A-C))             DG002340
      C=0.1994443537177295638567316*B                                   DG002350
      Y=Y+0.005615656719824834286328401*(FCT(A+C)+FCT(A-C))             DG002360
      C=0.1938138780972577918189923*B                                   DG002370
      Y=Y+0.005645153747937754754183797*(FCT(A+C)+FCT(A-C))             DG002380
      C=0.1881543284993581951415279*B                                   DG002390
      Y=Y+0.005673803947772745970812857*(FCT(A+C)+FCT(A-C))             DG002400
      C=0.1824665539118270092667324*B                                   DG002410
      Y=Y+0.00570160302151959298242353*(FCT(A+C)+FCT(A-C))              DG002420
      C=0.1767514075564849947688951*B                                   DG002430
      Y=Y+0.005728546799045319576167196*(FCT(A+C)+FCT(A-C))             DG002440
      C=0.1710097467611858182403648*B                                   DG002450
      Y=Y+0.005754631238519748979293196*(FCT(A+C)+FCT(A-C))             DG002460
      C=0.1652424328312084881145935*B                                   DG002470
      Y=Y+0.005779852427021817886334328*(FCT(A+C)+FCT(A-C))             DG002480
      C=0.1594503309200531378158417*B                                   DG002490
      Y=Y+0.005804206581126552861042353*(FCT(A+C)+FCT(A-C))             DG002500
      C=0.1536343098996595381293051*B                                   DG002510
      Y=Y+0.00582769004747262106064947*(FCT(A+C)+FCT(A-C))              DG002520
      C=0.1477952422300678072818934*B                                   DG002530
      Y=Y+0.005850299303310370144094912*(FCT(A+C)+FCT(A-C))             DG002540
      C=0.1419340038285408708998829*B                                   DG002550
      Y=Y+0.005872030957030275152688366*(FCT(A+C)+FCT(A-C))             DG002560
      C=0.1360514739381683047526224*B                                   DG002570
      Y=Y+0.005892881748671713090845059*(FCT(A+C)+FCT(A-C))             DG002580
      C=0.1301485349959712709892804*B                                   DG002590
      Y=Y+0.005912848550411988885580369*(FCT(A+C)+FCT(A-C))             DG002600
      C=0.1242260725005283334166213*B                                   DG002610
      Y=Y+0.005931928367035539365952286*(FCT(A+C)+FCT(A-C))             DG002620
      C=0.1182849748791420092387542*B                                   DG002630
      Y=Y+0.005950118336383244877143602*(FCT(A+C)+FCT(A-C))             DG002640
      C=0.1123261333545659835739392*B                                   DG002650
      Y=Y+0.005967415729781781127936601*(FCT(A+C)+FCT(A-C))             DG002660
      C=0.1063504418113129789685201*B                                   DG002670
      Y=Y+0.005983817952452946864503641*(FCT(A+C)+FCT(A-C))             DG002680
      C=0.1003587966615633350340004*B                                   DG002690
      Y=Y+0.005999322543902905967268355*(FCT(A+C)+FCT(A-C))             DG002700
      C=0.09435209671069441323075179*B                                  DG002710
      Y=Y+0.006013927178291285580633767*(FCT(A+C)+FCT(A-C))             DG002720
      C=0.08833124302245099870186091*B                                  DG002730
      Y=Y+0.006027629664780074907173543*(FCT(A+C)+FCT(A-C))             DG002740
      C=0.08229713878377692491464225*B                                  DG002750
      Y=Y+0.006040427947862272327987592*(FCT(A+C)+FCT(A-C))             DG002760
      C=0.07625068916932819768730342*B                                  DG002770
      Y=Y+0.006052320107670231548878915*(FCT(A+C)+FCT(A-C))             DG002780
      C=0.07019280120568794295651244*B                                  DG002790
      Y=Y+0.006063304360263660517359246*(FCT(A+C)+FCT(A-C))             DG002800
      C=0.0641243836353035473710248*B                                   DG002810
      Y=Y+0.006073379057897229907779919*(FCT(A+C)+FCT(A-C))             DG002820
      C=0.05804634678016640247036743*B                                  DG002830
      Y=Y+0.006082542689267751030653646*(FCT(A+C)+FCT(A-C))             DG002840
      C=0.05195960240525470181959845*B                                  DG002850
      Y=Y+0.006090793879740886087023793*(FCT(A+C)+FCT(A-C))             DG002860
      C=0.0458650635817597760155728*B                                   DG002870
      Y=Y+0.006098131391557356759090487*(FCT(A+C)+FCT(A-C))             DG002880
      C=0.03976364455011648295161353*B                                  DG002890
      Y=Y+0.006104554124018620203757047*(FCT(A+C)+FCT(A-C))             DG002900
      C=0.03365626058285820012114514*B                                  DG002910
      Y=Y+0.006110061113651984595854369*(FCT(A+C)+FCT(A-C))             DG002920
      C=0.02754382784731699205228071*B                                  DG002930
      Y=Y+0.006114651534355139452073133*(FCT(A+C)+FCT(A-C))             DG002940
      C=0.02142726326818954919062114*B                                  DG002950
      Y=Y+0.006118324697520079054621287*(FCT(A+C)+FCT(A-C))             DG002960
      C=0.01530748438998951468313929*B                                  DG002970
      Y=Y+0.006121080052136400384864042*(FCT(A+C)+FCT(A-C))             DG002980
      C=0.009185409239406832558963146*B                                 DG002990
      Y=Y+0.006122917184873960071231929*(FCT(A+C)+FCT(A-C))             DG003000
      C=0.003061956187594764750585082*B                                 DG003010
      Y=B*(Y+0.006123835820144877952035163*(FCT(A+C)+FCT(A-C)))         DG003020
      RETURN                                                            DG003030
      END                                                               DG003040
