Mercurial > octave
annotate libinterp/corefcn/quadcc.cc @ 24098:71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
* quadcc.cc: Add #includes for <cmath> and <algorithm>. Use C++ const rather
than #define for MIN_CQUAD_HEAPSIZE. Introduce new constant DROP_RELTOL
used when deciding to drop an interval. Cuddle operands being multiplied to
distinguish them from addition operator which takes place second. Rewrite
documentation to describe specifying both absolute and relative tolerances.
Add implementation note about warning when calling function with only AbsTol.
Re-implement input processing to accept a 1- or 2-element vector containing
tolerances. Add a warning_with_id call to warn programmers that the syntax
for the function has changed. Add code to make sure this warning fires just
once for each Octave session. Use std::copy_n and std::swap to simplify code.
Change stopping criteria for while loop to depend on both absolute tolerance
and relative tolerance [std::max (abstol, fabs (igral) * reltol)]. Adjust
tolerance in BIST tests to reflect new stopping criteria. Add more input
validation BIST tests.
* NEWS: Announce changes to function.
author | Rik <rik@octave.org> |
---|---|
date | Mon, 25 Sep 2017 12:11:15 -0700 |
parents | 80c42f4cca13 |
children | 5fc5c1a49aa1 |
rev | line source |
---|---|
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1 /* |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2 |
23219
3ac9f9ecfae5
maint: Update copyright dates.
John W. Eaton <jwe@octave.org>
parents:
23083
diff
changeset
|
3 Copyright (C) 2010-2017 Pedro Gonnet |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
4 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
5 This file is part of Octave. |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
6 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
7 Octave is free software; you can redistribute it and/or modify it |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
8 under the terms of the GNU General Public License as published by |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
9 the Free Software Foundation; either version 3 of the License, or |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
10 (at your option) any later version. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
11 |
22755
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
12 Octave is distributed in the hope that it will be useful, but |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
13 WITHOUT ANY WARRANTY; without even the implied warranty of |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
3a2b891d0b33
maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents:
22737
diff
changeset
|
15 GNU General Public License for more details. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
16 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
17 You should have received a copy of the GNU General Public License |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
18 along with Octave; see the file COPYING. If not, see |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
19 <http://www.gnu.org/licenses/>. |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
20 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
21 */ |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
22 |
21724
aba2e6293dd8
use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents:
21723
diff
changeset
|
23 #if defined (HAVE_CONFIG_H) |
21301
40de9f8f23a6
Use '#include "config.h"' rather than <config.h>.
Rik <rik@octave.org>
parents:
21213
diff
changeset
|
24 # include "config.h" |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
25 #endif |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
26 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
27 #include <cmath> |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
28 |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
29 #include <algorithm> |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
30 |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
31 #include "lo-ieee.h" |
19269
65554f5847ac
don't include oct-locbuf.h in header files unnecessarily
John W. Eaton <jwe@octave.org>
parents:
19040
diff
changeset
|
32 #include "oct-locbuf.h" |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
33 |
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
34 #include "defun.h" |
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
35 #include "error.h" |
20940
48b2ad5ee801
maint: Rename oct-obj.[cc|h] to ovl.[cc|h] for clarity.
Rik <rik@octave.org>
parents:
20915
diff
changeset
|
36 #include "ovl.h" |
19269
65554f5847ac
don't include oct-locbuf.h in header files unnecessarily
John W. Eaton <jwe@octave.org>
parents:
19040
diff
changeset
|
37 #include "parse.h" |
15039
e753177cde93
maint: Move non-dynamically linked functions from DLD-FUNCTIONS/ to corefcn/ directory
Rik <rik@octave.org>
parents:
14854
diff
changeset
|
38 #include "utils.h" |
19269
65554f5847ac
don't include oct-locbuf.h in header files unnecessarily
John W. Eaton <jwe@octave.org>
parents:
19040
diff
changeset
|
39 #include "variables.h" |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
40 |
20910 | 41 // Extended debugging. |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
42 #define DEBUG_QUADCC 0 |
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
43 |
20910 | 44 // Define the minimum size of the interval heap. |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
45 static const int MIN_CQUAD_HEAPSIZE = 200; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
46 |
20910 | 47 // Data of a single interval. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
48 typedef struct |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
49 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
50 double a, b; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
51 double c[64]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
52 double fx[33]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
53 double igral, err; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
54 int depth, rdepth, ndiv; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
55 } cquad_ival; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
56 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
57 // Define relative tolerance used when deciding to drop an interval. |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
58 static const double DROP_RELTOL = std::numeric_limits<double>::epsilon () * 10; |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
59 |
20910 | 60 // Some constants and matrices that we'll need. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
61 |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
62 static const double xi[33] = |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
63 { |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
64 -1., -0.99518472667219688624, -0.98078528040323044912, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
65 -0.95694033573220886493, -0.92387953251128675612, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
66 -0.88192126434835502970, -0.83146961230254523708, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
67 -0.77301045336273696082, -0.70710678118654752440, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
68 -0.63439328416364549822, -0.55557023301960222475, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
69 -0.47139673682599764857, -0.38268343236508977173, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
70 -0.29028467725446236764, -0.19509032201612826785, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
71 -0.098017140329560601995, 0., 0.098017140329560601995, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
72 0.19509032201612826785, 0.29028467725446236764, 0.38268343236508977173, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
73 0.47139673682599764857, 0.55557023301960222475, 0.63439328416364549822, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
74 0.70710678118654752440, 0.77301045336273696082, 0.83146961230254523708, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
75 0.88192126434835502970, 0.92387953251128675612, 0.95694033573220886493, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
76 0.98078528040323044912, 0.99518472667219688624, 1. |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
77 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
78 |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
79 static const double bee[68] = |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
80 { |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
81 0.00000000000000e+00, 2.28868854108532e-01, 0.00000000000000e+00, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
82 -8.15740215243451e-01, 0.00000000000000e+00, 5.31212715259731e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
83 0.00000000000000e+00, 1.38538036812454e-02, 0.00000000000000e+00, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
84 3.74405228908818e-02, 0.00000000000000e+00, 2.12224115039342e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
85 0.00000000000000e+00, -8.16362644507898e-01, 0.00000000000000e+00, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
86 5.35648426691481e-01, 0.00000000000000e+00, 1.52417902753662e-03, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
87 0.00000000000000e+00, 2.63058840550873e-03, 0.00000000000000e+00, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
88 4.15292106318904e-03, 0.00000000000000e+00, 6.97106011119775e-03, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
89 0.00000000000000e+00, 1.35535708431058e-02, 0.00000000000000e+00, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
90 3.52132898424856e-02, 0.00000000000000e+00, 2.06946714741884e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
91 0.00000000000000e+00, -8.15674251283876e-01, 0.00000000000000e+00, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
92 5.38841175520580e-01, 0.00000000000000e+00, 1.84909689577590e-04, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
93 0.00000000000000e+00, 2.90936325007499e-04, 0.00000000000000e+00, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
94 3.84877750950089e-04, 0.00000000000000e+00, 4.86436656735046e-04, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
95 0.00000000000000e+00, 6.08688640346879e-04, 0.00000000000000e+00, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
96 7.66732830740331e-04, 0.00000000000000e+00, 9.82753336104205e-04, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
97 0.00000000000000e+00, 1.29359957505615e-03, 0.00000000000000e+00, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
98 1.76616363801885e-03, 0.00000000000000e+00, 2.53323433039089e-03, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
99 0.00000000000000e+00, 3.88872172121956e-03, 0.00000000000000e+00, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
100 6.58635106468291e-03, 0.00000000000000e+00, 1.30326736343254e-02, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
101 0.00000000000000e+00, 3.44353850696714e-02, 0.00000000000000e+00, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
102 2.05025409531915e-01, 0.00000000000000e+00, -8.14985893995401e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
103 0.00000000000000e+00, 5.40679930965238e-01 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
104 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
105 |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
106 static const double Lalpha[33] = |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
107 { |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
108 5.77350269189626e-01, 5.16397779494322e-01, 5.07092552837110e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
109 5.03952630678970e-01, 5.02518907629606e-01, 5.01745206004255e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
110 5.01280411827603e-01, 5.00979432868120e-01, 5.00773395667191e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
111 5.00626174321759e-01, 5.00517330712619e-01, 5.00434593736979e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
112 5.00370233297676e-01, 5.00319182924304e-01, 5.00278009473803e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
113 5.00244319584578e-01, 5.00216403386025e-01, 5.00193012939056e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
114 5.00173220168024e-01, 5.00156323280355e-01, 5.00141783641018e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
115 5.00129182278347e-01, 5.00118189340972e-01, 5.00108542278496e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
116 5.00100030010004e-01, 5.00092481273333e-01, 5.00085755939229e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
117 5.00079738458365e-01, 5.00074332862969e-01, 5.00069458915387e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
118 5.00065049112355e-01, 5.00061046334395e-01, 5.00057401986298e-01 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
119 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
120 |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
121 static const double Lgamma[33] = |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
122 { |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
123 0.0, 0.0, 5.16397779494322e-01, 5.07092552837110e-01, 5.03952630678970e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
124 5.02518907629606e-01, 5.01745206004255e-01, 5.01280411827603e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
125 5.00979432868120e-01, 5.00773395667191e-01, 5.00626174321759e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
126 5.00517330712619e-01, 5.00434593736979e-01, 5.00370233297676e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
127 5.00319182924304e-01, 5.00278009473803e-01, 5.00244319584578e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
128 5.00216403386025e-01, 5.00193012939056e-01, 5.00173220168024e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
129 5.00156323280355e-01, 5.00141783641018e-01, 5.00129182278347e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
130 5.00118189340972e-01, 5.00108542278496e-01, 5.00100030010003e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
131 5.00092481273333e-01, 5.00085755939229e-01, 5.00079738458365e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
132 5.00074332862969e-01, 5.00069458915387e-01, 5.00065049112355e-01, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
133 5.00061046334395e-01 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
134 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
135 |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
136 static const double V1inv[5 * 5] = |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
137 { |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
138 .47140452079103168293e-1, .37712361663282534635, .56568542494923801952, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
139 .37712361663282534635, .47140452079103168293e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
140 -.81649658092772603273e-1, -.46188021535170061160, 0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
141 .46188021535170061160, .81649658092772603273e-1, .15058465048420853962, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
142 .12046772038736683169, -.54210474174315074262, .12046772038736683169, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
143 .15058465048420853962, -.21380899352993950775, .30237157840738178177, -0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
144 -.30237157840738178177, .21380899352993950775, .10774960475223581324, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
145 -.21549920950447162648, .21549920950447162648, -.21549920950447162648, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
146 .10774960475223581324 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
147 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
148 |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
149 static const double V2inv[9 * 9] = |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
150 { |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
151 .11223917161691230546e-1, .10339219839658349826, .19754094204576565761, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
152 .25577315077753587922, .27835314560994251755, .25577315077753587922, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
153 .19754094204576565761, .10339219839658349826, .11223917161691230546e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
154 -.19440394783993476970e-1, -.16544884625069155470, -.24193725566041460608, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
155 -.16953338808305493604, 0.0, .16953338808305493604, .24193725566041460608, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
156 .16544884625069155470, .19440394783993476970e-1, .26466393115406349388e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
157 .17766815796285469394, .11316664642449611462, -.16306601003711325980, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
158 -.30847037493128779631, -.16306601003711325980, .11316664642449611462, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
159 .17766815796285469394, .26466393115406349388e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
160 -.32395302049990834508e-1, -.15521142532414866547, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
161 .88573492664788602740e-1, .29570405784974857322, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
162 -.29570405784974857322, -.88573492664788602740e-1, .15521142532414866547, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
163 .32395302049990834508e-1, .41442155673936851246e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
164 .98186757907405608245e-1, -.23056908429499411784, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
165 -.68047008326360625520e-1, .31797435808002456774, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
166 -.68047008326360625520e-1, -.23056908429499411784, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
167 .98186757907405608245e-1, .41442155673936851246e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
168 -.49981120317798783134e-1, -.24861810572835756217e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
169 .23561326072010832539, -.24472785656448415351, 0.0, .24472785656448415351, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
170 -.23561326072010832539, .24861810572835756217e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
171 .49981120317798783134e-1, .79691635865674781228e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
172 -.95725617891693941833e-1, -.57957553356854386344e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
173 .21164072460540271452, -.27529837844505833514, .21164072460540271452, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
174 -.57957553356854386344e-1, -.95725617891693941833e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
175 .79691635865674781228e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
176 -.10894869830716590913, .20131094491947531782, -.15407672674888869038, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
177 .83385723639789791384e-1, 0.0, -.83385723639789791384e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
178 .15407672674888869038, -.20131094491947531782, .10894869830716590913, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
179 .54581057089643838221e-1, -.10916211417928767644, .10916211417928767644, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
180 -.10916211417928767644, .10916211417928767644, -.10916211417928767644, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
181 .10916211417928767644, -.10916211417928767644, .54581057089643838221e-1 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
182 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
183 |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
184 static const double V3inv[17 * 17] = |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
185 { |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
186 .27729677693590098996e-2, .26423663180333065153e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
187 .53374068493933898312e-1, .77007854739523195947e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
188 .98257061072911596869e-1, .11538049741786835604, .12832134344120884559, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
189 .13612785914022865001, .13888293186236181317, .13612785914022865001, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
190 .12832134344120884559, .11538049741786835604, .98257061072911596869e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
191 .77007854739523195947e-1, .53374068493933898312e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
192 .26423663180333065153e-1, .27729677693590098996e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
193 -.48029210642807413690e-2, -.44887724635478800254e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
194 -.85409520147301089416e-1, -.11090267822061423050, -.12033983162705862441, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
195 -.11102786862182788886, -.85054870109799336515e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
196 -.45998467987742225160e-1, 0.0, .45998467987742225160e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
197 .85054870109799336515e-1, .11102786862182788886, .12033983162705862441, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
198 .11090267822061423050, .85409520147301089416e-1, .44887724635478800254e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
199 .48029210642807413690e-2, .62758546879582030087e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
200 .55561297093529155869e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
201 .93281491021051539742e-1, .92320151237493695139e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
202 .55077987469605684531e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
203 -.96998141716497488255e-2, -.80285961895427405567e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
204 -.13496839655913850224, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
205 -.15512521776684524331, -.13496839655913850224, -.80285961895427405567e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
206 -.96998141716497488255e-2, .55077987469605684531e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
207 .92320151237493695139e-1, .93281491021051539742e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
208 .55561297093529155869e-1, .62758546879582030087e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
209 -.74850969394858555939e-2, -.61751608943839234096e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
210 -.82974150437304275958e-1, -.38437763431942633378e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
211 .45745502025779701366e-1, .12369235652734542162, .14720439712852868239, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
212 .98768034347019704401e-1, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
213 -.98768034347019704401e-1, -.14720439712852868239, -.12369235652734542162, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
214 -.45745502025779701366e-1, .38437763431942633378e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
215 .82974150437304275958e-1, .61751608943839234096e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
216 .74850969394858555939e-2, .86710099994384056338e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
217 .64006230103659573344e-1, .58517426396091675690e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
218 -.29743410528985802680e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
219 -.11934127779157114754, -.12686773515361299409, -.30729137153877447035e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
220 .97307836256600731568e-1, .15635811574451401023, .97307836256600731568e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
221 -.30729137153877447035e-1, -.12686773515361299409, -.11934127779157114754, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
222 -.29743410528985802680e-1, .58517426396091675690e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
223 .64006230103659573344e-1, .86710099994384056338e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
224 -.97486395666294840165e-2, -.62995604908060224672e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
225 -.24373234450275529219e-1, .87760984413626872730e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
226 .12205204576993351394, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
227 .16216004196864002088e-1, -.12422320942156845775, -.13682714580929614678, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
228 0.0, .13682714580929614678, .12422320942156845775, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
229 -.16216004196864002088e-1, -.12205204576993351394, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
230 -.87760984413626872730e-1, .24373234450275529219e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
231 .62995604908060224672e-1, .97486395666294840165e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
232 .10956271233750488468e-1, .58613204255294358939e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
233 -.13306063940736618859e-1, -.11606666444978454399, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
234 -.52059598001115805639e-1, .10868540217796151849, .12594452879014618005, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
235 -.44678658254872910434e-1, -.15617684362128533405, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
236 -.44678658254872910434e-1, .12594452879014618005, .10868540217796151849, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
237 -.52059598001115805639e-1, -.11606666444978454399, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
238 -.13306063940736618859e-1, .58613204255294358939e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
239 .10956271233750488468e-1, -.12098893000863087230e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
240 -.51626244709126208453e-1, .48919433304746979330e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
241 .10467644465949427090, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
242 -.48729879523084673782e-1, -.13668732103524749234, .28190838706814496438e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
243 .15434223333238741600, 0.0, -.15434223333238741600, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
244 -.28190838706814496438e-1, .13668732103524749234, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
245 .48729879523084673782e-1, -.10467644465949427090, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
246 -.48919433304746979330e-1, .51626244709126208453e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
247 .12098893000863087230e-1, .13542668300437944822e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
248 .41712033418258689308e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
249 -.76190463272803434388e-1, -.58303943170068132010e-1, .12158068748245606853, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
250 .42121099930651007882e-1, -.14684425840766337756, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
251 -.16108203535058647043e-1, .15698075850757976092, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
252 -.16108203535058647043e-1, -.14684425840766337756, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
253 .42121099930651007882e-1, .12158068748245606853, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
254 -.58303943170068132010e-1, -.76190463272803434388e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
255 .41712033418258689308e-1, .13542668300437944822e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
256 -.14939634995117694417e-1, -.30047246373341564039e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
257 .91624635082546425678e-1, -.79133374319110026377e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
258 -.12292558212072233355, .90013382617762643524e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
259 .84013717196539593395e-1, -.14813033309980695856, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
260 .14813033309980695856, -.84013717196539593395e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
261 -.90013382617762643524e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
262 .12292558212072233355, .79133374319110026377e-2, -.91624635082546425678e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
263 .30047246373341564039e-1, .14939634995117694417e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
264 .16986031342807474208e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
265 .15760203882617033601e-1, -.91494054040950941996e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
266 .70082459207876130806e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
267 .53390713710144539104e-1, -.14340746778352039430, .84048122493418898508e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
268 .72456667788091316868e-1, -.15564535320096811360, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
269 .72456667788091316868e-1, .84048122493418898508e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
270 -.14340746778352039430, .53390713710144539104e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
271 .70082459207876130806e-1, -.91494054040950941996e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
272 .15760203882617033601e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
273 .16986031342807474208e-1, -.18994065631858742028e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
274 -.82901821370405592927e-3, .77239669773015192888e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
275 -.10850735431039424680, .47524484622086496464e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
276 .69148184871588737021e-1, -.14829314646228194928, .11992057742398672066, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
277 0.0, -.11992057742398672066, .14829314646228194928, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
278 -.69148184871588737021e-1, -.47524484622086496464e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
279 .10850735431039424680, -.77239669773015192888e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
280 .82901821370405592927e-3, .18994065631858742028e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
281 .22761703826371535132e-1, -.17728848711449643358e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
282 -.47496371572480503788e-1, .10659958402328690063, -.11696013966166296514, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
283 .63073750910894244526e-1, .32928881123602721303e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
284 -.12280950532497593683, .15926189077282729505, -.12280950532497593683, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
285 .32928881123602721303e-1, .63073750910894244526e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
286 -.11696013966166296514, .10659958402328690063, -.47496371572480503788e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
287 -.17728848711449643358e-1, .22761703826371535132e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
288 -.26493215276042203434e-1, .35579780856128386192e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
289 .10447309718398935122e-1, -.68616154085314996709e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
290 .11775363082763954214, -.13918901977011837274, .12312819418827395690, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
291 -.72053565748259077905e-1, 0.0, .72053565748259077905e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
292 -.12312819418827395690, .13918901977011837274, -.11775363082763954214, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
293 .68616154085314996709e-1, -.10447309718398935122e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
294 -.35579780856128386192e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
295 .26493215276042203434e-1, .40742523354399706918e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
296 -.73124912999529117195e-1, .49317266444153837821e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
297 -.13686605413876015320e-1, -.28342624942191100464e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
298 .70371855298258216249e-1, -.10600251632853603875, .12981016288391131812, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
299 -.13817029659318161476, .12981016288391131812, -.10600251632853603875, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
300 .70371855298258216249e-1, -.28342624942191100464e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
301 -.13686605413876015320e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
302 .49317266444153837821e-1, -.73124912999529117195e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
303 .40742523354399706918e-1, -.54944368958699908688e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
304 .10777725663147408190, -.10152395581538265428, .91369146312596428468e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
305 -.77703071757424700773e-1, .61050911730999815031e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
306 -.42052599404498348871e-1, .21438229266251454773e-1, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
307 -.21438229266251454773e-1, .42052599404498348871e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
308 -.61050911730999815031e-1, .77703071757424700773e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
309 -.91369146312596428468e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
310 .10152395581538265428, -.10777725663147408190, .54944368958699908688e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
311 .27485608464748840573e-1, -.54971216929497681146e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
312 .54971216929497681146e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
313 -.54971216929497681146e-1, .54971216929497681146e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
314 -.54971216929497681146e-1, .54971216929497681146e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
315 -.54971216929497681146e-1, .54971216929497681146e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
316 -.54971216929497681146e-1, .54971216929497681146e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
317 -.54971216929497681146e-1, .54971216929497681146e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
318 -.54971216929497681146e-1, .54971216929497681146e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
319 -.54971216929497681146e-1, .27485608464748840573e-1 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
320 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
321 |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
322 static const double V4inv[33 * 33] = |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
323 { |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
324 .69120897476690862600e-3, .66419939766331555194e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
325 .13600665164323186111e-1, .20122785860913684493e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
326 .26583214101668429944e-1, .32712713318999268739e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
327 .38576221976287138036e-1, .44033030938268925133e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
328 .49092709529622799673e-1, .53657949874312515646e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
329 .57724533144734311859e-1, .61219564530655179096e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
330 .64138907503837875026e-1, .66427905189318792009e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
331 .68088956652280022887e-1, .69083051391555695878e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
332 .69422738116739271449e-1, .69083051391555695878e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
333 .68088956652280022887e-1, .66427905189318792009e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
334 .64138907503837875026e-1, .61219564530655179096e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
335 .57724533144734311859e-1, .53657949874312515646e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
336 .49092709529622799673e-1, .44033030938268925133e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
337 .38576221976287138036e-1, .32712713318999268739e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
338 .26583214101668429944e-1, .20122785860913684493e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
339 .13600665164323186111e-1, .66419939766331555194e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
340 .69120897476690862600e-3, -.11972090629438798134e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
341 -.11448874821643225573e-1, -.23104401104002905904e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
342 -.33352899418646530133e-1, -.42538626424075425908e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
343 -.49969730733911825941e-1, -.55555454015360728353e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
344 -.58955533624852604918e-1, -.60126044219122513907e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
345 -.58959430451175833624e-1, -.55546925396227130606e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
346 -.49984739749347973762e-1, -.42513009141170294365e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
347 -.33399140950669746346e-1, -.23007690803851790829e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
348 -.11728275717520066169e-1, 0.0, .11728275717520066169e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
349 .23007690803851790829e-1, .33399140950669746346e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
350 .42513009141170294365e-1, .49984739749347973762e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
351 .55546925396227130606e-1, .58959430451175833624e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
352 .60126044219122513907e-1, .58955533624852604918e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
353 .55555454015360728353e-1, .49969730733911825941e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
354 .42538626424075425908e-1, .33352899418646530133e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
355 .23104401104002905904e-1, .11448874821643225573e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
356 .11972090629438798134e-2, .15501585012936019146e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
357 .14628781502199620482e-1, .28684915921474815271e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
358 .39299396074628048026e-1, .46393418975496284204e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
359 .48756902531094699526e-1, .46331333488337494692e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
360 .39012645376980228775e-1, .27452795421085791153e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
361 .12430953621169863781e-1, -.47682978056024928800e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
362 -.22825828045428973853e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
363 -.40195512090720278312e-1, -.55503004262826221955e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
364 -.67424537752827046308e-1, -.75020199300113606452e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
365 -.77607844312483656131e-1, -.75020199300113606452e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
366 -.67424537752827046308e-1, -.55503004262826221955e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
367 -.40195512090720278312e-1, -.22825828045428973853e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
368 -.47682978056024928800e-2, .12430953621169863781e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
369 .27452795421085791153e-1, .39012645376980228775e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
370 .46331333488337494692e-1, .48756902531094699526e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
371 .46393418975496284204e-1, .39299396074628048026e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
372 .28684915921474815271e-1, .14628781502199620482e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
373 .15501585012936019146e-2, -.18377757558949194214e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
374 -.17050470050949761565e-1, -.31952119564923250836e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
375 -.40197423449026348155e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
376 -.41205649520281371624e-1, -.33909965817492272248e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
377 -.19393664422115332144e-1, .56661049630886784692e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
378 .22948272173686561721e-1, .44489719570904738207e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
379 .61790363672287920596e-1, .72121014727028013894e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
380 .73627151185287858579e-1, .65784665375961398923e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
381 .49369676372333667559e-1, .26444326317059715065e-1, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
382 -.26444326317059715065e-1, -.49369676372333667559e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
383 -.65784665375961398923e-1, -.73627151185287858579e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
384 -.72121014727028013894e-1, -.61790363672287920596e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
385 -.44489719570904738207e-1, -.22948272173686561721e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
386 -.56661049630886784692e-3, .19393664422115332144e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
387 .33909965817492272248e-1, .41205649520281371624e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
388 .40197423449026348155e-1, .31952119564923250836e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
389 .17050470050949761565e-1, .18377757558949194214e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
390 .20942714740729767769e-2, .18935902405146518232e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
391 .33335840852491735126e-1, .36770680999102286065e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
392 .28873194534132768509e-1, .10267303017729535513e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
393 -.14607738306201572890e-1, -.40139568545572305818e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
394 -.59808326733858291561e-1, -.68528358823372627506e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
395 -.63306535387619244879e-1, -.44508601817574921056e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
396 -.15449116105605395357e-1, .17941083795006546367e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
397 .48747356011657242123e-1, .70329553984201665523e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
398 .78106117292526169663e-1, .70329553984201665523e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
399 .48747356011657242123e-1, .17941083795006546367e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
400 -.15449116105605395357e-1, -.44508601817574921056e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
401 -.63306535387619244879e-1, -.68528358823372627506e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
402 -.59808326733858291561e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
403 -.40139568545572305818e-1, -.14607738306201572890e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
404 .10267303017729535513e-1, .28873194534132768509e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
405 .36770680999102286065e-1, .33335840852491735126e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
406 .18935902405146518232e-1, .20942714740729767769e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
407 -.23245285491878278419e-2, -.20401404737639389919e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
408 -.33019548231022514097e-1, -.29709828426463720091e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
409 -.11760070922697422156e-1, .15987584743850393793e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
410 .43619012891472813485e-1, .61177322409671487721e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
411 .61144030218486655594e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
412 .41895377620089086167e-1, .80232011820644308033e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
413 -.30574701186675900915e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
414 -.62072243008844865848e-1, -.76336186183574765586e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
415 -.68435466095345537115e-1, -.40237669208466966207e-1, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
416 .40237669208466966207e-1, .68435466095345537115e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
417 .76336186183574765586e-1, .62072243008844865848e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
418 .30574701186675900915e-1, -.80232011820644308033e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
419 -.41895377620089086167e-1, -.61144030218486655594e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
420 -.61177322409671487721e-1, -.43619012891472813485e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
421 -.15987584743850393793e-1, .11760070922697422156e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
422 .29709828426463720091e-1, .33019548231022514097e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
423 .20401404737639389919e-1, .23245285491878278419e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
424 .25451717261579269307e-2, .21480418595666878775e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
425 .31177212469293007998e-1, .19816333607013379373e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
426 -.72439496274458793681e-2, -.38404203906598342397e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
427 -.57633632255322221046e-1, -.54070547403585392952e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
428 -.26249823354368866005e-1, .15643058212336881516e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
429 .54539832735118677194e-1, .73283028002473989724e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
430 .62835303524135936213e-1, .26175977027801048141e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
431 -.22193636309998606610e-1, -.62597049956093311234e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
432 -.78206986173170212505e-1, -.62597049956093311234e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
433 -.22193636309998606610e-1, .26175977027801048141e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
434 .62835303524135936213e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
435 .73283028002473989724e-1, .54539832735118677194e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
436 .15643058212336881516e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
437 -.26249823354368866005e-1, -.54070547403585392952e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
438 -.57633632255322221046e-1, -.38404203906598342397e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
439 -.72439496274458793681e-2, .19816333607013379373e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
440 .31177212469293007998e-1, .21480418595666878775e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
441 .25451717261579269307e-2, -.27506573922483820005e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
442 -.22224442095099251870e-1, -.27949927254215773020e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
443 -.80918481053370034987e-2, .25121859354449306916e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
444 .51563535009373061074e-1, .51936965107145960512e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
445 .22146626648171527753e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
446 -.24172689882103382748e-1, -.61731229104853568296e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
447 -.68477262429344201201e-1, -.38311232728303704742e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
448 .14160578713659552679e-1, .61248813427564184033e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
449 .77136328841293031805e-1, .52514801765183697988e-1, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
450 -.52514801765183697988e-1, -.77136328841293031805e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
451 -.61248813427564184033e-1, -.14160578713659552679e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
452 .38311232728303704742e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
453 .68477262429344201201e-1, .61731229104853568296e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
454 .24172689882103382748e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
455 -.22146626648171527753e-1, -.51936965107145960512e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
456 -.51563535009373061074e-1, -.25121859354449306916e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
457 .80918481053370034987e-2, .27949927254215773020e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
458 .22224442095099251870e-1, .27506573922483820005e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
459 .29562461131654311467e-2, .22630271480554450613e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
460 .23547399831373800971e-1, -.43964593440902476642e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
461 -.39055315767504970597e-1, -.52369643937940066804e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
462 -.28506131614971613422e-1, .19906048093338832322e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
463 .60408880866392420279e-1, .62493397473656883090e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
464 .21391278377641297859e-1, -.37302864786623254746e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
465 -.73665127933539496872e-1, -.61706142476854010202e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
466 -.78065168882546327888e-2, .52335307373945544428e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
467 .78278746279419264777e-1, .52335307373945544428e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
468 -.78065168882546327888e-2, -.61706142476854010202e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
469 -.73665127933539496872e-1, -.37302864786623254746e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
470 .21391278377641297859e-1, .62493397473656883090e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
471 .60408880866392420279e-1, .19906048093338832322e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
472 -.28506131614971613422e-1, -.52369643937940066804e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
473 -.39055315767504970597e-1, -.43964593440902476642e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
474 .23547399831373800971e-1, .22630271480554450613e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
475 .29562461131654311467e-2, -.31515718415504761303e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
476 -.22739451096655080673e-1, -.18157123602272119779e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
477 .16496480897167303621e-1, .46921166788569301124e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
478 .40644395739978416354e-1, -.46275803430732216900e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
479 -.52883375891308909486e-1, -.61116483226324111734e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
480 -.17411698764545629853e-1, .44773430013166822765e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
481 .73441577962383869198e-1, .42127368371995472815e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
482 -.25504645957196772465e-1, -.74126818045972742488e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
483 -.62780077864719287317e-1, 0.0, .62780077864719287317e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
484 .74126818045972742488e-1, .25504645957196772465e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
485 -.42127368371995472815e-1, -.73441577962383869198e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
486 -.44773430013166822765e-1, .17411698764545629853e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
487 .61116483226324111734e-1, .52883375891308909486e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
488 .46275803430732216900e-2, -.40644395739978416354e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
489 -.46921166788569301124e-1, -.16496480897167303621e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
490 .18157123602272119779e-1, .22739451096655080673e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
491 .31515718415504761303e-2, .33536559294882188208e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
492 .22535348942792006185e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
493 .12048629300953560767e-1, -.27166076791299493403e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
494 -.47492745604230978367e-1, -.19246623430993153174e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
495 .36231297307556299322e-1, .61713617181636122004e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
496 .25928029734266134490e-1, -.40478700752883602818e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
497 -.71053889866326412049e-1, -.31870824482961751482e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
498 .41515251100219081281e-1, .76481960760098381651e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
499 .36726509155999912440e-1, -.40090067032627055969e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
500 -.78270742903374539397e-1, -.40090067032627055969e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
501 .36726509155999912440e-1, .76481960760098381651e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
502 .41515251100219081281e-1, -.31870824482961751482e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
503 -.71053889866326412049e-1, -.40478700752883602818e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
504 .25928029734266134490e-1, .61713617181636122004e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
505 .36231297307556299322e-1, -.19246623430993153174e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
506 -.47492745604230978367e-1, -.27166076791299493403e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
507 .12048629300953560767e-1, .22535348942792006185e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
508 .33536559294882188208e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
509 -.35481220456925318865e-2, -.22062913693073191150e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
510 -.54487362861834144999e-2, .35438821865804087489e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
511 .40733077820527411302e-1, -.67403098138950720914e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
512 -.55559584405239171054e-1, -.42417050790865158745e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
513 .24499901971884704925e-1, .68721232891705409302e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
514 .34086082787461126592e-1, -.43441000373118474002e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
515 -.73878085292669148950e-1, -.18846995664706657127e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
516 .59827776178286834498e-1, .70644634584085901794e-1, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
517 -.70644634584085901794e-1, -.59827776178286834498e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
518 .18846995664706657127e-1, .73878085292669148950e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
519 .43441000373118474002e-1, -.34086082787461126592e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
520 -.68721232891705409302e-1, -.24499901971884704925e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
521 .42417050790865158745e-1, .55559584405239171054e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
522 .67403098138950720914e-2, -.40733077820527411302e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
523 -.35438821865804087489e-1, .54487362861834144999e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
524 .22062913693073191150e-1, .35481220456925318865e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
525 .37554176816665075631e-2, .21297045781589919482e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
526 -.13327293083183431816e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
527 -.40635299172764596484e-1, -.27659860508374175359e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
528 .31089232744083445986e-1, .56113781541334176109e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
529 .37577840643257763400e-2, -.60511227350664590865e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
530 -.46670556446129053853e-1, .33263195878575888247e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
531 .72757324720645228775e-1, .15011712351692283635e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
532 -.65601212994924119078e-1, -.60016855838843789772e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
533 .26220858553188665966e-1, .78322776605833552980e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
534 .26220858553188665966e-1, -.60016855838843789772e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
535 -.65601212994924119078e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
536 .15011712351692283635e-1, .72757324720645228775e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
537 .33263195878575888247e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
538 -.46670556446129053853e-1, -.60511227350664590865e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
539 .37577840643257763400e-2, .56113781541334176109e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
540 .31089232744083445986e-1, -.27659860508374175359e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
541 -.40635299172764596484e-1, -.13327293083183431816e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
542 .21297045781589919482e-1, .37554176816665075631e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
543 -.39566995305720591229e-2, -.20291873414438919995e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
544 .80617453830770930551e-2, .42270189157016547906e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
545 .10332624526759093004e-1, -.48054759547616142024e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
546 -.37678032941171643972e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
547 .36617192625732482394e-1, .61009425973424865714e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
548 -.95589113168026591466e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
549 -.71023202645076922361e-1, -.25097788086808784456e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
550 .62406621963267050244e-1, .56907293171100693511e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
551 -.36435383083882206257e-1, -.75790105119208756348e-1, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
552 .75790105119208756348e-1, .36435383083882206257e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
553 -.56907293171100693511e-1, -.62406621963267050244e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
554 .25097788086808784456e-1, .71023202645076922361e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
555 .95589113168026591466e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
556 -.61009425973424865714e-1, -.36617192625732482394e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
557 .37678032941171643972e-1, .48054759547616142024e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
558 -.10332624526759093004e-1, -.42270189157016547906e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
559 -.80617453830770930551e-2, .20291873414438919995e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
560 .39566995305720591229e-2, .41776092289182138591e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
561 .19013221163904414395e-1, -.14420609729849899876e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
562 -.40259160586844441220e-1, .86327811113710831649e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
563 .53564430703021034399e-1, .65469185402150431933e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
564 -.60383116311280629856e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
565 -.25657793784058876939e-1, .58745680576829226900e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
566 .45649937869034420296e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
567 -.49167932056844167772e-1, -.62696614328552187977e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
568 .32540234556426699997e-1, .74280410383464269758e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
569 -.11425672633410999870e-1, -.78280649404686404903e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
570 -.11425672633410999870e-1, .74280410383464269758e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
571 .32540234556426699997e-1, -.62696614328552187977e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
572 -.49167932056844167772e-1, .45649937869034420296e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
573 .58745680576829226900e-1, -.25657793784058876939e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
574 -.60383116311280629856e-1, .65469185402150431933e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
575 .53564430703021034399e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
576 .86327811113710831649e-2, -.40259160586844441220e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
577 -.14420609729849899876e-1, .19013221163904414395e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
578 .41776092289182138591e-2, -.43935502082478059199e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
579 -.17528761237509401631e-1, .20208915249153872535e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
580 .34734743119040669109e-1, -.26275910172353637955e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
581 -.46368003346018878786e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
582 .26800056330709381025e-1, .56681476464606609921e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
583 -.24749011438127255898e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
584 -.64934612189056658992e-1, .20333742247679279535e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
585 .71429299070059318651e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
586 -.14452513210428671266e-1, -.75793341281736586582e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
587 .74717094137184935270e-2, .78034921554757317374e-1, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
588 -.78034921554757317374e-1, -.74717094137184935270e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
589 .75793341281736586582e-1, .14452513210428671266e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
590 -.71429299070059318651e-1, -.20333742247679279535e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
591 .64934612189056658992e-1, .24749011438127255898e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
592 -.56681476464606609921e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
593 -.26800056330709381025e-1, .46368003346018878786e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
594 .26275910172353637955e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
595 -.34734743119040669109e-1, -.20208915249153872535e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
596 .17528761237509401631e-1, .43935502082478059199e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
597 .46379089482818671473e-2, .15791188144791287229e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
598 -.25134290048737455284e-1, -.26249795071946841205e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
599 .39960457575789924651e-1, .28111892450146525404e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
600 -.51026476400767918226e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
601 -.27266747278681831364e-1, .60708796647861610865e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
602 .23532306960642115854e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
603 -.68169639871532441111e-1, -.18204924701958312032e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
604 .73822890510656128485e-1, .11373392486424717019e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
605 -.77133324017644609416e-1, -.39295877480342619961e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
606 .78351902829418987960e-1, -.39295877480342619961e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
607 -.77133324017644609416e-1, .11373392486424717019e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
608 .73822890510656128485e-1, -.18204924701958312032e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
609 -.68169639871532441111e-1, .23532306960642115854e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
610 .60708796647861610865e-1, -.27266747278681831364e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
611 -.51026476400767918226e-1, .28111892450146525404e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
612 .39960457575789924651e-1, -.26249795071946841205e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
613 -.25134290048737455284e-1, .15791188144791287229e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
614 .46379089482818671473e-2, -.48780095920069827068e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
615 -.13886961667516983541e-1, .29071311049368895844e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
616 .15480559452075811600e-1, -.47527977686242313065e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
617 -.31929089844361042178e-2, .58015667638415922967e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
618 -.14547915466597622925e-1, -.61067668299848923244e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
619 .35093678009090186851e-1, .55378399159800654657e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
620 -.54277226474891610385e-1, -.42023830782434076509e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
621 .69197384645944912066e-1, .22610783557709586445e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
622 -.77269275900637030185e-1, 0.0, .77269275900637030185e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
623 -.22610783557709586445e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
624 -.69197384645944912066e-1, .42023830782434076509e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
625 .54277226474891610385e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
626 -.55378399159800654657e-1, -.35093678009090186851e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
627 .61067668299848923244e-1, .14547915466597622925e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
628 -.58015667638415922967e-1, .31929089844361042178e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
629 .47527977686242313065e-1, -.15480559452075811600e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
630 -.29071311049368895844e-1, .13886961667516983541e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
631 .48780095920069827068e-2, .51591759101720291381e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
632 .11747497650231330965e-1, -.31777863364694653331e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
633 -.34555825499804605557e-2, .47914131921157015198e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
634 -.22573685920142225247e-1, -.45320344390022666738e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
635 .49660630547172186418e-1, .25707858143963615736e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
636 -.68132707341917233933e-1, .67534860185243140399e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
637 .69268150370037450063e-1, -.41585011920451477177e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
638 -.51622397460510041271e-1, .68408139576363036148e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
639 .18981259024768933323e-1, -.78265472429342305554e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
640 .18981259024768933323e-1, .68408139576363036148e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
641 -.51622397460510041271e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
642 -.41585011920451477177e-1, .69268150370037450063e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
643 .67534860185243140399e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
644 -.68132707341917233933e-1, .25707858143963615736e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
645 .49660630547172186418e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
646 -.45320344390022666738e-1, -.22573685920142225247e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
647 .47914131921157015198e-1, -.34555825499804605557e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
648 -.31777863364694653331e-1, .11747497650231330965e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
649 .51591759101720291381e-2, -.54365757412741340377e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
650 -.94862516619529080191e-2, .33240472093448190877e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
651 -.88698898099681552229e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
652 -.40973252097216337576e-1, .42995673349795657065e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
653 .17320914507876958783e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
654 -.62201292691914856803e-1, .24726274174637346693e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
655 .51320859246515407288e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
656 -.62882063373810501763e-1, -.11003569131725622672e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
657 .73842261324108943465e-1, -.39240120294802923208e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
658 -.49293966443941122807e-1, .73552644778818223475e-1, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
659 -.73552644778818223475e-1, .49293966443941122807e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
660 .39240120294802923208e-1, -.73842261324108943465e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
661 .11003569131725622672e-1, .62882063373810501763e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
662 -.51320859246515407288e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
663 -.24726274174637346693e-1, .62201292691914856803e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
664 -.17320914507876958783e-1, -.42995673349795657065e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
665 .40973252097216337576e-1, .88698898099681552229e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
666 -.33240472093448190877e-1, .94862516619529080191e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
667 .54365757412741340377e-2, .57750194549356126240e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
668 .69981166020044116791e-2, -.33274982140403110792e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
669 .20297071020698356116e-1, .27898517839646066582e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
670 -.53368678853282030262e-1, .16656482990394548343e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
671 .46342901447260614255e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
672 -.60536796508149003365e-1, .29109107483842596340e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
673 .63224486124385124504e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
674 -.59028872851312033411e-1, -.14783105962696191734e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
675 .74269399241069253865e-1, -.49053677339382384625e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
676 -.33525466624811186739e-1, .78397349622515386647e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
677 -.33525466624811186739e-1, -.49053677339382384625e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
678 .74269399241069253865e-1, -.14783105962696191734e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
679 -.59028872851312033411e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
680 .63224486124385124504e-1, .29109107483842596340e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
681 -.60536796508149003365e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
682 .46342901447260614255e-1, .16656482990394548343e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
683 -.53368678853282030262e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
684 .27898517839646066582e-1, .20297071020698356116e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
685 -.33274982140403110792e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
686 .69981166020044116791e-2, .57750194549356126240e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
687 -.61100308370519200637e-2, -.44383614355738148616e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
688 .32011283412619094811e-1, -.29965011866372897633e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
689 -.10560682331349193348e-1, .51110336443392506342e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
690 -.45012284729681775492e-1, -.94236825555873320102e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
691 .60860695783141264746e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
692 -.55014628647083368926e-1, -.73474782382499482121e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
693 .66640148475243034781e-1, -.62533116045749887988e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
694 -.38650525912400102585e-2, .68429769005837003777e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
695 -.66984505412544901945e-1, 0.0, .66984505412544901945e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
696 -.68429769005837003777e-1, .38650525912400102585e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
697 .62533116045749887988e-1, -.66640148475243034781e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
698 .73474782382499482121e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
699 .55014628647083368926e-1, -.60860695783141264746e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
700 .94236825555873320102e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
701 .45012284729681775492e-1, -.51110336443392506342e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
702 .10560682331349193348e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
703 .29965011866372897633e-1, -.32011283412619094811e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
704 .44383614355738148616e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
705 .61100308370519200637e-2, .65409373892036191538e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
706 .16350101107071157065e-2, -.29301957285983144319e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
707 .36838667173388832579e-1, -.81922703976491586393e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
708 -.36955670021050133434e-1, .58374851095540469865e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
709 -.31977016246946181856e-1, -.25311073698658094646e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
710 .66674413950106952577e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
711 -.54865713324521039571e-1, -.39797027891537985440e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
712 .62830285264808449064e-1, -.72226313251296100676e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
713 .22560232697133353980e-1, .46455784709904033738e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
714 -.78200930751070349956e-1, .46455784709904033738e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
715 .22560232697133353980e-1, -.72226313251296100676e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
716 .62830285264808449064e-1, -.39797027891537985440e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
717 -.54865713324521039571e-1, .66674413950106952577e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
718 -.25311073698658094646e-1, -.31977016246946181856e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
719 .58374851095540469865e-1, -.36955670021050133434e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
720 -.81922703976491586393e-2, .36838667173388832579e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
721 -.29301957285983144319e-1, .16350101107071157065e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
722 .65409373892036191538e-2, -.69686180931868703196e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
723 .11849538727632789870e-2, .25452286414610537766e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
724 -.40522480651713943230e-1, .25694679053362813183e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
725 .14057118113748390637e-1, -.52037614725803488893e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
726 .58849342223684035589e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
727 -.25075229077361409271e-1, -.29559771094034181083e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
728 .68296746944165720199e-1, -.62890462146423984955e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
729 .14457636466274596445e-1, .45787612031322361496e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
730 -.77231759014655809742e-1, .57881203613910543657e-1, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
731 -.57881203613910543657e-1, .77231759014655809742e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
732 -.45787612031322361496e-1, -.14457636466274596445e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
733 .62890462146423984955e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
734 -.68296746944165720199e-1, .29559771094034181083e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
735 .25075229077361409271e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
736 -.58849342223684035589e-1, .52037614725803488893e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
737 -.14057118113748390637e-1, -.25694679053362813183e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
738 .40522480651713943230e-1, -.25452286414610537766e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
739 -.11849538727632789870e-2, .69686180931868703196e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
740 .75611653617520254845e-2, -.43290610418608409141e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
741 -.20277062025115566914e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
742 .40362947027704828926e-1, -.38938808024132120254e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
743 .11831186195916702262e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
744 .28476667401744525357e-1, -.59320969056617684621e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
745 .61101629747436200186e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
746 -.29514834848355389223e-1, -.20668001885001084821e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
747 .62923592802445122793e-1, -.73558456263588833115e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
748 .45314556330160999776e-1, .79031645918426015574e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
749 -.58136953576334689357e-1, .78538474524006405758e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
750 -.58136953576334689357e-1, .79031645918426015574e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
751 .45314556330160999776e-1, -.73558456263588833115e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
752 .62923592802445122793e-1, -.20668001885001084821e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
753 -.29514834848355389223e-1, .61101629747436200186e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
754 -.59320969056617684621e-1, .28476667401744525357e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
755 .11831186195916702262e-1, -.38938808024132120254e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
756 .40362947027704828926e-1, -.20277062025115566914e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
757 -.43290610418608409141e-2, .75611653617520254845e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
758 -.81505692478987769484e-2, .74297333588288568430e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
759 .14314212513540223314e-1, -.36711242251332751607e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
760 .46240027755503814626e-1, -.34921532671769023773e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
761 .46930051972353714773e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
762 .32842770336385381562e-1, -.61317813706529588466e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
763 .67000809902468893103e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
764 -.45337449655535622885e-1, .35794459576271920867e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
765 .41830061526027213385e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
766 -.72091371931944711708e-1, .74150028530317793195e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
767 -.46487632538609942002e-1, 0.0, .46487632538609942002e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
768 -.74150028530317793195e-1, .72091371931944711708e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
769 -.41830061526027213385e-1, -.35794459576271920867e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
770 .45337449655535622885e-1, -.67000809902468893103e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
771 .61317813706529588466e-1, -.32842770336385381562e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
772 -.46930051972353714773e-2, .34921532671769023773e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
773 -.46240027755503814626e-1, .36711242251332751607e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
774 -.14314212513540223314e-1, -.74297333588288568430e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
775 .81505692478987769484e-2, .90693182942442189743e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
776 -.11121000903959576737e-1, -.71308296141317458546e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
777 .29219439765986671645e-1, -.45820286629778129593e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
778 .49088381175879124421e-1, -.35614888785023038938e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
779 .78906970900092777895e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
780 .26262843038404929480e-1, -.56143674270125757857e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
781 .71700220472378350694e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
782 -.66963544500697307945e-1, .42215091779892228883e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
783 -.41338867413966866997e-2, -.36164891772995367321e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
784 .66584367783847858225e-1, -.77874712365070098328e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
785 .66584367783847858225e-1, -.36164891772995367321e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
786 -.41338867413966866997e-2, .42215091779892228883e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
787 -.66963544500697307945e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
788 .71700220472378350694e-1, -.56143674270125757857e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
789 .26262843038404929480e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
790 .78906970900092777895e-2, -.35614888785023038938e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
791 .49088381175879124421e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
792 -.45820286629778129593e-1, .29219439765986671645e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
793 -.71308296141317458546e-2, -.11121000903959576737e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
794 .90693182942442189743e-2, -.99848472706332791043e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
795 .14701271465939718856e-1, -.32917820356048383366e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
796 -.19201195309873585230e-1, .38409681836626963278e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
797 -.51647324405878909521e-1, .54522171113149311354e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
798 -.45040302741689006270e-1, .24183738595685990149e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
799 .42204134165479735097e-2, -.34317295181348742251e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
800 .59542472465494579941e-1, -.74135115907618101263e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
801 .74491937840566532596e-1, -.60042604725161994304e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
802 .33437677409000083169e-1, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
803 -.33437677409000083169e-1, .60042604725161994304e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
804 -.74491937840566532596e-1, .74135115907618101263e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
805 -.59542472465494579941e-1, .34317295181348742251e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
806 -.42204134165479735097e-2, -.24183738595685990149e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
807 .45040302741689006270e-1, -.54522171113149311354e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
808 .51647324405878909521e-1, -.38409681836626963278e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
809 .19201195309873585230e-1, .32917820356048383366e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
810 -.14701271465939718856e-1, .99848472706332791043e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
811 .11775579274769383373e-1, -.19892153937316935880e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
812 .95335114477449041055e-2, .57661528440359081617e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
813 -.23382690532380910781e-1, .40237257037170725321e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
814 -.53280289903551636474e-1, .59974361806023689068e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
815 -.58701684061992853224e-1, .49033407111597129616e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
816 -.31818835267847249219e-1, .90800541261162098886e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
817 .16272906819312603838e-1, -.40863896581186229487e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
818 .61346046297517367703e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
819 -.74896047554167268919e-1, .79632642148310325817e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
820 -.74896047554167268919e-1, .61346046297517367703e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
821 -.40863896581186229487e-1, .16272906819312603838e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
822 .90800541261162098886e-2, -.31818835267847249219e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
823 .49033407111597129616e-1, -.58701684061992853224e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
824 .59974361806023689068e-1, -.53280289903551636474e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
825 .40237257037170725321e-1, -.23382690532380910781e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
826 .57661528440359081617e-2, .95335114477449041055e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
827 -.19892153937316935880e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
828 .11775579274769383373e-1, -.13562702617218467450e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
829 .24885419969649845849e-1, -.18368693901908875583e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
830 .81673147806084084638e-2, .47890591326129587131e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
831 -.19313752945227974024e-1, .34065953398362954708e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
832 -.47667045133463415672e-1, .58820377816690514309e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
833 -.66424139824618415970e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
834 .69667606260856092515e-1, -.68102459384364543253e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
835 .61683024923302547971e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
836 -.50771943476441639136e-1, .36110771847327189215e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
837 -.18758028464284563358e-1, 0.0, .18758028464284563358e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
838 -.36110771847327189215e-1, .50771943476441639136e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
839 -.61683024923302547971e-1, .68102459384364543253e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
840 -.69667606260856092515e-1, .66424139824618415970e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
841 -.58820377816690514309e-1, .47667045133463415672e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
842 -.34065953398362954708e-1, .19313752945227974024e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
843 -.47890591326129587131e-2, -.81673147806084084638e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
844 .18368693901908875583e-1, -.24885419969649845849e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
845 .13562702617218467450e-1, .20576545037980523979e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
846 -.40093155172981004337e-1, .36954083167944054826e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
847 -.31856506837591907746e-1, .24996323181546255126e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
848 -.16637165210473614136e-1, .71002706773325085237e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
849 .32478629093205201133e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
850 -.14009562579050569518e-1, .24771262248780618922e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
851 -.35119395835433647559e-1, .44656290368574753171e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
852 -.53015448339647394161e-1, .59875631995693046782e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
853 -.64973208326045193862e-1, .68112280331082143373e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
854 -.69172215234062186994e-1, .68112280331082143373e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
855 -.64973208326045193862e-1, .59875631995693046782e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
856 -.53015448339647394161e-1, .44656290368574753171e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
857 -.35119395835433647559e-1, .24771262248780618922e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
858 -.14009562579050569518e-1, .32478629093205201133e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
859 .71002706773325085237e-2, -.16637165210473614136e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
860 .24996323181546255126e-1, -.31856506837591907746e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
861 .36954083167944054826e-1, -.40093155172981004337e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
862 .20576545037980523979e-1, -.27584914609096156163e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
863 .54904171411058497973e-1, -.54109756419563083153e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
864 .52794234894345577483e-1, -.50970276026831042415e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
865 .48655445537990983379e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
866 -.45872036510847994332e-1, .42646854695899611372e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
867 -.39010960357087507670e-1, .34999369144476467749e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
868 -.30650714874402762189e-1, .26006877464703437057e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
869 -.21112579608213651273e-1, .16014956068786763273e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
870 -.10763099747751940252e-1, .54075888924374485533e-2, 0.0, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
871 -.54075888924374485533e-2, .10763099747751940252e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
872 -.16014956068786763273e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
873 .21112579608213651273e-1, -.26006877464703437057e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
874 .30650714874402762189e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
875 -.34999369144476467749e-1, .39010960357087507670e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
876 -.42646854695899611372e-1, .45872036510847994332e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
877 -.48655445537990983379e-1, .50970276026831042415e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
878 -.52794234894345577483e-1, .54109756419563083153e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
879 -.54904171411058497973e-1, .27584914609096156163e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
880 .13794141262469565740e-1, -.27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
881 .27588282524939131481e-1, -.27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
882 .27588282524939131481e-1, -.27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
883 .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
884 -.27588282524939131481e-1, .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
885 -.27588282524939131481e-1, .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
886 -.27588282524939131481e-1, .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
887 -.27588282524939131481e-1, .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
888 -.27588282524939131481e-1, .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
889 -.27588282524939131481e-1, .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
890 -.27588282524939131481e-1, .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
891 -.27588282524939131481e-1, .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
892 -.27588282524939131481e-1, .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
893 -.27588282524939131481e-1, .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
894 -.27588282524939131481e-1, .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
895 -.27588282524939131481e-1, .27588282524939131481e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
896 -.27588282524939131481e-1, .13794141262469565740e-1 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
897 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
898 |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
899 static const double Tleft[33 * 33] = |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
900 { |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
901 1., -.86602540378443864678, 0., .33071891388307382381, 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
902 -.20728904939721249057, 0., .15128841196122722208, 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
903 -.11918864298744029244, 0., .98352013661686631224e-1, 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
904 -.83727065404940845733e-1, 0., .72893399403505841203e-1, 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
905 -.64544632643375022436e-1, 0., .57913170372415565639e-1, 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
906 -.52518242575729562263e-1, 0., .48043311993977520457e-1, 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
907 -.44271433659733990243e-1, 0., .41048928022856771981e-1, 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
908 -.38263878662008271459e-1, 0., .35832844026365304501e-1, 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
909 .50000000000000000000, -.96824583655185422130, .57282196186948000082, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
910 .21650635094610966169, -.35903516540862679125, -.97578093724974971969e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
911 .26203921611325660506, .55792409597991015609e-1, -.20644078533943456204, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
912 -.36172381205961199479e-1, .17035068468874958194, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
913 .25371838001497225980e-1, -.14501953125000000000, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
914 -.18786835250972344757e-1, .12625507130328301066, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
915 .14473795929590520582e-1, -.11179458309419422675, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
916 -.11494434254897626155e-1, .10030855351241635862, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
917 .93498556820544479096e-2, -.90964264465390582629e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
918 -.77546391824364392762e-2, .83213457337452292745e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
919 .65358085945588638605e-2, -.76680372422574234569e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
920 -.55835321940047427169e-2, .71098828931825789428e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
921 .48253327982967591019e-2, -.66274981937248958553e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
922 -.42118078245337801387e-2, .62064306433355646267e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
923 .37083386598903548973e-2, 0., 0., .25000000000000000000, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
924 -.73950997288745200531, .83852549156242113615, -.23175620272173946716, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
925 -.37791833195149451496, .25710129174850522325, .21608307321780204633, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
926 -.22844049245646009157, -.14009503000335388415, .19897685605518413847, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
927 .98264706042471226893e-1, -.17445445004279014046, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
928 -.72761100054958328401e-1, .15463589893742108388, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
929 .56056770591708784481e-1, -.13855313872640495158, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
930 -.44517752443294564781e-1, .12534277657695128850, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
931 .36211835346039665762e-1, -.11434398255136139683, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
932 -.30033588409423828125e-1, .10506705408753910481, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
933 .25313077840725783008e-1, -.97149327637744872155e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
934 -.21624927200393328444e-1, .90319582367202122625e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
935 .18688433567711780666e-1, -.84372291635345108584e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
936 -.16312261561845420752e-1, .79149526894804751586e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
937 .14362333871852474757e-1, 0., 0., 0., .12500000000000000000, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
938 -.49607837082461073572, .82265291131801144317, -.59621200088559103072, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
939 -.80054302859059362371e-1, .42612156697795759420, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
940 -.90098145270865592887e-1, -.29769623255090078484, .13630307904779758221, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
941 .21638835185708931831, -.14600247270306082052, -.16348801804014290453, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
942 .14340708728599057249, .12755243353979286190, -.13661523715071346961, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
943 -.10215585947881057394, .12864248070157166547, .83592528025348693602e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
944 -.12066728689302565222, -.69633728678718053052e-1, .11314245177331919532, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
945 .58882939251410088028e-1, -.10621835858758221487, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
946 -.50432266865187597572e-1, .99916834723527771581e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
947 .43672094283057258509e-1, -.94206380251950852413e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
948 -.38181356812697746418e-1, .89035739656537771225e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
949 .33661934598216332678e-1, 0., 0., 0., 0., .62500000000000000000e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
950 -.31093357409581873586, .67604086414949799246, -.75644205980613611039, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
951 .28990586430124175741, .30648508196770360914, -.35801372616842500052, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
952 -.91326869828709014708e-1, .31127929687500000000, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
953 -.90915752838698393094e-2, -.25637381283965534330, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
954 .57601077850322797594e-1, .21019685709225757945, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
955 -.81244992138514014256e-1, -.17375078516720988858, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
956 .92289437277967051125e-1, .14527351914265391374, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
957 -.96675340792832019889e-1, -.12289485697108543415, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
958 .97448175340011084006e-1, .10511755943298339844, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
959 -.96242247086378239657e-1, -.90822942272780513537e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
960 .93966350452322132384e-1, .79189411876493712558e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
961 -.91139307067989309325e-1, -.69613039934383197265e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
962 .88062491671135767870e-1, .61646331729340817494e-1, 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
963 .31250000000000000000e-1, -.18684782411095934408, .50176689760410660236, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
964 -.74784031498626095398, .56472001151566251186, .14842464993721351203e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
965 -.41162920273003120936, .20243071230196532282, .23772054897172750436, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
966 -.24963810923972235950, -.12116179938394678936, .24330535483519110663, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
967 .47903849781124471359e-1, -.22133299683101224293, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
968 -.20542915138527200983e-2, .19653465717678146728, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
969 -.26818172626509178444e-1, -.17319122357631210944, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
970 .45065391411065545445e-1, .15253391395444065941, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
971 -.56543897711725408302e-1, -.13469154928743585367, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
972 .63632471400208840155e-1, .11941684923913523817, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
973 -.67828850207933293098e-1, -.10636309084510652670, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
974 .70095786922999181504e-1, .95187373095150709082e-1, 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
975 0., .15625000000000000000e-1, -.10909562534194485289, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
976 .34842348626527747318, -.64461114561628111443, .69382480527334683659, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
977 -.29551102358528827763, -.25527584713978439819, .38878771718544715394, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
978 -.82956185835347407489e-2, -.31183177761966943912, .12831420840372374767, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
979 .22067618205599434368, -.17569196937129496961, -.14598057000132284135, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
980 .18864406621763419484, .89921002550386645767e-1, -.18571835020187122114, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
981 -.48967672227195481777e-1, .17584685670380332798, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
982 .19267984545067426324e-1, -.16335437520503462738, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
983 .22598055455032407594e-2, .15032800884170631129, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
984 -.17883358353754640871e-1, -.13774837869432209951, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
985 .29227555960587143675e-1, .12604194747513151053, 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
986 0., .78125000000000000000e-2, -.62377810244809812496e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
987 .23080781467370883845, -.50841310636012325368, .69834547012574056043, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
988 -.52572723156526459672, .11464215704954976471e-1, .38698869011491210342, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
989 -.26125646622255207507, -.16951698812361607510, .29773875898928782269, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
990 .20130501202570367491e-1, -.26332493149159310198, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
991 .67734613690401207009e-1, .21207315477103762715, -.11541543390889415193, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
992 -.16249634759782417533, .13885887405041735068, .11996491328010275427, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
993 -.14810432001630926895, -.85177658352556243411e-1, .14918860659904380587, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
994 .57317789510444151564e-1, -.14569827645586660151, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
995 -.35213090145965327390e-1, .13975998126844578198, 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
996 0., 0., .39062500000000000000e-2, -.35101954600803571207e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
997 .14761284084133737720, -.37655033076080192966, .62410290231517322776, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
998 -.64335622317683389875, .28188168266139524244, .22488495672137010675, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
999 -.39393811089283576186, .75184777995770096714e-1, .28472023119398293003, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1000 -.20410910833705899572, -.15590046962908511750, .23814567544617953125, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1001 .54442805556829031204e-1, -.22855930338589720954, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1002 .16303223615756629897e-1, .20172722433875559213, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1003 -.62723406421217419404e-1, -.17012230831020922010, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1004 .91754642766136561612e-1, .13927644821381121197, -.10886600968068418181, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1005 -.11139075654373395292, .11797455976331702879, 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1006 0., 0., .19531250000000000000e-2, -.19506820659607596598e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1007 .91865676095362231937e-1, -.26604607809696493849, .51425874205091288223, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1008 -.66047561132505329292, .48660109511591303851, -.17575661168678285615e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1009 -.36594333408055703366, .29088854695378694533, .11318677346656537927, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1010 -.31110645235730182168, .60733219161008787341e-1, .24333848233620420826, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1011 -.15254312332655419708, -.15995968483455388613, .19010344455215289289, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1012 .86040636766440260000e-1, -.19652589954665259945, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1013 -.27633388517205837713e-1, .18660848552712880387, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1014 -.15942583868416775867e-1, -.16902042462382064786, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1015 .47278526495327740646e-1, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1016 .97656250000000000000e-3, -.10731084460857378207e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1017 .55939644713816406331e-1, -.18118487371914493668, .39914857299829864263, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1018 -.60812322949933902435, .60011887183061967583, -.26002695805835928795, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1019 -.20883922404786010096, .38988130966114638081, -.11797833550782589082, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1020 -.25231824756239520077, .24817859972953934712, .90516417677868996417e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1021 -.26079073291293066798, .30259468817169480161e-1, .22178195264114178432, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1022 -.10569877864302048175, -.16679648389266977455, .14637718550245050850, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1023 .11219272032739559870, -.16359363640525750353, -.64358194509092101393e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1024 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., .48828125000000000000e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1025 -.58542865274813470967e-2, .33461741635290096452e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1026 -.11979993155896201271, .29580223766987206958, -.51874761979436016742, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1027 .62861483498014306968, -.44868895761051453296, .12567502628371529386e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1028 .35040366183235474275, -.30466868455569500886, -.70903913601490112666e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1029 .30822791893032512740, -.11969443264190207736, -.20764760317621313946, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1030 .20629838355452128532, .95269702915334718507e-1, -.22432624768705133300, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1031 -.33103381593477797101e-2, .20570036048155716333, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1032 -.62208282720094518964e-1, -.17095309330441436348, 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1033 0., 0., 0., 0., 0., 0., .24414062500000000000e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1034 -.31714797501871532475e-2, .19721062526127334100e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1035 -.77311181185536498246e-1, .21124871792841566575, -.41777980401893650886, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1036 .59401977834943551650, -.56132417807488349048, .23433675061367565951, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1037 .20222775295220942126, -.38280372496506190127, .14443804214023095767, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1038 .22268950939178466797, -.27211314150777981984, -.34184876506180717313e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1039 .26006498895669734842, -.97650425186005090107e-1, -.19024527660129101293, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1040 .16789164198044635671, .10875811641651905252, -.19276785058805921298, 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1041 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., .12207031250000000000e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1042 -.17078941137247586143e-2, .11477733754843910060e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1043 -.48887017020924625462e-1, .14634927241421789683, -.32156282683019547854, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1044 .52165811920227223937, -.60001958466396926460, .41208501541480733755, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1045 -.11366945503190350975e-2, -.33968093962672089159, .30955190935923386766, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1046 .40657421856578262210e-1, -.29873400409871531764, .16094481791768257440, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1047 .16876122436206497694, -.23650217045022161255, -.33070260090574765012e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1048 .22985258456375907796, -.68645651043827097771e-1, 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1049 0., 0., 0., 0., 0., 0., 0., 0., .61035156250000000000e-4, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1050 -.91501857608428649078e-3, .66085179496951987952e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1051 -.30383171695850355404e-1, .98840838845366876117e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1052 -.23855447246420318989, .43322017468145613917, -.58049033744876107191, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1053 .52533893203742699346, -.20681056202371946180, -.20180000924562504384, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1054 .37503922291962681797, -.15988102869837429062, -.19823558102762374094, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1055 .28393023878803799622, -.11188133439357510403e-1, -.24730368377168229255, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1056 .14731529061377942839, .14878558042884266021, 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1057 0., 0., 0., 0., 0., 0., 0., 0., .30517578125000000000e-4, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1058 -.48804277318479845551e-3, .37696080990601968396e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1059 -.18603912108994738255e-1, .65325006755649582964e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1060 -.17162960707938819795, .34411527956476971322, -.52289350347082497959, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1061 .57319653625674910592, -.37662253421045430413, -.14099055105384663902e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1062 .33265570610216904208, -.30921265572647566661, -.19911390594166455281e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1063 .28738590811031797718, -.18912130469738472647, -.13235936203215819193, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1064 .25076406142356675279, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1065 0., 0., 0., .15258789062500000000e-4, -.25928719280954633249e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1066 .21327398937568540428e-2, -.11244626133630732010e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1067 .42375605740664331966e-1, -.12031130345907846211, .26352562258934426830, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1068 -.44590628258512682078, .56682835613700749379, -.49116715128261660395, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1069 .17845943097110339078, .20541650677432497477, -.36739803642257458221, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1070 .16776034069210108273, .17920950989905112908, -.28867732805385066532, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1071 .46473465543376206337e-1, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1072 0., 0., 0., 0., 0., .76293945312500000000e-5, -.13727610943181290891e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1073 .11979683091449349286e-2, -.67195313034570709806e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1074 .27044920779931968175e-1, -.82472196498517457862e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1075 .19570475044896150093, -.36391620788543817693, .52241392782736588032, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1076 -.54727504974907879912, .34211551468813581183, .31580472732719957762e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1077 -.32830006549176759667, .30563797665254420769, .64905014620683140120e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1078 -.27642986248995073032, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1079 0., 0., 0., 0., 0., 0., .38146972656250000000e-5, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1080 -.72454147007837596854e-4, .66859847582761390285e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1081 -.39751311980366118437e-2, .17015198650201528366e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1082 -.55443621868993855715e-1, .14157060481641692131, -.28641242619559616836, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1083 .45610665490966615415, -.55262786406029265394, .45818352706035500108, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1084 -.14984403004611673047, -.21163807462970713245, .36007252928843413718, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1085 -.17030961385712954159, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1086 0., 0., 0., 0., 0., 0., 0., .19073486328125000000e-5, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1087 -.38135049864067468562e-4, .37101393638555730015e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1088 -.23305339886279723213e-2, .10569913448297127219e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1089 -.36640175162216897547e-1, .10010476414320235508, -.21860074212675559892, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1090 .38124757096345313719, -.52020999209879669177, .52172632730659212045, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1091 -.30841620620308814614, -.50322546186721500184e-1, .32577618885114899053, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1092 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1093 0., 0., .95367431640625000000e-6, -.20021483206955925244e-4, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1094 .20481807322420625431e-3, -.13553476938058909882e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1095 .64919676350791905019e-2, -.23848725425069251903e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1096 .69384632678886421292e-1, -.16249711393618776934, .30736618106830314788, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1097 -.46399909601971539157, .53765031034002467225, -.42598991476520183929, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1098 .12130445348350215652, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1099 0., 0., 0., 0., 0., 0., 0., 0., .47683715820312500000e-6, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1100 -.10487707828484902486e-4, .11254146162337528943e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1101 -.78248929534271987118e-3, .39468337145306794566e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1102 -.15313546659475671763e-1, .47249070825218564146e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1103 -.11804374107101480543, .24031796927792491122, -.39629215049166341285, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1104 .51629108968402548545, -.49622372075429782915, 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1105 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1106 .23841857910156250000e-6, -.54823314130625337326e-5, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1107 .61575377321535518154e-4, -.44877834366497538134e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1108 .23774612048621955857e-2, -.97136347645161687796e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1109 .31671599547606636717e-1, -.84028665767000747480e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1110 .18298487576742964949, -.32647878537696945218, .46970971486488895077, 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1111 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1112 0., 0., 0., 0., .11920928955078125000e-6, -.28604020001177375838e-5, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1113 .33559227978295551013e-4, -.25583821662860610560e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1114 .14201552747787302339e-2, -.60938046986874414969e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1115 .20930869247951926793e-1, -.58745021125678072911e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1116 .13613725780285953720, -.26083988356030237586, 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1117 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1118 .59604644775390625000e-7, -.14898180663526043291e-5, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1119 .18224991282807693921e-4, -.14504433444608833821e-3, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1120 .84184722720281809548e-3, -.37846965430000478789e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1121 .13656355548211376864e-1, -.40409541997718853934e-1, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1122 .99226988101858325902e-1, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1123 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1124 .29802322387695312500e-7, -.77471708843445529468e-6, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1125 .98649879372606876995e-5, -.81814934772838523887e-4, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1126 .49554483992403011328e-3, -.23290922072351413938e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1127 .88068134250844034186e-2, -.27393666952485719070e-1, 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1128 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1129 0., 0., 0., .14901161193847656250e-7, -.40226235946098233685e-6, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1130 .53236418690561306700e-5, -.45933829691164002269e-4, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1131 .28982005232838857913e-3, -.14212974043211018374e-2, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1132 .56192363087488842264e-2, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1133 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1134 .74505805969238281250e-8, -.20858299254133430408e-6, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1135 .28648457300134381744e-5, -.25677535898258910850e-4, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1136 .16849420429491355445e-3, -.86062824010315834002e-3, 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1137 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1138 0., 0., 0., 0., 0., .37252902984619140625e-8, -.10801736017613096861e-6, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1139 .15376606719887104015e-5, -.14296523739727437959e-4, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1140 .97419023656050887203e-4, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1141 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1142 .18626451492309570312e-8, -.55871592916438890146e-7, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1143 .82331193828137454068e-6, -.79302250528382787666e-5, 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1144 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1145 0., 0., 0., 0., 0., 0., 0., .93132257461547851562e-9, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1146 -.28867244235852488244e-7, .43982811713864556957e-6, 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1147 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1148 0., 0., 0., 0., 0., 0., 0., 0., .46566128730773925781e-9, |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1149 -.14899342093408253335e-7, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1150 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1151 0., 0., .23283064365386962891e-9 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1152 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1153 |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1154 static const double Tright[33 * 33] = |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1155 { |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1156 1., .86602540378443864678, 0., -.33071891388307382381, 0., |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1157 .20728904939721249057, 0., -.15128841196122722208, 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1158 .11918864298744029244, 0., -.98352013661686631224e-1, 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1159 .83727065404940845733e-1, 0., -.72893399403505841203e-1, 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1160 .64544632643375022436e-1, 0., -.57913170372415565639e-1, 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1161 .52518242575729562263e-1, 0., -.48043311993977520457e-1, 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1162 .44271433659733990243e-1, 0., -.41048928022856771981e-1, 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1163 .38263878662008271459e-1, 0., -.35832844026365304501e-1, 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1164 .50000000000000000000, .96824583655185422130, .57282196186948000082, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1165 -.21650635094610966169, -.35903516540862679125, .97578093724974971969e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1166 .26203921611325660506, -.55792409597991015609e-1, -.20644078533943456204, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1167 .36172381205961199479e-1, .17035068468874958194, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1168 -.25371838001497225980e-1, -.14501953125000000000, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1169 .18786835250972344757e-1, .12625507130328301066, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1170 -.14473795929590520582e-1, -.11179458309419422675, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1171 .11494434254897626155e-1, .10030855351241635862, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1172 -.93498556820544479096e-2, -.90964264465390582629e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1173 .77546391824364392762e-2, .83213457337452292745e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1174 -.65358085945588638605e-2, -.76680372422574234569e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1175 .55835321940047427169e-2, .71098828931825789428e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1176 -.48253327982967591019e-2, -.66274981937248958553e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1177 .42118078245337801387e-2, .62064306433355646267e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1178 -.37083386598903548973e-2, 0., 0., .25000000000000000000, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1179 .73950997288745200531, .83852549156242113615, .23175620272173946716, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1180 -.37791833195149451496, -.25710129174850522325, .21608307321780204633, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1181 .22844049245646009157, -.14009503000335388415, -.19897685605518413847, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1182 .98264706042471226893e-1, .17445445004279014046, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1183 -.72761100054958328401e-1, -.15463589893742108388, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1184 .56056770591708784481e-1, .13855313872640495158, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1185 -.44517752443294564781e-1, -.12534277657695128850, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1186 .36211835346039665762e-1, .11434398255136139683, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1187 -.30033588409423828125e-1, -.10506705408753910481, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1188 .25313077840725783008e-1, .97149327637744872155e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1189 -.21624927200393328444e-1, -.90319582367202122625e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1190 .18688433567711780666e-1, .84372291635345108584e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1191 -.16312261561845420752e-1, -.79149526894804751586e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1192 .14362333871852474757e-1, 0., 0., 0., .12500000000000000000, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1193 .49607837082461073572, .82265291131801144317, .59621200088559103072, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1194 -.80054302859059362371e-1, -.42612156697795759420, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1195 -.90098145270865592887e-1, .29769623255090078484, .13630307904779758221, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1196 -.21638835185708931831, -.14600247270306082052, .16348801804014290453, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1197 .14340708728599057249, -.12755243353979286190, -.13661523715071346961, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1198 .10215585947881057394, .12864248070157166547, -.83592528025348693602e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1199 -.12066728689302565222, .69633728678718053052e-1, .11314245177331919532, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1200 -.58882939251410088028e-1, -.10621835858758221487, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1201 .50432266865187597572e-1, .99916834723527771581e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1202 -.43672094283057258509e-1, -.94206380251950852413e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1203 .38181356812697746418e-1, .89035739656537771225e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1204 -.33661934598216332678e-1, 0., 0., 0., 0., .62500000000000000000e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1205 .31093357409581873586, .67604086414949799246, .75644205980613611039, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1206 .28990586430124175741, -.30648508196770360914, -.35801372616842500052, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1207 .91326869828709014708e-1, .31127929687500000000, .90915752838698393094e-2, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1208 -.25637381283965534330, -.57601077850322797594e-1, .21019685709225757945, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1209 .81244992138514014256e-1, -.17375078516720988858, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1210 -.92289437277967051125e-1, .14527351914265391374, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1211 .96675340792832019889e-1, -.12289485697108543415, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1212 -.97448175340011084006e-1, .10511755943298339844, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1213 .96242247086378239657e-1, -.90822942272780513537e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1214 -.93966350452322132384e-1, .79189411876493712558e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1215 .91139307067989309325e-1, -.69613039934383197265e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1216 -.88062491671135767870e-1, .61646331729340817494e-1, 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1217 .31250000000000000000e-1, .18684782411095934408, .50176689760410660236, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1218 .74784031498626095398, .56472001151566251186, -.14842464993721351203e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1219 -.41162920273003120936, -.20243071230196532282, .23772054897172750436, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1220 .24963810923972235950, -.12116179938394678936, -.24330535483519110663, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1221 .47903849781124471359e-1, .22133299683101224293, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1222 -.20542915138527200983e-2, -.19653465717678146728, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1223 -.26818172626509178444e-1, .17319122357631210944, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1224 .45065391411065545445e-1, -.15253391395444065941, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1225 -.56543897711725408302e-1, .13469154928743585367, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1226 .63632471400208840155e-1, -.11941684923913523817, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1227 -.67828850207933293098e-1, .10636309084510652670, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1228 .70095786922999181504e-1, -.95187373095150709082e-1, 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1229 0., .15625000000000000000e-1, .10909562534194485289, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1230 .34842348626527747318, .64461114561628111443, .69382480527334683659, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1231 .29551102358528827763, -.25527584713978439819, -.38878771718544715394, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1232 -.82956185835347407489e-2, .31183177761966943912, .12831420840372374767, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1233 -.22067618205599434368, -.17569196937129496961, .14598057000132284135, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1234 .18864406621763419484, -.89921002550386645767e-1, -.18571835020187122114, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1235 .48967672227195481777e-1, .17584685670380332798, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1236 -.19267984545067426324e-1, -.16335437520503462738, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1237 -.22598055455032407594e-2, .15032800884170631129, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1238 .17883358353754640871e-1, -.13774837869432209951, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1239 -.29227555960587143675e-1, .12604194747513151053, 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1240 0., .78125000000000000000e-2, .62377810244809812496e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1241 .23080781467370883845, .50841310636012325368, .69834547012574056043, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1242 .52572723156526459672, .11464215704954976471e-1, -.38698869011491210342, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1243 -.26125646622255207507, .16951698812361607510, .29773875898928782269, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1244 -.20130501202570367491e-1, -.26332493149159310198, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1245 -.67734613690401207009e-1, .21207315477103762715, .11541543390889415193, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1246 -.16249634759782417533, -.13885887405041735068, .11996491328010275427, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1247 .14810432001630926895, -.85177658352556243411e-1, -.14918860659904380587, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1248 .57317789510444151564e-1, .14569827645586660151, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1249 -.35213090145965327390e-1, -.13975998126844578198, 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1250 0., 0., .39062500000000000000e-2, .35101954600803571207e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1251 .14761284084133737720, .37655033076080192966, .62410290231517322776, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1252 .64335622317683389875, .28188168266139524244, -.22488495672137010675, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1253 -.39393811089283576186, -.75184777995770096714e-1, .28472023119398293003, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1254 .20410910833705899572, -.15590046962908511750, -.23814567544617953125, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1255 .54442805556829031204e-1, .22855930338589720954, .16303223615756629897e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1256 -.20172722433875559213, -.62723406421217419404e-1, .17012230831020922010, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1257 .91754642766136561612e-1, -.13927644821381121197, -.10886600968068418181, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1258 .11139075654373395292, .11797455976331702879, 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1259 0., 0., .19531250000000000000e-2, .19506820659607596598e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1260 .91865676095362231937e-1, .26604607809696493849, .51425874205091288223, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1261 .66047561132505329292, .48660109511591303851, .17575661168678285615e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1262 -.36594333408055703366, -.29088854695378694533, .11318677346656537927, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1263 .31110645235730182168, .60733219161008787341e-1, -.24333848233620420826, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1264 -.15254312332655419708, .15995968483455388613, .19010344455215289289, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1265 -.86040636766440260000e-1, -.19652589954665259945, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1266 .27633388517205837713e-1, .18660848552712880387, .15942583868416775867e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1267 -.16902042462382064786, -.47278526495327740646e-1, 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1268 0., 0., 0., 0., .97656250000000000000e-3, .10731084460857378207e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1269 .55939644713816406331e-1, .18118487371914493668, .39914857299829864263, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1270 .60812322949933902435, .60011887183061967583, .26002695805835928795, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1271 -.20883922404786010096, -.38988130966114638081, -.11797833550782589082, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1272 .25231824756239520077, .24817859972953934712, -.90516417677868996417e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1273 -.26079073291293066798, -.30259468817169480161e-1, .22178195264114178432, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1274 .10569877864302048175, -.16679648389266977455, -.14637718550245050850, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1275 .11219272032739559870, .16359363640525750353, -.64358194509092101393e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1276 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., .48828125000000000000e-3, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1277 .58542865274813470967e-2, .33461741635290096452e-1, .11979993155896201271, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1278 .29580223766987206958, .51874761979436016742, .62861483498014306968, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1279 .44868895761051453296, .12567502628371529386e-1, -.35040366183235474275, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1280 -.30466868455569500886, .70903913601490112666e-1, .30822791893032512740, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1281 .11969443264190207736, -.20764760317621313946, -.20629838355452128532, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1282 .95269702915334718507e-1, .22432624768705133300, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1283 -.33103381593477797101e-2, -.20570036048155716333, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1284 -.62208282720094518964e-1, .17095309330441436348, 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1285 0., 0., 0., 0., 0., 0., .24414062500000000000e-3, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1286 .31714797501871532475e-2, .19721062526127334100e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1287 .77311181185536498246e-1, .21124871792841566575, .41777980401893650886, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1288 .59401977834943551650, .56132417807488349048, .23433675061367565951, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1289 -.20222775295220942126, -.38280372496506190127, -.14443804214023095767, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1290 .22268950939178466797, .27211314150777981984, -.34184876506180717313e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1291 -.26006498895669734842, -.97650425186005090107e-1, .19024527660129101293, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1292 .16789164198044635671, -.10875811641651905252, -.19276785058805921298, 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1293 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., .12207031250000000000e-3, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1294 .17078941137247586143e-2, .11477733754843910060e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1295 .48887017020924625462e-1, .14634927241421789683, .32156282683019547854, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1296 .52165811920227223937, .60001958466396926460, .41208501541480733755, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1297 .11366945503190350975e-2, -.33968093962672089159, -.30955190935923386766, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1298 .40657421856578262210e-1, .29873400409871531764, .16094481791768257440, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1299 -.16876122436206497694, -.23650217045022161255, .33070260090574765012e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1300 .22985258456375907796, .68645651043827097771e-1, 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1301 0., 0., 0., 0., 0., 0., 0., 0., .61035156250000000000e-4, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1302 .91501857608428649078e-3, .66085179496951987952e-2, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1303 .30383171695850355404e-1, .98840838845366876117e-1, .23855447246420318989, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1304 .43322017468145613917, .58049033744876107191, .52533893203742699346, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1305 .20681056202371946180, -.20180000924562504384, -.37503922291962681797, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1306 -.15988102869837429062, .19823558102762374094, .28393023878803799622, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1307 .11188133439357510403e-1, -.24730368377168229255, -.14731529061377942839, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1308 .14878558042884266021, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1309 0., 0., .30517578125000000000e-4, .48804277318479845551e-3, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1310 .37696080990601968396e-2, .18603912108994738255e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1311 .65325006755649582964e-1, .17162960707938819795, .34411527956476971322, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1312 .52289350347082497959, .57319653625674910592, .37662253421045430413, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1313 -.14099055105384663902e-1, -.33265570610216904208, -.30921265572647566661, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1314 .19911390594166455281e-1, .28738590811031797718, .18912130469738472647, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1315 -.13235936203215819193, -.25076406142356675279, 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1316 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., .15258789062500000000e-4, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1317 .25928719280954633249e-3, .21327398937568540428e-2, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1318 .11244626133630732010e-1, .42375605740664331966e-1, .12031130345907846211, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1319 .26352562258934426830, .44590628258512682078, .56682835613700749379, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1320 .49116715128261660395, .17845943097110339078, -.20541650677432497477, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1321 -.36739803642257458221, -.16776034069210108273, .17920950989905112908, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1322 .28867732805385066532, .46473465543376206337e-1, 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1323 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., .76293945312500000000e-5, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1324 .13727610943181290891e-3, .11979683091449349286e-2, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1325 .67195313034570709806e-2, .27044920779931968175e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1326 .82472196498517457862e-1, .19570475044896150093, .36391620788543817693, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1327 .52241392782736588032, .54727504974907879912, .34211551468813581183, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1328 -.31580472732719957762e-1, -.32830006549176759667, -.30563797665254420769, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1329 .64905014620683140120e-2, .27642986248995073032, 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1330 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., .38146972656250000000e-5, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1331 .72454147007837596854e-4, .66859847582761390285e-3, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1332 .39751311980366118437e-2, .17015198650201528366e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1333 .55443621868993855715e-1, .14157060481641692131, .28641242619559616836, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1334 .45610665490966615415, .55262786406029265394, .45818352706035500108, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1335 .14984403004611673047, -.21163807462970713245, -.36007252928843413718, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1336 -.17030961385712954159, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1337 0., 0., 0., 0., 0., 0., 0., .19073486328125000000e-5, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1338 .38135049864067468562e-4, .37101393638555730015e-3, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1339 .23305339886279723213e-2, .10569913448297127219e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1340 .36640175162216897547e-1, .10010476414320235508, .21860074212675559892, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1341 .38124757096345313719, .52020999209879669177, .52172632730659212045, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1342 .30841620620308814614, -.50322546186721500184e-1, -.32577618885114899053, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1343 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1344 0., 0., .95367431640625000000e-6, .20021483206955925244e-4, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1345 .20481807322420625431e-3, .13553476938058909882e-2, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1346 .64919676350791905019e-2, .23848725425069251903e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1347 .69384632678886421292e-1, .16249711393618776934, .30736618106830314788, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1348 .46399909601971539157, .53765031034002467225, .42598991476520183929, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1349 .12130445348350215652, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1350 0., 0., 0., 0., 0., 0., 0., 0., .47683715820312500000e-6, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1351 .10487707828484902486e-4, .11254146162337528943e-3, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1352 .78248929534271987118e-3, .39468337145306794566e-2, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1353 .15313546659475671763e-1, .47249070825218564146e-1, .11804374107101480543, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1354 .24031796927792491122, .39629215049166341285, .51629108968402548545, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1355 .49622372075429782915, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1356 0., 0., 0., 0., 0., 0., 0., 0., 0., .23841857910156250000e-6, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1357 .54823314130625337326e-5, .61575377321535518154e-4, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1358 .44877834366497538134e-3, .23774612048621955857e-2, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1359 .97136347645161687796e-2, .31671599547606636717e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1360 .84028665767000747480e-1, .18298487576742964949, .32647878537696945218, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1361 .46970971486488895077, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1362 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., .11920928955078125000e-6, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1363 .28604020001177375838e-5, .33559227978295551013e-4, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1364 .25583821662860610560e-3, .14201552747787302339e-2, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1365 .60938046986874414969e-2, .20930869247951926793e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1366 .58745021125678072911e-1, .13613725780285953720, .26083988356030237586, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1367 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1368 0., 0., 0., 0., 0., 0., .59604644775390625000e-7, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1369 .14898180663526043291e-5, .18224991282807693921e-4, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1370 .14504433444608833821e-3, .84184722720281809548e-3, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1371 .37846965430000478789e-2, .13656355548211376864e-1, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1372 .40409541997718853934e-1, .99226988101858325902e-1, 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1373 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1374 0., 0., .29802322387695312500e-7, .77471708843445529468e-6, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1375 .98649879372606876995e-5, .81814934772838523887e-4, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1376 .49554483992403011328e-3, .23290922072351413938e-2, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1377 .88068134250844034186e-2, .27393666952485719070e-1, 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1378 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1379 0., 0., 0., .14901161193847656250e-7, .40226235946098233685e-6, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1380 .53236418690561306700e-5, .45933829691164002269e-4, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1381 .28982005232838857913e-3, .14212974043211018374e-2, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1382 .56192363087488842264e-2, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1383 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1384 .74505805969238281250e-8, .20858299254133430408e-6, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1385 .28648457300134381744e-5, .25677535898258910850e-4, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1386 .16849420429491355445e-3, .86062824010315834002e-3, 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1387 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1388 0., 0., 0., 0., 0., .37252902984619140625e-8, .10801736017613096861e-6, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1389 .15376606719887104015e-5, .14296523739727437959e-4, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1390 .97419023656050887203e-4, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1391 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1392 .18626451492309570312e-8, .55871592916438890146e-7, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1393 .82331193828137454068e-6, .79302250528382787666e-5, 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1394 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1395 0., 0., 0., 0., 0., 0., 0., .93132257461547851562e-9, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1396 .28867244235852488244e-7, .43982811713864556957e-6, 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1397 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1398 0., 0., 0., 0., 0., 0., 0., 0., .46566128730773925781e-9, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1399 .14899342093408253335e-7, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1400 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1401 0., 0., .23283064365386962891e-9 |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1402 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1403 |
20910 | 1404 // Allocates a workspace for the given maximum number of intervals. |
1405 // Note that if the workspace gets filled, the intervals with the lowest | |
21751
b571fc85953f
maint: Use two spaces after period to indicate sentence break.
Rik <rik@octave.org>
parents:
21724
diff
changeset
|
1406 // error estimates are dropped. The maximum number of intervals is |
20910 | 1407 // therefore not the maximum number of intervals that will be computed, |
1408 // but merely the size of the buffer. | |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1409 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1410 // Compute the product of fx with one of the inverse Vandermonde-like matrices. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1411 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1412 static void |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1413 Vinvfx (const double *fx, double *c, const int d) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1414 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1415 int i, j; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1416 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1417 switch (d) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1418 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1419 case 0: |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1420 for (i = 0; i <= 4; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1421 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1422 c[i] = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1423 for (j = 0; j <= 4; j++) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1424 c[i] += V1inv[i*5 + j] * fx[j * 8]; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1425 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1426 break; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1427 case 1: |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1428 for (i = 0; i <= 8; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1429 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1430 c[i] = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1431 for (j = 0; j <= 8; j++) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1432 c[i] += V2inv[i*9 + j] * fx[j * 4]; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1433 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1434 break; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1435 case 2: |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1436 for (i = 0; i <= 16; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1437 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1438 c[i] = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1439 for (j = 0; j <= 16; j++) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1440 c[i] += V3inv[i*17 + j] * fx[j * 2]; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1441 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1442 break; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1443 case 3: |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1444 for (i = 0; i <= 32; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1445 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1446 c[i] = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1447 for (j = 0; j <= 32; j++) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1448 c[i] += V4inv[i*33 + j] * fx[j]; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1449 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1450 break; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1451 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1452 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1453 |
20910 | 1454 // Downdate the interpolation given by the N coefficients C by removing |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1455 // the nodes with indices in NaNs. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1456 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1457 static void |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1458 downdate (double *c, int n, int d, int *nans, int nnans) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1459 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1460 static const int bidx[4] = { 0, 6, 16, 34 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1461 double b_new[34], alpha; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1462 int i, j; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1463 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1464 for (i = 0; i <= n + 1; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1465 b_new[i] = bee[bidx[d] + i]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1466 for (i = 0; i < nnans; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1467 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1468 b_new[n + 1] = b_new[n + 1] / Lalpha[n]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1469 b_new[n] = (b_new[n] + xi[nans[i]] * b_new[n + 1]) / Lalpha[n - 1]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1470 for (j = n - 1; j > 0; j--) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1471 b_new[j] = |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1472 (b_new[j] + xi[nans[i]] * b_new[j + 1] - |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1473 Lgamma[j + 1] * b_new[j + 2]) / Lalpha[j - 1]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1474 for (j = 0; j <= n; j++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1475 b_new[j] = b_new[j + 1]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1476 alpha = c[n] / b_new[n]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1477 for (j = 0; j < n; j++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1478 c[j] -= alpha * b_new[j]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1479 c[n] = 0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1480 n--; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1481 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1482 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1483 |
20910 | 1484 // The actual integration routine. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1485 |
20915
a3359fe50966
remove unused nargout variables
John W. Eaton <jwe@octave.org>
parents:
20910
diff
changeset
|
1486 DEFUN (quadcc, args, , |
21966
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1487 doc: /* -*- texinfo -*- |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1488 @deftypefn {} {@var{q} =} quadcc (@var{f}, @var{a}, @var{b}) |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1489 @deftypefnx {} {@var{q} =} quadcc (@var{f}, @var{a}, @var{b}, @var{tol}) |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1490 @deftypefnx {} {@var{q} =} quadcc (@var{f}, @var{a}, @var{b}, @var{tol}, @var{sing}) |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1491 @deftypefnx {} {[@var{q}, @var{err}, @var{nr_points}] =} quadcc (@dots{}) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1492 Numerically evaluate the integral of @var{f} from @var{a} to @var{b} using |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1493 doubly-adaptive @nospell{Clenshaw-Curtis} quadrature. |
21966
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1494 |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1495 @var{f} is a function handle, inline function, or string containing the name |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1496 of the function to evaluate. The function @var{f} must be vectorized and |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1497 must return a vector of output values if given a vector of input values. |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1498 For example, |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1499 |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1500 @example |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1501 f = @@(x) x .* sin (1./x) .* sqrt (abs (1 - x)); |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1502 @end example |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1503 |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1504 @noindent |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1505 which uses the element-by-element ``dot'' form for all operators. |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1506 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1507 @var{a} and @var{b} are the lower and upper limits of integration. Either or |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1508 both limits may be infinite. @code{quadcc} handles an infinite limit by |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1509 substituting the variable of integration with @code{x = tan (pi/2*u)}. |
21966
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1510 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1511 The optional argument @var{tol} is a 1- or 2-element vector that specifies the |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1512 desired accuracy of the result. The first element of the vector is the desired |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1513 absolute tolerance, and the second element is the desired relative tolerance. |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1514 To choose a relative test only, set the absolute tolerance to zero. To choose |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1515 an absolute test only, set the relative tolerance to zero. The default |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1516 absolute tolerance is @math{1e^{-10}} and the default relative tolerance is |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1517 @math{1e^{-6}}. |
21966
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1518 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1519 The optional argument @var{sing} contains a list of points where the integrand |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1520 has known singularities, or discontinuities in any of its derivatives, inside |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1521 the integration interval. For the example above, which has a discontinuity at |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1522 x=1, the call to @code{quadcc} would be as follows |
21966
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1523 |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1524 @example |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1525 int = quadcc (f, a, b, [], [ 1 ]); |
21966
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1526 @end example |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1527 |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1528 The result of the integration is returned in @var{q}. |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1529 |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1530 @var{err} is an estimate of the absolute integration error. |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1531 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1532 @var{nr_points} is the number of points at which the integrand was evaluated. |
21966
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1533 |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1534 If the adaptive integration did not converge, the value of @var{err} will be |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1535 larger than the requested tolerance. Therefore, it is recommended to verify |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1536 this value for difficult integrands. |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1537 |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1538 @code{quadcc} is capable of dealing with non-numeric values of the integrand |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1539 such as @code{NaN} or @code{Inf}. If the integral diverges, and @code{quadcc} |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1540 detects this, then a warning is issued and @code{Inf} or @code{-Inf} is |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1541 returned. |
21966
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1542 |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1543 Note: @code{quadcc} is a general purpose quadrature algorithm and, as such, |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1544 may be less efficient for a smooth or otherwise well-behaved integrand than |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1545 other methods such as @code{quadgk}. |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1546 |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1547 The algorithm uses @nospell{Clenshaw-Curtis} quadrature rules of increasing |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1548 degree in each interval and bisects the interval if either the function does |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1549 not appear to be smooth or a rule of maximum degree has been reached. The |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1550 error estimate is computed from the L2-norm of the difference between two |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1551 successive interpolations of the integrand over the nodes of the respective |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1552 quadrature rules. |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1553 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1554 @c FIXME: Remove in Octave version 4.8 |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1555 Implementation Note: For Octave versions <= 4.2, @code{quadcc} accepted a |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1556 single tolerance argument which specified the relative tolerance. For |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1557 versions 4.4 and 4.6, @code{quadcc} will issue a warning when called with a |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1558 single tolerance argument indicating that the meaning of this input has |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1559 changed from relative tolerance to absolute tolerance. The warning ID for this |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1560 message is @qcode{"Octave:quadcc:RelTol-conversion"}. The warning may be |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1561 disabled with @code{warning ("off", "Octave:quadcc:RelTol-conversion")}. |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1562 |
21966
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1563 Reference: @nospell{P. Gonnet}, @cite{Increasing the Reliability of Adaptive |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1564 Quadrature Using Explicit Interpolants}, ACM Transactions on Mathematical |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1565 Software, Vol. 37, Issue 3, Article No. 3, 2010. |
21966
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1566 @seealso{quad, quadv, quadl, quadgk, trapz, dblquad, triplequad} |
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21942
diff
changeset
|
1567 @end deftypefn */) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1568 { |
20910 | 1569 // Some constants that we will need. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1570 static const int n[4] = { 4, 8, 16, 32 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1571 static const int skip[4] = { 8, 4, 2, 1 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1572 static const int idx[4] = { 0, 5, 14, 31 }; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1573 static const double w = M_SQRT2 / 2; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1574 static const int ndiv_max = 20; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1575 |
20910 | 1576 // Arguments left and right. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1577 int nargin = args.length (); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1578 octave_function *fcn; |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1579 double a, b, abstol, reltol, *sing; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1580 |
20910 | 1581 // Variables needed for transforming the integrand. |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1582 bool wrap = false; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1583 double xw; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1584 |
20910 | 1585 // Stuff we will need to call the integrand. |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1586 octave_value_list fargs, fvals; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1587 |
20910 | 1588 // Actual variables (as opposed to constants above). |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1589 double m, h, ml, hl, mr, hr, temp; |
13219
cf5ebc0e47e4
fix warnings for unused but set variables and shadowed variables
John W. Eaton <jwe@octave.org>
parents:
13141
diff
changeset
|
1590 double igral, err, igral_final, err_final; |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1591 int nivals; |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1592 int neval = 0; |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1593 int i, j, d, split; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1594 int nnans, nans[33]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1595 cquad_ival *iv, *ivl, *ivr; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1596 double nc, ncdiff; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1597 |
20910 | 1598 // Parse the input arguments. |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1599 if (nargin < 3) |
20801
a542a9bf177e
eliminate return statements after calls to print_usage
John W. Eaton <jwe@octave.org>
parents:
20232
diff
changeset
|
1600 print_usage (); |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1601 |
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1602 if (args(0).is_function_handle () || args(0).is_inline_function ()) |
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1603 fcn = args(0).function_value (); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1604 else |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1605 { |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1606 std::string fcn_name = unique_symbol_name ("__quadcc_fcn__"); |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1607 std::string fname = "function y = "; |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1608 fname.append (fcn_name); |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1609 fname.append ("(x) y = "); |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1610 fcn = extract_function (args(0), "quadcc", fcn_name, fname, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1611 "; endfunction"); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1612 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1613 |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1614 if (! args(1).is_real_scalar ()) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1615 error ("quadcc: lower limit of integration (A) must be a real scalar"); |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1616 a = args(1).double_value (); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1617 |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1618 if (! args(2).is_real_scalar ()) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1619 error ("quadcc: upper limit of integration (B) must be a real scalar"); |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1620 b = args(2).double_value (); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1621 |
23577
80c42f4cca13
maint: Deprecate is_empty and replace with isempty.
Rik <rik@octave.org>
parents:
23564
diff
changeset
|
1622 if (nargin < 4 || args(3).isempty ()) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1623 { |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1624 abstol = 1.0e-10; |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1625 reltol = 1.0e-6; |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1626 } |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1627 else if (! args(3).isnumeric () || args(3).numel () > 2) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1628 error ("quadcc: TOL must be a 1- or 2-element vector [AbsTol, RelTol]"); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1629 else |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1630 { |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1631 NDArray tol = args(3).array_value (); |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1632 |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1633 abstol = tol(0); |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1634 if (abstol < 0) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1635 error ("quadcc: absolute tolerance must be >=0"); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1636 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1637 if (tol.numel () == 1) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1638 { |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1639 // FIXME: Remove warning in Octave version 4.8 |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1640 static bool do_warn = true; |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1641 if (do_warn) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1642 { |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1643 warning_with_id ("Octave:quadcc:RelTol-conversion", |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1644 "A single tolerance input now sets AbsTol, not RelTol"); |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1645 do_warn = false; |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1646 } |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1647 |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1648 reltol = 1.0e-6; |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1649 } |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1650 else |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1651 { |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1652 reltol = tol(1); |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1653 if (reltol < 0) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1654 error ("quadcc: relative tolerance must be >=0"); |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1655 } |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1656 } |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1657 |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1658 if (nargin < 5) |
20910 | 1659 nivals = 1; |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1660 else if (! (args(4).is_real_scalar () || args(4).is_real_matrix ())) |
20831
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1661 error ("quadcc: list of singularities (SING) must be a vector of real values"); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1662 else |
20910 | 1663 nivals = 1 + args(4).numel (); |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1664 |
21213
f7d1050b9b53
maint: Clean up various usages of #ifdef.
Rik <rik@octave.org>
parents:
21200
diff
changeset
|
1665 int cquad_heapsize = (nivals >= MIN_CQUAD_HEAPSIZE ? nivals + 1 |
f7d1050b9b53
maint: Clean up various usages of #ifdef.
Rik <rik@octave.org>
parents:
21200
diff
changeset
|
1666 : MIN_CQUAD_HEAPSIZE); |
20910 | 1667 // The interval heap. |
15996
1aff8c38c53c
use octave_local_buffer for temporary arrays in quadcc
John W. Eaton <jwe@octave.org>
parents:
15995
diff
changeset
|
1668 OCTAVE_LOCAL_BUFFER (cquad_ival, ivals, cquad_heapsize); |
1aff8c38c53c
use octave_local_buffer for temporary arrays in quadcc
John W. Eaton <jwe@octave.org>
parents:
15995
diff
changeset
|
1669 OCTAVE_LOCAL_BUFFER (double, iivals, cquad_heapsize); |
1aff8c38c53c
use octave_local_buffer for temporary arrays in quadcc
John W. Eaton <jwe@octave.org>
parents:
15995
diff
changeset
|
1670 OCTAVE_LOCAL_BUFFER (int, heap, cquad_heapsize); |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1671 |
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1672 if (nivals == 1) |
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1673 { |
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1674 iivals[0] = a; |
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1675 iivals[1] = b; |
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1676 } |
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1677 else |
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1678 { |
20910 | 1679 // Intervals around singularities. |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1680 sing = args(4).array_value ().fortran_vec (); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1681 iivals[0] = a; |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1682 std::copy_n (sing, nivals-1, iivals+1); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1683 iivals[nivals] = b; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1684 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1685 |
20910 | 1686 // If a or b are +/-Inf, transform the integral. |
21782
2aef506f3fec
use namespace for lo-mappers.h functions
John W. Eaton <jwe@octave.org>
parents:
21751
diff
changeset
|
1687 if (octave::math::isinf (a) || octave::math::isinf (b)) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1688 { |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1689 wrap = true; |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1690 for (i = 0; i < nivals + 1; i++) |
21782
2aef506f3fec
use namespace for lo-mappers.h functions
John W. Eaton <jwe@octave.org>
parents:
21751
diff
changeset
|
1691 if (octave::math::isinf (iivals[i])) |
21942
aab79a1885cc
limit gnulib headers to liboctave/wrappers directory
John W. Eaton <jwe@octave.org>
parents:
21782
diff
changeset
|
1692 iivals[i] = std::copysign (1.0, iivals[i]); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1693 else |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1694 iivals[i] = 2.0 * atan (iivals[i]) / M_PI; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1695 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1696 |
20910 | 1697 // Initialize the heaps. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1698 for (i = 0; i < cquad_heapsize; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1699 heap[i] = i; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1700 |
20910 | 1701 // Create the first interval(s). |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1702 igral = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1703 err = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1704 for (j = 0; j < nivals; j++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1705 { |
20910 | 1706 // Initialize the interval. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1707 iv = &(ivals[heap[j]]); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1708 m = (iivals[j] + iivals[j + 1]) / 2; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1709 h = (iivals[j + 1] - iivals[j]) / 2; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1710 nnans = 0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1711 ColumnVector ex (33); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1712 if (wrap) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1713 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1714 for (i = 0; i <= n[3]; i++) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1715 ex(i) = tan (M_PI/2 * (m + xi[i]*h)); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1716 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1717 else |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1718 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1719 for (i = 0; i <= n[3]; i++) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1720 ex(i) = m + xi[i]*h; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1721 } |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1722 fargs(0) = ex; |
23075
4e3d47dc7e25
move parse tree classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
22860
diff
changeset
|
1723 fvals = octave::feval (fcn, fargs, 1); |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1724 if (fvals.length () != 1 || ! fvals(0).is_real_matrix ()) |
20831
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1725 error ("quadcc: integrand F must return a single, real-valued vector"); |
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1726 |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1727 Matrix effex = fvals(0).matrix_value (); |
20232
a9574e3c6e9e
Deprecate Array::length() and Sparse::length() in favour of ::numel().
Carnë Draug <carandraug@octave.org>
parents:
20181
diff
changeset
|
1728 if (effex.numel () != ex.numel ()) |
20831
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1729 error ("quadcc: integrand F must return a single, real-valued vector of the same size as the input"); |
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1730 |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1731 for (i = 0; i <= n[3]; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1732 { |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1733 iv->fx[i] = effex(i); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1734 if (wrap) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1735 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1736 xw = ex(i); |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1737 iv->fx[i] *= (1.0 + xw*xw) * M_PI/2; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1738 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1739 neval++; |
23564
7049da1648c0
Deprecate octave::math::finite in favor of octave::math::isfinite.
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
1740 if (! octave::math::isfinite (iv->fx[i])) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1741 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1742 nans[nnans++] = i; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1743 iv->fx[i] = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1744 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1745 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1746 Vinvfx (iv->fx, &(iv->c[idx[3]]), 3); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1747 Vinvfx (iv->fx, &(iv->c[idx[2]]), 2); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1748 Vinvfx (iv->fx, &(iv->c[0]), 0); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1749 for (i = 0; i < nnans; i++) |
21723
bae585228161
use namespace for numeric_limits
John W. Eaton <jwe@octave.org>
parents:
21721
diff
changeset
|
1750 iv->fx[nans[i]] = octave::numeric_limits<double>::NaN (); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1751 iv->a = iivals[j]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1752 iv->b = iivals[j + 1]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1753 iv->depth = 3; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1754 iv->rdepth = 1; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1755 iv->ndiv = 0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1756 iv->igral = 2 * h * iv->c[idx[3]] * w; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1757 nc = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1758 for (i = n[2] + 1; i <= n[3]; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1759 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1760 temp = iv->c[idx[3] + i]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1761 nc += temp * temp; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1762 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1763 ncdiff = nc; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1764 for (i = 0; i <= n[2]; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1765 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1766 temp = iv->c[idx[2] + i] - iv->c[idx[3] + i]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1767 ncdiff += temp * temp; |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1768 temp = iv->c[idx[3] + i]; |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1769 nc += temp * temp; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1770 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1771 ncdiff = sqrt (ncdiff); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1772 nc = sqrt (nc); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1773 iv->err = ncdiff * 2 * h; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1774 if (ncdiff / nc > 0.1 && iv->err < 2 * h * nc) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1775 iv->err = 2 * h * nc; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1776 |
20910 | 1777 // Tabulate this interval's data. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1778 igral += iv->igral; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1779 err += iv->err; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1780 |
20910 | 1781 // Sift it up the heap. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1782 i = j; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1783 while (i > 0 && ivals[heap[i / 2]].err < ivals[heap[i]].err) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1784 { |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1785 std::swap (heap[i], heap[i / 2]); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1786 i /= 2; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1787 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1788 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1789 |
20910 | 1790 // Initialize some global values. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1791 igral_final = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1792 err_final = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1793 |
20910 | 1794 // Main loop. |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1795 while (nivals > 0 |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1796 && err > std::max (abstol, fabs (igral) * reltol) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1797 && ! (err_final > std::max (abstol, fabs (igral) * reltol) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1798 && err - err_final < std::max (abstol, fabs (igral) * reltol))) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1799 { |
20910 | 1800 // Allow the user to interrupt. |
22860
0b1e25cc4457
eliminate use of OCTAVE_QUIT macro in C++ sources
John W. Eaton <jwe@octave.org>
parents:
22755
diff
changeset
|
1801 octave_quit (); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1802 |
20910 | 1803 // Put our finger on the interval with the largest error. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1804 iv = &(ivals[heap[0]]); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1805 m = (iv->a + iv->b) / 2; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1806 h = (iv->b - iv->a) / 2; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1807 |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1808 #if (DEBUG_QUADCC) |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1809 printf ("quadcc: processing ival %i (of %i) with [%e,%e] int=%e, err=%e, depth=%i\n", |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1810 heap[0], nivals, iv->a, iv->b, iv->igral, iv->err, iv->depth); |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1811 #endif |
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1812 |
20910 | 1813 // Should we try to increase the degree? |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1814 if (iv->depth < 3) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1815 { |
20910 | 1816 // Keep tabs on some variables. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1817 d = ++iv->depth; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1818 |
20910 | 1819 // Get the new (missing) function values. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1820 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1821 ColumnVector ex (n[d] / 2); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1822 if (wrap) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1823 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1824 for (i = 0; i < n[d] / 2; i++) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1825 ex(i) = tan (M_PI/2 * (m + xi[(2*i + 1) * skip[d]] * h)); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1826 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1827 else |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1828 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1829 for (i = 0; i < n[d] / 2; i++) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1830 ex(i) = m + xi[(2*i + 1) * skip[d]] * h; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1831 } |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1832 fargs(0) = ex; |
23075
4e3d47dc7e25
move parse tree classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
22860
diff
changeset
|
1833 fvals = octave::feval (fcn, fargs, 1); |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1834 if (fvals.length () != 1 || ! fvals(0).is_real_matrix ()) |
20831
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1835 error ("quadcc: integrand F must return a single, real-valued vector"); |
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1836 |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1837 Matrix effex = fvals(0).matrix_value (); |
20232
a9574e3c6e9e
Deprecate Array::length() and Sparse::length() in favour of ::numel().
Carnë Draug <carandraug@octave.org>
parents:
20181
diff
changeset
|
1838 if (effex.numel () != ex.numel ()) |
20831
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1839 error ("quadcc: integrand F must return a single, real-valued vector of the same size as the input"); |
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1840 |
20232
a9574e3c6e9e
Deprecate Array::length() and Sparse::length() in favour of ::numel().
Carnë Draug <carandraug@octave.org>
parents:
20181
diff
changeset
|
1841 neval += effex.numel (); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1842 for (i = 0; i < n[d] / 2; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1843 { |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1844 j = (2*i + 1) * skip[d]; |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1845 iv->fx[j] = effex(i); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1846 if (wrap) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1847 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1848 xw = ex(i); |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1849 iv->fx[j] *= (1.0 + xw*xw) * M_PI/2; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1850 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1851 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1852 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1853 nnans = 0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1854 for (i = 0; i <= 32; i += skip[d]) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1855 { |
23564
7049da1648c0
Deprecate octave::math::finite in favor of octave::math::isfinite.
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
1856 if (! octave::math::isfinite (iv->fx[i])) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1857 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1858 nans[nnans++] = i; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1859 iv->fx[i] = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1860 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1861 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1862 |
20910 | 1863 // Compute the new coefficients. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1864 Vinvfx (iv->fx, &(iv->c[idx[d]]), d); |
20910 | 1865 // Downdate any NaNs. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1866 if (nnans > 0) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1867 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1868 downdate (&(iv->c[idx[d]]), n[d], d, nans, nnans); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1869 for (i = 0; i < nnans; i++) |
21723
bae585228161
use namespace for numeric_limits
John W. Eaton <jwe@octave.org>
parents:
21721
diff
changeset
|
1870 iv->fx[nans[i]] = octave::numeric_limits<double>::NaN (); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1871 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1872 |
20910 | 1873 // Compute the error estimate. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1874 nc = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1875 for (i = n[d - 1] + 1; i <= n[d]; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1876 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1877 temp = iv->c[idx[d] + i]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1878 nc += temp * temp; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1879 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1880 ncdiff = nc; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1881 for (i = 0; i <= n[d - 1]; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1882 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1883 temp = iv->c[idx[d - 1] + i] - iv->c[idx[d] + i]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1884 ncdiff += temp * temp; |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1885 temp = iv->c[idx[d] + i]; |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1886 nc += temp * temp; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1887 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1888 ncdiff = sqrt (ncdiff); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1889 nc = sqrt (nc); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1890 iv->err = ncdiff * 2 * h; |
20910 | 1891 // Compute the local integral. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1892 iv->igral = 2 * h * w * iv->c[idx[d]]; |
20910 | 1893 // Split the interval prematurely? |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1894 split = (nc > 0 && ncdiff / nc > 0.1); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1895 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1896 else |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1897 { |
20910 | 1898 // Maximum degree reached, just split. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1899 split = 1; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1900 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1901 |
20910 | 1902 // Should we drop this interval? |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1903 if ((m + h*xi[0]) >= (m + h*xi[1]) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1904 || (m + h*xi[31]) >= (m + h*xi[32]) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1905 || iv->err < fabs (iv->igral) * DROP_RELTOL) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1906 { |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1907 #if (DEBUG_QUADCC) |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1908 printf ("quadcc: dropping ival %i (of %i) with [%e,%e] int=%e, err=%e, depth=%i\n", |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
1909 heap[0], nivals, iv->a, iv->b, iv->igral, iv->err, iv->depth); |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1910 #endif |
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1911 |
20910 | 1912 // Keep this interval's contribution. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1913 err_final += iv->err; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1914 igral_final += iv->igral; |
20910 | 1915 // Swap with the last element on the heap. |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1916 std::swap (heap[nivals - 1], heap[0]); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1917 nivals--; |
20910 | 1918 // Fix up the heap. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1919 i = 0; |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1920 while (2*i + 1 < nivals) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1921 { |
20910 | 1922 // Get the kids. |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1923 j = 2*i + 1; |
20910 | 1924 // If the j+1st entry exists and is larger than the jth, |
1925 // use it instead. | |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1926 if (j + 1 < nivals |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1927 && ivals[heap[j + 1]].err >= ivals[heap[j]].err) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1928 j++; |
20910 | 1929 // Do we need to move the ith entry up? |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1930 if (ivals[heap[j]].err <= ivals[heap[i]].err) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1931 break; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1932 else |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1933 { |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1934 std::swap (heap[j], heap[i]); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1935 i = j; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1936 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1937 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1938 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1939 else if (split) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1940 { |
20910 | 1941 // Some values we will need often... |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1942 d = iv->depth; |
20910 | 1943 // Generate the interval on the left. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1944 ivl = &(ivals[heap[nivals++]]); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1945 ivl->a = iv->a; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1946 ivl->b = m; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1947 ml = (ivl->a + ivl->b) / 2; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1948 hl = h / 2; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1949 ivl->depth = 0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1950 ivl->rdepth = iv->rdepth + 1; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1951 ivl->fx[0] = iv->fx[0]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1952 ivl->fx[32] = iv->fx[16]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1953 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1954 ColumnVector ex (n[0] - 1); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1955 if (wrap) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1956 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1957 for (i = 0; i < n[0] - 1; i++) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1958 ex(i) = tan (M_PI/2 * (ml + xi[(i + 1) * skip[0]] * hl)); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1959 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1960 else |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1961 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1962 for (i = 0; i < n[0] - 1; i++) |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1963 ex(i) = ml + xi[(i + 1) * skip[0]] * hl; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1964 } |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1965 fargs(0) = ex; |
23075
4e3d47dc7e25
move parse tree classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
22860
diff
changeset
|
1966 fvals = octave::feval (fcn, fargs, 1); |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1967 if (fvals.length () != 1 || ! fvals(0).is_real_matrix ()) |
20831
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1968 error ("quadcc: integrand F must return a single, real-valued vector"); |
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1969 |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
1970 Matrix effex = fvals(0).matrix_value (); |
20232
a9574e3c6e9e
Deprecate Array::length() and Sparse::length() in favour of ::numel().
Carnë Draug <carandraug@octave.org>
parents:
20181
diff
changeset
|
1971 if (effex.numel () != ex.numel ()) |
20831
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1972 error ("quadcc: integrand F must return a single, real-valued vector of the same size as the input"); |
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
1973 |
20232
a9574e3c6e9e
Deprecate Array::length() and Sparse::length() in favour of ::numel().
Carnë Draug <carandraug@octave.org>
parents:
20181
diff
changeset
|
1974 neval += effex.numel (); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1975 for (i = 0; i < n[0] - 1; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1976 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1977 j = (i + 1) * skip[0]; |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
1978 ivl->fx[j] = effex(i); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1979 if (wrap) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1980 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1981 xw = ex(i); |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
1982 ivl->fx[j] *= (1.0 + xw*xw) * M_PI/2; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1983 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1984 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1985 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1986 nnans = 0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1987 for (i = 0; i <= 32; i += skip[0]) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1988 { |
23564
7049da1648c0
Deprecate octave::math::finite in favor of octave::math::isfinite.
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
1989 if (! octave::math::isfinite (ivl->fx[i])) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1990 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1991 nans[nnans++] = i; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1992 ivl->fx[i] = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1993 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1994 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1995 Vinvfx (ivl->fx, ivl->c, 0); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1996 if (nnans > 0) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1997 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1998 downdate (ivl->c, n[0], 0, nans, nnans); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
1999 for (i = 0; i < nnans; i++) |
21723
bae585228161
use namespace for numeric_limits
John W. Eaton <jwe@octave.org>
parents:
21721
diff
changeset
|
2000 ivl->fx[nans[i]] = octave::numeric_limits<double>::NaN (); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2001 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2002 for (i = 0; i <= n[d]; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2003 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2004 ivl->c[idx[d] + i] = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2005 for (j = i; j <= n[d]; j++) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2006 ivl->c[idx[d] + i] += Tleft[i*33 + j] * iv->c[idx[d] + j]; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2007 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2008 ncdiff = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2009 for (i = 0; i <= n[0]; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2010 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2011 temp = ivl->c[i] - ivl->c[idx[d] + i]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2012 ncdiff += temp * temp; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2013 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2014 for (i = n[0] + 1; i <= n[d]; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2015 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2016 temp = ivl->c[idx[d] + i]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2017 ncdiff += temp * temp; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2018 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2019 ncdiff = sqrt (ncdiff); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2020 ivl->err = ncdiff * h; |
20910 | 2021 // Check for divergence. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2022 ivl->ndiv = iv->ndiv + (fabs (iv->c[0]) > 0 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2023 && ivl->c[0] / iv->c[0] > 2); |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2024 if (ivl->ndiv > ndiv_max && 2*ivl->ndiv > ivl->rdepth) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2025 { |
21942
aab79a1885cc
limit gnulib headers to liboctave/wrappers directory
John W. Eaton <jwe@octave.org>
parents:
21782
diff
changeset
|
2026 igral = std::copysign (octave::numeric_limits<double>::Inf (), igral); |
11590
4ced6b90fffb
style fixes for warning and error messages in source files
John W. Eaton <jwe@octave.org>
parents:
11586
diff
changeset
|
2027 warning ("quadcc: divergent integral detected"); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2028 break; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2029 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2030 |
20910 | 2031 // Compute the local integral. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2032 ivl->igral = h * w * ivl->c[0]; |
11586
12df7854fa7c
strip trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
11572
diff
changeset
|
2033 |
20910 | 2034 // Generate the interval on the right. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2035 ivr = &(ivals[heap[nivals++]]); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2036 ivr->a = m; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2037 ivr->b = iv->b; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2038 mr = (ivr->a + ivr->b) / 2; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2039 hr = h / 2; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2040 ivr->depth = 0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2041 ivr->rdepth = iv->rdepth + 1; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2042 ivr->fx[0] = iv->fx[16]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2043 ivr->fx[32] = iv->fx[32]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2044 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2045 ColumnVector ex (n[0] - 1); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2046 if (wrap) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2047 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2048 for (i = 0; i < n[0] - 1; i++) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2049 ex(i) = tan (M_PI/2 * (mr + xi[(i + 1) * skip[0]] * hr)); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2050 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2051 else |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2052 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2053 for (i = 0; i < n[0] - 1; i++) |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
2054 ex(i) = mr + xi[(i + 1) * skip[0]] * hr; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2055 } |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
2056 fargs(0) = ex; |
23075
4e3d47dc7e25
move parse tree classes inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
22860
diff
changeset
|
2057 fvals = octave::feval (fcn, fargs, 1); |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
2058 if (fvals.length () != 1 || ! fvals(0).is_real_matrix ()) |
20831
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
2059 error ("quadcc: integrand F must return a single, real-valued vector"); |
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
2060 |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
2061 Matrix effex = fvals(0).matrix_value (); |
20232
a9574e3c6e9e
Deprecate Array::length() and Sparse::length() in favour of ::numel().
Carnë Draug <carandraug@octave.org>
parents:
20181
diff
changeset
|
2062 if (effex.numel () != ex.numel ()) |
20831
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
2063 error ("quadcc: integrand F must return a single, real-valued vector of the same size as the input"); |
35241c4b696c
eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents:
20801
diff
changeset
|
2064 |
20232
a9574e3c6e9e
Deprecate Array::length() and Sparse::length() in favour of ::numel().
Carnë Draug <carandraug@octave.org>
parents:
20181
diff
changeset
|
2065 neval += effex.numel (); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2066 for (i = 0; i < n[0] - 1; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2067 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2068 j = (i + 1) * skip[0]; |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
2069 ivr->fx[j] = effex(i); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2070 if (wrap) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2071 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2072 xw = ex(i); |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2073 ivr->fx[j] *= (1.0 + xw*xw) * M_PI/2; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2074 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2075 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2076 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2077 nnans = 0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2078 for (i = 0; i <= 32; i += skip[0]) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2079 { |
23564
7049da1648c0
Deprecate octave::math::finite in favor of octave::math::isfinite.
Rik <rik@octave.org>
parents:
23220
diff
changeset
|
2080 if (! octave::math::isfinite (ivr->fx[i])) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2081 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2082 nans[nnans++] = i; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2083 ivr->fx[i] = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2084 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2085 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2086 Vinvfx (ivr->fx, ivr->c, 0); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2087 if (nnans > 0) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2088 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2089 downdate (ivr->c, n[0], 0, nans, nnans); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2090 for (i = 0; i < nnans; i++) |
21723
bae585228161
use namespace for numeric_limits
John W. Eaton <jwe@octave.org>
parents:
21721
diff
changeset
|
2091 ivr->fx[nans[i]] = octave::numeric_limits<double>::NaN (); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2092 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2093 for (i = 0; i <= n[d]; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2094 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2095 ivr->c[idx[d] + i] = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2096 for (j = i; j <= n[d]; j++) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2097 ivr->c[idx[d] + i] += Tright[i*33 + j] * iv->c[idx[d] + j]; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2098 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2099 ncdiff = 0.0; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2100 for (i = 0; i <= n[0]; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2101 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2102 temp = ivr->c[i] - ivr->c[idx[d] + i]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2103 ncdiff += temp * temp; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2104 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2105 for (i = n[0] + 1; i <= n[d]; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2106 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2107 temp = ivr->c[idx[d] + i]; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2108 ncdiff += temp * temp; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2109 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2110 ncdiff = sqrt (ncdiff); |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2111 ivr->err = ncdiff * h; |
20910 | 2112 // Check for divergence. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2113 ivr->ndiv = iv->ndiv + (fabs (iv->c[0]) > 0 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2114 && ivr->c[0] / iv->c[0] > 2); |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2115 if (ivr->ndiv > ndiv_max && 2*ivr->ndiv > ivr->rdepth) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2116 { |
21942
aab79a1885cc
limit gnulib headers to liboctave/wrappers directory
John W. Eaton <jwe@octave.org>
parents:
21782
diff
changeset
|
2117 igral = std::copysign (octave::numeric_limits<double>::Inf (), igral); |
11590
4ced6b90fffb
style fixes for warning and error messages in source files
John W. Eaton <jwe@octave.org>
parents:
11586
diff
changeset
|
2118 warning ("quadcc: divergent integral detected"); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2119 break; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2120 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2121 |
20910 | 2122 // Compute the local integral. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2123 ivr->igral = h * w * ivr->c[0]; |
11586
12df7854fa7c
strip trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
11572
diff
changeset
|
2124 |
20910 | 2125 // Fix-up the heap: we now have one interval on top that we |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2126 // don't need any more and two new, unsorted ones at the bottom. |
11586
12df7854fa7c
strip trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
11572
diff
changeset
|
2127 |
20910 | 2128 // Flip the last interval to the top of the heap and sift down. |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2129 std::swap (heap[nivals - 1], heap[0]); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2130 nivals--; |
20910 | 2131 // Sift this interval back down the heap. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2132 i = 0; |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2133 while (2*i + 1 < nivals - 1) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2134 { |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2135 j = 2*i + 1; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2136 if (j + 1 < nivals - 1 |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2137 && ivals[heap[j + 1]].err >= ivals[heap[j]].err) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2138 j++; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2139 if (ivals[heap[j]].err <= ivals[heap[i]].err) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2140 break; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2141 else |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2142 { |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2143 std::swap (heap[j], heap[i]); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2144 i = j; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2145 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2146 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2147 |
20910 | 2148 // Now grab the last interval and sift it up the heap. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2149 i = nivals - 1; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2150 while (i > 0) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2151 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2152 j = (i - 1) / 2; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2153 if (ivals[heap[j]].err < ivals[heap[i]].err) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2154 { |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2155 std::swap (heap[j], heap[i]); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2156 i = j; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2157 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2158 else |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2159 break; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2160 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2161 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2162 else |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2163 { |
20910 | 2164 // Otherwise, just fix-up the heap. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2165 i = 0; |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2166 while (2*i + 1 < nivals) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2167 { |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2168 j = 2*i + 1; |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2169 if (j + 1 < nivals |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2170 && ivals[heap[j + 1]].err >= ivals[heap[j]].err) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2171 j++; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2172 if (ivals[heap[j]].err <= ivals[heap[i]].err) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2173 break; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2174 else |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2175 { |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2176 std::swap (heap[j], heap[i]); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2177 i = j; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2178 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2179 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2180 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2181 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2182 // If the heap is about to overflow, remove the last two intervals. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2183 while (nivals > cquad_heapsize - 2) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2184 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2185 iv = &(ivals[heap[nivals - 1]]); |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
2186 #if (DEBUG_QUADCC) |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
2187 printf ("quadcc: dropping ival %i (of %i) with [%e,%e] int=%e, err=%e, depth=%i\n", |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
2188 heap[0], nivals, iv->a, iv->b, iv->igral, iv->err, iv->depth); |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
2189 #endif |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2190 err_final += iv->err; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2191 igral_final += iv->igral; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2192 nivals--; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2193 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2194 |
20910 | 2195 // Collect the value of the integral and error. |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2196 igral = igral_final; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2197 err = err_final; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2198 for (i = 0; i < nivals; i++) |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2199 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2200 igral += ivals[heap[i]].igral; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2201 err += ivals[heap[i]].err; |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2202 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2203 } |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2204 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2205 #if (DEBUG_QUADCC) |
20910 | 2206 // Dump the contents of the heap. |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
2207 for (i = 0; i < nivals; i++) |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2208 { |
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2209 iv = &(ivals[heap[i]]); |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
2210 printf ("quadcc: ival %i (%i) with [%e,%e], int=%e, err=%e, depth=%i, rdepth=%i, ndiv=%i\n", |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
2211 i, heap[i], iv->a, iv->b, iv->igral, iv->err, iv->depth, |
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
2212 iv->rdepth, iv->ndiv); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2213 } |
15995
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
2214 #endif |
906ae1705522
quadcc.cc: Use heap instead of stack for large temporary variables.
Rik <rik@octave.org>
parents:
15994
diff
changeset
|
2215 |
20909
03e4ddd49396
omit unnecessary nargout checks
John W. Eaton <jwe@octave.org>
parents:
20898
diff
changeset
|
2216 return ovl (igral, err, neval); |
10944
a7655cdba470
add the cquad integrator, by Pedro Gonnet
Jaroslav Hajek <highegg@gmail.com>
parents:
diff
changeset
|
2217 } |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
2218 |
13141
e81ddf9cacd5
maint: untabify and remove trailing whitespace from source files
John W. Eaton <jwe@octave.org>
parents:
12653
diff
changeset
|
2219 /* |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2220 %!assert (quadcc (@sin, -pi, pi), 0, 1e-10) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2221 %!assert (quadcc (inline ("sin"), -pi, pi), 0, 1e-10) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2222 %!assert (quadcc ("sin", -pi, pi), 0, 1e-10) |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
2223 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2224 %!assert (quadcc (@sin, -pi, 0), -2, 1e-10) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2225 %!assert (quadcc (@sin, 0, pi), 2, 1e-10) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2226 %!assert (quadcc (@(x) 1./sqrt (x), 0, 1), 2, -1e-6) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2227 %!assert (quadcc (@(x) 1./(sqrt (x).*(x+1)), 0, Inf), pi, -1e-6) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2228 %!assert (quadcc (@(x) 1./(sqrt (x).*(x+1)), 0, Inf, [0, 1e-8]), pi, -1e-8) |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
2229 |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2230 %!assert (quadcc (@(x) exp (-x .^ 2), -Inf, Inf), sqrt (pi), 1e-10) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2231 %!assert (quadcc (@(x) exp (-x .^ 2), -Inf, 0), sqrt (pi)/2, 1e-10) |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
2232 |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
2233 ## Test function with NaNs in interval |
15437
c9954a15bc03
Fix quadcc when there are NaNs in the integrand (bug #37414)
Rik <rik@octave.org>
parents:
14151
diff
changeset
|
2234 %!function y = __nansin (x) |
c9954a15bc03
Fix quadcc when there are NaNs in the integrand (bug #37414)
Rik <rik@octave.org>
parents:
14151
diff
changeset
|
2235 %! nan_locs = [-3*pi/4, -pi/4, 0, pi/3, pi/2, pi]; |
c9954a15bc03
Fix quadcc when there are NaNs in the integrand (bug #37414)
Rik <rik@octave.org>
parents:
14151
diff
changeset
|
2236 %! y = sin (x); |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
2237 %! idx = min (abs (bsxfun (@minus, x(:), nan_locs)), [], 2); |
15437
c9954a15bc03
Fix quadcc when there are NaNs in the integrand (bug #37414)
Rik <rik@octave.org>
parents:
14151
diff
changeset
|
2238 %! y(idx < 1e-10) = NaN; |
17787
175b392e91fe
Use GNU style coding conventions for code in libinterp/
Rik <rik@octave.org>
parents:
17744
diff
changeset
|
2239 %!endfunction |
15437
c9954a15bc03
Fix quadcc when there are NaNs in the integrand (bug #37414)
Rik <rik@octave.org>
parents:
14151
diff
changeset
|
2240 |
c9954a15bc03
Fix quadcc when there are NaNs in the integrand (bug #37414)
Rik <rik@octave.org>
parents:
14151
diff
changeset
|
2241 %!test |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2242 %! [q, err, npoints] = quadcc ("__nansin", -pi, pi, [0, 1e-6]); |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2243 %! assert (q, 0, -1e-6); |
15437
c9954a15bc03
Fix quadcc when there are NaNs in the integrand (bug #37414)
Rik <rik@octave.org>
parents:
14151
diff
changeset
|
2244 %! assert (err, 0, 15*eps); |
c9954a15bc03
Fix quadcc when there are NaNs in the integrand (bug #37414)
Rik <rik@octave.org>
parents:
14151
diff
changeset
|
2245 |
22737
7abc25e6206a
maint: Clean up code base to follow Octave coding conventions.
Rik <rik@octave.org>
parents:
22407
diff
changeset
|
2246 ## Test input validation |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
2247 %!error (quadcc ()) |
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
2248 %!error (quadcc (@sin)) |
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
2249 %!error (quadcc (@sin, 0)) |
24098
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2250 %!error <lower limit .* must be a .* scalar> (quadcc (@sin, ones (2), pi)) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2251 %!error <lower limit .* must be a real scalar> (quadcc (@sin, -i, pi)) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2252 %!error <upper limit .* must be a .* scalar> (quadcc (@sin, 0, ones (2))) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2253 %!error <upper limit .* must be a real scalar> (quadcc (@sin, 0, i)) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2254 %!error <TOL must be a 1- or 2-element vector> (quadcc (@sin, 0, pi, {1})) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2255 %!error <TOL must be a 1- or 2-element vector> (quadcc (@sin, 0, pi, [1,2,3])) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2256 %!error <absolute tolerance must be .=0> (quadcc (@sin, 0, pi, -1)) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2257 %!error <relative tolerance must be .=0> (quadcc (@sin, 0, pi, [1, -1])) |
71dad5be765a
quadcc.cc: Use an Absolute Tolerance, as well as RelTol (Bug #46349).
Rik <rik@octave.org>
parents:
23577
diff
changeset
|
2258 %!error <SING.* must be .* real values> (quadcc (@sin, 0, pi, 1e-6, [ i ])) |
12614
4e11a87d86e6
quadcc.cc: Recode input validation and add tests.
Rik <octave@nomad.inbox5.com>
parents:
12612
diff
changeset
|
2259 */ |