Education

Teaching and learning about math, Maple and MapleSim

 

 Ibragimova Evelina, the 6th form

 school # 57, Kazan, Russia

The Units Converter

restart:
`Conversion formula`;
d:=l=n*m:
d;

                    Conversion formula
                    l = n m

m - shows how many minor units in one major one (coefficient)
`Coefficient`;
m:=1000;
                   Coefficient
                   m:=1000

n - the number of major units
n:=7/3;
                   n := 7/3

l - the number of minor units
l:=;

The result (the desired value)
solve(d);
                   7000/3
evalf(solve(d));
                   2333.333333

That is : there are 2333.3 (or 7000/3 ) minor units in 7/3 major units .

 

Other example

m - shows how many minor units in one major one (coefficient) 
`Coefficient`;
m:=4200;
                   Coefficient
                   m:=4200

n - the number of major units 
n:=;
                 
l - the number of minor units
l:=100;

                  l:=100

The result (the desired value)
solve(d);
                   1/42
evalf(solve(d));
                   0.02380952381

That is : there are 0.02 (or 1/42) major units in 100 minor units .

 

Another example

m - shows how many minor units in one major one (coefficient) 
`Coefficient`;
m:=;
                   Coefficient

n - the number of major units 
n:=2;

                    n := 2
                 
l - the number of minor units
l:=200;

                  l:=200

The result (the desired value)
solve(d);
                   100
evalf(solve(d));
                  100

That is : Coefficient is 100 .

  The geometry of the triangle
  Romanova Elena,  8 class,  school 57, Kazan, Russia

       Construction of triangle and calculation its angles

       Construction of  bisectors
      
       Construction of medians
      
       Construction of altitudes


> restart:with(geometry):      

The setting of the height of the triandle and let's call it "Т"
> triangle(T,[point(A,4,6),point(B,-3,-5),point(C,-4,8)]);

                                  T

        Construction of the triangle
> draw(T,axes=normal,view=[-8..8,-8..8]);

Construction of the triangle АВС

> draw({T(color=gold,thickness=3)},printtext=true,axes=NONE);     
Calculation of the distance between heights А and В - the length of a side АВ

> d1:=distance(A,B);

                           d1 := sqrt(170)

        
        Calculation of the distance between heights В and С - the length of a side ВС
> d2:=distance(B,C);

                           d2 := sqrt(170)

       The setting of line which passes through two points А and В
> line(l1,[A,B]);

                                  l1

       Display the equation of line l1
> Equation(l1);
> x;
> y;

                         -2 + 11 x - 7 y = 0

        The setting of line which passes through two points А and С
> line(l2,[A,C]);

                                  l2

       Display the equation of line l2
> Equation(l2);
> x;
> y;

                          56 - 2 x - 8 y = 0

         The setting of line which passes through two points В and С
> line(l3,[B,C]);

                                  l3

        Display the equation of line l3
> Equation(l3);
> x;
> y;

                          -44 - 13 x - y = 0

        Check the point А lies on line l1
> IsOnLine(A,l1);

                                 true

        Check the point А lies on line l1
> IsOnLine(B,l1);

                                 true

        Calculation of the andle between lines l1 and l2
> FindAngle(l1,l2);

                              arctan(3)

        The conversion of result to degrees
> b1:=convert(arctan(97/14),degrees);

                                      97
                               arctan(--) degrees
                                      14
                     b1 := 180 ------------------
                                       Pi

        Calculation of decimal value of this angle
> b2:=evalf(b1);

                      b2 := 81.78721981 degrees

        Calculation of the andle between lines l1 and l3
> FindAngle(l1,l3);

                             arctan(3/4)

       The conversion of result to degrees
> b3:=convert(arctan(97/99),degrees);

                                      97
                               arctan(--) degrees
                                      99
                     b3 := 180 ------------------
                                       Pi

        Calculation of decimal value of this angle
> b4:=evalf(b3);

                      b4 := 44.41536947 degrees

       Calculation of the angle between lines l2 and l3
> FindAngle(l2,l3);

                              arctan(3)

       The conversion of  result to degrees
> b5:=convert(arctan(97/71),degrees);

                                      97
                               arctan(--) degrees
                                      71
                     b5 := 180 ------------------
                                       Pi

        Calculation of decimal value of  this angle
> b6:=evalf(b5);

                      b6 := 53.79741070 degrees

        Check the sum of all the angles of the triangle
> b2+b4+b6;

                         180.0000000 degrees

        Analytical information about the point А
> detail(A);
   name of the object: A
   form of the object: point2d
   coordinates of the point: [4, 6]
          Analytical information about the point В
> detail(B);
   name of the object: B
   form of the object: point2d
   coordinates of the point: [-3, -5]
          Analytical information about the point С
> detail(C);
   name of the object: C
   form of the object: point2d
   coordinates of the point: [-4, 8]

   The setting of heights of the triangle points A,B,C and let's call it "Т"

   with(geometry):
> triangle(ABC, [point(A,7,8), point(B,6,-7), point(C,-6,7)]):
        The setting of the bisector of angle А in triandle АВС
> bisector(bA, A, ABC);

                                  bA

        Analytical information about the bisector of angle А in the triandle
> detail(bA);
   name of the object: bA
   form of the object: line2d
   assume that the name of the horizonal and vertical                    axis are _x and _y
   equation of the line: (15*170^(1/2)+226^(1/2))*_x+(-13*226^(1/2)-170^(1/2))*_y+97*226^(1/2)-97*170^(1/2) = 0

        Construction of the triangle
> draw(ABC,axes=normal,view=[-8..8,-8..8]);

 Construction of the triangle ABC

> draw({ABC(color=gold,thickness=3)},printtext=true,axes=NONE);     

 Construction of the bisector of angle А

> draw({ABC(color=gold,thickness=3),bA(color=green,thickness=3)},printtext=true,axes=NONE);    

The setting of the bisector of angle В in the triangle АВС

> bisector(bB, B, ABC);

                                  bB

       Analytical information about the bisector of angle B in the triandle
> detail(bB);
   name of the object: bB
   form of the object: line2d
   assume that the name of the horizonal and vertical                    axis are _x and _y
   equation of the line: (-15*340^(1/2)-14*226^(1/2))*_x+(-12*226^(1/2)+340^(1/2))*_y+97*340^(1/2) = 0

         Construction of the bisector of angle В
>draw({ABC(color=gold,thickness=3),bA(color=green,thickness=3),bB(color=red,thickness=3)},printtext=true,axes=NONE);    



    The setting of the bisector of angle С in the triangle АВС

> bisector(bC, C, ABC);

                                  bC

        Analytical information about the bisector of angle С in the triangle
> detail(bC);
   name of the object: bC
   form of the object: line2d
   assume that the name of the horizonal and vertical                    axis are _x and _y
   equation of the line: (14*170^(1/2)-340^(1/2))*_x+(13*340^(1/2)+12*170^(1/2))*_y-97*340^(1/2) = 0

        Construction of the bisector of angle С
>draw({ABC(color=gold,thickness=3),bA(color=green,thickness=3),bB(color=red,thickness=3),bC(color=blue,thickness=3)},printtext=true,axes=NONE);  

 Calculation of the point of intersection of the bisectors and let's call it "О"

> intersection(O,bA,bB,bC);coordinates(O);

                                  O


     7 sqrt(85) - 3 sqrt(2) sqrt(113) + 3 sqrt(85) sqrt(2)
  [2 -----------------------------------------------------,
       sqrt(85) sqrt(2) + sqrt(2) sqrt(113) + 2 sqrt(85)

          -16 sqrt(85) - 7 sqrt(2) sqrt(113) + 7 sqrt(85) sqrt(2)
        - -------------------------------------------------------]
             sqrt(85) sqrt(2) + sqrt(2) sqrt(113) + 2 sqrt(85)

       Construction of the bisectors and  marking of the point of intersection  "О" in the triandle
>draw({ABC(color=gold,thickness=3),bA(color=green,thickness=3),bB(color=red,thickness=3),bC(color=blue,thickness=3),O},printtext=true,axes=NONE);
> restart:
> with(geometry):
       The setting of the heights of the triangle points A,B,C and let's call it "Т"
> point(A,7,8),point(B,6,-7),point(C,-6,7);

                               A, B, C

        Let's call "Т1"
> triangle(T1,[A,B,C]);

                                  T1

        Construction of "Т1"
> draw(T1(color=gold,thickness=3),axes=NONE,printtext=true);
  The setting of the median from the point В in the trianglemedian(mB,B,T1,B1);
> median(mb,B,T1);

                                  mB


                                  mb

        Construction of the median from the point В
> draw({T1(color=gold,thickness=3),mB(color=green,thickness=3),mb},printtext=true,axes=NONE);

The setting of the median from the point А in the trianglemedian(mA,A,T1,A1);
> median(ma,A,T1);

                                  mA


                                  ma

        Construction of the median from the point А
>draw({T1(color=gold,thickness=3),mB(color=green,thickness=3),mA(color=magenta,thickness=3),ma},printtext=true,axes=NONE);
The setting of the median from the point С in the trianglemedian(mC,C,T1,C1);
> median(mc,C,T1);

                                  mC


                                  mc

        Costruction of the median from the point С
>draw({T1(color=gold,thickness=3),mB(color=green,thickness=3),mA(color=magenta,thickness=3),mA,mC(color=maroon,thickness=3)},printtext=true,axes=NONE);




Calculation of the point of  intersection of the median and let's call it "О"

>intersection(O,ma,mb,mC);coordinates(O);

                                  O


                              [7/3, 8/3]

        Construction of medians and marking of the point of  intersection "О" in the triangle
>draw({T1(color=gold,thickness=3),mB(color=green,thickness=3),mA(color=magenta,thickness=3),mA,mC(color=violet,thickness=3),O},printtext=true,axes=NONE);
> restart:with(geometry):
> _EnvHorizontalName:=x:_EnvVerticalName=y:       The setting of the heights of the triangle points A, B, C  and let's call it "Т"
> triangle(T,[point(A,7,8),point(B,6,-7),point(C,-6,7)]);

                                  T

       Construction of the triangle
> draw(T,axes=normal,view=[-8..8,-8..8]);


The setting of the altitude in the triangle from the point Сaltitude(hC1,C,T,C1);
> altitude(hC,C,T);

                                 hC1


                                  hC

        Analytical information about the altitude hC from the point С in the triangle
> detail(hC);
   name of the object: hC
   form of the object: line2d
   assume that the name of the horizonal and vertical                    axis are _x and _y
   equation of the line: -99+_x+15*_y = 0

        Construction of the altitude from the point С
> draw({T(color=gold,thickness=3),hC1(color=green,thickness=3),hC},printtext=true,axes=NONE);     

  The setting of the altitude in the triangle from the point Аaltitude(hA1,A,T,A1);
> altitude(hA,A,T);

                                 hA1


                                  hA

        Analytical information about the altitude hA from the point А in the triangle
> detail(hA);
   name of the object: hA
   form of the object: line2d
   assume that the name of the horizonal and vertical                    axis are _x and _y
   equation of the line: -28-12*_x+14*_y = 0

        Construction of the altitude from the point А
>draw({T(color=gold,thickness=3),hC1(color=green,thickness=3),hA1(color=red,thickness=3),hA1},printtext=true,axes=NONE);       The setting of the altitude from the point В

> altitude(hB1,B,T,B1);
> altitude(hB,B,T);

                                 hB1


                                  hB

        Analytical information about the altitude hB from the point В in the triangle
> detail(hB);
   name of the object: hB
   form of the object: line2d
   assume that the name of the horizonal and vertical                    axis are _x and _y
   equation of the line: -71+13*_x+_y = 0

        Consruction of the altitude from the point В
>draw({T(color=gold,thickness=3),hC1(color=green,thickness=3),hA1(color=red,thickness=3),hB1(color=blue,thickness=3),hB1},printtext=true,axes=NONE);     
 Calculation of the point of intersection of altitudes and let's call it "О"

>intersection(O,hB,hA,hC);coordinates(O);

                                  O


                               483  608
                              [---, ---]
                               97   97

        Construction of altitudes and marking of the point of intersection "О" in the triangle
>draw({T(color=gold,thickness=3),hC1(color=green,thickness=3),hA1(color=red,thickness=3),hB1(color=blue,thickness=3),hB1,O},printtext=true,axes=NONE);




 

 

 

 

 

 

 

 

 

 

 

 

 

Maple T.A. MAA Placement Test Suite  2016 is now available. It leverages all the improvements found in Maple T.A. 2016, including:

  • A redesigned authoring workflow that makes it faster and easier to create and modify questions and assignments
  • A new content repository that makes it substantially easier to manage and search for content
  • New built-in connectivity options for integration with course management systems

To learn more, visit What’s New in Maple T.A. MAA Placement Test Suite 2016.

Jonny
Maplesoft Product Manager, Online Education Products

  Elena, Liya

  "Researching turkish song: the selection of the main element and its graphic transformations",

   Russia, Kazan, school #57

The setting and visualization of the melodic line of the song
> restart:
> with(plots):with(plottools):
> p0:=plot([[0.5,9],[1,7],[2,9],[4,11],[6,9],[7,11],[8,7],[10,9],[12,9],[14,9],[16,7],[16.5,9],[17,7],[18,9]],color=magenta):p1:=plot([[18,9],[20,11],[22,9],[23,11],[24,9],[26,11],[28,11],[29.5,8],[30,11],[32,9],[33.5,8],[34,9],[36,7],[37.5,5],[38,9],[40,7],[42,5],[44,5],[46,4],[47,5],[48,2],[50,4],[51,5],[51.5,4],[52,2],[54,4],[56,4],[56.5,5],[57,4],[58,5],[60,7],[62,5],[64,7],[66,5]],color=cyan):
> p2:=plot([[66,5],[68,5],[69,5],[70,4],[71,5],[71.5,4],[72,2],[73,4],[74,5],[75,7],[76,5],[78,4],[78.5,7],[80,5],[82.5,4],[83.5,4],[84,2],[86,4],[88,4],[90.5,4],[91.5,4]],color=red):
> p3:=plot([[91.5,4],[92,2],[94,4],[96,4],[96.5,9],[97,7],[98,9],[100,11],[100.5,9],[101,11],[102,9],[104,11],[106,9],[108,9],[109,9],[109.5,9],[110,7],[111,9],[112,7],[113,7],[114,9],[116,11],[116.5,9],[117,11],[118,9],[119.5,11],[120,9],[122.5,9],[124,9],[124.5,9],[125,11],[125.5,9],[126,11],[128,9],[129,7],[130,9],[132,11],[132.5,9],[133,11],[134,9],[136,11],[136.5,9],[138.5,9],[140,9],[140.5,9],[141,11],[141.5,9],[142,11],[143,7],[143.5,7],[144,9],[144.5,9],[145,7],[146,9],[148,11],[148.5,9],[149,11],[150,9],[151.5,11],[152,9],[154.5,9],[156,9],[156.5,9],[157,11],[157.5,9],[158,11],[160,9],[161,7],[162,9],[164,11],[164.5,9],[165,11],[166,9],[168,11],[168.5,9],[171.5,9],[172,9],[172.5,9],[173.5,11],[174,9],[174.5,11],[175,7],[175.5,7],[176,9],[176.5,9],[177,7],[178,9],[180,11],[180.5,9],[181,11],[182,9],[183.5,11],[184,9],[186.5,9],[188,9],[188.5,9],[189,11],[189.5,9],[190,11],[192,9],[192.5,9],[193,7],[194,9],[196,11],[196.5,9],[197,11],[198,9],[200,11],[201.5,9],[202,11],[203,9],[203.5,8],[204,9],[205,7],[205.5,9],[206,11],[207,9],[208,7],[209,8],[209.5,7],[210,9],[211,7],[212,5],[213,5],[213.5,5],[214,9],[215,7],[216,5],[217,5],[217.5,5],[218,7],[219,5],[220,4],[221,4],[221.5,4],[222,7],[223,5],[224,4],[225,4],[227,4],[227.5,4],[228,2],[230,4]],color=blue):
> p4:=plot([[230,4],[232,4],[232.5,5],[233,4],[234,5],[236,7],[236.5,5],[237,5],[238,9],[240,7],[242.5,5],[244,5],[245,5],[246,4],[246.5,5],[247,4],[248,2],[250,4],[250.5,7],[251,5],[252,4],[254,4],[254.5,7],[255,5],[256,4],[258,4]],color=brown):
> p5:=plot([[258,4],[259,4],[260,2]],color=green):
> plots[display](p0,p1,p2,p3,p4,p5,thickness=2);

 

 

The selection of the main melodic element in graph of whole song. The whole song is divided into separate elements - results of transformationss0:=plot([[7,11],[8,7],[10,9],[12,9],[14,9],[16,7],[16.5,9]],color=blue):
> s1:=plot([[118,9],[119.5,11],[120,9],[122.5,9],[124,9],[124.5,9],[125,11],[125.5,9]],color=blue):
> s2:=plot([[134,9],[136,11],[136.5,9],[138.5,9],[140,9],[140.5,9],[141,11],[141.5,9]],color=blue):
> s3:=plot([[150,9],[151.5,11],[152,9],[154.5,9],[156,9],[156.5,9],[157,11],[157.5,9]],color=blue):
> s4:=plot([[166,9],[168,11],[168.5,9],[171.5,9],[172,9],[172.5,9],[173.5,11],[174,9]],color=blue):
> s5:=plot([[182,9],[183.5,11],[184,9],[186.5,9],[188,9],[188.5,9],[189,11],[189.5,9]],color=blue):
> s6:=plot([[250,4],[250.5,7],[251,5],[252,4],[254,4],[254.5,7],[255,5],[256,4]],color=blue):
> plots[display](s0,s1,s2,s3,s4,s5,s6);
> s:=plots[display](s0,s1,s2,s3,s4,s5,s6):

 

Animated display of grafical transformation of the basic element (to click on the picture - on the panel of instruments appears player - to play may step by step).m0:=plot([[7,11],[8,7],[10,9],[12,9],[14,9],[16,7],[16.5,9]],color=blue):
> pm:=plot([[118,9],[119.5,11],[120,9],[122.5,9],[124,9],[124.5,9],[125,11],[125.5,9]],color=red,style=line,thickness=4):
> iop:=plots[display](m0,pm,insequence=true):
> plots[display](iop,s0);

> m0_t:=translate(m0,110,0):
> m0_r:=reflect(m0_t,[[0,9],[24,9]]):
> plots[display](m0,m0_r,insequence=true);
> m0r:=plots[display](m0,m0_r,insequence=true):

> pm0:=plots[display](pm,m0):
> plots[display](pm0,m0r);

> m0:=plot([[7,11],[8,7],[10,9],[12,9],[14,9],[16,7],[16.5,9]],color=blue):
> pn:=plot([[134,9],[136,11],[136.5,9],[138.5,9],[140,9],[140.5,9],[141,11],[141.5,9]],color=blue,thickness=3):
> iop:=plots[display](m0,pn,insequence=true):
> plots[display](iop,s0);

> m0_t1:=translate(m0,126,0):
> m0_r1:=reflect(m0_t1,[[0,9],[24,9]]):
>
> plots[display](m0,m0_r1,insequence=true);
> m0r1:=plots[display](m0,m0_r1,insequence=true):

> pm01:=plots[display](pn,m0):
> plots[display](pm01,m0r1);

 

> pm2:=plots[display](pn,pm,m0):
> plots[display](pm0,m0r,pm01,m0r1);

> pt_i_1:=seq(translate(pm,5*11*i,0),i=0..4):
> plots[display](pt_i_1);

> pm_i:=seq(translate(pm,5*11*i,0),i=0..4):
> plots[display](pm_i);
> iop1:=plots[display](pm_i,insequence=true):
> plots[display](iop1,s0);

 

> pm_i_0:=seq(translate(m0_r,5*11*i,0),i=0..4):
> plots[display](pm_i_0);
> iop2:=plots[display](pm_i_0,insequence=true):
> plots[display](iop2,s0);

 

 

 

 

 

 

Construction of arabesques of melodic line BACH

Elena, Liya "Construction of arabesques of melodic line BACH", Kazan, Russia, school#57
       
> restart:
> with(plots):with(plottools):

      The setting and visualization of line BACH: B - note b-flat, A - note la, C - note do, H - note si.
> p0:=plot([[0,1],[2,0],[4,1.5],[6,1]],thickness=4,color=cyan,scaling=constrained);
>
>   p0 := PLOT(
>
>         CURVES([[0, 1.], [2., 0], [4., 1.500000000000000], [6., 1.]])
>
>         , SCALING(CONSTRAINED), THICKNESS(4), AXESLABELS( ,  ),
>
>         COLOUR(RGB, 0, 1.00000000, 1.00000000),
>
>         VIEW(DEFAULT, DEFAULT))
>
> plots[display](p0);
> r_i:=seq(rotate(p0,i*Pi/4),i=1..8):
> p1:=display(r_i,p0):plots[display](p1,scaling=constrained);

> c1:=circle([0,0],6,color=blue,thickness=2):
> plots[display](c1,p1,scaling=constrained);
> p_c:=plots[display](c1,p1,scaling=constrained):

> pt_i_2:=seq(translate(p1,0,2*6*i),i=0..4):
> plots[display](pt_i_2,scaling=constrained);
> pt_i_22:=seq(translate(p1,0,6*i),i=0..4):
> plots[display](pt_i_22,scaling=constrained);
> pt_i_222:=seq(translate(p1,0,1/2*6*i),i=0..4):
> plots[display](pt_i_222,scaling=constrained);

> pr:=rotate(p1,Pi/8):
> plots[display](pr,scaling=constrained);
> plots[display](p1,pr,scaling=constrained);
> pr_i:=seq(rotate(p1,Pi/16*i),i=0..8):
> plots[display](pr_i,scaling=constrained);


> pt_1:=translate(p1,0,2*6):
> pr_1_i:=seq(rotate(pt_1,Pi/3.5*i),i=0..6):
> plots[display](pr_1_i,scaling=constrained);
> pr_11_i:=seq(rotate(pt_1,Pi/5*i),i=0..10):
> plots[display](pr_11_i,scaling=constrained);
> pr_111_i:=seq(rotate(pt_1,Pi/6.5*i),i=0..12):
> plots[display](pr_111_i,scaling=constrained);


Elena, Liya "Designing of islamic arabesques", Kazan, Russia, school #57


> restart:
      At the theorem of cosines  c^2 = a^2+b^2-2*a*b*cos(phi);
      In our case  c=a0 ,  a=1 ,  a=b , phi; - acute angle of a rhombus (the tip of the kalam).
      s0 calculated at theorem of  Pythagoras.
     (а0 - horizontal diagonal of a  rhombus, s0 - vertical diagonal of a  rhombus)
> a:=1:phi:=Pi/4:
> a0:=sqrt(a^2+a^2-2*a^2*cos(phi));

                       a0 := sqrt(2 - sqrt(2))

> solve((s0^2)/4=a^2-(a0^2)/4,s0);

                sqrt(2 + sqrt(2)), -sqrt(2 + sqrt(2))


      The setting of initial parameters : the size of the tip of the pen-kalam and  depending on its - the main module size - point
       (а0 - horizontal diagonal of a  rhombus, s0 - vertical diagonal of a  rhombus)
> a0:=sqrt(2-sqrt(2)):
> s0:=sqrt(2+sqrt(2)):
      Connection the graphical libraries Maple
> with(plots):with(plottools):
      Construction of unit of measure (point) - rhombus - the tip of the kalam
> p0:=plot([[0,0],[a0/2,s0/2],[0,s0],[-a0/2,s0/2],[0,0]],scaling=constrained,color=gold,thickness=3):
> plots[display](p0);

The setting and construction of altitude of alif - the basis of the rules compilation of the proportions      Example, on style naskh altitude of alif amount five points
> p_i:=seq(plot([[0,0+s0*i],[a0/2,s0/2+s0*i],[0,s0+s0*i],[-a0/2,s0/2+s0*i],[0,0+s0*i]],scaling=constrained,color=black),i=0..4):
> pi:=display(p_i):
> plots[display](p_i);
The setting of appropriate circle of diameter, amount altitude of alifd0:=s0+s0*i:
> i:=4:
> d0:=d0:
> c0:=circle([0,d0/2],d0/2,color=blue):
> plots[display](p_i,c0);


Construction of flower by turning "point"r_i:=seq(rotate(p0,i*Pi/4),i=1..8):
> p1:=display(r_i,p0):plots[display](p1,scaling=constrained);

 The setting of circumscribed circlec1:=circle([0,0],s0,color=blue,thickness=2):
      Construction and the setting of flower inscribed in a circle
> plots[display](c1,p1,scaling=constrained);
> p_c:=plots[display](c1,p1,scaling=constrained):

The setting and construction of arabesque by horizontal parallel transport original flower with different stepspt_i_1:=seq(translate(p1,5*a0*i,0),i=0..4):
> plots[display](pt_i_1);
> pt_i_11:=seq(translate(p1,2*a0*i,0),i=0..4):
> plots[display](pt_i_11);
> pt_i_111:=seq(translate(p1,a0*7*i,0),i=0..4):
> plots[display](pt_i_111);

 The setting and construction of arabesque by vertical parallel transport original flower with different stepspt_i_2:=seq(translate(p1,0,2*s0*i),i=0..4):
> plots[display](pt_i_2);
> pt_i_22:=seq(translate(p1,0,s0*i),i=0..4):
> plots[display](pt_i_22);
> pt_i_222:=seq(translate(p1,0,1/2*s0*i),i=0..4):
> plots[display](pt_i_222);
 Getting arabesques by turning original flower on different anglespr:=rotate(p1,Pi/8):
> plots[display](pr);
> plots[display](p1,pr);

> pr_i:=seq(rotate(p1,Pi/16*i),i=0..8):
> plots[display](pr_i);


> pt_1:=translate(p1,0,2*s0):
> pr_1_i:=seq(rotate(pt_1,Pi/3.5*i),i=0..6):
> plots[display](pr_1_i);
> pr_11_i:=seq(rotate(pt_1,Pi/5*i),i=0..10):
> plots[display](pr_11_i);
> pr_111_i:=seq(rotate(pt_1,Pi/6.5*i),i=0..12):
> plots[display](pr_111_i);


Construction of standard quadrilaterals

      Muchametshina Liya,  8th class,  school № 57, Kazan, Russia


                   Square

                  Rectangle     
                  
                  Rhombus        
 
                  Parallelogram

                   Trapeze

Construction of square

> restart:
> with(plottools):
       Сoordinates (x;y) of the lower left corner of the square and the side "а"
> x:=0;y:=3;a:=6;

                                x := 0


                                y := 3


                                a := 6

      Construction of the square
> P1:=plot([[x,y],[x,y+a],[x+a,y+a],[x+a,y],[x,y]],color=green,thickness=4):
> plots[display](P1,scaling=CONSTRAINED);

The setting of the second square wich moved relative to the first on the vector (2;-3) (vector can be changed) and with side "а-1" (the length of a side can be changed)P2:=plot([[x+2,y-3],[x+2,y-3+a-1],[x+2+a-1,y-3+a-1],[x+2+a-1,y-3],[x+2,y-3]],color=black,thickness=4):
> plots[display](P1,P2,scaling=CONSTRAINED);

Construction of rectangle

> restart:
> with(plottools):
        Сoordinates (x;y) of the lower left corner of the square and the "а" and "b" sides
> x:=0;y:=2;a:=3;b:=9;
>

                                x := 0


                                y := 2


                                a := 3


                                b := 9

       The rectangle is specified by the sequence of vertices with given the lengths "a" and "b"
> l:=plot([[x,y],[x,y+a],[x+b,y+a],[x+b,y],[x,y]]):
> plots[display](l,scaling=CONSTRAINED,thickness=4);
Construction of rhombus

> restart:
> with(plottools):
      The coordinates (x;y) of the initial vertex of the rhombus and the half of the diagonals "a" and "b"
> x:=0;y:=2;a:=3;b:=4;

                                x := 0


                                y := 2


                                a := 3


                                b := 4

       Rhombus is specified by the sequence of vertices with the values "a" and "b"
> ll:=plot([[x,y],[x+a,y+b],[x+a+a,y],[x+a,y-b],[x,y]]):
> plots[display](ll,scaling=CONSTRAINED,thickness=4);

Construction of parallelogram

> restart:
> with(plottools):
      (х;у) - the starting point, (i;j) - the displacement vector of starting point, "а" - the base of the parallelogram
> x:=0;y:=0;i:=4;j:=5;a:=10;

                                x := 0


                                y := 0


                                i := 4


                                j := 5


                               a := 10

     The parallelogram is defined by the sequence of vertices
> P1:=plot([[x,y],[x+i,y+j],[x+i+a,y+j],[x+a,y],[x,y]]):
> plots[display](P1,scaling=CONSTRAINED,thickness=4);
 If  i= 0  it turns out the rectangleget.
       If  j= а  it turns out the  square.
       If  a := sqrt(i^2+j^2) it turns out the rhombus. a:=sqrt(i^2+j^2):

Construction of trapeze

Trapeze general form
> restart:
> with(plottools):
>
        (х;у) - the starting point, (i;j) - the displacement vector of starting point, а - the larger base of the trapezoid
> x:=0;y:=2;i:=1;j:=5;a:=11;

                                x := 0


                                y := 2


                                i := 1


                                j := 5


                               a := 11

         The trapez is defined by the sequence of vertices     
> P1:=plot([[x,y],[x+i,y+j],[x+i+j,y+j],[x+i+a,y],[x,y]]):
> plots[display](P1,scaling=CONSTRAINED,thickness=4);
Rectangular trapezoid
> restsrt:
> with(plottools):
> x:=0;y:=2;i:=0;j:=6;a:=11;

                                x := 0


                                y := 2


                                i := 0


                                j := 6


                               a := 11

> P1:=plot([[x,y],[x,y+j],[x+j,y+j],[x+a,y]]):
> plots[display](P1,scaling=CONSTRAINED,thickness=4);
Isosceles trapezoid
> restart:
> with(plottools):
> x:=0;y:=2;i:=4;j:=6;a:=15;

                                x := 0


                                y := 2


                                i := 4


                                j := 6


                               a := 15

> P1:=plot([[x,y],[x+i,y+j],[x+j+i,y+j],[x+a,y],[x,y]]):
> plots[display](P1,scaling=CONSTRAINED,thickness=4);



 

 

 

> restart;
> a := -10; b := 10; ps := seq(plot([i, t, t = -20 .. 20], x = -10 .. 10, y = -20 .. 20, color = red, style = point), i = a .. b);

plots[display](ps, insequence = true); p := plots[display](ps, insequence = true);

 

restart:
with(plots):
y=sin(x);
p:=implicitplot(y=sin(x),x=-10..10,y=-2..2,thickness=4,color=red,scaling=constrained,numpoints=1000):
plots[display](p);

 

y=sin(3*x);
p0:=implicitplot(y=sin(x),x=-10..10,y=-5..5,thickness=3,color=red,scaling=constrained,numpoints=1000,linestyle=2,style=POINT,symbol=CROSS):
p1:=implicitplot(y=sin(3*x),x=-10..10,y=-5..5,thickness=4,color=blue,numpoints=10000):
plots[display](p0,p1);
y=sin(1/3*x);
p11:=implicitplot(y=sin(1/3*x),x=-10..10,y=-5..5,thickness=4,color=navy,numpoints=10000):
plots[display](p0,p11);

 

 

y=2*sin(x);
p2:=implicitplot(y=2*sin(x),x=-10..10,y=-5..5,thickness=4,color=blue,numpoints=10000):
plots[display](p0,p2);
y=1/2*sin(x);
p22:=implicitplot(y=1/2*sin(x),x=-10..10,y=-5..5,thickness=4,color=navy,numpoints=10000):
plots[display](p0,p22);

 

y=2+sin(x);
p3:=implicitplot(y=2+sin(x),x=-10..10,y=-5..5,thickness=4,color=blue,numpoints=10000):
plots[display](p0,p3);
y=sin(x)-2;
p33:=implicitplot(y=sin(x)-2,x=-10..10,y=-5..5,thickness=4,color=navy,numpoints=10000):
plots[display](p0,p33);

y=sin(x+2);
p4:=implicitplot(y=sin(x+2),x=-10..10,y=-5..5,thickness=4,color=blue,numpoints=10000):
plots[display](p0,p4);
y=sin(x-2);
p44:=implicitplot(y=sin(x-2),x=-10..10,y=-5..5,thickness=4,color=navy,numpoints=10000):
plots[display](p0,p44);

y=-sin(x);
p7:=implicitplot(y=-sin(x),x=-10..10,y=-5..5,thickness=4,color=blue,numpoints=10000):
plots[display](p0,p7);
y=sin(-x);
p77:=implicitplot(y=sin(-x),x=-10..10,y=-5..5,thickness=4,color=navy,numpoints=10000):
plots[display](p0,p77);

 

y=abs(sin(x));
p00:=implicitplot(y=sin(x),x=-10..10,y=-5..5,thickness=3,color=red,scaling=constrained,numpoints=1000,linestyle=2,style=POINT,symbol=BOX):
p5:=implicitplot(y=abs(sin(x)),x=-10..10,y=-5..5,thickness=4,color=blue,numpoints=10000):
plots[display](p00,p5);
plots[display](p5,scaling=constrained);

y=sin(abs(x));
p00:=implicitplot(y=sin(x),x=-10..10,y=-5..5,thickness=3,color=red,scaling=constrained,numpoints=1000,linestyle=2,style=POINT,symbol=BOX):
p6:=implicitplot(y=sin(abs(x)),x=-10..10,y=-5..5,thickness=4,color=navy,numpoints=10000):
plots[display](p00,p6);
plots[display](p6,scaling=constrained);

 

 

Post gialid_GEODROMchik - what is this?

Pilot project of Secondary school # 57 of Kazan, Russia

Use of Maple

in Mathematics Education by mathematics teacher Alsu Gibadullina

and in scientific work of schoolchildren

 

Examples made using the Maple

the 6th class

 

              Arina                         Elza                             David    

       

       Book.mws              Kolobok.mws               sn_angl.mws

 

         Artur    

 

 

I'm an educator (physicist) who has migrated to Maple because of the lower "activation barrier" to get something of interest produced by the student. The students in my courses are exposed to several language (Python, C++, Java) and mathematical systems (Mathematica, Maple, MATLAB.) Many claim that unless forced to used a particular language or system, their first choice is Python and Maple for the reason I cite. 

As a consequence, it is my experience that students truly perfer the math-like appearance of the 2-D Math notation as opposed to the Maple notation. They see it as more natural - again with a lower activation barrier. Hence I see no reason to change. However, I would be interested in reasons why it might be beneficial.

My ultimate question is: do I start them with worksheet mode or documents mode? I'm use to worksheet mode and have found the call and response method easy for them to understand. But document mode has many valuable benefits. Is it worth the increase in learning (and frustration) for the benefits if the students use the software only a few times per semester? Or for some, every week?

I would be interested in hearing about the experiences of other educators.

 

Greetings to all. I am writing today to share a personal story / exploration using Maple of an algorithm from the history of combinatorics. The problem here is to count the number of strings over a certain alphabet which consist of some number of letters and avoid a set of patterns (these patterns are strings as opposed to regular expressions.) This counting operation is carried out using rational generating functions that encode the number of admissible strings of length n in the coefficients of their series expansions. The modern approach to this problem uses the Goulden-Jackson method which is discussed, including a landmark Maple implementation from a paper by D. Zeilberger and J. Noonan, at the following link at math.stackexchange.com (Goulden-Jackson has its own website, all the remaining software described in the following discussion is available at the MSE link.) The motivation for this work was a question at the MSE link about the number of strings over a two-letter alphabet that avoid the pattern ABBA.

As far as I know before Goulden-Jackson was invented there was the DFA-Method (Deterministic Finite Automaton also known as FSM, Finite State Machine.) My goal in this contribution was to study and implement this algorithm in order to gain insight about its features and how it influenced its powerful successor. It goes as follows for the case of a single pattern string: compute a DFA whose states represent the longest prefix of the pattern seen at the current position in the string as it is being scanned by the DFA, with the state for the complete pattern doubling as a final absorbing state, since the pattern has been seen. Translate the transitions of the DFA into a system of equations in the generating functions representing strings ending with a given maximal prefix of the pattern, very much like Markov chains. Finally solve the system of equations for the generating functions and thus obtain the sequence of values of strings of length n over the given alphabet that avoid the given pattern.

I have also implemented the DFA method for sets of patterns as opposed to just one pattern. The algorithm is the same except that the DFA does not consist of a chain with backlinks as in the case of a single pattern but a tree of prefixes with backlinks to nodes higher up in the tree. The nodes in the tree represent all prefixes that need to be tracked where obviously a common prefix between two or more patterns is shared i.e. only represented once. The DFA transitions emanating from nodes that are leaves represent absorbing states indicating that one of the patterns has been seen. We run this algorithm once it has been verified that the set of patterns does not contain pairs of patterns where one pattern is contained in another, which causes the longer pattern to be eliminated at the start. (Obviously if the shorter pattern is forbidden the so is the longer.) The number of states of the DFA here is bounded above by the sum of the lengths of the patterns with subpatterns eliminated. The uniqueness property of shared common prefixes holds for subtrees of the main tree i.e. recursively. (The DFA method also copes easily with patterns that have to occur in a certain order.)

I believe the Maple code that I provide here showcases many useful tricks and techniques and can help the reader advance in their Maple studies, which is why I am alerting you to the web link at MSE. I have deliberately aimed to keep it compatible with older versions of Maple as many of these are still in use in various places. The algorithm really showcases the power of Maple in combinatorics computing and exploits many different aspects of the software from the solution of systems of equations in rational generating functions to the implementation of data structures from computer science like trees. Did you know that Maple permits nested procedures as known to those who have met Lisp and Scheme during their studies? The program also illustrates the use of unit testing to detect newly introduced flaws in the code as it evolves in the software life cycle.

Enjoy and may your Maple skills profit from the experience!

Best regards,

Marko Riedel

The software is also available here: dfam-mult.txt

     Example of the equidistant surface at a distance of 0.25 to the surface
x3
-0.1 * (sin (4 * x1) + sin (3 * x2 + x3) + sin (2 * x2)) = 0
Constructed on the basis of universal parameterization of surfaces.

equidistant_surface.mw 


Hi there, fellow primers, it's good to be back after almost 5 years! I just want to share a worksheet on Numerov's algorithm in Maple using procedures as I've recently found out that google could not find any Maple procedure that implements Numerov's algorithm to solve ODEs.   numerov.mw   Reference.pdf 

Below is the worksheet with the whole material presented yesterday in the webinar, “Applying the power of computer algebra to theoretical physics”, broadcasted by the “Institute of Physics” (IOP, England). The material was very well received, rated 4.5 out of 5 (around 30 voters among the more than 300 attendants), and generated a lot of feedback. The webinar was recorded so that it is possible to watch it (for free, of course, click the link above, it will ask you for registration, though, that’s how IOP works).

Anyway, you can reproduce the presentation with the worksheet below (mw file linked at the end, or the corresponding pdf also linked with all the input lines executed). As usual, to reproduce the input/output you need to have installed the latest version of Physics, available in the Maplesoft R&D Physics webpage.

Why computer algebra?

 

 

 

... and why computer algebra?


We can concentrate more on the ideas instead of on the algebraic manipulations

 

We can extend results with ease

 

We can explore the mathematics surrounding a problem

 

We can share results in a reproducible way

 

Representation issues that were preventing the use of computer algebra in Physics

 

 


Notation and related mathematical methods that were missing:


coordinate free representations for vectors and vectorial differential operators,

covariant tensors distinguished from contravariant tensors,

functional differentiation, relativity differential operators and sum rule for tensor contracted (repeated) indices

Bras, Kets, projectors and all related to Dirac's notation in Quantum Mechanics

 

Inert representations of operations, mathematical functions, and related typesetting were missing:

 

inert versus active representations for mathematical operations

ability to move from inert to active representations of computations and viceversa as necessary

hand-like style for entering computations and textbook-like notation for displaying results

 

Key elements of the computational domain of theoretical physics were missing:

 

ability to handle products and derivatives involving commutative, anticommutative and noncommutative variables and functions

ability to perform computations taking into account custom-defined algebra rules of different kinds

(commutator, anticommutator and bracket rules, etc.)

 

 

Examples

 

The Maple computer algebra environment

   

Classical Mechanics

 

Inertia tensor for a triatomic molecule

   

Classical Field Theory

 

*The field equations for the lambda*Phi^4 model

   

*Maxwell equations departing from the 4-dimensional Action for Electrodynamics

   

*The Gross-Pitaevskii field equations for a quantum system of identical particles

   

Quantum mechanics

 

*The quantum operator components of  `#mover(mi("L",mathcolor = "olive"),mo("→",fontstyle = "italic"))` satisfy "[L[j],L[k]][-]=i `ε`[j,k,m] L[m]"

   

Quantization of the energy of a particle in a magnetic field

   

Unitary Operators in Quantum Mechanics

 

*Eigenvalues of an unitary operator and exponential of Hermitian operators

   

Properties of unitary operators

 

 

Consider two set of kets " | a[n] >" and "| b[n] >", each of them constituting a complete orthonormal basis of the same space.


One can always build an unitary operator U that maps one basis to the other, i.e.: "| b[n] >=U | a[n] >"

*Verify that "U=(&sum;) | b[k] >< a[k] |" implies on  "| b[n] >=U | a[n] >"

   

*Show that "U=(&sum;) | b[k] > < a[k] | "is unitary

   

*Show that the matrix elements of U in the "| a[n] >" and  "| b[n] >" basis are equal

   

Show that A and `&Ascr;` = U*A*`#msup(mi("U"),mo("&dagger;"))`have the same spectrum

   

````

Schrödinger equation and unitary transform

 

 

Consider a ket "| psi[t] > " that solves the time-dependant Schrödinger equation:

 

"i `&hbar;` (&PartialD;)/(&PartialD;t) | psi[t] >=H(t) | psi[t] >"

and consider

"| phi[t] > =U(t) | psi[t] >",

 

where U(t) is a unitary operator.

 

Does "| phi[t] >" evolves according a Schrödinger equation

 "i*`&hbar;` (&PartialD;)/(&PartialD;t) | phi[t] >=`&Hscr;`(t) | phi[t] >"

and if yes, which is the expression of `&Hscr;`(t)?

 

Solution

   

Translation operators using Dirac notation

 

In this section, we focus on the operator T[a] = exp((-I*a*P)*(1/`&hbar;`))

Settings

   

The Action (translation) of the operator T[a]"=(e)^(-i (a P)/(`&hbar;`))" on a ket

   

Action of T[a] on an operatorV(X)

   

General Relativity

 

*Exact Solutions to Einstein's Equations  Lambda*g[mu, nu]+G[mu, nu] = 8*Pi*T[mu, nu]

   

*"Physical Review D" 87, 044053 (2013)

 

Given the spacetime metric,

g[mu, nu] = (Matrix(4, 4, {(1, 1) = -exp(lambda(r)), (1, 2) = 0, (1, 3) = 0, (1, 4) = 0, (2, 1) = 0, (2, 2) = -r^2, (2, 3) = 0, (2, 4) = 0, (3, 1) = 0, (3, 2) = 0, (3, 3) = -r^2*sin(theta)^2, (3, 4) = 0, (4, 1) = 0, (4, 2) = 0, (4, 3) = 0, (4, 4) = exp(nu(r))}))

a) Compute the Ricci and Weyl scalars

 

b) Compute the trace of

 

"Z[alpha]^(beta)=Phi R[alpha]^(beta)+`&Dscr;`[alpha]`&Dscr;`[]^(beta) Phi+T[alpha]^(beta)"

 

where `&equiv;`(Phi, Phi(r)) is some function of the radial coordinate, R[alpha, `~beta`] is the Ricci tensor, `&Dscr;`[alpha] is the covariant derivative operator and T[alpha, `~beta`] is the stress-energy tensor

 

T[alpha, beta] = (Matrix(4, 4, {(1, 1) = 8*exp(lambda(r))*Pi, (1, 2) = 0, (1, 3) = 0, (1, 4) = 0, (2, 1) = 0, (2, 2) = 8*r^2*Pi, (2, 3) = 0, (2, 4) = 0, (3, 1) = 0, (3, 2) = 0, (3, 3) = 8*r^2*sin(theta)^2*Pi, (3, 4) = 0, (4, 1) = 0, (4, 2) = 0, (4, 3) = 0, (4, 4) = 8*exp(nu(r))*Pi*epsilon}))

c) Compute the components of "W[alpha]^(beta)"" &equiv;"the traceless part of  "Z[alpha]^(beta)" of item b)

 

d) Compute an exact solution to the nonlinear system of differential equations conformed by the components of  "W[alpha]^(beta)" obtained in c)

 

Background: paper from February/2013, "Withholding Potentials, Absence of Ghosts and Relationship between Minimal Dilatonic Gravity and f(R) Theories", by P. Fiziev.

 

a) The Ricci and Weyl scalars

   

b) The trace of "  Z[alpha]^(beta)=Phi R[alpha]^(beta)+`&Dscr;`[alpha]`&Dscr;`[]^(beta) Phi+T[alpha]^(beta)"

   

b) The components of "W[alpha]^(beta)"" &equiv;"the traceless part of " Z[alpha]^(beta)"

   

c) An exact solution for the nonlinear system of differential equations conformed by the components of  "W[alpha]^(beta)"

   

*The Equivalence problem between two metrics

 

 

From the "What is new in Physics in Maple 2016" page:

  

In the Maple PDEtools package, you have the mathematical tools - including a complete symmetry approach - to work with the underlying [Einstein’s] partial differential equations. [By combining that functionality with the one in the Physics and Physics:-Tetrads package] you can also formulate and, depending on the metrics also resolve, the equivalence problem; that is: to answer whether or not, given two metrics, they can be obtained from each other by a transformation of coordinates, as well as compute the transformation.

Example from: A. Karlhede, "A Review of the Geometrical Equivalence of Metrics in General Relativity", General Relativity and Gravitation, Vol. 12, No. 9, 1980

   

*Equivalence for Schwarzschild metric (spherical and Krustal coordinates)

   

Tetrads and Weyl scalars in canonical form

 

 

Generally speaking a canonical form is obtained using transformations that leave invariant the tetrad metric in a tetrad system of references, so that theWeyl scalars are fixed as much as possible (conventionally, either equal to 0 or to 1).

 

Bringing a tetrad in canonical form is a relevant step in the tackling of the equivalence problem between two spacetime metrics.

The implementation is as in "General Relativity, an Einstein century survey", edited by S.W. Hawking (Cambridge) and W. Israel (U. Alberta, Canada), specifically Chapter 7 written by S. Chandrasekhar, page 388:

 

 

`&Psi;__0`

`&Psi;__1`

`&Psi;__2`

`&Psi;__3`

`&Psi;__4`

Residual invariance

Petrov type I

0

"<>0"

"<>0"

1

0

none

Petrov type II

0

0

"<>0"

1

0

none

Petrov type III

0

0

0

1

0

none

Petrov type D

0

0

"<>0"

0

0

`&Psi;__2`  remains invariant under rotations of Class III

Petrov type N

0

0

0

0

1

`&Psi;__4` remains invariant under rotations of Class II

 

 

The transformations (rotations of the tetrad system of references) used are of Class I, II and III as defined in Chandrasekar's chapter - equations (7.79) in page 384, (7.83) and (7.84) in page 385. Transformations of Class I can be performed with the command Physics:-Tetrads:-TransformTetrad using the optional argument nullrotationwithfixedl_, of Class II using nullrotationwithfixedn_ and of Class III by calling TransformTetrad(spatialrotationsm_mb_plan, boostsn_l_plane), so with the two optional arguments simultaneously.

 

The determination of appropriate transformation parameters to be used in these rotations, as well as the sequence of transformations happens all automatically by using the optional argument, canonicalform of TransformTetrad .

 

restart; with(Physics); with(Tetrads)

`Setting lowercaselatin letters to represent tetrad indices `

 

0, "%1 is not a command in the %2 package", Tetrads, Physics

 

0, "%1 is not a command in the %2 package", Tetrads, Physics

 

[IsTetrad, NullTetrad, OrthonormalTetrad, PetrovType, SimplifyTetrad, TransformTetrad, e_, eta_, gamma_, l_, lambda_, m_, mb_, n_]

(7.4.1)

Petrov type I

   

Petrov type II

   

Petrov type III

   

Petrov type N

   

Petrov type D

   

 

 

Physics_2016_IOP_webinar.mw     Physics_2016_IOP_webinar.pdf


Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

Rotational motion mechanism with quasi stops      
02rep.pdf
DIMA.mw

First 27 28 29 30 31 32 33 Last Page 29 of 59