输出到一个向量

1视图(30天)
Mohsen Nashel
Mohsen Nashel 2020年5月12日
评论道: 杰夫•海斯 2020年5月12日
你好。我想把每个回路的输出向量形式,包含所有的值循环给L_max和D_max每循环试验。请帮助!
%定义场景独立的目的:
%的火箭
%有效载荷质量:
M_L = 1;%公斤
%的鳍片数量:
N = 3;
%壳密度:
rho_s = 2700;% ^ 3公斤/米
%推进剂密度:
rho_p = 1772;% ^ 3公斤/米
%壳牌工作应力:
sig_s = 60 * 10 ^ 6;% pa
%重力:
g = 9.81;% m / s ^ 2
%的空气:
% Atmorspheric TeM_perature海平面:
T_atm = 298;
%的空气比热容比:
γ= 1.4;
%在海平面的空气密度:
ρ= 1.225;
%海平面压力:
P_a = 101325;% pa
% %场景1:h_max = 20000英尺,a_max = 10 m / s ^ 2, SM = 1:迭代
%最大高度
% h_max = 0.3048 * (20000 20000 20000 2000 2000 10000 30000 10000 30000);% m
% a_max = [10 10 10 5 20 10 10 5 20)
% SM = [1 2 3 2 2 2 2 1 3]
数据= readmatrix (“数据”);%每个坳是1测试
D_max = 0 (1、9);
L_max = 0 (1、9);
我= 1:9;
h_max =数据(1,);
a_max =数据(我);
SM =数据(我);
R_max = 1 + a_max;
W_eq =√(h_max * g) /(((日志(R_max) / 2) *(日志(R_max) 2)) + ((R_max-1) / R_max)));
t_bmax = (R_max-1) * W_eq / (g * R_max);
M_eq = W_eq /√(γ* 287 * T_atm);
P_c = P_a * (1 + (((gamma 1) / 2) * M_eq ^ 2)) ^(γ/ (gamma 1));
P_0_a = P_c / P_a;
% %场景1迭代最佳L、D
%为迭代创建Limiatation长度和直径
L = linspace (0.0001, 5000);% m
D = linspace (0.0001, 5000);% m
% %迭代通过所有的参数:
i = 1:长度(D);
j = 1:长度(L)
δ= (P_c / (2 * sig_s)) * D(我);%壳厚度
M_n =δ* rho_s *π* D (i) * D (i) +√(D (i) ^ 2 + (D(我)^ 2/4)));
M_f = ((D(我)^ 2)/ 2)*δ* rho_s;
M_f_b =(π* D (i) * rho_s * D (i) *δ);
M_s =(π* D (i) * rho_s * L (j) *δ)+ M_n + M_f + M_f_b;% % % % % % % % % %
M_p = (R_max-1) * (M_s + M_L);
L_p = (M_p /(π* D (i) ^ 2 * rho_p / 4));
如果L_p < L (j) + D(我)
%的压力中心火箭的鼻子
X_n = (2/3) * D(我);% m
CN_n = 2;
%的压力中心火箭鳍
= D(我);% m
s = D(我);% m
b = 0;
m = a - b;
fin_hyp = sqrt (2) * D(我);% m
X_f = D(我)+ L (j);% m
delta_X_f = ((m * (+ 2 * b)) / (3 * (a + b))) + ((1/6) * (a + b - ((a * b) / (a + b))));% m
X_f_dash = X_f + delta_X_f;% m
CN_f = (4 * N * (s / D (i)) ^ 2) / (1 +√(1 + (2 * fin_hyp) / (a + b)) ^ 2));% m
k_fb = 1 + ((D (i) / 2) / (s + (D (i) / 2)));% m
CN_fb = k_fb * CN_f;% m;
X_cp = ((CN_n * X_n) + (CN_fb * X_f_dash)) / (CN_n + CN_fb);
%为火箭锥体重心:
X_ncg = 2 * D (i) / 3;
M_n =δ* rho_s *π* D (i) * D (i) +√(D (i) ^ 2 + (D(我)^ 2/4)));
M_c = M_L + M_n;
%为火箭鳍重心
X_f_cg = (2 * D (i) / 3) + L (j) + D(我);
M_f = ((D(我)^ 2)/ 2)*δ* rho_s;
%为火箭管1重心
l1 = L (j) + D(我)-L_p;
xL_1_cg = (L_1/2) + D(我);
M_L_1 =π* D (i) * l1 *δ* rho_s;
%重心火箭管2
l2 = L_p;
xL_2_cg = (L_2/2) + D (i) + l1;
M_L_2 =(π* D (i) * l2 *δ* rho_s) + M_p;
X_cg = ((M_c * X_ncg) + (M_L_1 * xL_1_cg) + (xL_2_cg * M_L_2) + (X_f_cg * M_f * 3) / (M_c + M_L_1 + M_L_2 + (M_f * 3));
电导率(i, j) = X_cp-X_cg - (D(我)* SM);
如果电导率(i, j) < 0 | |电导率(i, j) > 0.00001
继续
结束
L_D (i, j) = L / D (j)(我);
λ(i, j) = M_L / (M_s + M_p);
其他的
继续
结束
结束
结束
% %场景1的输出
% D_max和L_max矩阵索引
[M,我]= max(λ,[],“所有”,“线性”);
(行,坳)= ind2sub(大小(λ),我);
D_max = D(行)
L_max = L (col)
结束

答案(1)

杰夫•海斯
杰夫•海斯 2020年5月12日
Mohsen——你已经宣布 D_max L_max 与数组
D_max = 0 (1、9);
L_max = 0 (1、9);
所有您需要做的是访问正确的元素在每个迭代的循环
% %场景1的输出
% D_max和L_max矩阵索引
[M,我]= max(λ,[],“所有”,“线性”);
(行,坳)= ind2sub(大小(λ),我);
D_max (i) = D(行)
L_max (i) = L (col)
以上是有效的前提 D(行) L (col) 是标量。这是这样吗?
2的评论
杰夫•海斯
杰夫•海斯 2020年5月12日
你确定他们是标量吗?的尺寸是什么 D_max L_max 一旦代码已经完成?记住,没有我不能运行您的代码
数据= readmatrix (“数据”);%每个坳是1测试
一件事你可能要考虑使用 作为你的变量为两步 循环
我= 1:9;
%一些代码
% %迭代通过所有的参数:
i = 1:长度(D);

登录置评。

标签

下载188bet金宝搏


释放

R2020a

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!