home *** CD-ROM | disk | FTP | other *** search
/ Chip 2002 June / Chip_2002-06_cd1.bin / zkuste / derive / download / Setup.exe / %MAINDIR% / Users / Int_misc.mth < prev    next >
Encoding:
Text File  |  2002-05-15  |  1.2 KB  |  26 lines

  1. "Continuous antiderivatives and change of variable in integrals"
  2.  
  3. "Author:  Valeriu Anisiu,    anisiu@math.ubbcluj.ro"
  4. "address: Faculty of Mathematics and Computer Science"
  5. "         Babes-Bolyai University"
  6. "         Kogalniceanu 1 Street"
  7. "         3400 Cluj-Napoca, Romania"
  8.  
  9. MAKECONT(u,x,v,a):=LOOP(IF(v=[],RETURN(u)),a:=FIRST(v),u:=u+STEP(x-a)*(LIM(u,~
  10. x,a,-1)-LIM(u,x,a,1)),v:=REST(v))
  11.  
  12. CONT_INT(u,x,v,a:="_",b,w):=PROG(w:=MAKECONT(INT(u,x),x,v),IF(a="_",RETURN(w)~
  13. ),LIM(w,x,b)-LIM(w,x,a))
  14.  
  15. INTSUBST(y,varx,rx,t_,rt:="_",x,w,ux,ut):=PROG(IF(NOT(VECTOR?(varx)),varx:=[v~
  16. arx]),x:=FIRST(varx),IF(RHS(rx)="euler1",PROG(w:=LHS(rx),rx:=SQRT(w)=SQRT(LIM~
  17. (w/x^2,x,inf))*x+t_,rt:=rx^2)),IF(RHS(rx)="euler2",PROG(w:=LHS(rx),rx:=SQRT(w~
  18. )=SQRT(LIM(w,x,0))+x*t_,rt:=rx^2/x)),IF(RHS(rx)="euler3",PROG(w:=FACTORS(LHS(~
  19. rx),Complex,x),rx:=SQRT(LIM(LHS(rx)/x^2,x,inf)*w SUB 1 SUB 1/w SUB 2 SUB 1)=t~
  20. _,rt:=rx^2)),IF(RHS(rx)=0,rx:=rx=t_),IF(rt="_",rt:=rx),ut:=FIRST(RHS(SOLVE([r~
  21. t],x))),w:=STRING(ut),IF(w SUB 1="IF",ut:=w SUB (-1)),ux:=RHS(SOLVE(rx,t_)),I~
  22. F(DIF(ux,x)=0 OR DIF(ut,t_)=0,RETURN("inapplicable")),w:=INT(SUBST(y,LHS(rx),~
  23. RHS(rx),x,ut)*DIF(ut,t_),t_),w:=LIM(w,t_,ux),IF(DIM(varx)=1,w,LIM(w,x,varx SU~
  24. B 3)-LIM(w,x,varx SUB 2)))
  25.  
  26.