我在 MATLAB 中遇到问题。我尝试在 ode 函数中绘制一个变量。我用以下代码调用我的 ode Funktion:
%Above is the code for the IC and constants
%Initial conditions [x0, vx0, y0, vy0]
IC = [x_0; w_x; y_0; w_y];
%Simulationszeitvektor
tspan = 0:dt:Tsim;
%Anonymous Function
a =@(t,z) Parabel(z,m,g,u_x,u_y,r_p,A,rho_L,nv);
%Options
options = odeset('Events',@Ereignis,'Refine',4,'RelTol', 1e-12);
%Solver
[t,z] = ode45(a,tspan, IC, options);
问题是雷诺数 Re。雷诺数取决于速度。在阻力期间速度正在减小。阻力取决于雷诺数。使用 matlab 中的 ode45 求解器计算速度。函数文件如下所示:
%My Function File
function dz = Parabel(z,m,g,u_x,u_y,r_p,A,rho_L,nv)
dz = zeros (4,1);
% relativ velocity
% z(2) is the velocity in x-direction
% z(4) is the velocity in y-direction
v_x=z(2)-u_x;
v_y=z(4)-u_y;
v=sqrt(v_x^2+v_y^2);
% Calculation Reynoldszahl
Re = (2*r_p*v)/nv;
%Drag Force
F_k = Re*constant
dz(2) = -F_k*constant;
dz(4) = -F_k*constant-g;
%The other code part is not necessary
我想做的是绘制雷诺数 Re,因为我真的需要知道这个数字。我不知道我该怎么做。我需要将 Re 保存在工作区中,例如变量 z。