Ошибка в выражении.

Форум, посвященный общим вопросам, связанным с MATLAB

Модератор: Admin

Tarasque
Пользователь
Сообщения: 1
Зарегистрирован: Сб апр 28, 2018 7:28 pm

Ошибка в выражении.

Сообщение Tarasque » Сб апр 28, 2018 7:33 pm

w = -10:10/1000:10;
E = 2;
tau = 3;
S = sqrt((E/w*sin(w*tau/2)).^2);
plot(w, S) %

Такая вот программка не хочет работать, ругается на 4ю строку, хотя без E/w строит график. В чем проблема?

CrabAlexey
Пользователь
Сообщения: 11
Зарегистрирован: Ср май 23, 2018 4:02 pm

Re: Ошибка в выражении.

Сообщение CrabAlexey » Вт авг 07, 2018 2:22 pm

Tarasque писал(а):w = -10:10/1000:10;
E = 2;
tau = 3;
S = sqrt((E/w*sin(w*tau/2)).^2);
plot(w, S) %

Такая вот программка не хочет работать, ругается на 4ю строку, хотя без E/w строит график. В чем проблема?


Цикл организовать надо, не может он постоянное число делить на "размах чисел" w

Код: Выделить всё

for w = -10:10/1000:10;
E = 2;
tau = 3;
S = sqrt((E/w*sin(w*tau/2)).^2);
hold on
plot(w, S) %
end

Sniper53
Пользователь
Сообщения: 51
Зарегистрирован: Пн ноя 09, 2015 7:30 pm

Re: Ошибка в выражении.

Сообщение Sniper53 » Вт авг 07, 2018 2:40 pm

Запишите поэлементное умножение и деление.

S = sqrt((E./w.*sin(w*tau/2)).^2);
С наилучшими пожеланиями, Федоров Д.А.