// For testing the integral function #include "stdafx.h" #include "defs.h" #if SELFTEST static char *s[] = { "clear", "", "tty=1", "", "integral(x^2+x)-(1/2*x^2+1/3*x^3)", "0", "#1", "integral(A,X)", "A*X", "#4", "integral(A+B,X)-(A*X+B*X)", "0", "#9", "integral(1/X,X)", "log(X)", "#11", "integral(exp(X),X)", "exp(X)", "#12", "integral(exp(A*X),X)-exp(A*X)/A", "0", "#14", "integral(log(X),X)-X*log(X)+X", "0", "#15", "integral(3^X*log(3),X)", "3^X", "#16", "integral(1/(3+x^2),x)-3^(-1/2)*arctan(3^(-1/2)*x)", "0", "#17", "integral(1/(a-x^2),x)-a^(-1/2)*arctanh(a^(-1/2)*x)", "0", "#19", "integral(1/sqrt(a-x^2),x)-arcsin(a^(-1/2)*x)", "0", "#20", "integral(1/sqrt(a+x^2),x)-(log(x+(a+x^2)^(1/2)))", "0", "#27", "integral(1/(a+b*x),x)-(log(a+b*x)/b)", "0", "#28", "integral(1/(A+B*X)^2,X)+1/B*1/(A+B*X)", "0", "#29", "integral(1/(a+b*x)^3,x)+1/2*1/b*(a+b*x)^(-2)", "0", "#30", "integral(X/(A+B*X),X)+A*B^(-2)*log(A+B*X)-X/B", "0", "#31", "integral(X/(A+B*X)^2,X)-1/B^2*(log(A+B*X)+A/(A+B*X))", "0", "#33", "integral(X^2/(A+B*X),X)-1/B^2*(1/2*(A+B*X)^2-2*A*(A+B*X)+A^2*log(A+B*X))", "0", "#34", "integral(X^2/(A+B*X)^2,X)-1/B^3*(A+B*X-2*A*log(A+B*X)-A^2/(A+B*X))", "0", "#35", "integral(X^2/(A+B*X)^3,X)-1/B^3*(log(A+B*X)+2*A/(A+B*X)-1/2*A^2/(A+B*X)^2)", "0", "#37", "integral(1/X*1/(A+B*X),X)+1/A*log((A+B*X)/X)", "0", "#38", "integral(1/X*1/(A+B*X)^2,X)-1/A*1/(A+B*X)+1/A^2*log((A+B*X)/X)", "0", "#39", "integral(1/X*1/(A+B*X)^3,X)-1/A^3*(1/2*((2*A+B*X)/(A+B*X))^2+log(X/(A+B*X)))", "0", "#40", "integral(1/X^2*1/(A+B*X),X)+1/(A*X)-B/A^2*log((A+B*X)/X)", "0", "#41", "integral(1/X^3*1/(A+B*X),X)-(2*B*X-A)/(2*A^2*X^2)-B^2/A^3*log(X/(A+B*X))", "0", "#42", "integral(1/X^2*1/(A+B*X)^2,X)+(A+2*B*X)/(A^2*X*(A+B*X))-2*B/A^3*log((A+B*X)/X)", "0", "#60", "integral(1/(2+3*X^2),X)-1/sqrt(6)*arctan(1/2*X*sqrt(6))", "0", "integral(1/(-2-3*X^2),X)-1/sqrt(6)*arctan(-1/2*X*sqrt(6))", "0", "#61", "integral(1/(2-3*X^2),X)-1/2*1/sqrt(6)*log((2+X*sqrt(6))/(2-X*sqrt(6)))", "0", "integral(1/(-2+3*X^2),X)-1/2*1/sqrt(6)*log((-2+X*sqrt(6))/(-2-X*sqrt(6)))", "0", "#63", "integral(X/(A+B*X^2),X)-1/2*1/B*log(A+B*X^2)", "0", "#64", "integral(X^2/(A+B*X^2),X)-X/B+A/B*integral(1/(A+B*X^2),X)", "0", "#65", "integral(1/(A+B*X^2)^2,X)-X/(2*A*(A+B*X^2))-1/2*1/A*integral(1/(A+B*X^2),X)", "0", "#70", "integral(1/X*1/(A+B*X^2),X)-1/2*1/A*log(X^2/(A+B*X^2))", "0", "#71", "integral(1/X^2*1/(A+B*X^2),X)+1/(A*X)+B/A*integral(1/(A+B*X^2),X)", "0", "#74", "integral(1/(A+B*X^3),X)-1/3*1/A*(A/B)^(1/3)*(1/2*log(((A/B)^(1/3)+X)^3/(A+B*X^3))+sqrt(3)*arctan((2*X-(A/B)^(1/3))*(A/B)^(-1/3)/sqrt(3)))", "0", "#76", "integral(X^2/(A+B*X^3),X)-1/3*1/B*log(A+B*X^3)", "0", "#77", "integral(1/(2+3*X^4),X)-1/2*1/2*(2/3/4)^(1/4)*(1/2*log((X^2+2*(2/3/4)^(1/4)*X+2*(2/3/4)^(1/2))/(X^2-2*(2/3/4)^(1/4)*X+2*(2/3/4)^(1/2)))+arctan(2*(2/3/4)^(1/4)*X/(2*(2/3/4)^(1/2)-X^2)))", "0", "#78", "integral(1/(2-3*X^4),X)-1/2*(2/3)^(1/4)/2*(1/2*log((X+(2/3)^(1/4))/(X-(2/3)^(1/4)))+arctan(X*(2/3)^(-1/4)))", "0", "#79", "integral(X/(2+3*X^4),X)-1/2*1/3*1/sqrt(2/3)*arctan(X^2/sqrt(2/3))", "0", "#80", "integral(X/(2-3*X^4),X)+1/4*1/3*sqrt(3/2)*log((X^2-sqrt(2/3))/(X^2+sqrt(2/3)))", "0", "#81", "integral(X^2/(2+3*X^4),X)-1/4*1/3*(2/3/4)^(-1/4)*(1/2*log((X^2-2*(2/3/4)^(1/4)*X+2*sqrt(2/3/4))/(X^2+2*(2/3/4)^(1/4)*X+2*sqrt(2/3/4)))+arctan(2*(2/3/4)^(1/4)*X/(2*sqrt(2/3/4)-X^2)))", "0", "#82", "integral(X^2/(2-3*X^4),X)+1/4*1/3*(2/3)^(-1/4)*(log((X-(2/3)^(1/4))/(X+(2/3)^(1/4)))+2*arctan(X*(2/3)^(-1/4)))", "0", "#83", "integral(X^3/(A+B*X^4),X)-1/4*1/B*log(A+B*X^4)", "0", "#124", "integral(sqrt(A+B*X),X)-2/3/B*sqrt((A+B*X)^3)", "0", "#125", "integral(X*sqrt(A+B*X),X)+2*(2*A-3*B*X)*sqrt((A+B*X)^3)/15*B^(-2)", "0", "#126", "integral(X^2*sqrt(A+B*X),X)-2*(8*A^2-12*A*B*X+15*B^2*X^2)*sqrt((A+B*X)^3)/105*B^(-3)", "0", "#128", "integral(sqrt(A+B*X)/X,X)-2*sqrt(A+B*X)-A*integral(1/X*1/sqrt(A+B*X),X)", "0", "#129", "integral(sqrt(A+B*X)/X^2,X)+sqrt(A+B*X)/X-B/2*integral(1/X*1/sqrt(A+B*X),X)", "0", "#131", "integral(1/sqrt(A+B*X),X)-2*sqrt(A+B*X)/B", "0", "#132", "integral(X/sqrt(A+B*X),X)+2/3*(2*A-B*X)*sqrt(A+B*X)/B^2", "0", "#133", "integral(X^2/sqrt(A+B*X),X)-2/15*(8*A^2-4*A*B*X+3*B^2*X^2)*sqrt(A+B*X)/B^3", "0", "#134", "integral(1/X*1/sqrt(2+B*X),X)-1/sqrt(2)*log((sqrt(2+B*X)-sqrt(2))/(sqrt(2+B*X)+sqrt(2)))", "0", "#136", "integral(1/X*1/sqrt(-2+B*X),X)-2/sqrt(2)*arctan(sqrt((-2+B*X)/2))", "0", "#137", "integral(1/X^2*1/sqrt(A+B*X),X)+sqrt(A+B*X)/A/X+1/2*B/A*integral(1/X*1/sqrt(A+B*X),X)", "0", "#156", "integral(sqrt(X^2+A),X)-1/2*(X*sqrt(X^2+A)+A*log(X+sqrt(X^2+A)))", "0", "#157", "integral(1/sqrt(X^2+A),X)-log(X+sqrt(X^2+A))", "0", "#158", "integral(1/X*1/sqrt(X^2-2),X)-arcsec(X/sqrt(2))/sqrt(2)", "0", "#159", "integral(1/X*1/sqrt(X^2+2),X)+1/sqrt(2)*log((sqrt(2)+sqrt(X^2+2))/X)", "0", "#160", "integral(sqrt(X^2+2)/X,X)-sqrt(X^2+2)+sqrt(2)*log((sqrt(2)+sqrt(X^2+2))/X)", "0", "#161", "integral(sqrt(X^2-2)/X,X)-sqrt(X^2-2)+sqrt(2)*arcsec(X/sqrt(2))", "0", "#162", "integral(X/sqrt(X^2+A),X)-sqrt(X^2+A)", "0", "#163", "integral(X*sqrt(X^2+A),X)-1/3*sqrt((X^2+A)^3)", "0", "#164", "integral(sqrt((X^2+A)^3),X)-1/4*(X*sqrt((X^2+A)^3)+3/2*A*X*sqrt(X^2+A)+3/2*A^2*log(X+sqrt(X^2+A)))", "0", // "integral(sqrt((X^2-A)^3),X)-1/4*(X*sqrt((X^2-A)^3)-3/2*A*X*sqrt(X^2-A)+3/2*A^2*log(X+sqrt(X^2-A)))", // "0", "#165", "integral(1/sqrt((X^2+A)^3),X)-X/A/sqrt(X^2+A)", "0", "#166", "integral(X/sqrt((X^2+A)^3),X)+1/sqrt(X^2+A)", "0", "#167", "integral(X*sqrt((X^2+A)^3),X)-1/5*sqrt((X^2+A)^5)", "0", "#168", "integral(X^2*sqrt(X^2+A),X)-1/4*X*sqrt((X^2+A)^3)+1/8*A*X*sqrt(X^2+A)+1/8*A^2*log(X+sqrt(X^2+A))", "0", "#169", "integral(X^3*sqrt(X^2+7),X)-(1/5*X^2-2/15*7)*sqrt((X^2+7)^3)", "0", "#170", "integral(X^3*sqrt(X^2-7),X)-(sqrt((X^2-7)^5)/5+7*sqrt((X^2-7)^3)/3)", "0", "#171", "integral(X^2/sqrt(X^2+A),X)-1/2*X*sqrt(X^2+A)+1/2*A*log(X+sqrt(X^2+A))", "0", "#172", "integral(X^3/sqrt(X^2+A),X)-1/3*sqrt((X^2+A)^3)+A*sqrt(X^2+A)", "0", "#173", "integral(1/X^2*1/sqrt(X^2+A),X)+sqrt(X^2+A)/A/X", "0", "#174", "integral(1/X^3*1/sqrt(X^2+2),X)+1/2*sqrt(X^2+2)/2/X^2-1/2*log((sqrt(2)+sqrt(X^2+2))/X)/(sqrt(2)^3)", "0", "#175", "integral(1/X^3*1/sqrt(X^2-2),X)-1/2*sqrt(X^2-2)/2/X^2-1/2*1/(2^(3/2))*arcsec(X/(2^(1/2)))", "0", "#176+", "integral(X^2*sqrt((X^2+2^2)^3),X)" "-1/6*X*sqrt((X^2+2^2)^5)" "+1/24*(2^2)*X*sqrt((X^2+2^2)^3)" "+1/16*(2^4)X*sqrt(X^2+2^2)" "+1/16*(2^6)*log(X+sqrt(X^2+2^2))", "0", "#176-", "integral(X^2*sqrt((X^2-2^2)^3),X)" "-1/6*X*sqrt((X^2-2^2)^5)" "-1/24*(2^2)*X*sqrt((X^2-2^2)^3)" "+1/16*(2^4)X*sqrt(X^2-2^2)" "-1/16*(2^6)*log(X+sqrt(X^2-2^2))", "0", "#177+", "integral(X^3*sqrt((X^2+7^2)^3),X)" "-1/7*sqrt((X^2+7^2)^7)" "+1/5*(7^2)*sqrt((X^2+7^2)^5)", "0", "#177-", "integral(X^3*sqrt((X^2-7^2)^3),X)" "-1/7*sqrt((X^2-7^2)^7)" "-1/5*(7^2)*sqrt((X^2-7^2)^5)", "0", "#196", "simplify(integral(1/(X-A)/sqrt(X^2-A^2),X)+sqrt(X^2-A^2)/A/(X-A))", "0", "simplify(1/(X-A)/sqrt(X^2-A^2)-d(integral(1/(X-A)/sqrt(X^2-A^2),X),X))", "0", "#197", "integral(1/(X+A)/sqrt(X^2-A^2),X)-sqrt(X^2-A^2)/A/(X+A)", "0", "simplify(1/(X+A)/sqrt(X^2-A^2)-d(integral(1/(X+A)/sqrt(X^2-A^2),X),X))", "0", "#200", "integral(sqrt(7-X^2),X)-1/2*(X*sqrt(7-X^2)+7*arcsin(X/sqrt(7)))", "0", "#201", "integral(1/sqrt(7-X^2),X)-arcsin(X/sqrt(7))", "0", "#202", "integral(1/X*1/sqrt(7-X^2),X)+1/sqrt(7)*log((sqrt(7)+sqrt(7-X^2))/X)", "0", "#203", "integral(sqrt(7-X^2)/X,X)" "-sqrt(7-X^2)+sqrt(7)*log((sqrt(7)+sqrt(7-X^2))/X)", "0", "#204", "integral(X/sqrt(A-X^2),X)" "+sqrt(A-X^2)", "0", "#205", "integral(X*sqrt(A-X^2),X)" "+1/3*sqrt((A-X^2)^3)", "0", "#210", "integral(X^2*sqrt(7-X^2),X)" "+1/4*X*sqrt((7-X^2)^3)" "-7/8*(X*sqrt(7-X^2)+7*arcsin(X/sqrt(7)))", "0", "#211", "integral(X^3*sqrt(7-X^2),X)" "-(-1/5*X^2-2/15*7)*sqrt((7-X^2)^3)", "0", "#214", "integral(X^2/sqrt(7-X^2),X)" "+X/2*sqrt(7-X^2)" "-7/2*arcsin(X/sqrt(7))", "0", "#215", "integral(1/X^2*1/sqrt(7-X^2),X)" "+sqrt(7-X^2)/7/X", "0", "#216", "integral(sqrt(7-X^2)/X^2,X)" "+sqrt(7-X^2)/X" "+arcsin(X/sqrt(7))", "0", "#217", "integral(sqrt(7-X^2)/X^3,X)" "+1/2*sqrt(7-X^2)/X^2" "-1/2*log((sqrt(7)+sqrt(7-X^2))/X)/sqrt(7)", "0", "#218", "integral(sqrt(7-X^2)/X^4,X)" "+1/3*sqrt((7-X^2)^3)/7/X^3", "0", "#273", "integral(sqrt(7*X^2+C),X)-X*sqrt(7*X^2+C)/2-C*log(X*sqrt(7)+sqrt(7*X^2+C))/2/sqrt(7)", "0", "#274", "integral(sqrt(-7*X^2+C),X)-X*sqrt(-7*X^2+C)/2-C*arcsin(X*sqrt(7/C))/2/sqrt(7)", "0", "#290", "integral(sin(A*X),X)+cos(A*X)/A", "0", "#291", "integral(cos(A*X),X)-sin(A*X)/A", "0", "#292", "integral(tan(A*X),X)+log(cos(A*X))/A", "0", "#293", "integral(1/tan(A*X),X)-log(sin(A*X))/A", "0", "#294", "integral(1/cos(A*X),X)-log(tan(pi/4+A*X/2))/A", "0", "#295", "integral(1/sin(A*X),X)-log(tan(A*X/2))/A", "0", "#296", "integral(sin(A*X)^2,X)-X/2+sin(2*A*X)/(4*A)", "0", "#297", "integral(sin(A*X)^3,X)+cos(A*X)*(sin(A*X)^2+2)/(3*A)", "0", "#298", "integral(sin(A*X)^4,X)-3/8*X+sin(2*A*X)/(4*A)-sin(4*A*X)/(32*A)", "0", "#302", "integral(cos(A*X)^2,X)-X/2-sin(2*A*X)/(4*A)", "0", "#303", "integral(cos(A*X)^3,X)-sin(A*X)*(cos(A*X)^2+2)/(3*A)", "0", "#304", "integral(cos(A*X)^4,X)-3/8*X-sin(2*A*X)/(4*A)-sin(4*A*X)/(32*A)", "0", "#308", "integral((1/sin(A*X))^2,X)+1/A*1/tan(A*X)", "0", "#312", "integral((1/cos(A*X))^2,X)-tan(A*X)/A", "0", "#318", "integral(sin(A*X)*cos(A*X),X)-sin(A*X)^2/(2*A)", "0", "#320", "integral(sin(A*X)^2*cos(A*X)^2,X)+sin(4*A*X)/(32*A)-X/8", "0", "#326", "integral(sin(A*X)/cos(A*X)/cos(A*X),X)-1/(A*cos(A*X))", "0", "#327", "integral(sin(A*X)^2/cos(A*X),X)+sin(A*X)/A-log(tan(pi/4+A*X/2))/A", "0", "#328", "integral(cos(A*X)/sin(A*X)^2,X)+1/(A*sin(A*X))", "0", "#329", "integral(1/sin(A*X)/cos(A*X),X)-log(tan(A*X))/A", "0", "#330", "integral(1/sin(A*X)/cos(A*X)^2,X)-(1/cos(A*X)+log(tan(A*X/2)))/A", "0", "#332", "integral(1/sin(A*X)^2/cos(A*X),X)-(log(tan(pi/4+A*X/2))-1/sin(A*X))/A", "0", "#333", "integral(1/sin(A*X)^2/cos(A*X)^2,X)+2/(A*tan(2*A*X))", "0", "#335", "integral(sin(A+B*X),X)+cos(A+B*X)/B", "0", "#336", "integral(cos(A+B*X),X)-sin(A+B*X)/B", "0", "#337+", "integral(1/(1+sin(A*X)),X)+tan(pi/4-A*X/2)/A", "0", "#337b+", "integral(1/(B+B*sin(A*X)),X)+tan(pi/4-A*X/2)/A/B", "0", "#337-", "integral(1/(1-sin(A*X)),X)-tan(pi/4+A*X/2)/A", "0", "#337b-", "integral(1/(B-B*sin(A*X)),X)-tan(pi/4+A*X/2)/A/B", "0", "#338", "integral(1/(1+cos(A*X)),X)-tan(A*X/2)/A", "0", "#339", "integral(1/(1-cos(A*X)),X)+1/(A*tan(A*X/2))", "0", "#340", "integral(1/(A+B*sin(X)),X)-1/sqrt(B^2-A^2)*log((A*tan(X/2)+B-sqrt(B^2-A^2))/(A*tan(X/2)+B+sqrt(B^2-A^2)))", "0", "#341", "integral(1/(A+B*cos(X)),X)-1/sqrt(B^2-A^2)*log((sqrt(B^2-A^2)*tan(X/2)+A+B)/(sqrt(B^2-A^2)*tan(X/2)-A-B))", "0", "#389", "x*sin(A*x)-d(integral(x*sin(A*x)))", "0", "#390", "x^2*sin(A*x)-d(integral(x^2*sin(A*x)))", "0", "#393", "x*cos(A*x)-d(integral(x*cos(A*x)))", "0", "#394", "x^2*cos(A*x)-d(integral(x^2*cos(A*x)))", "0", "#441", "integral(arcsin(A*X),X)-X*arcsin(A*X)-sqrt(1-A^2*X^2)/A", "0", "#442", "integral(arccos(A*X),X)-X*arccos(A*X)-sqrt(1-A^2*X^2)/A", "0", "#443", "integral(arctan(A*X),X)-X*arctan(A*X)+log(1+A^2*X^2)/(2*A)", "0", "#485", "integral(log(X),X)-X*log(X)+X", "0", "#485a", "integral(log(A*X),X)-X*log(A*X)+X", "0", "#486", "integral(X*log(X),X)-1/2*X^2*log(X)+1/4*X^2", "0", "#486a", "integral(X*log(A*X),X)-1/2*X^2*log(A*X)+1/4*X^2", "0", "#487", "integral(X^2*log(A*X),X)-1/3*X^3*log(A*X)+X^3/9", "0", "#489", "integral(log(X)^2,X)-X*log(X)^2+2*X*log(X)-2*X", "0", "#493", "integral(1/X*1/log(A*X),X)-log(log(A*X))", "0", "#499", "integral(log(A*X+B),X)-(A*X+B)*log(A*X+B)/A+X", "0", "#500", "integral(log(A*X+B)/X^2,X)-A*log(X)/B+(A*X+B)*log(A*X+B)/B/X", "0", "#554", "integral(sinh(X),X)-cosh(X)", "0", "#555", "integral(cosh(X),X)-sinh(X)", "0", "#556", "integral(tanh(X),X)-log(cosh(X))", "0", "#560", "integral(X*sinh(X),X)-X*cosh(X)+sinh(X)", "0", "#562", "integral(X*cosh(X),X)-X*sinh(X)+cosh(X)", "0", "#566", "integral(sinh(X)^2,X)-sinh(2*X)/4+X/2", "0", "#569", "integral(tanh(X)^2,X)-X+tanh(X)", "0", "#572", "integral(cosh(X)^2,X)-sinh(2*X)/4-X/2", "0", // test integral(exp(a*x^2)) "integral(exp(a*x^2))+i*sqrt(pi)*erf(i*sqrt(a)*x)/sqrt(a)/2", "0", "integral(exp(-x^2))-sqrt(pi)*erf(x)/2", "0", "integral(exp(-3*x^2))-sqrt(pi/3)*erf(sqrt(3)*x)/2", "0", "integral(1/x*1/(a+log(x)),x)-log(a+log(x))", "0", "integral(exp(a*x+b*x))", "exp((a+b)*x)/(a+b)", "integral(x*exp(a*x))", "-exp(a*x)/(a^2)+x*exp(a*x)/a", "derivative", "x*exp(a*x)", "integral(x*exp(a*x+b))", "-exp(a*x+b)/(a^2)+x*exp(a*x+b)/a", "derivative", "x*exp(a*x+b)", "integral(x*exp(-a*x+b))", "-exp(-a*x+b)/(a^2)-x*exp(-a*x+b)/a", "derivative", "x*exp(-a*x+b)", "integral(x^2*exp(a*x))", "2*exp(a*x)/(a^3)-2*x*exp(a*x)/(a^2)+x^2*exp(a*x)/a", "derivative", "x^2*exp(a*x)", "integral(x^2*exp(a*x+b))", "2*exp(a*x+b)/(a^3)-2*x*exp(a*x+b)/(a^2)+x^2*exp(a*x+b)/a", "derivative", "x^2*exp(a*x+b)", "integral(x^3*exp(a*x))", "-6*exp(a*x)/(a^4)+6*x*exp(a*x)/(a^3)-3*x^2*exp(a*x)/(a^2)+x^3*exp(a*x)/a", "derivative", "x^3*exp(a*x)", "integral(x^3*exp(a*x+b))", "-6*exp(a*x+b)/(a^4)+6*x*exp(a*x+b)/(a^3)-3*x^2*exp(a*x+b)/(a^2)+x^3*exp(a*x+b)/a", "derivative", "x^3*exp(a*x+b)", "integral(sqrt(a*x^2+b))", "Stop: integral: sorry, could not find a solution", "integral(x^2*(1-x^2)^(3/2))-(x*sqrt(1-x^2)*(-8*x^4+14*x^2-3)+3*arcsin(x))/48", "0", "integral(x^4*(1-x^2)^(3/2))-(-x*sqrt(1-x^2)*(16*x^6-24*x^4+2*x^2+3)+3*arcsin(x))/128", "0", "integral(x^2*(1-x^2)^(5/2))-(x*sqrt(1-x^2)*(48*x^6-136*x^4+118*x^2-15)+15*arcsin(x))/384", "0", }; void test_integral(void) { test(__FILE__, s, sizeof s / sizeof (char *)); } #endif