2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 MATLAB [ошибка]
Сообщение07.07.2013, 16:20 
Аватара пользователя


12/05/12
604
Оттуда
Здравствуйте. В коде
Код:
clc
clear all

a=1;
T=5;
syms x1 t
a0=x1*5+5;
da0dx1=diff(a0,x1,1);
f=t+0.001*x1;


N=15;
h1=a/N;
h3=T/(20*N);
x(1)=0;

for i=1:N-1
    x(i+1)=x(1)+i*h1;
end;

z(1)=0;
for j=1:20*N-1
    z(i+1)=z(1)+j*h3;
end;

w=0;

for k=1:20*N-1
    for i=1:N-1
         
          f0=subs(f,[x1 t],[x(i) z(k)]);
w=w+1;
      end;
  end;

какая-то противоречащая разуму ошибка.
Код:
Index exceeds matrix dimensions.

Error in test (line 34)
          f0=subs(f,[x1 t],[x(i) z(k)]);

Для интереса я завёл специально переменную $w$, которая фиксирует, на каком шаге произошла ошибка. И каждый раз эта ошибка вылетает на $210$ шаге.
Помогите, пожалуйста, разобраться.

 Профиль  
                  
 
 Re: MATLAB [ошибка]
Сообщение07.07.2013, 16:27 
Заслуженный участник


20/07/09
4026
МФТИ ФУПМ
Код:
for j=1:20*N-1
    z(i+1)=z(1)+j*h3;
end;

Нужно $j+1$.

 Профиль  
                  
 
 Re: MATLAB [ошибка]
Сообщение07.07.2013, 16:33 
Аватара пользователя


12/05/12
604
Оттуда
Спасибо, увидел. Сейчас попробую.

-- 07.07.2013, 15:41 --

Nemiroff
Спасибо, теперь программа работает!

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group