ประกาศ

สื่อดิจิทัลส่วนใหญ่เป็นหนังสือดิจิทัล ในรูปแบบของไฟล์ pdf และ epub เป็นส่วนใหญ่ และรูปแบบ cbr, djuv, mobi, html เป็นส่วนน้อย ซึ่งแน่นอนว่ามีตัวหนังสือและรูปภาพประกอบ นอกจากนี้ยังมีหนังสื
อที่อยู่ในรูปของไฟล์เสียงที่มีคนอ่านให้ฟัง ส่วนสื่อที่อยู่ในรูปของภาพเคลื่อนไหส่วนวก็จะเป็นวิดีโอ ซึ่งจะเป็นวิดีโอทางการศึกษานำไปใช้ประกอบการเรียนการสอนในรายวิชาต่างๆ ได้ ซึ่งบางสื่อสามารถดาวโหลดมาได้จากแหล่งต่างๆ บางสื่อต้องมีรหัสผ่าน หรือต้องมีการจ่ายเงินออนไลน์จึงจะอ่านได้

Wednesday, 17 January 2018

สารบาญไซแลบสำหรับผู้เริ่มต้น

Table of content

Introduction
About this document 4
Install Scilab 4
Mailing list 4
Complementary resources 4

Chapter 1 – Become familiar with Scilab The general environment and the console 5
Simple numerical calculations 6
The menu bar 7
The editor 8
The graphics window 9
Windows management and workspace customization 11

Chapter 2 - Programming Variables, assignment and display 12
Loops 16
Tests 17
2 and 3D plots 18
Supplements on matrices and vectors 23
Calculation accuracy 29
Solving differential equations 30

Chapter 3 – Useful Scilab functions In analysis 32
In probability and statistics 32
To display and plot 33
Utilities 33

บทนำ ไซแลบสำหรับผู้เริ่มต้น

Introduction
About this document 4
Install Scilab 4
Mailing list 4
Complementary resources 4

เกี่ยวกับเอกสารนี้About this document
จุดประสงค์ของเอกสารนี้เพื่อแนะนำไปที่ละขั้นๆในการสำรวจลักษณะพื้นฐานของไซแลบสำหรับผู้ใช้ที่ไม่เคยใช้ซอพท์แวร์ในการคำนวณนี้มาก่อน  การนำเสนอในเอกสารโดยมีข้อจำกัดที่จงใจนำเสนอเนื้อหาแก่นหลักที่ทำให้ง่ายต่อการใช้ และดำเนินการไซแลบ  การคำนวณ การเขียนและการแสดงกราฟ โดยใช้ไซแลบเวอร์ชั้น 6.02    เราสามารถใช้คำสังทั้งหมดที่มีจากเวอร์ชันนี้.

การติดตั้งไซแลบ Install Scilab Scilab
การติดตั้งซอพท์แวร์การคำนวณไซแลบที่ทุกคนสามารถดาวน์โหลดมาใช้ได้ภายใต้ระบบปฏิบัติการวินโดว์ ลินุกซ์ และ แมค  OS X, ไซแลบสามารถดาวโหลดได้ที่เว็บไซต์แอดเดรส  http://www.scilab.org/  ผู้ใช้จะได้รับการแจ้งบอกข่าวสารเกี่ยวกับซอพท์แวร์ไซแลบที่ปล่อยออกมาในรุ่นใหม่ โดยผู้ใช้สามารถซับสไคร์บ ตามช่องทางที่ให้ไว้ตามเว็บแอดเดรสดังนี้: http://lists.scilab.org/mailman/listinfo/release

รายการแลกเปลี่ยนเมลล์ Mailing list
รายการแจ้งข่าวทางเมลที่อำนวยความสะดวกระหว่างผู่ใช้ไซแลบ มีรายละเอียดในรายการเรื่องต่างๆ ของเมลล์(รายการในภาษาฝรั่งเศษ  สำหรับโลกของการศึกษารายการเมลล์สากลเป็นภาษาอังกฤษ).  หลักการที่ง่าย ผู้ที่ลงทะเบียนไว้จะสื่อสารกันและกันโดยอีเมลล์ได้( คำถาม  คำตอบ แบ่งปันแลกเปลี่ยนเอกสาร การแสดงความเห็นย้อนกลับ..).  เพื่อที่จะกวาดดูค้นหารายการเมลล์และการซับสไคร์บ ให้ไปที่แอดเดรสต่อไปนี้: http://www.scilab.org/communities/user_zone/mailing_list

แหล่งข้อมูลสารสนเทศเสริม Complementary resources 
ถ้าสามารถเชื่อมต่ออินเตอร์เน็ตได้  ผู้ใช้จะได้รับเชิญให้เข้าเยี่ยมเว็บไซต์ไซแลบ เป็นที่ที่ผู้ใช้จะค้นหาส่วนหรือเนื้อหาที่เกี่ยวข้องกับการใช้งานไซแลบ(http://www.scilab.org/support/documentation), ด้วยลิงค์แอดเดรสนี้และเอกสารที่เกี่ยวข้องสามารถที่จะดาวโหลดและพิมพ์ออกมาใช้ได้ฟรี

บทที่ 1 รู้จักคุ้นเคยกับไซแลบ Become familiar with Scilab

Chapter 1 – รู้จักคุ้นเคยกับไซแลบ Become familiar with Scilab 


The general environment and the console 5
Simple numerical calculations 6
The menu bar 7
The editor 8
The graphics window 9
Windows management and workspace customization 11

Chapter 1 – Become familiar with Scilab
ประโยชน์ของพื้นที่ทำงานในไซแลบประกอบด้วยหน้าต่างทำงานหลายอย่าง
 • The console for making calculations,
 • The editor for writing programs,
 • The graphics windows for displaying graphics,
 • The embedded help.

The general environment and the console
หลักจากดับเบิลคลิกที่ไอคอนโปรแกรมไซแลบเข้าสู่การใช้งาน สิงแวดล้อมของไซแลบโดยดีฟอลท์ประกอบด้วยหน้าต่างที่ให้มาต่อไปนี้  – หน้าต่างคอนโซล, หน้าต่างเบล้าเซอร์ไฟล์และตัวแปร, หน้าต่างประวัติการใช้คำสั่ง  (ให้ดูที่ “Windows management and workspace customization”, page 11):


ในคอนโซลนี้หลังเครื่องหมายเตรียมพร้อม “ --> “, เพียงแต่พิมพ์คำสั่งแล้วกดคีย์ Enter  (Windows and Linux) หรือคีย์ Return (Mac OS X) บนคีย์บอร์ดเพื่อให้ใด้ผลลัพธ์แสดงผลการทำงานตามคำสั่ง

 --> 57/4
ans =
         14.25

--> (2+9)^5
ans =
         161051.

ยังสามารถกลับมาที่จุดหนึ่งจุดใดโดยใช้ลูกศรบนคีย์บอร์ด ← ↑ → ↓ หรือโดยการใช้การเคลื่อนเม้าซ์  คีย์ลูกศรทางซ้ายและขวาใช้ในการเปลี่ยนคำสั่ง และคีย์ลูกศรชี้ขึ้นและลงใช้ในการกลับมาสู่คำสั่งที่ดำเนินการไปแล้วเพื่อแก้ไขให้ทำงานใหม่ได้

Simple numerical calculations
การคำนวณทุกอย่างในไซแลบกับจำนวณตัวเลข ไซแลบดำเนินการคำนวณด้วยเมตริกซ์(see chapter 2, page 23). เครื่องหมายดำเนินการเขียนด้วย“ + “ สำหรับการบวก, “ – “ สำหรับการลบ, “ * “ สำหรับการคูณ, “ / “ สำหรับการหาร, “ ^ “ สำหรับยกกำลัง ตัวอย่างเช่น
 -->2+3.4
       ans =
               5.4
ตัวพิมพ์เล็กใหญ่ให้ผลแตกต่างกัน  ดังนั้นจึงต้องคำนึงถึงการพิมพ์ด้วยพิมพ์เล็กและพิมพ์ใหญ่ที่ต่างกันในการคำนวณที่เหมาะสม  ตัวอย่างเช่น การใช้คำสั่ง sqrt(ซึ่งคำนวณหารากที่สอง หรือสแควรูท

 -->sqrt(9)                                  ขณะที่                       -->SQRT(9)
       ans = 3.                                                                                    !--error 4

                                                                                       Undefined variable : SQRT
Particular numbers 

%e และ %pi แทนค่า e และ π  ตามลำดับ
 --> %e                                                                        --> %pi
       %e =                                                                           %pi =
               2.7182818                                                                    3.1415927

 %i แทนค่า i ของจำนวนเชิงซ้อนในอินพุตและแสดงค่า i ในเอ้าพุท
 --> 2+3*%i
       ans =
                2. + 3.i

การที่ไม่ให้แสดงผลลัพธ์ โดยการเพื่อมเซมิโคลอน “ ; “  ที่ตอนปลายของบรรทัดคำสั่ง  คำสั่งทำให้มีการคำนวณแต่ไม่แสดงผลลัพธ์ให้เห็น

-->(1+sqrt(5))/2;

 --> (1+sqrt(5))/2
       ans =
                1.618034

To remind the name of a function
ชื่อของฟังก์ชันที่ใช้กันทั่วไปสรุปไว้ในบทที่ 3 ในเอกสารนี้ (หน้า32)  ตัวอย่างเช่น

 --> exp(10)/factorial(10)
       ans =
               0.0060699

คีย์แท็บ  →│ บนคีย์บอร์ดสามารถให้แสดงชื่อของฟังก์ชันหรือตัวแปรหนึ่งๆ ทั้งหมดโดยกำหนดสองสามตัวอักษรแรกก็ใช้ได้ตัวอย่างเช่น . หลังจากพิมพ์คำสั่งในคอนโซลดังนี้ :

 -->fact

และหลังจากนั้นกดคีย์แท็บ แล้ววินโดว์แสดงฟังก์ชันและชื่อตัวแปรทั้งหมด ที่ขี้นต้นด้วย fact fact, ดังเช่น factorial และ factor.  จากนั้นเพียงแต่ดับเบิลคลิกที่ฟังก์ชันที่ต้องการ หรือเลือกด้วยการเคลื่อนเมาซ์ หรือ คีย์ลูกศร ↑ ↓  แล้วกด Enter (Windows and Linux) หรือ Return (Mac OS X)  เพื่อใส่เข้าไปในบรรทัดคำสั่ง

The menu bar 
เมนูได้แสดงรายการข้างล่างนี้มีประโยชน์เป็นการเฉพาะ
Applications
   • ประวัติคำสั่ง (The command history) ยอมให้ค้นคำสั่งการทำงานที่แล้วมาไปจนถึงคำสั่งการทำงานล่าสุด
   • เบล้าเซอร์ตัวแปร(The variables browser) ยอมให้ค้นหาตัวแปรทั้งหมดที่ใช้มาก่อนระหว่าการทำงานตามคำสั่งล่าสุด

Edit 
Preferences (ในเมนูไซแลบภายใต้ Mac OS X)  อนุญาตให้เซ็ตตั้งค่าสี ฟ้อน และ ขนาดฟ้อนในคอนโซล และในเอดิเตอร์ ซึ่งมีประโยชน์มากสำหรับการโปรเจคชันของจอ(screen projection)
การคลิก Clear Console  ทำการเคลียร์เนื้อหาทั้งหมดในคอนโซล  ในกรณีนี้ ประวัติคำสั่งยังคงมีอยู่ และการคำนวณที่ดำเนินการระหว่างเซสชั่นยังคงมีอยู่ในหน่วยความจำ  คำสั่งที่ได้ลบออกไปยังคงมีให้ใช้ได้ผ่านทางลูกศรของคีย์บอร์ด

Control
เพื่อที่จะขัดจังหวะการทำงานของโปรแกรมสามารถทำได้คือ
    • โดยการพิมพ์ pause ในโปรแกรมหรือคลิก  Control> Interrupt ในเมนูบาร์  (Ctrl X ภายใต้ Windows และ Linux หรือ Command X ภายใต้ Mac OS X), ถ้าโปรแกรมกำลังรันอยู่เรียบร้อยแล้ว ในทุกกรณีเครื่องหมายเตรียมพร้อม “ --> “ จะเปลี่ยนไปเป็น “ -1-> “, แล้วเปลี่ยนไปเป็น“ -2-> “…, ถ้าการดำเนินการซ้ำ
   • เพื่อกลับเข้าสู่เวลาก่อนที่โปรแกรมจะถูกขัดจัดหวะ ให้พิมพ์ resume ในคอนโซลหรือคลิก Control > Resume.
   • เพื่อที่จะเลิกหยุดเพื่อการคำนวณที่ดีปราศจากทางเป็นไปได้ที่จะกลับมาอีก ให้พิมพ์ abort ในคอนโซลหรือคลิกที่ Control > Abort ในเมนูบาร์

The editor 
การพิมพ์เข้าไปในคอนโซลโดยตรง มีข้อด้อยอยู่สองประการ นั่นคือเป็นไปไม่ได้ที่จะบรรทึกคำสั่ง และค่อนข้างยุ่งยากในการแก้ไขหลายๆบรรทัดคำสั่ง เอดิเตอร์จึงเป็นเครื่องมือที่เหมาะสมในการใช้รันคำสั่งมากหลายคำสั่ง

การเปิดใช้เอดิเตอร์ (Opening the editor) 

การเปิดเอดิเตอร์จากคอนโซล ให้คลิกที่ไอคอนแรกในทูลบาร์หรือที่  Applications > SciNotes เมนูบาร์ เอดิเตอร์เปิดขึ้นมาด้วยชื่อไฟล์ดีฟอลท์ “ Untitled 1 “.

การเขียนในเอดิเตอร์ (writing in editor)  
พิมพ์ในเอดิเตอร์คล้ายคลึงกับการพิมพ์ในเวิร์ดโปรเซสเซอร์.
ในเท็กเอดิเตอร์ การเปิดและปิดวงเล็บ ปิดลูป(end loop)  ฟังก์ชัน และ ทดสอบคำสั่งถูกเพิ่มเข้ามาโดยอัตโนมัติ อย่างไรก็ตาม ลักษณะเหล่านี้อาจใช้ไม่ได้ใน  Options > Auto-completion บนเมนู ในการคลิกบนการนำเข้าข้างล่างสองแบบสามารถเป็นได้โดยดีฟอลท์

      • (,[,…
      • if,function,…

ขณะที่โดยหลักการแต่ละคำสั่งควรจะนำเข้าบนบรรทัดแยกกัน  แต่ก็เป็นไปได้ที่จะพิมพ์หลายประโยคคำสั่งบนบรรทัดเดียวกันโดยแยกแต่ละประโยคคำสั่งด้วยเซมีโคลอน “ ; “.  ช่องว่างหนึ่งที่เริ่มต้นบรรทัดคำสั่งเรียกว่าการย่อหน้า(indentation)จะเป็นไปโดยอัตโนมัติเมื่อเป็นลูปหนึ่งหรือการทดสอบเริ่มต้น ในตัวอย่างต่อไปนี้ ทำการคำนวณ 10 เทอม ของ ลำดับ(sequence ) (Un!) ที่กำหนดโดย


















Mention
 -การเขียนคอมเมนต์ นำหน้าคอมเมนต์ด้วย “ // “ ส่วนนี้จะไม่นำไปเกี่ยวข้องในการคำนวณ
 -การเปลี่ยนฟ้อน ให้คลิกที่ Options > Preferences.
 - เมื่อเขียนโปรแกรม ย่อหน้าจะเป็นไปโดยอัตโนมัติ ถ้าไม่เป็นไปตามที่กล่าวให้คลิกที่  Format > Correct indentation  เพื่อให้กลับโหมดอัตโนมัติ (Ctrl I ภายใต้ Windows และ Linux หรือ Command I ภายใต้ Mac OS X)

Saving 
ไฟสามรถที่จะบันทึกโดยการคลิกที่  File > Save as.
นามสกุลไฟล์“ .sce “ ที่ตอนท้ายของชื่อไฟล์ไซแลบจะใส่ให้โดยอัตโนมัติเมื่อเปิดไฟล์ (นอกจากภายใต้ Linux และ Mac OS X). การสำเนามายังคอนโซล  สั่งให้ปฏิบัติงานตามโปรแกรม โดยการคลิกที่ Execute  ในเมนูบาร์ แล้วจะมีให้ 3 ทางเลือก

    • Execute “ …ไฟล์โดยไม่มี echo “ (Ctrl Shift E ภายใต้ Windows และ Linux, Cmd Shift E ภายใต้ Mac OS X): ไฟล์ถูกสั่งให้ปฏิบัติโดยไม่เขียนโปรแกรมลงในคอนโซล(saving the file first is mandatory).
    • Execute “ … ไฟล์โดยมี echo “ (Ctrl L ภายใต้ Windows และ Linux, Cmd L ภายใต้ Mac OS X): ทำการเขียนไฟล์ลงในคอนโซลด้วยและปฏิบัติตามคำสั่งในไฟล์
    • Execute “ …จนปรากฏ caret, โดยมี echo “ (Ctrl E ภายใต้ Windows และ Linux, Cmd E ภายใต้ Mac OS X): โดยเขียนส่วนที่เลือกด้วยเม้าซ์เข้าไปในคอนโซล และถูกสั่งให้ปฏิบัติตามคำสั่ง หรือ ปฏิบัติตามข้อมูลไฟ
ล์ (execute the file data) จนถึงตำแหน่ง caret ที่กำหนดโดยผู้ใช้

 copy/paste มาตรฐาน สามารถนำมาใช้ได้.

การเปิดวินโดว์กราฟิกส์  วินโดว์กราฟิกส์จะเปิดขึ้นโดยอัตโนมัติเมื่อสร้างการพล็อตกราฟใดๆ  เป็นไปได้ที่จะพล็อตเคิร์ฟ เคิร์ฟผิวหน้า(surface) ลำดับของจุด(sequennces of points) (see chapter 2, page 18).  เพื่อให้เห็นตัวอย่างของเคิร์ฟที่พล็อต ให้พิมพ์ในคอนโซลคือ
    -->plot



Mention
-  เพื่อที่จะลบการพล็อตที่แล้วมา ให้พิมพ์ clf (“ clear figure “).
-  เพื่อเปิดวินโดว์กราฟิกส์อื่น ให้พิมพ์ scf; (“ set current figure “).  ถ้าหลายวินโดว์กราฟิกส์ถูกเปิดขึ้นผู้ใช้สามารถเลือก ให้การพล็อตใดวาดปรากฏให้เห็นโดยการพิมพ์  scf(n);  n คือจำนวนวินโดว์กราฟิกส์(mentioned on the top left).






Modifying a plot
แว่นขยาย(magnifying glass)ยอมให้มีการซูม  การซูมใน 2 ไดเมนชัน ให้คลิกที่เครื่องมือ (tool) และโดยการใช้เมาซ์สร้างสี่เหลี่ยมที่ขยายโตขึ้นกว่าเดิมในการมอง  การซูมในสามมิติ ให้คลิกที่เครื่องมือแล้วสร้าง parallelepiped  ซึ่งจะเป็นการสร้างการมองภาพที่โตขึ้น  และเป็นไปได้ที่จะซูมโดยหมุนล้อบนเมาซ์   เพื่อกลับเข้าสู่หน้าจอเดิม ให้คลิกที่แว่นขยายอื่น  ไอคอนนั้นยอมให้มีการรูปร่างกราฟ (มีประโยชน์โดยเฉพาะในสามมิติ) ด้วยการคลิกปุ่มเมาซ์ทางขวาซึ่งถูกแนะแนวทางโดยข้อความในตอนล่างของหน้าต่างกราฟิกส์ สำหรับการขยายที่ให้รายละเอียด ให้คลิกที่ Edit > Figure properties  หรือ Axes properties  และผู้ใช้ทำตามที่แนะแนวทาง(ในทางเลือกนี้ยังไม่มีใช้ภายใต้ Mac OS X).

Online help
เพื่อที่จะข้อความช่วยเหลือออนไลน์ ให้คลิก  ? > Scilab Help  ในเมนูบาร์ หรือพิมพ์ในคอนโซล:
-->help   เพื่อที่จะรับความช่วยเหลือจากชนิดฟังก์ชันใดๆ  ให้พิมพ์  help ในคอนโซลตามด้วยชื่อฟังก์ชันที่ต้องการความช่วยเหลือ ตัวอย่างเช่น :
-->help sin            ก็จะแสดงการช่วยเหลือสำหรับฟังก์ชัน sin (sine)



Mention
ตัวอย่างการใช้สามารถรันสั่งให้ทำงานในไซแลบ และแก้ไขใน SciNotes  ในการใช้เกี่ยวข้องปุ่มกดต่างๆ ตามกรอบตัวอย่าง










การจัดการหน้าต่าง และการปรับพื้นที่ทำงาน 
(Windows management and workspace customization)
    ตามดีฟอลท์สิ่งแวดล้อมของไซแลบ ที่ซึ่งคอนโซล ไฟล์ และ ตัวแปร  เบล้าเซอร์ และประวัติคำสั่ง  ซึ่งทั้งหมดนั้นปรากฏอยู่ในหน้าต่างวินโดว์   หน้าต่างวินโดว์อื่นๆ ในไซแลบสามารถสามารถจัดวางให้อยู่ในตำแหน่งใหม่ได้สามารถกำหนดให้อยู่ในวินโดว์อื่นที่ใหญ่กว่าได้ ตัวอย่างเช่น ผู้ใช้สามารถเลือกที่วางตำแหน่งของเอดิเตอร์เป็นดีฟอลท์ในสิ่งแวดล้อมไซแลบ
    เพื่อที่จัดวางวินโดว์ที่ต้องการในวินโดว์อื่น  สิ่งแรกมองหาบาร์สีฟ้าตามแนวนอนภายใต้วินโดว์ หรือสีดำภายใต้ Mac OS X และลีนุกซ์  ที่ด้านบนของวินโดว์ในทูลบาร์(toolbar) ที่มีเครื่องหมายคำถาม ? ทางขวา

     • ภายใต้วินโดว์และลีนุกซ์ ให้คลิกที่บาร์นี้ด้วยปุ่มซ้ายของเม้าซ์ และ ขณะที่ยังคงกดแช่ไว้ ให้เคลื่อนตัวชี้เม้าซ์ไปยังหน้าต่างที่ต้องการ
     • ภายใต้ Mac OS X, ให้คลิกที่บาร์นี้ ขณะที่ทำการคลิกให้เคลื่อนไปยังวินโดว์ที่ต้องการ  เกิดสี่เหลี่ยมพื้นผ้าประกฏขึ้นมาบ่งชี้ให้เห็นถึงตำแหน่งวินโดว์ในอนาคต เมื่อได้ตำแหน่งหนึ่งที่ต้องการ ให้คลายปุ่มเมาซ์  เพื่อทีจะยกเลิก และปล่อยวินโดว์ออกมา ให้คลิกที่ลูกศรเล็ก ทางขวาของบาร์เดียวกัน.

     การปรากฏสี่เหลี่ยมผืนผ้าบ่งให้ทราบถึงต่ำแหน่งใสอนาคตของหน้าต่าง (window)  เมื่อตำแหน่งนั้นเป็นตำแหน่งที่ต้องการหนึ่ง  ให้ปล่อยปุ่มเมาซ์ที่กดแช่ไว้  ในการยกเลิกและนำหน้าต่างออกมาแสดง ให้คลิกที่ลูกศรเล็กทางขวาของบาร์เดียวกัน


Tuesday, 16 January 2018

บทที่ 2 การเขียนโปรแกรม ตัวแปร การกำหนดค่า และแสดงผล

Chapter 2 - Programming Variables, assignment and display 12
Loops 16
Tests 17
2 and 3D plots 18
Supplements on matrices and vectors 23
Calculation accuracy 29
Solving differential equations 30
 
  ในตัวอย่างที่ให้มาในเอกสารนี้ แต่ละบรรทัดจะนำหน้าด้วย “ --> “ คือคำสั่ง บรรทัดอื่นคือส่วนที่ได้จากคำสั่ง (ผลการคำนวณ, รายงานข้อผิดพลาด)  ไม่ต้องเขียน “ --> “ ในเอดิเตอร์ . ที่จะเริ่มต้นตอนนี้ที่ชี้ให้เห็นถึงความแตกต่างระหว่างบรรทัดคำสั่งและผลการคำนวณตามที่แสดงให้เห็นในคอนโซลหลังจากสำเนาและนำไปวาง เมื่อนำเสนอในรูปตารางหนึ่ง (โดยปราศยาก “ --> “ และไม่แสดงผลการคำนวณ)  คำสั่งถูกกำหนดชัดเจน เหมือนที่ควรจะพิมพ์ไว้ในเอดิเตอร์  ตัวแปร การกำหนดค่า และการแสดงตัวแปรไซแลบไม่ใช่ระบบพีชคณิตคอมพิวเตอร์  การคำนวณเฉพาะกับจำนวณตัวเลข  การคำนวณทั้งหมดสำเร็จลงได้ด้วยเมทริกซ์  แม้ว่าการดำเนินการนี้ไม่อาจสังเกตได้  แม้ว่ามโนทัศนฺ์ของเมทริกซ์ไม่เป็นที่รู้จัก เวคเตอร์ และ แถวลำดับ (sequences) ของจำนวนสามารถจะอธิบายได้ตามที่เป็น  จริงแล้วเมทริกซ์ของ 1xn มิติ หรือ nx1 และจำนวนหนึ่งๆโดยตัวเองเป็นเมตริกซ์มิติ  1 × 1.  ตัวแปรไม่จำเป็นต้องประกาศไว้ก่อนล่วงหน้า แต่ตัวแปรใดๆต้องมีค่าค่าหนึ่ง  ตัวอย่างเช่น การให้ได้มาค่าของตัวแปรหนึ่ง ซ่ึ่งยังไม่ได้กำหนดค่ามาก่อนก่อให้เกิดข้อผิดพลาด
 -->a !--error 4 Undefined variable : a
ถ้ามีค่าหนึ่งถูกกำหนดให้ตัวแปรหนึ่ง ก็จะไม่มีข้อผิดพลาดอีกต่อไป
 --> a=%pi/4
          a = 0.7853982
--> a
       a = 0.7853982
ตัวแปรอาจเป็นชื่อใดชื่อหนึ่งได้ที่ไม่ได้กำหนดไว้ก่อนโดยระบบ
--> Piby2=%pi/2
           Piby2 = 1.5707963
กล่าวถึงคล้ายกับฟังก์ชันไซแลบ  ชื่อตัวแปรหนึ่งๆจะต้องมีตัวอักขระหรืออักขระพิเศษ

ผลการคำนวณที่ไม่ได้กำหนดให้ตัวแปร จะกำหนดให้ตัวแปรที่เรียกว่า ans: โดยอัตโนมัติ
-->3*(4-2)
   ans = 6.
-->ans
    ans = 6.

     ฟังก์ชัน(Functions)
ฟังก์ชันเป็นแนวทางที่เป็นธรรมชาติง่ายที่สุดที่จะคำนวณจากตัวแปร และให้ได้ผลลัพธ์จากตัวแปร.
นิยามของฟังก์ชันหนึ่งเริ่มต้นด้วย function และจบด้วย endfunction ตัวอย่างเช่นในการแปลง euros(e) ให้ได้คำตอบเป็นดอลล่าdollars (d) ด้วยอัตราการแลกเปลี่ยน exchange rate (t),   โดยกำหนดdollars function  ตัวแปรที่มีคือ e และ t  และ image  คือ d
 -->function d=dollars(e,t);
       d=e*t; endfunction
-->dollars(200,1.4) ans = 280.

ตามปกติแล้วฟังก์ชันเชิงจำนวนหรือตัวเลข เป็นฟังก์ชันของตัวแปรจริงหนึ่ง ตัวอย่างเช่น ฟังก์ชัน f และ ฟังก์ชัน g ถูกกำหนดโดยใช้คำสั่งต่อไปนี้

-->function y=f(x); y=36/(8+exp(-x)); endfunction
-->function y=g(x); y=4*x/9+4; endfunction

การกำหนดฟังก์ชันแล้วสามารถใช้เพื่อคำนวณหาค่าดังนี้
--> f(10) ans = 4.4999745
--> g(12.5) ans = 9.5555556

การกำหนดค่าให้ตัวตัวแปรหนึ่ง (requesting the assignment of a variable)
การกำหนดค่าให้ตัวแปรทำใด้ง่ายโดยการใช้เครื่องหมายกระทำ “ = “

Display 
Writing 
เพียงแต่พิมพ์ชื่อของตัวแปรหนึ่งๆ ก็จะแสดงผลค่าของตัวแปรนั้น นอกจากว่ามีเครื่องหมายเซมิโคลอน  “ ; “ อยู่ตอนท้ายของบรรทัดคำสั่ง
Brackets
เมทริกซ์ถูกกำหนดขึ้นโดยใช้วงเล็บเหลี่ยม (square brackets).  ตามที่กล่าวถึงมาก่อนแล้ว การคำนวณเมทริกซ์ เป็นรากฐานของการคำนวณในไซแลบ  ช่่องว่าง หรือ คอมม่าใช้ในการแยกคอร์ลัมน์ และเซมิโคลอนใช้ในการแยกแถว  เพื่อที่จะกำหนดเวคเตอร์คอร์ลัม  และให้ผลการแสดงเป็นคอร์ลัมดังนี:

-->v=[3;-2;5]
  v =
        3.
     - 2.
        5.

เพื่อกำหนดเวคเตอร์แถว และให้แสดงผลแถวของเมทริกซ์ดังนี้

-->v=[3,-2,5]
  v =
      3. - 2.  5.

หมายเหตุ  คำสั่งนี้สามารถพิมพ์ออกมาภายใต้รูปแบบ  v=[3 -2 5] เพียงเว้นช่องว่างระหว่างสมาชิกในวงเล็บ

เพื่อที่จะกำหนดเมทริกซ์และให้แสดงผลแบบในแนวตั้ง หรือ แท่ง (tabular display)

-->m=[1 2 3;4 5 6;7 8 9]
     m =
          1.  2.  3.
          4.  5.  6.
          7.  8.  9.

หมายเหตุ คำสั่งนี้สามารถพิมพ์ออกมาภายใต้รูปแบบ m=[1,2,3;4,5,6;7,8,9]

ฟังก์ชัน disp
disp ต้องใช้ร่วมกับวงเล็บเสมอ   กับเวคเตอร์ v ที่กำหนดไว้ก่อนหน้านี้

 -->v(2)
   ans =
        - 2. -->
disp(v(2)) - 2.

เพื่อแสดงผลสตริง(มักอยู่ในรูปประโยค) ให้นำข้อความหรือสตริงที่ต้องการแสดงอยู่ในเครื่องหมายคำพูด
-->disp("Bob won")
          Bob won
เพื่อแสดงผลการควบรวมของคำและค่าต่างโดยใช้คำสั่งสตริง  ซึ่งแปลงค่าไปเป็นสตริงตัวอักขระ โดยการใช้เครื่องหมายบวก “ + “ ระหว่างส่วนที่แตกต่างกัน

-->d=500;
 -->disp("Bob won "+string(d)+" dollars")
          Bob won 500 dollars

ถ้าประโยคประกอบด้วยเครื่องหมายคำพูดเดี่ยว (single quote)  การแสดงแบบแรกจำต้องใช้การซ้ำสองในสตริงที่ต้องการแสดงให้ถูกตำแหน่ง

-->disp("It''s fair")
     It's fair

 การเพิ่มที่ละสเต็บในลูป (Loops Incrementation)
ตัวกระทำโคลอน “ : “ ใช้ในการกำหนดเวคเตอร์ของจำนวน ที่ซึ่งประสานลำดับแบบเลขคณิต  โดยให้เครื่องหมาย << สำหรับค่าเริ่มต้น : สเต็ป : ค่าปลายด้วยเครื่องหมาย>> (beginning value<<: ending="" step:="" value="">>.  เป็นไปได้ที่ไม่เข้าสู่ค่าปลายหรือท้าย  ถ้าไม่ระบุสเต็บที่เพิ่มหรือลด โดยมีค่าปริยายคือ 1

ตัวอย่างเช่น เพื่อกำหนดเวคเตอร์แถวของเลขจำนวนเต็ม ซึ่งการเพิ่มขึ้นสเต็บละ 1 จาก 3 และ 10
-->3:10
  ans =
         3.  4.  5.  6.  7.  8. 9. 10. or

ซึ่งการเพิ่มขึ้นสเต็ปละ 2 จาก 1 ถึง 10  ดังนี้
 -->1:2:10
  ans =
         1.  3.  5.  7.  9.

หรือเป็นไปในทางที่ลดลงทีละสเต็ปของ 4 จาก 20 to 2:
 -->u=20:-4:2
  u = 20. 16. 12. 8. 4.

for
สำหรับโครงสร้างลูปที่ง่ายที่สุดสำหรับจำนวนที่ตายตัวของการทำงานซ้ำ เขียนได้เป็น  for … end.
ตัวอย่าง:  ให้คำนวณ 20 เทอมของลำดับที่กำหนดโดยการเกิดซ้ำตามความสัมพันธ์คือ
{u1 = 4}
{un+1 = un + 2n +3}

 Algorithm                                                           Scilab Editor
Put 4 in u(1)                                                         u(1)=4
For n from 1 to 20                                                for n=1 :20
u(n+1) takes the value u(n)+2n+3                       u(n+1)= u(n)+2*n+3;
and u(n)                                                                display ([n,u(n)])
display n and u(n)                                                 end
End for                                                   

 While
เพื่อหยุดลูปเมื่อกำหนดเป้าหมายที่จะไปถึง,  โดยใช้ while … end

ฉันได้ปลูกต้นคริสมาสในปี 2005วัดได้สูง 1.20 m.  ต้นไม้เติบโตขึ้นปีละ 30 ซม. ฉันตัดสินใจที่จะตัดต้นไม้นี้เมื่อมันสูงเกินกว่า 7 เมตร ในปีใดที่ฉันจะต้องตัดต้นไม้นี้

Algorithm                                                          Scilab Editor
Put 1.2 in h (h = tree height)                                 h=1.2;
Put 2005 in y (y = year)                                        y=2005;
While h<7 h="" nbsp="" p="" while="">      h takes the value h+0.3 (the tree grows)          h=h+0.3;
      y takes the value y+1 (one year passes)           y=y+1;
 End while                                                               end
  Display y (the final year)                                     disp("I will cut the.. tree in "+string(y))


หมายเหตุ เมื่อคำสั่งหนึ่งยาวเกินกว่าที่จะเขียนในบรรทัดเดียว เอดิเตอร์จะรวมบรรทัด  สามารถทำได้โดยใช้สองจุด“ .. “ (two dots) ก่อนที่จะไปยังบรรทัดต่อไป


Tests
Comparison operators
การทดสอบที่มีประโยชน์รวมทั้งการเปรียบเทียบจำนวนหรือหาว่าประโยคคำสั่งใดเป็นจริงหรือเป็นเท็จ ข้างล่างนี้คำสั่งที่สอดคล้องกัน

 Equal     Different      Less      Greater      Less or equal      Greater or equal
   ==         <>               <                >              <=                         >=

True         False          And           Or                No
  %T          %F              &              |                  ~

หมายเหตุ  จงระมัดระวังกับค่าความถูกต้องในการคำนวณ   การคำนวณเป็นแนวทางเข้าสู่ และ “ == “ บางครั้งจะให้ผลลัพธ์ที่ผิดพลาด (ดูค่าความละเอียดใหนการคำนวณหน้า 30)

เพื่อเปรียบเทียบเวคเตอร์ 2 เวคเตอร์หรือ 2 เมทริกซ์ การทดสอบ “ == “ และ “ <> “ จะเปรียบเทียบเทอมต่อเทอม ตัวอย่างเช่น:
-->X=[1,2,5]; Y=[5,3,5];
-->X==Y
  ans =
         F  F  T

เพื่อทดสอบ 2 เวคเตอร์เท่ากันหรือไม่  ใช้ isequal  และใช้ ~isequal  ถ้า แตกต่างกัน
-->isequal(X,Y)
  ans =
        F
-->~isequal(X,Y)
  ans =
        T

If…then
ประโยคคำสั่งเงื่อนไขพื้นฐานดังต่อไปนี้
 • if … then … else … end,
 • if … then … elseif … then … else … end.

if … then  ต้องเขียนอยู่บนบรรทัดเดียวกัน และเช่นเดียวกับ elseif … then.

ตัวอย่าง  อลิษทอยลูกเต๋า 3 ลูก
    • If she gets three 6’s she wins $20,
    • If she gets three identical numbers different from 6 she wins $10,
    • If she gets two identical numbers she wins $5,
    • Otherwise she wins nothing.

ให้จำลองแบบการทดลองทอยลูกเต๋า และคำนวณการชนะรางวัลของอลิษโดยใช้ฟังก์ชัน
    • grand (see page 22),
    • unique(D)which keeps only once the values that appears several times in D,
    • length(unique(D)) which returns the size of the obtained vector, that is to say 1 if three dice are           equal, and 2 if two dice are equal.

Algorithm                                                                 Scilab Editor

Put the three values in D                                          D=grand(1,3,"uin",1,6);
If Alice gets three 6, then Alice wins 20 dollars      if D==[6,6,6] then W=20;
Else if she receives three identical values,               elseif length(unique(D))==1                                    then    Alice wins 10 dollars                                      hen W=10;
Else, if she receives two identical values,                 elseif length (unique(D))==2
then Alice wins 5 dollars                                           then W=5;
Otherwise                                                                   else
 Alice wins nothing                                                     W=0;
End if                                                                          end                                                                 
Display Alice's winnings                                            disp("Alice wins "+.. string(W)+ " dollars")

 2-D and 3-D plots 
คำสั่ง พล็อตใช้ในการพล็อตกราฟในระนาบ สีและการปรากฏให้เห็นสามารถระบุโดยการใช้ตัวบ่งชี้สีและรูปแบบจุดพล็อตภายในเครื่องหมายคำพูด
   • Colors "b" = blue (by default), "k" = black, "r" = red, "g" = green, "c" = cyan, "m" = magenta, "y" = yellow, "w" = white.
   • Point styles Joined (by default), or ".", "+", "o", "x", "*". Other options are available with: "s", "d", "v", "<", and ">".

การพล็อตกราฟพื้นฐาน (Basic plots)
การพล็อตจุดกราฟ
ให้พล็อตจุด A(1 ; 2) ด้วยจุดสีแดง

Scilab Editor                                                         Graphics Window

plot(1,2.".r")
                                                        

พล็อตเซ็กเมนต์(To plot a segment)
ให้พล็อตเซ็กเมนต์[AB] ด้วยสีฟ้า(่โดยปริยาย) ด้วย A(1 ; 2) และ B(3 ; 5).

Scilab Editor                                                         Graphics Window

plot([1,3],[2,5])                                         
                                                                                                                                                    
การพล็อตเคิร์ฟแนวราบโดยฟังก์ชัน y=f(x) (plot of plane curves by function y=f(x))
สำหรับฟังก์ชัน x → f(x)  ค่าของ x ระบุไว้โดยใช้ คำสั่ง linspace  โดยเขียนคำสั่งดังนี้ x=linspace(a,b,n); ซึ่ง a เป็นค่าน้อยที่สุดของตัวแปร x, b เป็นค่าสูงสุดของ x, และ  n  จำนวนค่าที่คำนวณระหว่างค่า a และ b   อย่าลืมว่าสัญลักษณ์ “ ; “  นอกจากนี้แล้วทุกค่า n ของ x จะถูกนำออกมาแสดง

ตัวอย่างเช่น   พิจารณาฟังก์ชัน 2 ฟังก์ชัน f  และ g  กำหนดอยู่ในช่วง [-2 ; 5] โดยที่:
                    f(x) = (x^2 + 2x)e^-x , และ and g(x) = sin x/2

ด้วยโปรแกรมข้างล่างนี้ ได้พล็อตเคิร์ฟกำหนดโดย f , สีฟ้าโดยปริยาย

Scilab Editor                                                         Graphics Window

function y=f(x)                                           
   y=(x^2+2*x)*exp(-x)
endfunction
x=linspace(-2,5,50);
plot(x,f)                                 
                                                                      

โดยการเพิ่มโปรแกรมข้างล่าง จะได้การพล็อตของเส้นเคิร์ฟ 2 เส้น ที่เป็นของ f สีแดง และของ g สีเขียว
การพล็อตที่ผ่านมาล้างออกไปโดยใช้คำสั่ง clf(“ clear figure “).

Scilab Editor                                                 Graphics Window

function y=g(x)
    y=sin(x/2)
endfunction
x=linspace(-2,5,50);
clf
plot(x,f,"r",x,g,"g")                               
                                                                                                                       
พล็อตชุดของจุด(Plots of sequences of points)
Terms of a sequence
ในกรณีทั่วไปเกือบทั้งหมดจะพล็อตไปตามลำดับของจุด M(n,u(n)) หลังจากการคำนวณของพิกัดฉาก u(n) ของเวคเตอร์u. plot(u,"*r") บ่งถึงสไตล์และสีของจุดในเครื่องหมายคำพูด  สีแดงและรูดดาวที่ไม่เชื่อมต่อ  โดยปริยายแล้วจุดต่างๆ ถูกพล็อตด้วยสีฟ้า และ เชื่อมต่อกัน

Scilab Editor                                                        Graphics Window

for n=1:50
   u(n)=(-0.8)^n;
end clf;
plot(u,"*r")                                             
              


ข้อมูลสถิติ 2 ตัวแปร (Bivariate statistical data)
 ข้อมูลสถิติ 2 ตัวแปรถูกกำหนดขึ้นในรูปของเวคเตอร์ 2 เวคเตอร์  เรียกว่า X และ ํBivariate statistical data are given in the form of two vectors: let’s call them X and Y.
plot(X,Y,"<")  พล็อตสแกตเตอร์กราฟของ M(Xi;Yi) (scatter plot of M(Xi;Yi) แสดงจุดพล็อตด้วยสามเหลี่ยมสีฟ้า

Scilab Editor                                                         Graphics Window

X=[1,3,3,7,7,9,10];
Y=[8,7,5,5,4,2,2];
   clf; plot(X,Y,"<")                                 
                                                   
                   

การพล็อตกราฟ 3 มิติ (Plots in 3 dimensions) 
ไซแลบสามารถใช้ในการพล็อตพื้นผิว เคิร์ฟในสเปสซ์ ด้วยออพชันมากมายสำหรับจัดการผิวด้านที่ซ่อนบังไว้  สีของผิวหน้า, จุดในการมอง ฯลฯ ตัวอย่างต่อไปนี้แสดงการพล็อตกราฟ 3-D

ฟังก์ชัน surf สามารถใช้ในการพล็อตพื้นผิว  ฟังก์ชันนี้มีตัวแปรนำเข้า 3 ตัวแปร x, y และ z.   x และ y เป็นเว็คเตอร์ขนาดare respectively vectors of size m and n ตามลำดับ สอดคล้องกับจุดบนแกน(0x) และ(0y).   z คือ เมทริกซ์ขนาดมิติ m×n ด้วยองค์ประกอบ zij  สอดรับกับความสูงของจุดตามพิกัดX xi  และพิกัดaY yi

เพื่อที่จะพล็อตพื้นผิวโดยฟังก์ชันในรูป z = f(x,y)   ซึ่งต้องทำดังต่อไปนี้
    • กำหนดฟังก์ชัน f
    • คำนวณ z=feval(x,y,f)'
feval(x,y,f) คืนค่าเป็นreturns the m×n matrix  ซึ่งองค์ประกอบ ij คือ f(xi,yi) ซึ่งจะถูกทรานสโพสโดยใช้เครื่องหมายคำพูดเดี่ยว“ ' “
    • Execute surf(x,y,z).

เพื่อจะพล็อตพื้นผิว z = 2x^2 + y^2 (elliptic paraboloid):

Scilab Editor                                                      Graphics Window function
z=f(x,y)
  z=2*x^2+y^2;
endfunction
  x=linspace(-1,1,100);
  y=linspace(-2,2,200);
  z=feval(x,y,f)';
clf
surf(x,y,z)
                                               
                

เคิร์ฟในสเปสซ์อาจพล็อตโดยใช้ ฟังก์ชัน param3d  โดยที่ param3d มี 3 อาร์กูเมนต์ x, y และ z,  แต่ละเวคเตอร์มีมิติเดียวกัน และสอดคล้องกับจุด(xi,yi,zi) บนเคิร์ฟ

เพื่อพล็อต helix กำหนดโดยdefined by (x = cos t , y = sin t , z = t):

Scilab Editor                                                           Graphics Window
t=linspace(0,4*%pi,100);
param3d(cos(t),sin(t),t)
                                                           
                            
การจำลองแบบและสถิติ (Simulations and statistics)
มีหลายฟังก์ชันที่นำมาใช้ได้ในไซแลบเพื่อใช้ในการจำลองแบบได้เร็วและมีประสิทธิภาพ

ลำดับการสุ่ม (Random  Sequences)     
   • grand(1,p,"uin",m,n) คืนกลับเป็นเวคเตอร์หนึ่ง ของ ลำดับการสุ่มจำนวนเต็ม p (p random integer sequences) ระหว่าง m และ n ด้วยจำนวนเต็มบวก p , m และ n เป็นจำนวนเต็มและ m ≤ n.

-->t = grand(1,4,"uin",1,6)
     t =
          3.   1.   3.   6.

     • grand(1,p,"unf",a,b) คืนกลับค่าเป็นเว็คเตอร์หนึ่งของลำดับการสุ่มจำนวนจริงp (p random real sequences) ระหว่าง a และ b ด้วยจำนวนเต็มบวก , a และ b เป็นจำนวนจริง และ  a ≤ b.

-->tr = grand(1,2,"unf",-1,1)
     tr =
         - 0.7460264    0.9377355

สถิติ (Statistics) 

ฟังก์ชันมาตรฐานทางสถิติทั้งหมดแสดงรายการไว้ในหน้า 32
    คิดไว้ในใจเป็นการเฉพาะกล่าวคือ
    • ฟังก์ชัน  bar(x,n,color) ซึ่งวาดกราฟแท่ง(bar graphs):

Scilab Editor                                                     Graphics Window 
x=[1:10];
n=[8,6,13,10,6,4,16,7,8,5];
clf; bar(x,n)
                                                     

      • สำหรับกราฟแท่งที่แทน 2 ชุดด้านต่อด้าน(two sets side by side): พิจารณาชุดของค่า X และ 2 ชุดลำดับของจำนวน n1 และ n2.  สำหรับการพล็อต n1 และ n2 ต้องเป็นเว็คเตอร์คอร์ลัมน์ นั่นคือทำไมจึงนำทรานสโพสมาใช้ในตัวอย่างข้างล่าง

 Scilab Editor                                                Graphics Window
X=[1,2,5];n1=[5,10,5];n2=[6,8,7];
bar(X,[n1',n2'])
                                                         

อาร์กูเมนต์ทางเลือกสีกำหนดสีตามฟังก์ชันการพล็อต


ข่าวสารเพิ่มเติมของเมทริกซ์และเวคเตอร์ (Additional information on matrices and vectors)
การจัดการองค์ประกอบเว็คเตอร์
 วงเล็บเหลี่ยมถูกนำมาใช้เพื่อกำหนดเมทริกซ์  สเปสซ์หนึ่งหรือคอร์ลัมน์หนึ่งๆถูกใช้เพื่อสลับจากคอร์ลัมน์หนึ่งไปเป็นอีกคอร์ลัมน์ และเซมิโคลอนถูกใช้เพื่อสลับจากบรรทัด(line)ไปเป็นอีกบรรทัด ดังนี้

-->m=[1 2 3;4 5 6]
m =
      1.    2.    3.
      4.    5.    6.

วงเล็บใช้เพื่อจัดการองค์ประกอบของเมทริกซ์หรือปรับเปลี่ยนองค์ประกอบ

หมายเหตุ คำสั่งนี้สามารถพิมพ์ภายใต้รูปแบบ m=[1,2,3;4,5,6]

-->m(2,3)
    ans =
           6.
-->m(2,3)=23
     m =
         1.    2.    3.
         4.    5.    23.

โอเปอร์เรเตอร์ “ : “ ถูกนำมาใช้เพื่อจัดวางแถวทั้งหมดหรือคอร์ลัมน์ทั้งหมดของเมทริกซ์หนึ่งๆ  เพื่อมองหาแถวที่ 2 ของเมทริกซ์ m  พิมพ์ดังนี้

-->m(2,:)
      ans =
            4.   5.   23.

และคอร์ลัมน์ที่ 3 ดังนี้
-->m(:,3)
    ans =
          3.
         23.

เพื่อให้ได้มาของการทรานซโพสของเมทริกซ์หนึ่งหรือเว็คเตอร์หนึ่ง ให้ใช้สัญลักษณ์เครื่องหมายคำพูดเดี่ยว “ ' “:
-->m'
    ans = 1.    4.
              2.    5.
              3.    23.

ตัวกระทำ (Operations)
การกระทำ “ * “, “ / “ เป็นการกระทำของเมทริกซ์  เพื่อทำให้ทำให้การกระทำไปตามองค์ประกอบ (element wise operations) เราจำต้องใส่จุดก่อนเครื่องหมายกระทำ: “ .* “, “ ./ “.

 -->A=[1,2,3;4,5,6]
          A =
               1.   2.  3.
               4.   5.  6.

-->B=[1;1;2]
        B =
           1.
           1.
           2.

-->A*B
     ans =                                                               การคูณเมทริกซ์ (Matrix multiplication)
            9.
           21.


-->A*A !--error 10                                         
Inconsistent multiplication.                                 Dimensions are not consistent


-->A.*A
     ans = 1.    4.     9.                                             Element wise multiplication
              16.   25.   36.

-->2*(A+2)
     ans =
            6.     8.    10.                                             The operation is performed on each element
           12.   14.   16.                                              because 2 is a number

-->A/A                                                               กำหนดให้เมทริกซ์ X ที่ซึ่ง X*A = A
     ans =                                                         
             1.                   1.518D-16                      ผลลัพธ์จริงๆคือ 1.   0
             3.795D-15     1.                                                            0    1
                                                                          สำหรับเหตุผลความถูกต้องในการคำนวณ ผลลัพธ์อาจ
                                                                          แตกต่างกันเล็กน้อยดขึ้นอยู่กับรุ่นของไซแลบและระบบ
                                                                          ปฏฺิบัติ การที่ใช้ (ให้ดูความละเอียดในการคำนวณ หนา 29).
-->A./A
    ans =
          1.   1.   1.
          1.   1.   1.

กำหนดให้เมทริกซ์หารตามองค์ประกอบ (divided element wise) ในกรณีของเว็คเตอร์
-->C = 1:4
     C = 1. 2. 3. 4.

-->C*C !--error 10                                         Dimensions are not consistent
Inconsistent multiplication. 

-->C.*C
         ans =
                1. 4. 9. 16.

บทที่ 3- ฟังก์ชันไซแลบที่มีประโยขน์ในการวิเคราะห์

Chapter 3 – Useful Scilab functions In analysis 32
In probability and statistics 32
To display and plot 33
Utilities 33

chapter 3 – Useful Scilab functions Analysis • sqrt(x) returns the square root of � with � real positive or zero, and the complex root of real positive part otherwise. • log(x) returns the natural logarithm of x with x real or complex number. • exp(x) returns the exponential of � with � real or complex number. • abs(x) returns the absolute value of � real (or the module if � is complex). • int(x) returns the truncation of � real (the integer before the decimal). • floor(x) returns the integer part of � real (the integer � for which � ≤ � < � + 1). • ceil(x) for � real returns the integer � for which � − 1 < � ≤ �. Probability and statistics • factorial(n) returns the factorial of n with n positive or zero integer. • grand(1,p,"uin",m,n) returns a vector of p random integer sequences taken between m and n with p positive integer, m and n integers and � ≤ �. • grand(1,p,"unf",a,b) returns a vector of p random real sequences taken between a and b with p positive integer, a and b real and � ≤ �. • sum(n) returns the sum of the values of vector � (used to calculate a total). • cumsum(n) returns the vector of increasing cumulative values of vector � (used to calculate the increasing cumulative numbers). • length(v) returns the number of coordinates of vector �. • gsort(v) returns the vector of numbers or strings � sorted in descending order. • gsort(v,"g","i") returns the vector of numbers or strings � sorted in ascending order. • mean(v) returns the average of the vector of numbers �. • stdev(v) returns the standard deviation of numbers � vector. • bar(v,n,couleur) draws the bar graph with � as X-coordinate, � as Y-coordinate, � and � being same size line vectors. By default, bar(n) draws the bar graph of � in blue with 1,2,3… as X-coordinates. • bar(v,[n1’,n2’]) draws a double bar graph with � as X-coordinate, n1 as Ycoordinate in blue and n2 as Y-coordinate in green, with �, n1 and n2 being same size line vectors. • rand(n,p) with � and � positive integers, returns a matrix �×� of numbers randomly taken between 0 and 1. • rand() returns a real number randomly taken between 0 and 1. • floor(x) returns the integer part of � real number. In particular, if � is real between 0 and 1, floor(rand()+p) will be 1 with � probability and 0 with 1 − � probability. Scilab for very beginners - 33/33 Display and plot • clf means “ clear figure “ and clears the current figure on the graphics window. • plot allows to draw curves and scatter plots in 2 dimensions. • linspace(a,b,n), with � and � real and � integer, defines a vector of � values regularly spaced between � and �. • scf allows to open or to select other graphics windows than the current one. • surf allows 3-D surface plots. • bar(X,Y) in which X and Y are vectors, draws the bar graph of the series of values for X which has for numbers the values of Y. • plot(X,Y,"*") draws the scatter plot of coordinates (X(i),Y(i)) as stars. The color can be specified. • plot(Y,"+") draws the scatter plot of coordinates (i,Y(i)) as cross. • disp("Sentence") displays what is written in double quotes. • disp(A) in which A is a matrix of numbers, displays the table of the values of A. • disp("Sentence"+string(x)) displays the sentence and the value of number �. • xclick returns the coordinates of the point clicked in a graphics window. Utilities • unique(v) returns the vector � with a unique occurrence of its repeated components. • sum(v) returns the sum of all the elements of the vector or the matrix �. • prod(v) returns the product of all the elements of the vector or the matrix �. • find() returns the indices of the elements of vector � satisfying the test. • disp(x,y,…) displays the values of its arguments in the console. • string(x) converts number � to a string. • format(n) in which � is an integer greater than or equal to 2, sets the display to � characters, including the sign and the decimal dot. • zeros(n,p) defines a �×� matrix that only contains zeros. • feval(x,y,f) in which � and � are respectively vectors of size � and �, defines the matrix �×� whose element (�,�) is �(� � , � � ). • help function opens the help browser on the right function page. • tic starts a clock. • toc stops the clock.

Philosophy .. DK Eyewitness Companions


Mythology .. DK Eyewitness Companions


Malt Whisky .. Companion DK


Children's Portrait Photography


Perfect English Grammar


Opera .. DK Eyewitness Companion


25 Nonfiction Passages with Vocabulary-Building Crosswords


การสืบค้นสื่อดิจิทัลจากอินเตอร์เน็ตสำหรับทุกคน

ตามรายการหน้าปกหนังสือที่ให้มาบางเล่มสามารถที่จะค้นหาได้จากอินเตอร์เน็ต จากเครื่องจักรการค้น ต่างๆ บางเล่มก็สามารถเปิดอ่านได้ บางเล่มไม่สามารถเปิดอ่านได้เนื่องจากลิขสิทธิ์ เปิดอ่านได้เมื่อมีรหัสผ่านที่เสียค่าใช้จ่าย