sage與高中數學的應用


June 25, 2013


1 冊 函
 1.1
  1.1.1
 1.2
 1.3
  1.3.1
  1.3.2
2 Sagemath R 語言
 2.1
  2.1.1
  2.1.2
 2.2
  2.2.1
  2.2.2
  2.2.3
3
 3.1
  3.1.1
  3.1.2
4 ISage動功
 4.1
  4.1.1

A SageTEX
 A.1 SageTEX
 A.2 SageTEX使

    產生Sagemath 門門算等 Sage

Sagemath 的目 MagmaMapleMathematica MATLAB 通過Sage Notebook 何使Sagemath 一一 1


PIC

Figure 1: Sage Notebook

Sage Sage Notebook 語言來使 中主sage 使分則使r language


PIC

Figure 2: 語言

Chapter 1
冊 函

使 其函的直

1.1

1.1.1

expand()collect()

expand()
collect(s)s數收

x,a,b,c  (x + a)(x + b)(x + c) = x3 + (a + b + c)x2 + (ab + bc + ca)x + abc.     x,a,b,c = var("x,a,b,c")  
   f=expand((x+a)*(x+b)*(x+c))  
   f.collect(x)

即可a + b + cx2 + abc + x3 + ab + ac + bcx

1.2

sage

plot()

1.3

1.3.1

sage

plot()
透過這  y = 2x  以下evaluate 1    plot(2*x)

即可 y = 2x  2

PIC

 x 

PIC

y = 1 2x

         PIC          PIC

y = 4xy = 1 2x



 y = mx + k  透過一些2的直  y   y   x   x   y  4 x  2    plot(2*x-4)

PIC

y = 2x 4

sage 3 f(x) = x2 f1(x) = (x 1)2 f2(x) = (x 1)2 1    plot(x^2,-3,3)  
   plot((x-1)^2,-3,3)  
   plot((x-1)^2-1,-3,3)

PIC PIC PIC 分別加pp1p2命名    p=plot(x^2,-3,3)  
   p1=plot((x-1)^2,-3,3)  
   p2=plot((x-1)^2-1,-3,3)

後引show()目的pp1p2 4

    show(p+p1+p2)


PIC


透過pp1p2p 產生p1p1p2

1.3.2

 P(x) = 2x4 3x3 + x2 2   Q(x) = 2x4 + x3 x + 4   P(x) + Q(x)   P(x) Q(x)     p=2*x^4-3*x^3+x^2-2  
   q=2*x^4+x^3-x+4  
   p+q  
   p-q

即可 P(x) + Q(x) = 4x4 2x3 + x2 x + 2   P(x) Q(x) = 4x3 + x2 + x 6 

 P(x) = 2x3 x + 3   Q(x) = 3x2 + 2x 5     p=2*x^3-x+3  
   q=-3*x^2+2*x-5  
   p*q

 P(x)Q(x) = 3x2 2x + 52x3 x + 3  使    expand(p*q)

即可 P(x)Q(x) = 6x5 + 4x4 7x3 11x2 + 11x 15 

 P(x) = x4 2x2 + 3x 4   Q(x) = x2 x 3     p=x^4-2*x^2+3*x-4  
   q=x^2-x-3  
   p.maxima_methods().divide(q)

x2 + x + 2, 8x + 2 5

 f(x) 使 通過上三 P(1,2)Q(2, 3)R(3, 12).6    R = PolynomialRing(QQ, ’x’)  
   f = R.lagrange_polynomial([(1,-2),(2,3),(3,12)])  
   f

 2x2 x 3 

Chapter 2
Sagemath R 語言

sagemath 語言 使Sage notebook R 語言


PIC

Figure 2.1: R 語言

2.1

factorialchoose分別

2.1.1

8分別

 P38 = 8! (83)!
透過 R 語言以下

    factorial(8)/factorial(8-3)

即可 [1]336 

2.1.2

Rchoose() 使
83人一

 C38 = 8! 3!(83)!
透過 choose() 即可便

    choose(8,3)

即可 [1]56 

2.2

2.2.1

32

    x=c(0,0,0,1,1)                   %建立樣本空間  
    s=sample(x,10000,replace=TRUE)   %一 次 取 一 顆 且 取 後 放 回 , 共 取10000次  
    red=sum(s==1)                    %篩選與計算所要的樣本數  
    red/10000                        %計算比例

每次 0.4


1082 P( | )= ?

    x=rep(c(1,0),c(10,8))            %建立樣本空間  
    A=replicate(10000,sample(x,2))   %重複實驗10000次  
    s=A[1,]+A[2,]                    %篩選與計算所要的樣本數  
    n=sum(s==2)  
    m=sum(s>=1)  
    n/m                              %計算比例

果會0.36 

2.2.2

透過R

 X  件下出其
(1) p = 1 2.
(2) p = 1 3.

(1)

n=4; p=1/2; X=seq(0,n)  
plot(X, dbinom(X,n,p), type=’h’, main=’dbinom(0:4, n=4, p=1/2)’, xlab=’X’)

(2)

n=4; p=1/3; X=seq(0,n)  
plot(X, dbinom(X,n,p), type=’h’, main=’dbinom(0:4, n=4, p=1/3)’, xlab=’X’)


PIC
PIC

2.2.3

1103

    sample(1:10,size=3)

[1]964

Chapter 3

3.1

3.1.1

1

2 × 2

A = a11a12 a21 a22 ,B = b11b12 b21 b22

A+B = a11 + b11a12 + b12 a21 + b21 a22 + b22

AB = a11 b11a12 b12 a21 b21 a22 b22

AB = a11 × b11 + a12 × b21a11 × b12 + a12 × b22 a21 × b11 + a22 × b21 a21 × b12 + a22 × b22

()以下

    var("a_11 , a_12 , a_21 , a_22")  
    var("b_11 , b_12 , b_21 , b_22")

AB

    A = matrix([[a_11, a_12], [a_21, a_22]])  
    B = matrix([[b_11, b_12], [b_21, b_22]])

看看

    A  
         [a_11 a_12]  
         [a_21 a_22]  
    B  
         [b_11 b_12]  
         [b_21 b_22]

A+B A-B

    A+B  
         [a_11 + b_11 a_12 + b_12]  
         [a_21 + b_21 a_22 + b_22]  
    A-B  
         [a_11 - b_11 a_12 - b_12]  
         [a_21 - b_21 a_22 - b_22]  
    A*B  
         [a_11*b_11 + a_12*b_21 a_11*b_12 + a_12*b_22]  
         [a_21*b_11 + a_22*b_21 a_21*b_12 + a_22*b_22]  

3.1.2


 A = ab b c  了一  P(x,y)   P(X,Y ) = P(ax + by,cx + dy) ,

x y X Y = ab b c x y = ax + by cx + dy

使以下 2

    linear_transformation(A, side=’right’)

  1.  A = 25 1 3   分別 O(0, 0),P(1, 0),Q(0, 1),R(2, 3)   O,P,Q,R 
        A = matrix([[2, 5], [1,3]])  
        phi = linear_transformation(A, side=’right’)  
        O = [0,0]  
        P = [1,0]  
        Q = [0,1]  
        R = [2,3]  
        phi(O)  
        phi(P)  
        phi(Q)  
        phi(R)

    以下

        phi(O)  
             (0, 0)  
        phi(P)  
             (2, 1)  
        phi(Q)  
             (5, 3)  
        phi(R)  
             (19, 11)

  2. A S  S(4, 7)  S

    A
        A = matrix([[2, 5], [1,3]])  
        B = matrix([[4],[7]])  
        ~A*B

    即可

        [-23]  
        [ 10]

Chapter 4
ISage動功

4.1

4.1.1

使@interact 透過動功  f(x) = a sin(bx + c) + d  a,b,c,d    sin    cos    cos   sin 

  #
  @interact
  def scale(a=slider([-10..10],default = 1, label="a"),
  b=slider([1..10],default = 1,label="b"),
  c=slider(srange(-10,10,0.5),default = 0, label="c"),
  d=slider([-10..10],default = 0, label="d"),
  cosin=checkbox(False, "cos(x)")):
  
  #
      if cosin:
          show(plot(sin(x),-10,10,color=(1,0,0))+
          plot(a*sin(b*x+c*pi)+d,-10,10)+
          plot(cos(x),-10,10,color=(0,1,0)),aspect_ratio=1)
      else:
          show(plot(sin(x),-10,10,color=(1,0,0))+
          plot(a*sin(b*x+c*pi)+d,-10,10),aspect_ratio=1)
  
  #
      print ’y_blue=a*sin(b*x+c*pi)+d’
      print ’y_red=sin(x)’
      print ’y_green=cos(x)’

 


Sagepython python


使@interact 動功 1 slider 2 checkbox

  @interact
  def scale(a=slider([],default=,label=""),...,
     cosin=checkbox(, label=""))):

 

使if   cos  3 True else   cos  False


分別



PIC

 A
SageTEX

SageTEXLATEX使Sage LATEX  263 103  也不件中Sage 來作以了 使SageTEX

使SageTEXLATEX

A.1 SageTEX

SageTEX並不Sage SageTEX TEXSageTEX使package sagetex.sty Sage /local/share/texmf/tex/generic/sagetex/ 在執pdflatex *.sagetex.sage sagetex.sty tex 即可

A.2 SageTEX使

SageTEX使*.tex 1

以下tex

  1. sagetex
      \usepackage{sagetex}
  2. sageblock

    sageblock 送進 *.sage
    \begin{sageblock}

           f(x)= exp(x) * sin(2*x)

    \end{sageblock}

    使sageblock 西 f 

    ex sin 2x = 3ex sin 2x + 4ex cos 2x

    使\sage f(x)  中並2

      \[
      \sage{f(x)} = \sage{diff(f, x, 2)(x)}
      \]


  3. \sageplot
      \sageplot[width=6cm]{plot(f, -1, 1)}

    即可
    PIC


以下前務sage sage *.tex

  1. *.tex pdflatex
      pdflatex *.tex
  2. *.sagetex.sage sage 3
      sage *.sagetex.sage
  3. 在執次步
      pdflatex *.tex

[1] 2008。《/

[2] 2009。《》。
http://hsmaterial.moe.edu.tw/schema/ma/data/sun/menu/index.html

[3] Sage Documentation v5.9. Available from: http://www.sagemath.org/doc/index.html.

[4] high-school-sage - Sage for high school students - Google Project Hosting.
    Available from: http://code.google.com/p/high-school-sage/

[5] 2012。《(1,2)》。

[6] 森棚2011。《(3,4)》。

[7] 森棚2012。《(,)》。

[8] 2010。《R》。台北

[9] 2011。《R計課
學學

[10] interact/graphics - Sage Wiki. Available from: http://wiki.sagemath.org/interact/graphics

[11] Using SageTeX. Available from: http://www.sagemath.org/doc/tutorial/sagetex.html

[12] Dan Drake(2009). ”The SageTEX package”.
Available from: http://mirror.hmc.edu/ctan/macros/latex/contrib/sagetex/sagetexpackage.pdf