Archive

Archive for June, 2009

Soạn thảo tiếng Nga với mã UTF-8 cho MikTeX

June 29, 2009 Leave a comment

Trong phần trước có giới thiệu về gói soạn thảo tiếng Nga với mã KOI8-R. Tuy nhiên UTF-8 vẫn là mã phổ biến hơn, tiện lợi trong quá trình soạn thảo một tài liệu khoa học tiếng Nga.

Bạn cần download gói Unicode ở đây, và gói Cyrillic ở đây. Sau đó giải nén, và copy lần lượt vào các thư mục

C:\Program Files\MiKTeX 2.7\tex\latex\unicode

C:\Program Files\MiKTeX 2.7\tex\latex\cyrillic

Sau đó vào Start Menu> MikTeX 2.7> Settings> General, nhấp vào nút Refresh FNDB Update Formats.

Để sử dụng gói này, bạn khai báo như sau:

\documentclass[a4paper,12pt]{article}

\usepackage[T2A]{fontenc}

\usepackage[utf8x]{inputenc}

\usepackage[russian]{babel}

\begin{document}

\textsc{ Я вас любил…}\\

Я вас любил: любовь еще, быть может,\\

В душе моей угасла не совсем;\\

Но пусть она вас больше не тревожит;\\

Я не хочу печалить вас ничем.\\

Я вас любил безмолвно, безнадежно,\\

То робостью, то ревностью томим;\\

Я вас любил так искренно, так нежно,\\

Как дай вам бог любимой быть другим.\\

1829\\

\end{document}

Có thể sử dụng file mẫu, download ở đây

Categories: TeX Tags: , , ,

Tool Bar

June 27, 2009 Leave a comment

Tool Bar – Thanh công cụ là đối tượng thường thấy trong các cửa sổ chương trình ứng dụng, nó là một dãy các nút công cụ được xếp trên một thanh thường nằm ở vị trí ở lề dọc hoặc lề ngang. Nó cũng đồng chức năng như button hay menu tuy nhiên thân thiện và dễ sử dụng hơn. Chúng ta sẽ làm quen với đối tượng Toolbar trong một ứng dụng Maplet.

Cú pháp chung

> with(Maplets[Elements]):

> MyMaplet := Maplet(Window(‘title’ = “My Maplet Application”, ‘toolbar’ = ‘TB’,

 [

# Phần thân của cửa sổ

]),

ToolBar[TB](

ToolBarButton(caption = “Tool 1″, image = Image(“image1.png”), onclick = <Command>),

ToolBarSeparator(),

ToolBarButton(caption = “Tool 2″, image = Image(“image2.png”), onclick =<Command>),

 ToolBarSeparator(),

….

ToolBarButton(caption = “Tool n”, image = Image(“imagen.png”), onclick = <Command>)

)):

> Maplets[Display](MyMaplet);

Trong đó chú ý các file hình ảnh phải được lưu cùng thư mục với file maple worksheet, và nếu bạn export thành file maplet thì cũng cần các file này đi kèm.

Thí dụ: Tạo một ứng dụng tính tích phân bất định với ToolBar có các chức năng:

- Run: Tính tích phân.

- About: Thông tin về ứng dụng

- Exit: Thoát khỏi chương trình.

Ta thực hiện như sau:

> with(Maplets[Elements]):

> myMaplet := Maplet(Window(‘title’ = “Integration calculator”, ‘toolbar’ = ‘TB’,

[["Enter a function with variable x"],

[TextField['TF'](40)],

["Result of integration"],

[MathMLViewer['ML']()]]),

ToolBar[TB](ToolBarButton(caption = “Do It”, image = Image(“run.png”), onclick = Evaluate(‘ML’ = ‘Int(TF, x) = int(TF, x) + C’)),

ToolBarSeparator(),

ToolBarButton(caption = “About”, image = Image(“about.png”), onclick = RunDialog(‘DG’)),

ToolBarSeparator(),

ToolBarButton(caption = “Exit”, image = Image(“exit.png”), onclick = Shutdown())

),

MessageDialog[DG](“Integration Calculator. Copyringt (C) 2009 Mathematical Diary”)):

> Maplets[Display](myMaplet);

Các file nguồn, download ở đây (corrected)

Ta có kết quả là cửa sổ như sau

ToolBar

 Một số file hình ảnh mẫu có thể hữu ích bạn có thể tham khảo thêm ở đây

Categories: Maplet Programming Tags: , ,

Menu Bar

June 25, 2009 Leave a comment

MenuBar là một đối tượng quen thuộc nằm ở lề trên cùng cửa sổ, nó phân loại các nhóm chức năng mà ứng dụng có thể thực hiện thành các đối tượng Menu. Điều này sẽ giúp cho cửa sổ chúng ta trông gọn gàng hơn, tránh sử dụng quá nhiều nút.

Cú pháp của MenuBar như sau:

> with(Maplets[Elements]):

> myMaplet:=Maplet( 

 Window(title=”My Maplet Application”,  menubar=MB, # MB là tham chiếu bạn đặt cho MenuBar,       

[                                           
              # phần thân của cửa sổ

]   ) ,         

 MenuBar[MB](                

     Menu( “Menu 1″,                          

          MenuItem( “Menu Item 1″, <Command 1>),      

          MenuItem( “Menu Item 2″, <Command 2>),          

          …..                

          MenuItem( “MenuItem n”, <Command n>)        ), 

          …..                           

     Menu( “Menu m”, 

          MenuItem( “MenuItem 1″, <Command 1>),   

          MenuItem( “MenuItem 2″, <Command 2>),     

          …..                    

          MenuItem( “MenuItem n”, <Command n>)       ),        

                   )  ):        

> Maplets[Display](myMaplet);


Thí dụ. Tạo ứng dụng tính đạo hàm của hàm số f(x) với một menu gồm 2 item là

- Evaluate: Tính đạo hàm

- Exit: Thoát khỏi chương trình

> with(Maplets[Elements]):

> myMaplet := Maplet(Window(title = “My Maplet Application”, menubar = MB,

 [["Function   f(x)  = ", TextField[TF1](30)],

["Derivative f'(x) = ", TextField[TF2](30)]]),

MenuBar[MB](

Menu(“My Menu”,

  MenuItem(“Evaluate”, Evaluate(‘TF2′ = ‘diff(TF1, x)’)),

  MenuItem(“Exit”, Shutdown()))

)):

> Maplets[Display](myMaplet);

Kết quả ta có cửa số ứng dụng như sau:

Menubar

Chúng ta sẽ gặp lại MenuBar trong thí dụ về các ứng dụng lớn và phức tạp hơn.

Categories: Maplet Programming

Bất đẳng thức liên quan đến giá trị kì dị của ma trận

June 4, 2009 Leave a comment

Đối với hệ vector ta ký hiệu

Mệnh đề 1: Nếu là các giá trị riêng của  thế thì với hệ vector thì

Đặt \{e_1,e_2,...,e_n\} là cơ sở trực chuẩn cũng đồng thời là các vector riêng của toán tử A.

Ta có (Ax_i,x_j)=\sum_{k=1}^n\alpha_k(x_i,e_k)\overline{(x_j,e_k)}=\sum_{k=1}^n\alpha_k(x_i,e_k)(e_k,x_j)

Khai triển theo công thức Binet-Cauchy ta nhận được

\Gamma(Ax_i,x_j)=\sum_{1\le k_1<...<k_m\le n}\Gamma(x_i,\alpha_k e_k)\Gamma(e_k,x_j)

Áp dụng bất đẳng thức Cauchy-Schwarz ta có

(\Gamma(Ax_i,x_j))^2\le (\sum_{1\le k_1<...<k_m\le n}(\Gamma(x_i,\alpha_k e_k))^2)(\sum_{1\le k_1<...<k_m\le n}(\Gamma(e_k,x_j))^2)

\le \alpha_1^2\alpha_2^2...\alpha_m^2 (\Gamma(x_i,x_j))^2

Mệnh đề 2: Giả sử là các giá trị riêng của (singular values). Thế thì với bất kì hệ vector () thì

Điều này hiển nhiên là hệ quả của mệnh đề 1.

Mệnh đề 3: Cho AB – toán tử tuyến tính trong \mathbb{R}, , là giá trị riêng của toán tử tương ứng, được đánh số thứ tự giảm dần theo giá trị. Chứng minh với ta có

Giả sử là cơ sở trực chuẩn hợp từ cơ sở trực chuẩn cũng đồng thời là các vector riêng của

(Áp dụng MĐ2 hai lần)

Window Body Elements

June 3, 2009 Leave a comment

Body Elements là các đối tượng ở phần thân cửa sổ ứng dụng maplet. Dưới đây sẽ giới thiệu các elements loại này đi kèm với các thí dụ sơ bộ.

I – Button

Các thuộc tính của button bao gồm:

background = color,  màu nền của nút, sử dụng chuẩn RGB color

caption = string,  tên của hiển thị nút 

enabled = true or false , nút có thể click được hay không, mặc định là true

font = Font, font của văn bản trên nút

foreground = colormàu của văn bản trên nút

halign = left, center, hoặc right căn lề của văn bản (hoặc ảnh) trên nút theo phương ngang

height = posint, chiều cao của nút tính bằng đơn vị là pixel, giá trị mặc định là chiều cao phù hợp với khổ của văn bản (hoặc ảnh) trên nút.

image = Image là đối tượng hoặc tham chiếu đến một đối tượng hình ảnh (name hoặc string)

onclick = Action hoặc một đối tượng lệnh, hoặc tham chiếu đến một đối tượng Action (name hoặc string), nó sẽ cho biết điều gì sẽ xẩy ra khi nút đó được click.

reference = name hoặc string,  tham chiếu cho đối tượng Button.

tooltip = string hoặc symbol, chỉ dẫn mô tả hoặc trợ giúp.

visible = true hoặc false, nút có được thấy bởi người sử dụng hay là không, mặc định là true. 

valign = top, center, hoặc bottom, căn chỉnh văn bản (hoặc ảnh) trên nút theo phương dọc

 

Thí dụ:

> restart;

> with(Maplets[Elements]):

>  Maplet1:=Maplet( [

 ["Here is my maplet!"],           # print ra dòng “Here is my maplet!”

 [ Button("OK", Shutdown())] # caption của nút là OK, sau khi nhấp vào nút này (onclick) thì sẽ 

                                                           # thực  hiện lệnh Shutdow() tắt cửa sổ ứng dụng maplet

] ):

>  Maplets[Display](Maplet1);

Kết quả ta được cửa sổ như sau

button

II – Label

Chúng ta biết rằng để hiển thị một dòng text, chẳng hạn “Here is my Text” lên trên cửa sổ ứng dụng thì một cách đơn giản ta viết ["Here is my Text"], một cách khác là chúng ta có thể dùng Label

Một Label có thể gồm text hoặc image, các thuộc tính của nó bao gồm background, caption, enabled, font, foreground, halign, height, image, reference, tooltip, valign, visible, width

Thí dụ:    

> restart;

> with(Maplets[Elements]):

>  Maplet2:=Maplet( [

    ["Standard text"],

    [Label( "Italicized text", 'font' = Font(helvetica, italic, 25) )],

    [Button("OK", Shutdown())]

     ] ):

>  Maplets[Display](Maplet2);

Kết quả sẽ là:

label

 

III – TextBox

TextBox là một đối tượng trên cửa số ứng dụng hiện thị một hộp văn bản, có vai trò là output hoặc input.

Các thuộc tính của TextBox bao gồm background, cursor, editable, enabled, focus, font, foreground, height, onchange, popupmenu, reference, tooltip, value, visible, width, or wrapped

cursor = nonnegint , vị trí của con trỏ trong hộp văn bản

editable = true hoặc false, văn bản trong hộp văn bản có thẻ được sửa bởi người sử dụng hay không, mặc định là true.

onchange  = Action hoặc một đối tượng lệnh, hoặc tham chiếu đến một đối tượng Action, là điều sẽ đợc thực thi khi người sử dụng thay đổi value của TexBox

focus = true

popupmenu = PopupMenu hoặc tham chiếu đến một đối tượng PopupMenu (name hoặc string). Các phần tử mặc định trên pop-up menu (Khi nhấp chuột phải trên TextBox) là Cut, Copy, Paste, Delete, và Select All khi thuộc tính editable là true; chỉ có Copy và Select All nếu editable là false.   

wrapped = true hoặc false, văn bản cóđuược bẻ dòng hay không, mặc định là true  

Thí dụ:

>with(Maplets[Elements]):

> Maplet3 := Maplet([

 ["Enter some text:  ", TextBox['IB1'](3 .. 30)],

 [Button("OK", Shutdown(['IB1'])), Button(“Cancel”, Shutdown())]

]):

>result := Maplets[Display](Maplet3);

Kết quả là

TextBox

 

IV- MathMLViewer

MathMLViewer là một đối tượng trên cửa sổ ứng dụng hiển thị một hộp biểu diễn công thức Toán học.

Các thuộc tính của MathMLViewer bao gồm background, breakwidth, fontsize, foreground, height, reference, value, visible, width, wrapped

Chú ý là value = algebraic, giá trị này được thông qua bằng cách sử dụng MathML[Export] .

Thí dụ:

> with(Maplets[Elements]):

> Maplet4 := Maplet([   

  ["Here is my formula:"],

  [MathMLViewer('value' = MathML[Export](int(sin(x^2), x)))],

  [Button("OK", Shutdown())]

   ]):

> Maplets[Display](Maplet4);

Kết quả sẽ là

MathMLViewer

 

Categories: Maplet Programming
Follow

Get every new post delivered to your Inbox.