matlab - 特定值的符号函数的导数
问题描述
我正在尝试在 Octave 中使用此代码来评估函数f
,的导数df
在特定x
值:
pkg load symbolic;
syms x;
f = @(x) sqrt(2*x+1) - sqrt(x+4);
disp(f);
df = diff(f,x);
df(4)
例如,我尝试了 and eval(df,4)
,但它们都没有给出语法或其他错误。
此代码的主要功能是使用这些值f
使用 Newton-Raphson 方法找到函数根。
解决方案
您将匿名函数与符号函数混淆了。你f
是一个匿名函数。它不使用符号变量x
,因为x
在这个函数中是局部的,它是一个输入参数。该函数将以数字方式评估您提供的任何输入。
定义一个符号函数如下:
pkg load symbolic
syms x
f = sqrt(2*x+1)-sqrt(x+4)
df = diff(f,x)
输出:
>> f = sqrt(2*x+1)-sqrt(x+4)
f = (sym)
_______ _________
- ╲╱ x + 4 + ╲╱ 2⋅x + 1
>> df = diff(f,x)
df = (sym)
1 1
─────────── - ───────────
_________ _______
╲╱ 2⋅x + 1 2⋅╲╱ x + 4
要评估给定的函数x
,您可以使用subs
并将结果转换为double
:
double(subs(df,x,4))
这将返回值 0.15656。
推荐阅读
- python - 获取df中几个值的最小值和最大值
- windows - Windows批处理脚本或命令提示符有没有办法仅列出某个文件夹中的目录而不包括硬盘驱动器?
- python - 如何将数据添加到文件而不是重写?
- node.js - 通过Node js使用outlook smtp发送电子邮件
- python - Peewee:CompoundSelectQuery 必须绑定到数据库才能调用 exists()
- javascript - 无法使键盘箭头在 react-datepicker 上工作
- javascript - 有没有办法将 Wavify 与 React 一起使用?
- google-app-engine - 谷歌云功能 Java 11 - 如何在本地调试?避免使用日志重新部署的需要
- c++ - 使用继承自 QTreeWidgetItem 的子类时如何覆盖 QTreeWidget::currentItem() 等函数
- c++ - 将 lambda 参数传递给没有中间变量的 std::function 参数