我已经在这里搜过了,但找不到我要找的东西。
我用符号数学成功地做到了,但我不太理解它。举个例子,做完之后
(-y+x+1 == 0)
我得到了一个很好的图,但是我以后能用这个表达式来计算它的值吗?比如,首先我想画出-y +x+1 == 0,另一时刻我想要解f(3),其中f(x) =x+1(相同的方程)。
我知道我可以写一个函数来完成这个任务,但作为一个函数,我不知道如何绘制它。另一方面,我知道如何用符号数学来绘制图形,但我不知道如何计算。
我正在编写一个PLA算法,我需要为这个方程生成'a','b‘'c’,这就是为什么我需要知道如何用“系统代码”来绘制和求解,而不是一个一个地输入。
提前感谢!
发布于 2014-09-16 14:36:22
你给我们的方程是一条直线,所以是多项式。系数为y= -b/a*x -c/a。
% ay + bx + c = 0 reads y = -b/a*x - c/a*1
a = -1;
b = 1;
c = 1;
p = [-b/a, -c/a]; % polynomial representing your equation
% plot like this
x = linspace(-2,2, 50);
figure
plot(x, polyval(p,x)) % evaluate polynomial p at the positions x
% find the solution
roots(p) # -1如果您需要或希望使用ezplot,您可以将polyval-表达式放入内联函数中,并且可以用该句柄调用ezplot:
f = @(x) polyval(p, x); % the function
ezplot(f)

发布于 2014-09-16 14:33:34
只需将f定义为符号变量x的函数即可
>> syms x
>> f = x+1;然后可以使用f作为ezplot的输入。
>> ezplot(f)产生的图形

另一方面,要解方程f(x)=0,请使用solve如下:
>> solve(f)
ans =
-1ezplot和solve也可以与字符串输入一起使用,但是在这两种情况下,字符串必须是不同的。要绘制该图形:
>> ezplot('x+1');要解方程:
>> solve('x+1=0')
ans =
-1https://stackoverflow.com/questions/25871365
复制相似问题