|
Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
/*
* This file:
* https://anggtwu.net/MAXIMA/2026-dim-integrate.mac.html
* https://anggtwu.net/MAXIMA/2026-dim-integrate.mac
* (find-angg "MAXIMA/2026-dim-integrate.mac")
* Author: Eduardo Ochs <eduardoochs@gmail.com>
*
* (defun l () (interactive) (find-angg "MAXIMA/2026-dim-integrate.lisp"))
* (defun m () (interactive) (find-angg "MAXIMA/2026-dim-integrate.mac"))
*
* Used in:
* (wld2026p 9 "calculo-2-e-horrivel")
* (wld2026a "calculo-2-e-horrivel")
*
* «.tests» (to "tests")
* «.figures» (to "figures")
*/
load("~/MAXIMA/2025-emaxima.mac");
load("~/MAXIMA/2026-dim-integrate.lisp");
load("~/MAXIMA/2025-methods.mac");
display2d:true$
texput(fp, "f'");
texput(gp, "g'");
texput(sd0, sd0_tex);
sd0_tex(o) := format("\\setdepthto{0pt}{~a}", tex1(args(o)[1]));
makebare(M) := apply('barematrix, args(M));
sa_bigstr : "";
sa_addline("% Generated by:");
sa_addline("% (find-angg \"MAXIMA/2026-dim-integrate.mac\")");
defstruct(myintegrates(fu,gx,gpx,x_,u_,Fu));
myintegrates__du (myi) := d *. myi@u_$
myintegrates__dx (myi) := d *. myi@x_$
myintegrates__dudx (myi) := _diff(myi@u_, myi@x_, 1)$
myintegrates__dudx (myi) := myi@@du() /. myi@@dx()$
myintegrates__u_gx (myi) := underbrace(myi@u_,myi@gx);
myintegrates__gx_u (myi) := underbrace(myi@gx,myi@u_);
myintegrates__fgx (myi) := subst([myi@u_=myi@gx], myi@fu)$
myintegrates__fgx_u (myi) := subst([myi@u_=myi@@gx_u()], myi@fu)$
myintegrates__fu_gx (myi) := subst([myi@u_=myi@@u_gx()], myi@fu)$
myintegrates__gpx_u (myi) := underbrace(myi@gpx, myi@@dudx());
myintegrates__gpx_du(myi) := underbrace(myi@@gpx_u() *. myi@@dx(), myi@@du());
myintegrates__L (myi) := myintegrate(myi@@fgx() *. myi@gpx, myi@x_);
myintegrates__L_u (myi) := myintegrate(myi@@fgx_u() *. myi@@gpx_du());
myintegrates__du_x (myi) := underbrace(myi@@du(), myi@@dudx() *. myi@@dx());
myintegrates__du_gpx(myi) := underbrace(myi@@du_x(), myi@gpx *. myi@@dx());
myintegrates__R (myi) := myintegrate(myi@fu, myi@u_);
myintegrates__R_u (myi) := myintegrate(myi@@fu_gx() *. myi@@du_gpx());
myintegrates__LR (myi) := myi@@L () = myi@@R ();
myintegrates__LR_u (myi) := myi@@L_u() = myi@@R_u();
myintegrates__FGx (myi) := subst([myi@u_=myi@gx], myi@Fu);
myintegrates__LM (myi) := myi@@FGx();
myintegrates__RM (myi) := myi@Fu;
myintegrates__LRI3 (myi) := myi@@L() =. myi@@LM() =. myi@@RM() =. myi@@R();
myintegrates__LR6 (myi) := align_eqs(myi@@LR(), myi@@LRI3());
myintegrates__LR8 (myi) := align_eqs(myi@@LR(), myi@@LR_u(), myi@@LRI3());
myintegrates__xa (myi) := myi@x_ = a;
myintegrates__xb (myi) := myi@x_ = b;
myintegrates__ga (myi) := subst([myi@x_=a], myi@gx)$
myintegrates__gb (myi) := subst([myi@x_=b], myi@gx)$
myintegrates__Fga (myi) := subst([myi@u_=myi@@ga()], myi@Fu)$
myintegrates__Fgb (myi) := subst([myi@u_=myi@@gb()], myi@Fu)$
myintegrates__MMD (myi) := myi@@Fgb() -. myi@@Fga();
myintegrates__uga (myi) := myi@u_ = myi@@ga()$
myintegrates__ugb (myi) := myi@u_ = myi@@gb()$
myintegrates__LMD (myi) := _At2(myi@@LM(), myi@x_, a, b);
myintegrates__RMD (myi) := _At2(myi@@RM(), myi@u_, myi@@ga(), myi@@gb());
myintegrates__LD (myi) := myintegrate(myi@@fgx() *. myi@gpx, myi@x_, myi@@xa(), myi@@xb());
myintegrates__RD (myi) := myintegrate(myi@fu, myi@u_, myi@@uga(), myi@@ugb());
myintegrates__LRD4 (myi) := myi@@LD() =. myi@@LMD() =. myi@@MMD() =. myi@@RMD() =. myi@@RD();
myintegrates__LR12 (myi) := align_eqs(myi@@LR(), myi@@LR_u(), myi@@LRI3(), myi@@LRD4());
/*
** «tests» (to ".tests")
* (eepitch-maxima)
* (eepitch-kill)
* (eepitch-maxima)
** (find-angg "MAXIMA/2025-emaxima+.mac")
** (find-angg "MAXIMA/2025-methods.mac" "poly-tests")
** (find-angg "MAXIMA/2025-1-s.mac" "MV-tests")
load("~/MAXIMA/2026-dim-integrate.mac");
mm : new(myintegrates(cos(u), x^2, 2*x, x, u, F(u)));
mm : new(myintegrates(cos(u), x^2, 2*x, x, u, sin(u)));
mm@gx;
mm@x_;
mm@u_;
mm@@dudx();
mm@@fgx();
mm@@u_gx();
mm@@gx_u();
mm@@fgx_u();
mm@@fu_gx();
mm@@gpx_u();
mm@@gpx_du();
mm@@L();
mm@@L_u();
mm@@R();
mm@@du_x();
mm@@du_gpx();
mm@@R_u();
mm@@LR();
mm@@LR_u();
mm@@LR4();
mm@@LR6();
o8 : mm@@LR8();
o8 : makebare(mm@@LR8());
mm@@xa();
mm@@xb();
mm@@uga();
mm@@ugb();
mm@@Fga();
mm@@Fgb();
mm@@LMD();
mm@@RMD();
mm@@LRD4();
mm@@LR12();
o12 : mm@@LR12();
o12 : makebare(mm@@LR12());
mma : new(myintegrates(fp(u), g(x), gp(x), x, u, f(u)));
o12a : mma@@LR12();
o12a : makebare(mma@@LR12());
sa("LR8", o8);
sa("LR12", o12);
sa("LR12 abstract", o12a);
sa_bigstr;
sa_bigstr_writeto("/tmp/o");
*/
/*
** «figures» (to ".figures")
* (eepitch-maxima)
* (eepitch-kill)
* (eepitch-maxima)
load("2026-dim-integrate.mac");
mms : new(myintegrates(cos(u), x^2, 2*x, x, u, sin(u)));
mma : new(myintegrates(fp(u), g(x), gp(x), x, u, f(u)));
o1 : makebare(mms@@LR12());
o2 : makebare(mma@@LR12());
dpart(o2, 2,1,1,1,1);
dpart(o2, 2,3,1,1,1);
mms@@LR();
mms@@LR6();
o3 : copy(o2);
o3 : substpart(sd0(piece), o3, 2,1,1,1,1);
o3 : substpart(sd0(piece), o3, 2,3,1,1,1);
sa("MV sin(x^2)", o1);
sa("MV abstract", o3);
myintegrates__L_u (myi) := myintegrate(myi@@fgx_u() *. myi@@gpx_du());
myintegrates__du_x (myi) := underbrace(myi@@du(), myi@@dudx() *. myi@@dx());
myintegrates__du_gpx(myi) := underbrace(myi@@du_x(), myi@gpx *. myi@@dx());
myintegrates__R (myi) := myintegrate(myi@fu, myi@u_);
myintegrates__R_u (myi) := myintegrate(myi@@fu_gx() *. myi@@du_gpx());
myintegrates__LR (myi) := myi@@L () = myi@@R ();
myintegrates__LR_u (myi) := myi@@L_u() = myi@@R_u();
sa_bigstr;
sa_bigstr_writeto("/tmp/o");
*/