انجمن سایت کلیدستان



خطای Index exceeds matrix dimensionsزمان کنونی: ۱۳۹۶/۰۶/۳۰، ۰۳:۰۱ ب.ظ
کاربران در حال بازدید این موضوع: 1 مهمان
نویسنده: Taahaa
آخرین ارسال: Taahaa
پاسخ 1
بازدید 630

رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
خطای Index exceeds matrix dimensions

خطای Index exceeds matrix dimensions

#1
با سلام خدمت دوستان عزیز

کد متلب زیر را نوشته ام
کد:
%Senior Project  
close all
clear all
clc
%First state initial orbital elements in order to find initial r and v in
%geocentric equatorial coordinates    

%Set constants
Re = 6378; %Radius of Earth (km)
mu = 398600; %Gravitational Parameter of Earth (km^3/s^2)  
%Angular Momentum
h = 133929.0857; %km^2/s  
%Inclination
inc= 45*pi/180; %radians  
%Right Ascension of Ascending Node
RA = 0; %radians  
%Eccentricity
e = 0;   %Argument of Perigee
omega = 0*pi/180; %radians  
%True Anomaly
theta = 30*pi/180; %radians  
%Now find r in km and v in km/s

rperi = h^2/mu/(1+e*cos(theta))*[cos(theta);sin(theta);0]; % (km)   vperi = mu/h.*[-sin(theta); e + cos(theta); 0]; % (km/s)
vperi = mu/h.*[-sin(theta);e+cos(theta);0]; % (km/s)

Qperi=[cos(RA)*cos(inc)*sin(omega)+cos(RA)*cos(omega) -sin(RA)*cos(inc)*cos(omega)-cos(RA)*sin(omega) sin(RA)*sin(inc);
   cos(RA)*cos(inc)*sin(omega)+sin(RA)*cos(omega) cos(RA)*cos(inc)*cos(omega)-sin(RA)*sin(omega) -cos(RA)*sin(inc);
   sin(inc)*sin(omega) sin(inc)*cos(omega) cos(inc)];
     r=Qperi*rperi %in km
     v=Qperi*vperi %in km/s
     r = r %km
     v = v %km/s
     %Find Range
range = norm(r) - Re %in km  
%Find Period of orbit
T = 2*pi/sqrt(mu)*(norm(r))^(1.5) %in seconds  
%Now these are the initial conditions and time span
y = [r v]
t = [0 172800] %in seconds
% t0 = [0 T0]; %in seconds  
rx=y(1) %km ry=y(2); %km rz=y(3); %km vx=y(4); %km/s vy=y(5); %km/s vz=y(6);
ry=y(2)
rz=y(3)
vx=y(4)
vy=y(5)
vz=y(6)
%Normalize the position vector for futre use
R=norm([rx, ry, rz])
%Find acceleration from the position vector
ax=-mu*rx/R^3 %km/s^2
ay=-mu*ry/R^3 %km/s^2
az=-mu*rz/R^3 %km/s^2

%Set up new conditions after t seconds
accel = [vx; vy; vz; ax; ay; az]

for i = 1:length(t)    
   plot3(y(1:i,1), y(1:i,2), y(1:i,3))

   drawnow
end

ولی متاسفانه با خطای 
Index exceeds matrix dimensions

روبرو میشم..امکانش هست راهنماییم کنید؟
با تشکر
پاسخ


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان

آخرین کلیدهای غیررایگان

شما هم می توانید کلیدهای غیررایگان منتشر کنید (بیشتر بدانید)