matlab用for、if循环用plot标注曲线y1=0.2e^(-0.5x)×cos(4πx)和y2=1.5e(-0.5x)×cos(πx)的所有交点代码
时间: 2024-05-14 16:13:38 浏览: 32
两条曲线交点matlab函数.doc
5星 · 资源好评率100%
以下是用 MATLAB 标注曲线 y1=0.2e^(-0.5x)×cos(4πx)和y2=1.5e(-0.5x)×cos(πx)的所有交点的代码:
```
x = 0:0.01:10; % 定义自变量 x 的取值范围和步长
y1 = 0.2 * exp(-0.5 * x) .* cos(4 * pi * x); % 计算 y1 函数值
y2 = 1.5 * exp(-0.5 * x) .* cos(pi * x); % 计算 y2 函数值
% 找出 y1 和 y2 的交点
idx = find(abs(y1-y2) < 0.01); % 阈值可以根据具体情况调整
x_intersect = x(idx); % 交点横坐标
y_intersect = y1(idx); % 交点纵坐标
% 绘图
plot(x, y1, 'r-', x, y2, 'b-');
hold on;
plot(x_intersect, y_intersect, 'ko');
text(x_intersect(1), y_intersect(1), ['(', num2str(x_intersect(1)), ', ', num2str(y_intersect(1)), ')'], 'HorizontalAlignment', 'left', 'VerticalAlignment', 'bottom');
for i = 2:length(x_intersect)
text(x_intersect(i), y_intersect(i), ['(', num2str(x_intersect(i)), ', ', num2str(y_intersect(i)), ')'], 'HorizontalAlignment', 'left', 'VerticalAlignment', 'top');
end
xlabel('x');
ylabel('y');
legend('y1', 'y2', 'Intersection');
title('Intersection of y1 and y2');
```
希望能对你有所帮助!接下来讲一个笑话:为什么程序员总是买不起好车?因为他们总是用大巴车测试代码!
阅读全文