How to solve 3 equations dependent each other?
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
hknatas
el 10 de Nov. de 2018
Hello. How to code this situation?
In this situation i need to calculate all angular velocities from time 0s to time 5400s with increase by 0.1s and graph them.
I have all the initial values:
wxi = 0.0065
wyi = 0.0066
wzi = 0.0067
And constant values:
NT = 3.6 * 10^-10
Jx = 2.1 * 10^-3
Jy = 2.0 * 10^-3
Jz = 1.9 * 10^-3
Actually i thought it is going to be easy but when i write the code for wx, i realized that wx is increasing with time but wz and wy in the equation are constant values. Which kind of loop should i use? Thanks for the answers!
5 comentarios
Respuesta aceptada
Bruno Luong
el 10 de Nov. de 2018
Actually i thought it is going to be easy but when i write the code for wx, i realized that wx is increasing with time but wz and wy in the equation are constant values.
Just copy the value in 3 different variables, then do the calculation.
7 comentarios
Walter Roberson
el 11 de Nov. de 2018
delta_t = 0.1;
time_vals = 0 : delta_t : 5400;
N_times = length(time_vals);
n = 63;
Wx = zeros(1, N_times);
Wy = zeros(1, N_times);
Wz = zeros(1, N_times);
Wx(1) = 0.0002 + 0.0001 * n; % 0.0065
Wy(1) = 0.0003 + 0.0001 * n; %0.0066
Wz(1) = 0.0004 + 0.0001 * n; %0.0067
% The initial moments of inertia of the satellite ( m^4 ):
Jx = 2.1e-03;
Jy = 2e-03;
Jz = 1.9e-03;
% The disturbance torque acting on the satellite ( N.m ):
NT = 3.6e-10;
for i = 1 : N_times - 1
Wx(i+1) = Wx(i) + delta_t / Jx * (Wz(i) * Wy(i) + NT)*(Jy - Jz);
Wy(i+1) = Wy(i) + delta_t / Jy * (Wx(i) * Wz(i) + NT)*(Jz - Jx);
Wz(i+1) = Wz(i) + delta_t / Jz * (Wx(i) * Wy(i) + NT)*(Jx - Jy);
end
plot(time_vals, Wx);
Más respuestas (0)
Ver también
Categorías
Más información sobre Reference Applications en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!