matlab 求极限结果通过vpa转换为数值,但类型却不是数值

syms x;
f1=1.37*sin(-2.73*x);
f2=3.77*sin(3.17*x)*sin(-1.56*x);
f3=2.44*cos(1.81*x);f4=1.93*exp(-0.58*x);
f=f1-f2+f3+f4;g=1.20*x*exp(0.20*x);
a=2.7133;b=11.2160;
z = limit((f-a)/(g-b),x,4.1091);
vpa(z)
这个算出来是一个数,但类型却不对,是一个sym而不是value,怎么回事,求解答?

第1个回答  2014-11-24
我刚是了一下,是可以显示z的值的
vpa(z)

>> vpa(z)

ans =

-0.5900760592185549671404789427541追问

我的版本7.11.0(R2010b)

z=vpa(z)

z =

-0.5900760592185549671404789427541
你看一下变量窗口,z的值是

追答

我是R2011b,没有仔细研究f(x)、g(x),但我总觉得z为x的不定积分,应该是x的表达式,但是
在命令窗口直接输入z
z = limit((f-a)/(g-b),x,4.1091);
>> z

z =

((61*cos(7437471/1000000))/25 + 193/(100*exp(1191639/500000)) - (137*sin(11217843/1000000))/100 + (377*sin(1602549/250000)*sin(13025847/1000000))/100 - 27133/10000)/((123273*exp(41091/50000))/25000 - 1402/125)
貌似z已经是一个值了,不知楼主有咩有手算过
如果z为x的表达式的话,应该是这样求值
subs(z,x,0); %表示x=0,求z的值

追问

谢谢,用subs(z)可以得到

本回答被提问者和网友采纳

matlab 求极限结果通过vpa转换为数值,但类型却不是数值
vpa(z)>> vpa(z)ans = -0.5900760592185549671404789427541

matlab求极限,结果不是数值为一个很长的多项式是什么问题?
vpa(z)

matlab符号积分的时候,算出来的值是一个有理分数,怎么化为小数
可以用eval或double将其强制转换为数值类型:>> p=[-1,1,0,0,1];>> r=roots(p);>> syms t y>> y=-t^4+t^3+1;>> a=r(4);b=r(1);>> S=int(y,t,a,b)S =568704934255371301030622029870605341246289411397194775051131423230050797740313363\/2964277484475294602843417216222410441043711607440398439410...

matlab解方程组,答案是sym没有具体数值
sigma11=vpa(sigma11,8);sigma22=vpa(sigma22,8);epsilon33=vpa(epsilon33,8);val_sigma11 = double(sigma11)val_sigma22 = double(sigma22)val_epsilon33 = double(epsilon33)matlab2013b下运行通过,版本太低了别怪别人。val_sigma11 = -0.0014 val_sigma22 = 497.4286 val_epsilon33 =...

求助MatLab当用solve指令解含常数e的指数方程时,如何把结果里的数值提取...
经过计算,我的X计算出来是一个sym 类型,在这样的情况下:使用double(x(1,1))就可以将你想要的1.399861315这个数提取出来。x的类型 所取得的值,及其类型。PS:我的matlab版本是2009a。

大家好matlab中符号运算和数值运算的区别是什么
2361 由于 P=sym(‘2+sqrt(5)’) 实际上是一个符号常数,所以也可以用 vpa 命令计算。五、数值变量、符号变量、字符变量的相互转化 数值变量、符号变量、字符变量的相互转化在 Matlab 工作空间中 , 数值、符号和字符是 3 种主要的数据类型。Matlab 可以利用命令来实现不同类型数据间的转换。

matlab问题
cdf2rdf 复数对角型转换到实块对角型 ceil 朝正无穷大方向取整 cell 创建单元数组 char 创建字符串数组或者将其他类型 变量转化为字符串数组 charfcn Maple函数 Children 图形对象的子对象 clabel 等高线标注 class 判别数据类别 clc 清除指令窗中显示内容 clear 从内存中清除变量和函数 clf 清除当前图形窗图形 ...

matlab 符号积分和数值积分
>>vpa(quad8('fun1',-2,2),10) %以10位有效数字显示结果 结果为 ans =12.8000 ans =12.80000000 对于变步长数值积分,常用的有quad,quad8两种命令,quad使用自适应步长Simpson法, quad8使用自适应步长8阶Newton-Cotes法,我们建议用quad8,它不但精度较高,且对假收敛和假奇异积分具有一定的适应...

高分求 Matlab 函数表 底分30 上不封顶
limit 求极限line 创建线对象LineStyle 图形线对象属性-线型LineWidth 图形属性-线宽linmod2 从SIMULINK模型得到系统的状态方程linspace 线性等分向量load 从磁盘调入数据变量Location 图形对象属性-位置log 自然对数log10 常用对数log2 以2为底的对数logical 将数值转化为逻辑值logspace 对数等分向量lookfor 关键词检索M m...

matlab中数值运算与符号运算有何异同
2361 由于 P=sym(‘2+sqrt(5)’) 实际上是一个符号常数,所以也可以用 vpa 命令计算。五、数值变量、符号变量、字符变量的相互转化 数值变量、符号变量、字符变量的相互转化在 Matlab 工作空间中 , 数值、符号和字符是 3 种主要的数据类型。Matlab 可以利用命令来实现不同类型数据间的转换。

相似回答