Octave не могу построит ьграфик

Why and Whats ?:x=linspace(0,2,100); y=(220/(0.8+x)^2)*x; plot(x, y); dont want build curve?

first message y=(220/(0.8+x)^2)x error: for x^y, only square matrix arguments are permitted and one argument must be scalar. Use .^ for elementwise power second ,good , i did y=x((220.0/(0.8+x))) and got: whats 1x1, 1x100? error: operator /: nonconformant arguments (op1 is 1x1, op2 is 1x100)Whats 1x1 1x100> whats 1x1 1x100?

Пытаюсь построить график :x=linspace(0,2,100); y=(220/(0.8+x)^2)x; plot(x, y); , ответ--- применяйте матрицы и степень только через скаляр и матричные данные делаю упрощённое выражение y=x((220.0/(0.8+x))) , теперь пишет---неподходящие операнды и сообщает, что 1х1 1 х100, что это за 1х1 1х100?


Ответы (1 шт):

Автор решения: Stanislav Volodarskiy

Я сделал три замены:

  • / -> ./ - поэлементное деление. Обычный знак деления работает с матрицами, нам нужно работать с отдельными элементами;
  • ^ -> .^ - поэлементное возведение в степень. Причина та же;
  • * -> .* - поэлементное умножение. Причина та же.

Получилось:

x=linspace(0,2,100); y=(220./(0.8+x).^2).*x; plot(x, y);

введите сюда описание изображения

P.S. Я заметил что вам не хватает знания английского языка (а это критически важно, если вы работаете с программами на английском). И вам не хватает математики (все что касается арифметики матриц), но тут можно обойтись внимательным чтением документации Octave (что возвращает нас к английскому языку).

→ Ссылка