* Mục đích thí nghiệm
+ So sánh sự giống và khác nhau giữa sóng dọc và sóng ngang * Những hạn chế của thí nghiệm truyền thống
+ Rất khó để minh họa sóng dọc, sóng ngang và càng khó hơn khi để hai loại sóng này cùng sảy ra, các phần tử của cả hai loại sóng dao động với cùng một biên độ, tần số, bước sóng để học sinh nhận thức bằng hình ảnh và nhìn nhận sự khác nhau giữa chúng
* Ưu điểm của thí nghiệm flash + Trực quan và dễ sử dụng
+ Các phần tử dao động với cùng một tần số, biên độ, bước sóng để tạo nên hình ảnh sóng dọc và sóng ngang
+ Có thể tạm dừng để khảo sát vị trí bất kì của các phần tử
+ Có thể khảo sát lại từ đầu bằng nhiều lần, để thấy được sự lan truyền sóng lên các phần tử của mỗi loại sóng
+ Có thể thay đổi trực tiếp các giá trị tần số, biên độ, bước sóng để thấy được sự thay đổi của sóng khi các thành phần này thay đổi
+ Sau khi hoàn thành, giáo viên có thể đưa thí nghiệm này đến với từng học sinh, để học sinh có thể tự làm thí nghiệm, tự học và tự thực hành, hoặc có
thể bổ sung câu hỏi vào thí nghiệm để giao cho học sinh giống như một bài tập về nhà
+ File flash có thể kết hợp dễ dàng với Violet hoặc Powerpoint để tạo thành một bài giảng hoàn chỉnh
* Các bước thiết kế thí nghiệm
Bước 1:Tạo các MovieClip (MC) là phần tử uM
Thực hiện chèn mã lệnh vào bên trong MC, tại Frame đầu tiên của MC + Đối với phần tử sóng ngang
//ban đầu khi đặt đối tượng tại một vị trí bất kì trên Stage yvat = _y; //tọa độ y ban đầu của vật
xvat = _x;//tọa độ x ban đầu của vật //khi bắt đầu chạy Frame
onEnterFrame = function(){
t = _root.goTime;//hàm thời gian
A = _root.biendo._y - 380;//biên độ dao động của chất điểm T = 60/(380 - _root.tanso._y); //chu kì dao động của chất điểm lamda = (_root.buocsong._y - 300)*10;//bước sóng
phi = 2*Math.PI*(t/T - xvat/lamda);//pha dao động của chất điểm if( phi > 0){
_y = yvat + A*Math.sin(phi);}//tọa độ y theo thời gian của chất điểm, hay chính là phương trình dao động của chất điểm theo phương y
else{ _y=yvat;}} + Đối với phần tử sóng dọc
//ban đầu khi đặt đối tượng tại một vị trí bất kì trên Stage yvat = _y; //tọa độ y ban đầu của vật
xvat = _x;//tọa độ x ban đầu của vật //khi bắt đầu chạy Frame
onEnterFrame = function(){
A = _root.biendo._y - 380;//biên độ dao động của chất điểm T = 60/(380 - _root.tanso._y); //chu kì dao động của chất điểm lamda = (_root.buocsong._y - 300)*10;//bước sóng
phi = 2*Math.PI*(t/T - xvat/lamda);//pha dao động của chất điểm if( phi > 0){
_x = xvat + A*Math.sin(phi);// tọa độ x theo thời gian của chất điểm, hay chính là phương trình dao động của chất điểm theo phương x
}else{ _x = xvat;}}
Lưu ý: với mỗi loại sóng ta chỉ cần tạo một phần tử uM ứng với loại sóng đó, sau đó copy hoặc kéo trực tiếp từ Libraly vào Stage, rồi xếp thành đường thẳng
Bước 2: Tạo các nút chức năng và
nút tăng giảm biên độ, tần số, bước sóng và các thành phần cần có khác
+ Đặt tên cho nút play trong mục <Instace Name> là unpausebutton + Đặt tên cho nút pause trong mục <Instace Name> là pausebutton + Đặt tên cho nút stop trong mục <Instace Name> là batdaulai
+ Đặt tên cho các nút kéo là biendo, tanso, buocsong trong mục <Instace Name> của từng nút kéo tương ứng
Kết quả (hình 24)
Bước 3: Thực hiện chèn mã lệnh vào Frame đầu tiên
Tại Frame đầu tiên
goTime = 0;//biến thời gian goTime ban đầu bằng không // khai báo đối tượng batdau()
function batdau() { goTime = 0; //biến thời gian trở về bằng không tamdung();}//bắt đầu đầu đối tượng tamdung()
//khai báo đối tượng tamdung()
function tamdung() { timing = false;}//biến này với mục đích tạm dừng thời gian // khai báo đối tượng chay()
function chay() { timing = true;}//thời gian tiếp tục chạy //khi bắt đầu chạy Frame
onEnterFrame = function() { //nếu biến timing = true
if (timing) {goTime = goTime + 0.01;}}//biến thời gian goTime tăng với hệ số 0.01
unpausebutton.onPress=function() { chay();}//khi bấm nút play thì thực hiện đối tượng chay ()
pausebutton.onPress=function() { tamdung();} //khi bấm nút pause thì thực hiện đối tượng tamdung()
batdaulai.onPress= function() { batdau();}//khi bấm nút stop thì thực hiện đối tượng batdau()
Kết quả: nhấn Ctrl + Enter (hình 25)