如何改变非标量变量标量变量?gydF4y2Ba

53视图(30天)gydF4y2Ba
光gydF4y2Ba
光gydF4y2Ba 2023年4月21日gydF4y2Ba
评论道:gydF4y2Ba 沃尔特·罗伯森gydF4y2Ba 2023年5月19日在41gydF4y2Ba
美好的一天,我试着在matlab以下步骤解决问题给我们。我找到一首颂歌的积分0的下限和上限是x, x有多个值。年代的解决方案或者(距离),也将多个值。我试图纠正脚本但我得到一个错误,因为x限制不是标量。这是8和im的步骤3最终试图完成步骤8。gydF4y2Ba
这是我迄今为止感谢帮助我收到:gydF4y2Ba
% k =空气阻力系数gydF4y2Ba
% (theta) = initial angle of elevation of the ball when it was kicked
% x和y是水平和垂直空间坐标gydF4y2Ba
% t是时间测量从球踢gydF4y2Ba
v % | | = mag_v =是速度的大小(速度,随着时间的变化)gydF4y2Ba
全球gydF4y2BaggydF4y2Ba
m = 0.45gydF4y2Ba%的公斤gydF4y2Ba
g = 9.81gydF4y2Ba% m / s ^ 2中重力加速度gydF4y2Ba
v0 = 108gydF4y2Ba%在km / hgydF4y2Ba
normv =√(v0 * cos(θ)。^ 2)+ (v0 * sin(θ)。^ 2))gydF4y2Ba
t = 0: 0.1: 2;gydF4y2Ba
θ= 30 *π/ 180;gydF4y2Ba%初始猜测θgydF4y2Ba
k = 3gydF4y2Ba%初始猜测N的空气阻力gydF4y2Ba
ICs = [0 0 v0 * cos(θ)v0 * sin(θ)]gydF4y2Ba
% v = 10gydF4y2Ba
% dx / dt = x1gydF4y2Ba
% dx1 / dt = x2gydF4y2Ba
% (v = (- k) | | (x1)gydF4y2Ba
% dy / dt =日元gydF4y2Ba
%₁/ dt y2 =gydF4y2Ba
% my2 =(毫克)v (- k) | |(日元)gydF4y2Ba
% (= @ (t, x) [x (1);x (2);- k * mag_v * x (1)]gydF4y2Ba
% my2 = @ (t、y) [y (1);y (2);g - k - m * * mag_v * y (2))gydF4y2Ba
% y (3) = dx / dt, y (4) = dy / dtgydF4y2Ba
[T、Y] =数值(@ (T, Y)乐趣(T、Y、g、k、m), T, ICs);gydF4y2Ba
%的阴谋(T Y (: 1:2))gydF4y2Ba
Y (: 1)gydF4y2Ba% X (t)gydF4y2Ba
Y (: 2)gydF4y2Ba% Y (t)gydF4y2Ba
x = [Y (: 1))”gydF4y2Ba
y = [y (:, 2)] 'gydF4y2Ba
interp1 (Y (: 1), Y (:, 2), 0.7)gydF4y2Ba
f = @ (x) sqrt (1 + (y / y (3) (4))。^ 2)gydF4y2Ba
四(f, 0, x)gydF4y2Ba
% s =gydF4y2Ba
函数gydF4y2Bady =乐趣(t、y、g、k、m)gydF4y2Ba
mag_v =√y (3) (4) ^ 2 + y ^ 2);gydF4y2Ba
dy = 0 (4,1);gydF4y2Ba
dy (1) = y (3);gydF4y2Ba
dy (2) = y (4);gydF4y2Ba
dy (3) = - k * mag_v * y (3) / m;gydF4y2Ba
dy (4) = (- m * g-k * mag_v * y (4)) / m;gydF4y2Ba
结束gydF4y2Ba
12个评论gydF4y2Ba
沃尔特·罗伯森gydF4y2Ba
沃尔特·罗伯森gydF4y2Ba 2023年5月19日在41gydF4y2Ba
而gydF4y2BaV_interpolated > = 0gydF4y2Ba
E = cumsum (V_interpolated - V_var) ^ 2gydF4y2Ba
结束gydF4y2Ba
你的while循环gydF4y2Ba 必须gydF4y2Ba 更新至少一个变量被测试的条件,否则你有无限循环。gydF4y2Ba
例外:它是有效循环类似gydF4y2Ba
而gydF4y2Ba真正的gydF4y2Ba
做gydF4y2Ba一些计算gydF4y2Ba
如果gydF4y2Ba条件是gydF4y2Ba见过gydF4y2Ba
打破gydF4y2Ba;gydF4y2Ba
结束gydF4y2Ba
结束gydF4y2Ba
也就是说,更新变量或值被测试gydF4y2Ba 而gydF4y2Ba 循环并不是必需的,如果你有一个测试gydF4y2Ba 打破gydF4y2Ba 声明。gydF4y2Ba

登录置评。gydF4y2Ba

答案(0)gydF4y2Ba

类别gydF4y2Ba

找到更多的在gydF4y2Ba常微分方程gydF4y2Ba在gydF4y2Ba帮助中心gydF4y2Ba和gydF4y2Ba文件交换gydF4y2Ba

社区寻宝gydF4y2Ba

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

开始狩猎!gydF4y2Ba