ฟิสิกส์พื้นฐาน
ข้อสังเกตที่น่าสนใจ เกี่ยวกับ แรงระหว่างประจุไฟฟ้า(กฎของ Coulomb) และแรงดึงดูดระหว่างมวล
1.) แรงทั้งสอง เป็นแรงต่างร่วม นั่นคือ แรงที่กระทำต่อกันระหว่าง ประจุหรือมวล จะกระทำซึ่งกันและกัน และเป็นแรงที่มีขนาดเท่ากัน ไม่ว่ามวลหรือว่าประจุจะมีขนาดที่่แตกต่างกัน เท่าไหร่
2.) สิ่งที่แตกต่างกันคือ แรงดึงดูดระหว่างมวล จะมีเฉพาะแรงดึงดูดเท่านั้น ส่วนแรงระหว่างประจุไฟฟ้า จะมีทั้งแรงที่ผลักและแรงที่ดูด
3) กฎของคูลอมบ์ใช้ได้เฉพาะกรณีที่ประจุอยู่รวมกันเป็น จุดประจุหรือ point charge หรือ ถ้าประจุอยู่บนผิวตัวนำทรงกลม รัศมีจะต้องมีค่าน้อยมากเมื่อเทียบกัยระยะห่าง ของตัวนำ ซึ่งตรงกันข้ามกับ แรงดึงดูดระหว่างมวล ที่มีขนาดมวลไม่ใช่เฉพาะจุด
4) ทิศทางของแรงที่เกิดขึ้น จะอยู่ในแนวเส้นตรงที่ลากผ่านตำแหน่งประจุทั้งสอง และมวลทั้งสอง
วันจันทร์ที่ 17 กันยายน พ.ศ. 2555
ทะเลที่บ้านเกิด ผมเองกระบี่
ภาพแรก เป็นทิวทัศน์ ตอนเช้า แถวท่าเรือ
ส่วนภาพที่ เป็นต้นไม้เล็กๆ อยู่เป็น ทิวแถว คือ ต้นยางพารา ที่อายุประมาณ 1-2 ปี ได้
ความรู้ทั่วไปของการใช้ Mathlab
MathLab 22/08/2012
ใน mathlab
มีตัวแปรอยู่ ทางตัวเลขอยู่ อย่างหนึ่ง คือ แบบ เมตริกซ์ ซึ่ง ถ้าเป็นเมตริกซ์แบบ
ตับเลขตัวเดียวแล้วเราจะเรียกว่า scalar ถ้าหากเมตริกซ์ที่เป็นแบบ
1 แถว หรือ ว่า 1 คอลัมน์
เราจะเรียกว่า เวกเตอร์ ลักษณะการกำหนด เมตริกซ์เริ่มต้นที่
การกำหนดตัวแปรขึ้นมาเพื่อทำการจัดเก็บค่า ยกตัวอย่างเช่น
a = [ 1, 2,
3; 2, 3,
4; 3, 4,
5]
ซึ่งการกำหนดทำได้โดย 1 แถวของเมตริกซ์จะคั่นด้วยเครื่องหมาย
semi colon ในตัวอย่างนี้จึงเป็นเมตริกซ์ 3 คูณ
3 ที่มี element
ทั้งหมด 9 ตัว
ใน mathlab ส่วนใหญ่จะมี
function พื้นฐานอยู่เป็นจำนวนมากพร้อมที่จะนำมาใช้งาน
ตัวอย่างเช่น function ทางคณิตศาสตร์ cos sine tan acos
asine atan เหล่านี้เป็นต้น นอกจากนี้ยัง มี built-in
functions อย่างเช่น rand(n) จะทำการสุ่มตัวเลขตั้งแต่
0-1 มาเท่ากับ n คูณ
n เมตริกซ์ function ในกลุ่มนี้ก็จะมี magic(n)
และ hilb(n) or Hilbert matrix เป็นต้น
ในการระบุสมาชิกของ matrix
แต่ละตัวนั้นสามารถทำได้โดยการ ใช้ a(2,1)
ก็คือ ต้องการที่จะระบุสมาชิกตัวที่อยู่ใน แถวที่ 2 หลัก
ที่ 1 ซึ่งก็คือ 2 นั่นเอง
ในการสร้าง element ของ matrix นั้น
mathlab ไม่ได้สนใจว่าเราจะสร้าง element
ขึ้นมาอย่างไร ยกตัวอย่างเช่น เวกเตอร์
b = [ -1.3 ,3^2, cos(30)]
สำหรับค่าที่เป็นข้อความสามารถ
กำหนดโดยการใช้ single quote ยกตัวอย่างเช่น t1
= ‘BCDE’ และ t2 = ‘A’ ดังนั้นถ้าหากเรานำข้อความทั้งสองมาต่อกัน
เราแค่ t3 = [t1, t2] ผลลัพธ์ที่ได้คือ t3 = ABCDE
บางครั้งเราต้องการ
ให้โปรแกรมทำซ้ำโดยการใช้ code ตัวเดิม
สัญลักษณืที่นำมาใช้บ่อยๆคือ colon
หรือ : ตัวอย่างเช่นเราสามารถพิมพ์
>> x = -1: 0.05 : 1 ;
>> for n=1 : 8
subplot(4,2,n), plot(x,sin(n*pi*x))
end
บรรทัดแรก หมายถึง กำหนดค่าให้ x
เริ่มตั้งแต่ -1 จนถึง 1 โดยการเพิ่มค่าทีละ
0.05
บรรทัดที่สอง เป็น for loop ที่กำหนดให้
n เริ่มต้นจาก 1 จนถึง
8
บรรทัดที่สาม กำหนดให้มีการ plot
ตัวกราฟ โดยฟังก์ชัน
subplot
นอกจากนี้ยังสามารที่จะใช้ คำสั่ง for
counter = [23 11 19 5.4 6] … end
เพิ่มเข้ามาโดยการนับเพิ่มจะสอดคล้อง
กับจำนวนที่อยู่ในวงเล็บ คือ ครั้งแรกจะนับ 23 ครั้งต่อไปจะนับ
11 …ตามลำดับ
การวน loop อีกแบบหนึ่งที่น่าสนใจ
คือ while loop โดยการที่เราสามารถกำหนดค่าเริ่มต้น
เป็นอันดับแรกและค่อยๆวนซ้ำกัน ดังตัวอย่าง
>> s = 1 ; n =1;
(กำหนดค่าเริ่มต้นให้กับตัวแปร
s และ n ซึ่งเท่ากับ 1)
>> while s+(n+1)^2 < 100 (กำหนดให้มีการวนซ้ำ
โดยการตรวจสอบเงื่อนไข ถ้าเป็นจริงก็ให้ทำซ้ำ)
>> n = n+1; s = s+ n^2;
end
>> [n,s]
ans =6 91 (ค่าที่ได้ควรจะมี
2 ค่า)
Programming in mathlab
M-files เราสามารถแบ่งออกได้เป็น
2 แบบ คือ script files และ
function files
สิ่งที่น่าสนใจอย่างหนึ่งใน mathlab
คือ การเขียน m-files function ขึ้นมาใช้
ซึ่งขั้นตอนหลักๆมีดังต่อไปนี้คือ
1.
กำหนดชื่อ
สำหรับฟังก์ชัน ซึ่งอยู่ในรูปแบบ file.m
2.
บรรทัดแรกของไฟล์จะต้องมี
รูปแบบดังต่อไปนี้
Function [list of outputs] = function name (list of
input)
ยกตัวอย่างเช่นเราจะกำหนดให้ function[A] = area(a,b,c)
3.
ส่วนหัวของบรรทัดเราสามารถ
ทำคำอธิบาย โดยใช้เครื่องหมาย เปอร์เซ็นต์ (%) เช่นเดียวกันกัในLatex
4.
ส่วนสุดท้ายน่าจะเป็นรายละเอียดของโปรแกรม
ตัวอย่างการเขียนโปรแกรมหาพื้นที่สามเหลี่ยม โดยมีความยาวด้านตามตัวแปร a, b และ
c
%%%%%%%%comment%%%%%%%%%
Function[A] = area(a,b,c)
S = (a+b+c)/2;
A = sqrt(s*(s-a)*(s-a)*(s-c));
%%%%%%%%EndOfArea%%%%%%%%
ตัวอย่างที่ 2 คือ
%trapaziod
rule for integral
h = input('mesh size h
=');
h = (0:h:1);
lenx =
length(x);
y = x.^2
int = (h/2)*(y(1)+2*sum(y(2:(lenx-1)))+y(lenx))
ซึ่งจะ save ชื่อ file เป็น trapint.m หากจะนำมาใช้ก็แค่พิมพ์เรียก ชื่อของ file trapint
บน command window
สิ่งหนึ่งที่เห็นจนชินตาใน
mathlab คือ การ plot surface ซึ่ง
function ที่ง่ายๆในการ plot คือ
z = f(x,y) ในการ plot function เราสามารถกำหนด ช่วงของตัวแปรของ x และ
y เช่นสมตติให้ 2 อยู่ในช่วง
2-4 และ y อยู่ในช่วง
1-3
โดยการกำหนดช่วงด้วยคำสั่ง
>> x = 2:0.5:4 ; y = 1: 0.5 :3 ;
ซึ่งยังต้องใช้ คำสั่ง meshgrid
>> [x,y] =
meshgrid(x,y) จากนั้นก็กำหนดฟังก์ชัน
ที่จะ plot เช่นเราต้องการ plot ฟังก์ชัน
>> z = (x-3).^2 – (Y-2).^2
>> mesh(x,y,z)
>> title (‘Saddle’) , xlabel(‘x’), ylabel(‘y’)
งานตอนเรียนปริญาโท
บทคัดย่อ
สมัครสมาชิก:
บทความ (Atom)