попытка построить функцию для двойного дифференцирования функции на октаву безуспешно. В этом случае я пытаюсь построить двойную производную sin(x).
Я знаю, как найти производную от sin(x) на октаву.
x1 = linspace(-2*pi, 2* pi);
y1 = [NaN, diff(sin(x1))];
plot(x1,y1,'r-')
как я могу аналогичным образом построить график для двойного дифференцирования греха (x1)?
что я пробовал до сих пор:
x1 = линейное пространство (-2пи, 2 пи);
y1 = [NaN, (diff(sin(x1),2))];
длина (x1)
длина (y1)
сюжет (x1, y1, 'r-')
Длина x1 и y1 различна, но обычно включение NaN решает ее для одиночной дифференциации. Однако я не могу понять это правильно для двойного дифференцирования.
ОШИБКА:
>> tig
ans = 100
ans = 99
error: __plt2vv__: vector lengths must match
error: called from
__plt__>__plt2vv__ at line 487 column 5
__plt__>__plt2__ at line 247 column 14
__plt__ at line 112 column 18
plot at line 229 column 10
tig at line 5 column 1
PS: Кроме того, я официально не изучал Octave, и я только что прошел короткий курс на Youtube, был бы признателен, если бы кто-нибудь дал мне ссылки для изучения с помощью видео и PDF-файлов.
Команда будет
x1 = linspace(-2*pi, 2* pi);
y1 = [NaN, (diff(sin(x1),2)), NaN];
length(x1)
length(y1)
plot(x1,y1,'r-')
Поскольку мы дважды дифференцируем, у нас было бы две вакансии, поэтому мы должны вставить два NaN s
Источник: комментарии к https://stackoverflow.com/a/71573275/18501521
Остерегайтесь писать блок кода, который на самом деле не работает. Вместо этих
**
вы можете написать настоящий комментарий Octave (с%
или#
), чтобы люди могли просто скопировать и вставить ваш код и сразу же работать.