Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 6

SOLVING TIME-DEPENDENT PDE USING MATLAB PDETOOL

Đề bài:

1. Khởi động PDE Toolbox: gõ pdetool trong Command Window sau đó enter.

Giao diện PDE Toolbox


2. Hiệu chỉnh format:
- Options -> Grid
- Vì điều kiện biên của đề bài 0 ≤ x ≤ 1 và không có y nên ta chỉ cần hiệu chỉnh
giới hạn của trục hoành từ 0 tới 1:
Options -> Axes limits: X-axis range : [0 1]

Chia nhỏ trục hoành: Options -> Grid Spacing: X-axis linear spacing: 0:0.05:1

Trục hoành sau khi chia nhỏ và hiệu chỉnh giới hạn
3. Lựa chọn dạng PDE:
Theo đề bài Ex4 thì dạng của phương trình là dạng parabolic, có c=1 a=0 f=0 d=1:
PDE -> PDE Specification -> Parabolic -> Chọn c=1 a=0 f=0 d=1. Sau đó nhấn OK
PDE Specification
4. Điều kiện biên bổ sung:
Có 2 dạng điều kiện biên bổ sung là Newmann BCs và Dirichlet BCs. Ở đây
ta sử dụng Dirichlet BCs:
Boundary -> Boundary Mode -> Kích hoạt sử dụng điều kiện biên
Boundary -> Specify Boundary Condition -> Dirichlet -> r=0 h=1
Do theo Dirichlet BCs h*u=r tại biên, theo đề bài thì ta chỉ có điều kiện biên
của u tại x=0 và 1 nên ta dùng chung điều kiện này cho mọi biên với r=0 h=1, nếu
có các điều kiện biên khác ta cần nhấn đúp vào từng biên trên hình để thay đổi điều
kiện biên phù hợp.
5. Nhập thông số đầu vào:
Solve-> Parameters ->
Times: Tương ứng với các giá trị t mà ta cần tìm, ở đây Time: 0:0.0025:0.05
u(t0): Giá trị của hàm u tại t đầu tiên, theo đề bài t=0 -> nhập sin(pi*x)
Relative tolerance va absolute tolerance để làm tròn tăng độ chính xác của kết quả,
ta để mặc định.
Sau đó nhấn OK
Để tăng độ mịn của đồ thị vẽ ra, ta bấm vào biểu tượng để vẽ ra các hình
tam giác, càng nhiều hình tam giác thì đồ thị 3D càng mịn nhưng bù lại thời gian
tính toán sẽ lâu hơn.

6. Kết quả:
Solve -> Solve PDE. Ta có được biểu đồ như sau:
Ở đây cột màu sắc để hiện giá trị của u tại thời điểm t=0.05. Vì phương trình
không có y nên ta xem các kết quả giá trị của u chấp nhận nằm trên trục y=0
Để quan sát được rõ hơn ta dùng biểu đồ 3D: Plot -> Parameter -> Đánh dấu vào ô
Height (3D-Plot) -> Nhấn Plot

Vì không quan tâm tới trục y ta nhấn chuột phải vào đồ thị, chọn X-Z view:

Ta quan sát được giá trị tương ứng của u và x tại thời điểm t=0.05. Đó là các giá
trị trên đường biên parabolic.
Để có được các giá trị u và x tại các thời điểm t khác: Trong bảng Plot Selection ở
trên, ta chọn Time for plot tại các thời điểm khác.
Để lấy giá trị trên biểu đồ ta vào Tool -> Data Cursor -> chọn trên đường biên vị
trí mà ta muốn biết giá trị.
7. So sánh kết quả với bài làm Excel:
Excel Implicit Dirichlet BCs Matlab PDE Toolbox Error
t x u u %
0.0025 0.96409 0.9589 0.538331
0.01 0.896548926 0.8885 0.897768
0.02 0.55 0.813591004 0.8045 1.117392
0.025 0.7749641 0.7703 0.601847
0.05 0.607362391 0.5849 3.698351
8. Kết luận:
-Sự sai lệch của 2 phần mềm là khá nhỏ
-Có thể sử dụng lệch animation trong Plot Selection để xem sự thay đổi của u theo
thời gian t.

You might also like