123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234 |
- module defintc;
- fluid '(mellin!-transforms!* mellin!-coefficients!*);
- symbolic (mellin!-transforms!* :=mkvect(200))$
- symbolic putv(mellin!-transforms!*,0,'(1 . 1)); % undefined case
- symbolic putv(mellin!-transforms!*,1,'(() (1 0 0 1) () (nil) 1 x));
- % trigonometric functions
- symbolic putv(mellin!-transforms!*,2,'
- (() (1 0 0 2) () ((quotient 1 2) nil)
- (sqrt pi) (quotient (expt x 2) 4)));
-
- symbolic putv(mellin!-transforms!*,25,'
- (() (1 0 0 2) () ((quotient 1 2) nil)
- (minus (sqrt pi)) (quotient (expt x 2) 4)));
-
- symbolic putv(mellin!-transforms!*,3,'
- (() (1 0 0 2) () (nil (quotient 1 2))
- (sqrt pi) (quotient (expt x 2) 4)));
- symbolic putv(mellin!-transforms!*,7,'
- (() (2 0 2 2) (1 1) (nil (quotient 1 2))
- (quotient (sqrt pi) 2) (expt x 2)));
- symbolic putv(mellin!-transforms!*,8,'
- (() (0 2 2 2) ((quotient 1 2) 1) (nil nil)
- (quotient (sqrt pi) 2) (expt x 2)));
- symbolic putv(mellin!-transforms!*,9,'
- (() (1 2 2 2) ((quotient 1 2) 1) ((quotient 1 2) nil)
- (quotient 1 2) (expt x 2)));
- % hyperbolic functions
- symbolic putv(mellin!-transforms!*,10,'
- (() (1 0 1 3) (1) ((quotient 1 2) 1 nil)
- (expt pi (quotient 3 2)) (quotient (expt x 2) 4)));
- symbolic putv(mellin!-transforms!*,11,'
- (() (1 0 1 3) ((quotient 1 2)) (nil (quotient 1 2) (quotient 1 2))
- (expt pi (quotient 3 2)) (quotient (expt x 2) 4)));
- % the Heavisides
- symbolic putv(mellin!-transforms!*,30,'(() (1 0 1 1) (1) (nil) 1 x));
- symbolic putv(mellin!-transforms!*,31,'(() (0 1 1 1) (1) (nil) 1 x));
- symbolic putv(mellin!-transforms!*,32,'
- (() (2 0 2 2) (1 1) (nil nil) -1 x));
- symbolic putv(mellin!-transforms!*,33,'
- (() (0 2 2 2) (1 1) (nil nil) 1 x));
- symbolic putv(mellin!-transforms!*,34,'
- (() (1 2 2 2) (1 1) (1 nil) 1 x));
- symbolic putv(mellin!-transforms!*,35,'
- (() (2 1 2 2) (nil 1) (nil nil) 1 x));
- % exponential integral
- symbolic putv(mellin!-transforms!*,36,'
- (() (2 0 1 2) (1) (nil nil) -1 x));
- % sin integral
- symbolic putv(mellin!-transforms!*,37,'
- (() (1 1 1 3) (1) ((quotient 1 2) nil nil)
- (quotient (sqrt pi) 2) (quotient (expt x 2) 4)));
- % cos integral
- symbolic putv(mellin!-transforms!*,38,'
- (() (2 0 1 3) (1) (nil nil (quotient 1 2))
- (quotient (sqrt pi) -2) (quotient (expt x 2) 4)));
- % sinh integral
- symbolic putv(mellin!-transforms!*,39,'
- (() (1 1 2 4) (1 nil) ((quotient 1 2) nil nil nil)
- (quotient (expt pi (quotient 3 2)) -2) (quotient (expt x 2) 4)));
- % error functions
- symbolic putv(mellin!-transforms!*,41,'
- (() (1 1 1 2) (1) ((quotient 1 2) nil)
- (quotient 1 (sqrt pi)) (expt x 2)));
- symbolic putv(mellin!-transforms!*,42,'
- (() (2 0 1 2) (1) (nil (quotient 1 2))
- (quotient 1 (sqrt pi)) (expt x 2)));
- % Fresnel integrals
-
- symbolic putv(mellin!-transforms!*,43,'
- (() (1 1 1 3) (1) ((quotient 3 4) nil (quotient 1 4))
- (quotient 1 2) (quotient (expt x 2) 4)));
- symbolic putv(mellin!-transforms!*,44,'
- (() (1 1 1 3) (1) ((quotient 1 4) nil (quotient 3 4))
- (quotient 1 2) (quotient (expt x 2) 4)));
- % gamma function
- symbolic putv(mellin!-transforms!*,45,'
- ((n) (1 1 1 2) (1) (n nil) 1 x));
- % Bessel functions
- symbolic putv(mellin!-transforms!*,50,'
- ((n) (1 0 0 2) () ((quotient n 2) (minus (quotient n 2)))
- 1 (quotient (expt x 2) 4)));
- symbolic putv(mellin!-transforms!*,51,'
- ((n) (2 0 1 3) ((quotient (minus (plus n 1)) 2))
- ((quotient n 2) (minus (quotient n 2)) (quotient (minus (plus n 1)) 2))
- 1 (quotient (expt x 2) 4)));
-
- symbolic putv(mellin!-transforms!*,52,'
- ((n) (1 0 1 3) ((plus (quotient 1 2) (quotient n 2)))
- ((quotient n 2) (minus (quotient n 2))
- (plus (quotient 1 2) (quotient n 2)))
- pi (quotient (expt x 2) 4)));
- symbolic putv(mellin!-transforms!*,53,'
- ((n) (2 0 0 2) () ((quotient n 2) (minus (quotient n 2)))
- (quotient 1 2) (quotient (expt x 2) 4)));
- % struve functions
- symbolic putv(mellin!-transforms!*,54,'
- ((n) (1 1 1 3) ((quotient (plus n 1) 2))
- ((quotient (plus n 1) 2) (minus (quotient n 2)) (quotient n 2))
- 1 (quotient (expt x 2) 4)));
- symbolic putv(mellin!-transforms!*,55,'
- ((n) (1 1 2 4) ((quotient (plus n 1) 2) nil)
- ((quotient (plus n 1) 2) nil (quotient n 2) (minus (quotient n 2)))
- (times (minus pi) (sec (times (quotient (minus n) 2) pi)))
- (quotient (expt x 2) 4)));
- % legendre polynomials
- symbolic putv(mellin!-transforms!*,56,'
- ((n) (2 0 2 2) ((minus n) (plus n 1)) (nil nil)
- 1 (quotient (plus x 1) 2)));
- symbolic putv(mellin!-transforms!*,57,'
- ((n) (0 2 2 2) (1 1) ((minus n) (plus n 1))
- 1 (quotient (plus x 1) 2)));
- % chebyshev polymomials
- symbolic putv(mellin!-transforms!*,58,'
- ((n) (2 0 2 2)
- ((difference (quotient 1 2) n) (plus (quotient 1 2) n))
- (nil (quotient 1 2)) (sqrt pi) (quotient (plus x 1) 2)));
- symbolic putv(mellin!-transforms!*,59,'
- ((n) (0 2 2 2) (nil (quotient 1 2)) (n (minus n))
- (sqrt pi) (quotient (plus x 1) 2)));
- symbolic putv(mellin!-transforms!*,60,'
- ((n) (2 0 2 2)
- ((plus (quotient 3 2) n) (difference (minus (quotient 1 2)) n))
- (nil (quotient 1 2)) (quotient (plus n 1) (times 2 (sqrt pi)))
- (quotient (plus x 1) 2)));
- symbolic putv(mellin!-transforms!*,61,'
- ((n) (0 2 2 2) ((quotient 3 2) 2) ((minus n) (plus n 2))
- (quotient (plus n 1) (times 2 (sqrt pi)))
- (quotient (plus x 1) 2)));
- % hermite polynomials
- symbolic putv(mellin!-transforms!*,62,'
- ((n) (1 0 1 2) (plus (quotient n 2) 1)
- ((difference (quotient n 2) (quotient n 2))
- (difference (quotient 1 2) (difference (quotient n 2)
- (quotient n 2))))
- (times (expt (minus 1) (quotient n 2)) (sqrt pi) (factorial n))
- (expt x 2)));
- % laguerre polynomials
- symbolic putv(mellin!-transforms!*,63,'
- ((n l) (1 0 1 2) ((plus n 1)) (0 (minus l))
- (gamma (plus l n 1)) x));
- % gegenbauer polynomials
- symbolic putv(mellin!-transforms!*,64,'
- ((n l) (2 0 2 2) ((plus l n (quotient 1 2))
- (difference (quotient 1 2) (quotient 1 n)))
- (0 (difference (quotient 1 2) l))
- (quotient (times 2 l (gamma (plus l (quotient 1 2)))) (factorial n))
- (quotient (plus x 1) 2)));
- symbolic putv(mellin!-transforms!*,65,'
- ((n l) (0 2 2 2) ((plus l (quotient 1 2)) (times 2 l))
- ((minus n) (plus (times 2 l) n))
- (quotient (times 2 l (gamma (plus l (quotient 1 2)))) (factorial n))
- (quotient (plus x 1) 2)));
- % jacobi polynomials
- symbolic putv(mellin!-transforms!*,66,'
- ((n r s) (2 0 2 2) ((plus r n 1) (difference (minus s) n))
- (0 (minus s)) (quotient (gamma (plus r n 1)) (factorial n))
- (quotient (plus x 1) 2)));
- symbolic putv(mellin!-transforms!*,67,'
- ((n r s) (0 2 2 2) ((plus r 1) (plus r s 1))
- ((minus n) (plus r s n 1))
- (quotient (gamma (plus r n 1)) (factorial n))
- (quotient (plus x 1) 2)));
- symbolic (mellin!-coefficients!* :=mkvect(200))$
- endmodule;
- end;
|