syms y2;syms z2;L=120;r=25;i=1:10;l=0.5*L-sqrt((r^2-(2.5*(10-1)+1.25).^2));x=0.5*l;y1=2.5*(10-i)+1.25;t=acos(50/52.19);m1=[y1,0];m2=[26*sin(t),26*cos(t)];m3=[y2,z2];[y2,z2]=solve('z2=((26*cos(t))*(norm(m3-m1)))/(norm(m2-m1))','26*cos(t)*y1-(26*cos*(t))*y2)=26*sin*(t)*z2-z2*y2)','y2,z2');y2;
题主给出的代码主要错误有:
1、使用函数solve错误,对于有已知值代入表达式,其solve格式为
syms y2 z2
[y2,z2]=solve(z2==......; 26*cos(t)*y1-(26*cos(t))*y2==......)
对于高版本,一般建议用 vpasolve 函数求解。
2、使用solve和 vpasolve 函数是无法得到以向量形式的解,应该用循环语句来完成。
求解结果和方法如下:
用MATLAB中solve求解方程组一直报错,跪求原因
1、使用函数solve错误,对于有已知值代入表达式,其solve格式为 syms y2 z2 [y2,z2]=solve(z2==...; 26*cos(t)*y1-(26*cos(t))*y2==...)对于高版本,一般建议用 vpasolve 函数求解。2、使用solve和 vpasolve 函数是无法得到以向量形式的解,应该用循环语句来完成。求解结果和方法如下:
Matlab用solve函数,提示错误
1、是否有调用格式的错误,传入的表达式参数需要统一为字符串,或者统一为符号变量。(matlab在帮助程序中已经删去了对字符串传参的说明,字符串传参很有可能在未来版本被删除,因此推荐使用符号表达式传参数)2、表达式中有错误。①等式中的等号,对于字符串来说可以是'='或者'==',但是对于符号变量,则...
matlab中调用solve函数出错?怎么解决
solve('lambda-(-2*log10(2.51\/Re\/sqrt(lambda)+0.27\/l(i)))^(-2) = 0','lambda')是把整个字符串作为参数传递给符号计算内核的,给参数l和Re赋值不起作用,所以在符号计算内核求解时会把l、Re也看成变量,从而导致求解失败。解决的办法是,定义符号变量lambda,然后把方程写成符号表达式从而...
一个MATLAB中求解方程solve函数,一直错误,求帮助
首先,你有语法错误。solve里的表达是默认为右端为零的方程,所以不能出现“=”,你看我下面做得就可以,把右边的那项移到左边这边来。其次,可能是solve不支持向量操作。我把方程改成 [h]=solve('(h*(sqrt(z2^2+(r11-h)^2)))\/((r11-h)*(sqrt(z1^2+h^2)))-c1\/c2');就解出h...
mathematics用solve解代数方程组总报错
因为方程系数会变化。用matlab的solve函数解方程,方程系数随给定变化,用的num2str()实现系数传递,但是换成方程组就不行了,就会总报错。
matlab解方程组一直出错,哪里有问题?
matlab解方程组一直出错,哪里有问题?错误的主要原因是写法不规范。应这样来写:>> syms x y >> [x,y]=solve(x^2+3*y+1==0,y^2+4*x+1==0,[x,y]);>> x=vpa(x)>> y=vpa(y)
MATLAB 用solve出错,麻烦帮忙看看哪里错了?
题主用solve()函数求解方程组的方法并没有错,但得到是一长串字符答案,这主要是缺少一个步骤,即p1=vpa(p1)。为什么软件给出的答案是一长串不明确的答案,这由于题主给出的方程组是比较复杂,软件则以复数z的形式来表示吧了。所以,我们在[p1,p2]=solve(eq1,eq2,'p1','p2');这个命令后,...
matlab中调用solve函数出错?怎么解决
solve('lambda-(-2*log10(2.51\/Re\/sqrt(lambda)+0.27\/l(i)))^(-2) = 0','lambda')是把整个字符串作为参数传递给符号计算内核的,给参数l和Re赋值不起作用,所以在符号计算内核求解时会把l、Re也看成变量,从而导致求解失败。解决的办法是,定义符号变量lambda,然后把方程写成符号表达式从而...
matlab解方程组时报错Explicit solution could not be found
1、像这种复杂的方程(组)一般是很难求出解析解的,建议用数值方法求解。2、即使能求出解析解,题主的调用方式也是错误的。我们举个简单例子:>> [p,n]=solve('p=10','n=7','p','n') p = 7 n = 10看到了吗?两个变量是反过来的。原因是,solve函数返回多个输出时,是以变量的字母...
matlab solve函数求解符号方程组的问题
其实这种解区别于解析解,算是数值解。只有当a,b,c满足某些条件时才存在。事实上工程上很多实用方程都只有数值解,还有很多偏微分方程都是没有解析解的,真正有解析解的方程是相对很少的。因此,这种错误与软件无关,与方程本身固有的一些特性有关。想深入了解的话建议你看一些相关的书籍。