-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrtest_peirce.mac
103 lines (69 loc) · 1.53 KB
/
rtest_peirce.mac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
/* From "A Short Table of Integrals," Second revised edition, by B. O. Peirce
Ginn and Company, 1910. See, for example, https://babel.hathitrust.org/cgi/pt?id=wu.89089818371&seq=8
I have translated the expected outputs to current standards */
(load("incomplete_gamma_int"),0);
0$
my_int(a,x);
a*x$
my_int(1/x,x);
log(x)$
my_int(x^m,x);
x^(m+1)/(m+1)$
my_int(exp(x),x);
exp(x)$
my_int(a^x * log(x),x);
a^x$
my_int(1/(1+x^2),x);
atan(x)$
my_int(1/sqrt(1-x^2),x);
asin(x)$
my_int(1/(x*sqrt(x^2-1)),x);
asec(x)$
my_int(1/sqrt(2*x-x^2),x);
verasin(x)$
my_int(cos(x),x);
sin(x)$
my_int(sin(x),x);
-cos(x)$
my_int(cotan(x),x);
log(sin(x))$
my_int(tan(x),x);
-log(cos(x))$
my_int(tan(x)*sec(x),x);
sec(x)$
my_int(sec(x)^2,x);
tan(x)$
my_int(csc(x)^2,x);
-cotan(x)$
/* #26 */
(assume(notequal(b,0),0),0);
0$
(extra_simp : lambda([e], ratsimp(hypergeometric_simp(e))),0);
0$
my_int(1/(a+b*x),x);
log(a+b*x)/a$
my_int(1/(a+b*x)^2,x);
-1/(b*(a+b*x))$
my_int(1/(a+b*x)^3,x);
-1/(2*b*(a+b*x)^2)$
my_int(x/(a+b*x),x);
(b*x-a*log((b*x+a)/a))/b^2$
my_int(x/(a+b*x)^2,x);
(a*log((b*x+a)/a)+b*x*(log((b*x+a)/a)-1))/(b^3*x+a*b^2)$
my_int(x^2/(a+b*x),x);
(2*a^2*log((b*x+a)/a)+b^2*x^2-2*a*b*x)/(2*b^3)$
my_int(x^2/(a+b*x)^2,x);
(-(2*a^2*log((b*x+a)/a))+a*b*x*(2-2*log((b*x+a)/a))+b^2*x^2)/(b^4*x+a*b^3)$
my_int(1/(x*(a+b*x)),x);
log(x)/a-log(b*x+a)/a$
my_int(1/(x*(a+b*x)^2),x);
(a*(log((b*x)/(b*x+a))+1)+b*x*log((b*x)/(b*x+a)))/(a^2*b*x+a^3)$
/* #36 */
(forget(notequal(b,0)),0);
0$
contexts;
[initial, global]$
values;
[extra_simp]$
facts();
[]$