Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
/* * This file: * http://anggtwu.net/MAXIMA/2025-1-parabolas.mac.html * http://anggtwu.net/MAXIMA/2025-1-parabolas.mac * (find-angg "MAXIMA/2025-1-parabolas.mac") * Author: Eduardo Ochs <eduardoochs@gmail.com> * * (defun e () (interactive) (find-angg "MAXIMA/2025-1-parabolas.mac")) * (find-es "maxima" "parabola-boxes") * (find-es "maxima" "parabolas-2024.1") * (c3m251trajp 12 "parabolas-intro") * (c3m251traja "parabolas-intro") */ /* (find-myqdraw "myqdraw3.mac") */ load_myqdraw(); myline(P1,P2,[opts]) := myapply_fl('line, P1[1],P1[2], P2[1],P2[2], opts); mypolyline(Pts,[opts]) := myapply_fl('pts, Pts, pt(0), opts); mygrid([opts]) := [makelist(myline(B(-2,qy),B(2,qy),opts), qy, 0,4), makelist(myline(B(qx, 0),B(qx,4),opts), qx, -2,2)]; myrect(P,v,w, [opts]) := myapply_fl('poly, [P, P+v, P+v+w, P+w], opts); myrects([opts]) := [myrect(A, vv, ww,opts), myrect(A, -vv, ww,opts), myrect(A, 2*vv,4*ww,opts), myrect(A,-2*vv,4*ww,opts)]; myparabola_pts() := makelist(P(t), t, seqby(-2,2,1/10)); myparabola([opts]) := mypolyline(myparabola_pts(), opts); mygrid1 () := mygrid(lc(gray)); myrects1 () := myrects(lc(orange)); myparabola1() := myparabola(pj(4),pc(red)); mydrawing1 () := [mygrid1(), myrects1(), myparabola1()]; B(aa,bb) := A + aa*vv + bb*ww; P(t) := B(t, t^2); [xmin,ymin, xmax,ymax] : [0,0, 12,8]; [A,vv,ww] : [[2,6], [1,1], [2,-1]]; /* * (eepitch-maxima) * (eepitch-kill) * (eepitch-maxima) load("2025-1-parabolas.mac"); "Exercicio 1:"$ [xmin,ymin, xmax,ymax] : [-1,-1, 6,6]; [A,vv,ww] : [[3,1], [1,0], [0,1]]; myqdraw(xyrange(), mydrawing1()); "Exercicio 2:"$ [xmin,ymin, xmax,ymax] : [-2,-2, 8,8]; [A,vv,ww] : [[1,1], [1,-1], [1,1]]; myqdraw(xyrange(), mydrawing1()); "Exercicio 3:"$ [xmin,ymin, xmax,ymax] : [-6,-2, 4,8]; [A,vv,ww] : [[1,1], [1,-1], [-1.5,1]]; [A,vv,ww] : [[1,1], [1,-1], [-1,1]]; myqdraw(xyrange(), mydrawing1()); "Exercicio 4:"$ [xmin,ymin, xmax,ymax] : [0,0, 12,8]; [A,vv,ww] : [[2,6], [1,1], [2,-1]]; myqdraw(xyrange(), mydrawing1()); */ /* * Local Variables: * coding: utf-8-unix * End: */