Hỏi về lập trình trên matlab

Anh chị nào giúp em các câu lệnh trên matlab để được ảnh bên . Em cảm ơn ạ !

ra được tấm này, lười label với vẽ thêm mấy cái điểm :sweat: Chạy trên http://octave-online.net nên khá hạn chế cái surf h1 chỉ được là 151x151 matrix…

[X,Y] = meshgrid(linspace(0,3,151));
Z = 4 - X.^2 - 2*(Y.^2);

[A,C] = meshgrid(linspace(0,sqrt(2),21), linspace(0,2,21));
B = 1 + A - A;

X1 = linspace(0,3,61);
Y1 = ones(1,61);
Z1 = 2 - X1.^2;

X2 = linspace(0,3,21);
Y2 = ones(1,21);
Z2 = -2*X2 + 3;

figure;
hold on;
h1 = surf(X,Y,Z,'edgecolor','none','facealpha',0.4);
h2 = surf(A,B,C,'edgecolor','none','facealpha',0.4);
h3 = plot3(X1,Y1,Z1,'color','blue');
h4 = plot3(X2,Y2,Z2,'color','red');
hold off;

box off;
grid off;
colormap winter;
view(120, 30);
zlim([0 5]);
2 Likes

Sẵn cho mình hỏi ,có cách tổng quát cho 1 hàm bất kì không bạn ? Nếu có cho mình xin code mình cảm ơn nhiều !

chắc phải sửa từ từ thôi. Nhiều thứ cần viết quá. Ví dụ như dòng

  • Z = 4 - X.^2 - 2*(Y.^2); là công thức khác cần vẽ.

  • B = 1 + A - A; tức là mặt phẳng y = 1, cần phải biết giá trị 1. Ngoài ra còn phải biết giới hạn A, C cho mặt phẳng này…

  • khoảng giá trị X, Y: meshgrid(linspace(0,3,151));: X,Y ở đây thuộc [0,3] x [0,3]

  • rồi khoảng giá trị của Z thuộc [0,5] thông qua zlim([0 5]);.

  • góc nhìn view(120,30);

  • công thức Z1 là đạo hàm của f theo x, fx

  • công thức Z2 là đoạn thẳng đi qua (1,1,f(1,1)) và tiếp tuyến với Z1

mỗi cái góc nhìn với zlim là ko làm tự động nổi rồi… Ít ra cũng phải có 6, 7 loại input như trên

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?