Báo cáo Bài tập lớn môn Giải tích 1 - Nguyễn Ngọc Quỳnh Như

Khoa học và công nghệ có những bước tiến rõ rệt, đến gần hơn với nhân loại, các bài toán kĩ thuật trở nên phức tạp và cần nhiều thời gian để nghiên cứu làm rõ hơn, từ đó các ứng dụng tính toán thông minh ngày càng được ứng dụng để giải quyết các bài toán này. MATLAB là một môi trường tính toán số và lập trình cho phép tính toán số với ma trận, vẽ đồ thị hàm số hay biểu đồ thông tin, thực hiện thuật toán, tạo các giao diện người dùng và liên kết với những chương trình máy tính viết trên nhiều ngôn ngữ lập trình khác.

Với thư viện Toolbox, MATLAB cho phép mô phỏng tính toán, thực nghiệm nhiều mô hình trong thực tế và kỹ thuật.

Với hơn 40 năm hình thành và phát triển, ngày nay với thiết kế sử dụng tương đối đơn giản và phổ thông, MATLAB là công cụ tính toán hữu hiệu để giải quyết các bài toán kỹ thuật.

 

docx 18 trang xuanthi 26/12/2022 3820
Bạn đang xem tài liệu "Báo cáo Bài tập lớn môn Giải tích 1 - Nguyễn Ngọc Quỳnh Như", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • docxbao_cao_bai_tap_lon_mon_giai_tich_1_nguyen_ngoc_quynh_nhu.docx

Nội dung text: Báo cáo Bài tập lớn môn Giải tích 1 - Nguyễn Ngọc Quỳnh Như

  1. LỜI NÓI ĐẦU Khoa học và công nghệ có những bước tiến rõ rệt, đến gần hơn với nhân loại, các bài toán kĩ thuật trở nên phức tạp và cần nhiều thời gian để nghiên cứu làm rõ hơn, từ đó các ứng dụng tính toán thông minh ngày càng được ứng dụng để giải quyết các bài toán này. MATLAB là một môi trường tính toán số và lập trình cho phép tính toán số với ma trận, vẽ đồ thị hàm số hay biểu đồ thông tin, thực hiện thuật toán, tạo các giao diện người dùng và liên kết với những chương trình máy tính viết trên nhiều ngôn ngữ lập trình khác. Với thư viện Toolbox, MATLAB cho phép mô phỏng tính toán, thực nghiệm nhiều mô hình trong thực tế và kỹ thuật. Với hơn 40 năm hình thành và phát triển, ngày nay với thiết kế sử dụng tương đối đơn giản và phổ thông, MATLAB là công cụ tính toán hữu hiệu để giải quyết các bài toán kỹ thuật. Như vậy, đối với đề tài: “A. Cho hàm y=f(x) và giá trị x 0 nhập từ bàn phím. Viết đoạn code tìm tiếp tuyến của hàm tại x 0 và vẽ đường cong cùng tiếp tuyến vừa tìm . B. Viết code tìm cực trị của 1 hàm một hàm lượng giác f(x)=asin(bx+c) bất kì. (a,b,c nhập từ bàn phím).”, ta có thể sử dụng các ứng dụng tính toán của MATLAB để giải quyết theo cách đơn giản và dễ hiểu nhất, giúp các bạn làm quen và bổ sung thêm kỹ năng sử dụng các chương trình, ứng dụng cho sinh viên đặc biệt là sinh viên của Khoa Kỹ Thuật Xây Dựng 2
  2. PHẦN I GIỚI THIỆU CHUNG Giới thiệu đề tài: Bài toán 1: Viết 1 đoạn code theo thứ tự nhóm (không dùng hàm có sẵn): 3.A. Cho hàm y=f(x) và giá trị x0 nhập từ bàn phím. Viết đoạn code tìm tiếp tuyến của hàm tại x0 và vẽ đường cong cùng tiếp tuyến vừa tìm . B. Viết code tìm cực trị của 1 hàm một hàm lượng giác f(x)=asin(bx+c) bất kì. (a,b,c nhập từ bàn phím). Bài toán 2: Tất cả các nhóm đều làm • Cho hàm y=y(x) xác định bởi phương trình tham số y=y(t), x=x(t) và giá trị n. Viết đoạn code tính đạo hàm y(n)(x) • Chọn 1 đề tính giới hạn bất kì trong chương trình học . Sau đó dùng hàm trong matlab để giải. • Chọn 1 đề Tính đạo hàm bất kì trong chương trình học . Sau đó dùng hàm trong matlab để giải. • Chọn 1 đề tính tích phân bất kì trong chương trình học . Sau đó dùng hàm trong matlab để giải. • Chọn 1 đề Tính diện tích miền phẳng bất kì trong chương trình học . Sau đó dùng hàm trong matlab để giải. 4
  3. syms x u t y; f=input('nhap ham f(x)= '); x0=input('nhap x0 = '); hold off u=1; while (u == 1) t= subs(f,x0); if (limit(f,x,x0) == t ) disp('ta duoc tiep tuyen tai diem x0'); u=2; else disp ('ham f(x) khong lien tuc tai diem x0'); disp('nhap lai'); x0= input('x0 = '); u=1; end end % phuong trinh tiep tuyen cua f(x) tai x0 disp('phuong trinh duong tiep tuyen'); y=subs(diff(f,x),x0)*(x-x0) + t; fprintf('y= ');disp(y); % ve duong cong f(x) va tiep tuyen cua no tai x0 ezplot(f) hold on ezplot(y); grid on axis normal xlabel('truc x'); ylabel('truc y'); 6
  4. 1. Nội dung: B. Viết code tìm cực trị của 1 hàm một hàm lượng giác f(x)=asin(bx+c) bất kì. (a,b,c nhập từ bàn phím). Input: Nhập a,b,c Out put : tìm cực trị hàm y=asin(bx+c) 2. Cơ sở lí thuyết: • Tìm tập xác định • Tìm f’(x) • Tìm f’’(x) • Tìm các điểm xi(i=1,2, ) mà tại đó đạo hàm bằng 0 hoặc không tồn tại +f’’(xi) 0 thì hàm số đạt cực tiểu tại xi Đoạn code: syms x f f1 f2 i a=input('a=') b=input('b=') c=input('c=') f=a*sin(b*x+c) f1=diff(f,x,1) f2=diff(f,x,2) c=solve(f1) for i=0:(2*b-1) if(subs(f2,c+i*pi/b)>0) disp('ham co diem cuc tieu') x=c+i*pi/b elseif(subs(f2,c+i*pi/b)<0) disp('ham co diem cuc dai') x=c+i*pi/b end end 8
  5. 1.Cho hàm y=y(x) xác định bởi phương trình tham số y=y(t), x=x(t) và giá trị n. Viết đoạn code tính đạo hàm y(n) 1. Yêu cầu: ☺Input: ▪ Nhập vào hàm y=y(t), x=x(t) ▪ Nhập vào giá trị n ☺Output: ▪ Tìm y=y(x) ▪ Đạo hàm y(n)(x): 2. Cơ sở lý thuyết: Từ hàm x(t) được nhập vào, ta tìm hàm ngược của x để từ đó tính được t theo x. Thay t=t(x) vào y(t), ta có được hàm y(x) (*). Từ đó, tính đạo hàm cấp n của y(x) theo x. Sau khi tính đạo hàm cấp n của ( ), ta x bằng x(t) và thế vào kết quả cuối cùng để xuất ra màn hình. 3. Thuật toán: syms x y t x0 b x=input('nhap vao ham x: '); y=input('nhap vao ham y: '); n=input('nhap vao n: '); y=eval(y); x=eval(x); f=(subs(finverse(x),'x0')); y=eval(subs(y,f)); b=diff(y,x0,n); subs(b,x) 4. Cho ví dụ giải bằng matlab: 10
  6. 2.Giải các VD bằng hàm trong Matlab: Đề: • Chọn 1 đề tính giới hạn bất kì trong chương trình học . Sau đó dùng hàm trong matlab để giải. VD: Giải tay: 2 2 3x 1 3x 1 x2 5 . 2 2 x 2 3 x 5 lim 2 lim 1 2 x x 5 x x 5 3x2 1 2 2 3 x 5 x 5 lim 1 2 x x 5 (e 3)3 1 e9 Thuật toán: syms x f=((x^2+2)/(x^2+5))^(3*x^2+1); y=limit(f,x,inf); text= 'gioi han cua ham so la' ; disp(text); disp(char(y)); Giải trên Mathlab 12
  7. Đề: • Chọn 1 đề tính tích phân bất kì trong chương trình học . Sau đó dùng hàm trong matlab để giải. 2 ln x VDTính : dx 1 x Giải tay: 2 lnx 2 ln2 x ln2 2 ln21 dx lnxd(lnx) 2 1 1 x 1 2 2 2 Thuật toán: syms x; f=(log(x)/x); a = int(f,x,1,2); disp(' gia tri cua tich phan la '); disp(a); Giải trên Matlab 14
  8. g = input('nhap ham g = '); disp('nhap doan [a b] '); a= input ('a='); b= input ('b='); y = int(abs(f-g),a,b); disp(' dien tich mien phang la '); disp(y); Giải trên Matlab ___HẾT___ 16
  9. TÀI LIỆU THAM KHẢO 18