我想说你用vpa精度后得到的是sym型,即符号变量,而符号变量不允许进行逻辑运算,所以你的提法有问题
matlab控制运算精度用的是digits和vpa这两个函数
例如:
>> digits(5);
a=vpa(sqrt(2));
b=vpa(sqrt(3));
>> a>b
??? Undefined function or method 'gt' for input arguments of type 'sym'.
比较大小只能是字符型或者字符型,所以可以这么比较:
>> double(a)>double(b)
ans =
0
逻辑运算同理,例如:
>> a&b
??? Undefined function or method 'and' for input arguments of type 'sym'.
>> double(a)&double(b)
ans =
1
明白没?
有问题欢迎追问,觉得可接受请采纳!
copyright(c) cxd1301