如何将这个程序优化成输出理论和实际内外轮转角曲线
时间: 2024-02-15 15:05:09 浏览: 21
要将这个程序优化为输出理论和实际内外轮转角曲线,您可以按照以下步骤进行修改:
1. 修改目标函数
将目标函数修改为一个空函数,因为您不再需要最小化或最大化任何性能指标。
2. 修改约束条件
将约束条件修改为仅考虑梯形的几何限制,不考虑转向性能方面的限制。这样可以简化约束条件的设计和实现。
3. 在程序中添加代码
在程序中添加代码来计算和绘制内外轮转角曲线。您可以在一个循环中计算每个外侧转角对应的理论和实际内外轮转角,然后使用 plot 函数将它们绘制出来。
以下是一个修改后的示例代码:
```matlab
function opt_design()
L = 4430;
M = 2150;
M1 = 2360;
m = 215;
gam = 15 * pi/180;
for i=1:35
afa(i) = i * pi/180;
N = sqrt(M^2 + m^2 - 2*M*m*sin(gam+afa(i)));
deta1 = asin(m*cos(gam+afa(i))/N);
b = M - 2*m*sin(gam);
beta = gam + deta1 - asin((N^2+m^2-b^2)/(2*N*m));
beta0 = atan(1/(M1/L+1/tan(afa(i))));
bt0(i,:) = beta0 .* 180/pi;
bt(i,:) = beta .* 180/pi;
% 计算内外轮转角
alpha = atan(M/m * sin(beta));
delta = acos((L - m*cos(beta))/(2*N));
theta = alpha - delta;
phi = gamma + asin(m*sin(theta)/N);
delta1 = acos((L + m*cos(beta))/(2*N));
theta1 = alpha - delta1;
phi1 = gamma + asin(m*sin(theta1)/N);
% 存储内外轮转角
phi_arr(i,:) = phi .* 180/pi;
phi1_arr(i,:) = phi1 .* 180/pi;
end
% 绘制内外轮转角曲线
plot(afa .* 180/pi, phi_arr, afa .* 180/pi, phi1_arr);
xlabel('外侧转角 (度)');
ylabel('内外轮转角 (度)');
legend('实际内轮转角', '实际外轮转角', '理论内轮转角', '理论外轮转角');
```
在这个修改后的程序中,我添加了计算内外轮转角的代码,并将内外轮转角存储在 phi_arr 和 phi1_arr 数组中。在程序的最后,我使用 plot 函数将实际内外轮转角和理论内外轮转角绘制出来。您可以根据需要修改绘图参数和格式。