matlab求字符方程组显示empty sym
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/09 02:13:08
functionmyCalcclear;clc;closeall;opt=odeset('RelTol',1E-5,'AbsTol',[1E-61E-6]);[TY]=ode45(@getdY,[01
你的公式书写得不规范,你减少除号的使用试试,具体式子是怎么样子的你才知道,我改不了.你用的时候不用声明xy直接用solve的函数就行了.
代码如下:symsaf=(6.6+a)^2+(-2+a)^2+(3.5+a)^2+(5.6+a)^2+(4.2+a)^2+(2.2+a)^2+(6.0+a)^2+(2.4+a)^2+(7.4+a)^2
clear;clc;[fn,pn]=uigetfile({'*.txt'},'选择一个文件');iffn~=0f=fopen(strcat(pn,fn),'r');data=fread(f,inf,'
我算的你这个解都是无穷大.具体过程如下:第一步:建立M文件函数myf.mfunctionf=myf(x)f(1)=600+x(1)*cos(10)+x(2)*sin(40)-x(3);f(2)=(x(
求不出取精确解,即精确表达式的解求不出,可以试一下用具体数字解一下
不知道未知数是那几个:p1,p2,p0,还有的是a0.fai0,貌似不是线性的,Matlab解决不了.楼主还是先对cos,sin展开,将里面的未知数,已知数分开即可.然后自己笔算解决.可以算出来的.数
你改了以后总的式子还是错的我说一下我的思想吧你构造一个n*3的0矩阵,1,2,3行分别代表x,y,z的值,然后循环,这样就免去了迭代了,把得到的结果再取代原先矩阵里的相应位置的值.然后每一次循环就可以
将[m,n]=solve('m+n=r1','n/m=z/r');[m,n]=solve('m+n=r1','n/m=-z/r');中的单引号去掉,就可以了.改为[m,n]=solve(m+n-r1,
sym或者syms申明符号变量,含有符号变量的式子是符号表达式,求导直接用diff,格式为diff(f,a),代入求值用subs即可,格式为subs(f,a,2)把f中的a换成2subs(f,{a,b
α,k/λ,K,λ认为是四个未知参数,然后把所有的数据值带入,求解矛盾方程组,或者用最小二乘的原理可以求解这几个参数再问:好感谢,不过这两个方法我都试了……有木有别的,专对方程组的拟合?~再答:什么意
程序:clear[xy]=solve('A1=x*(y-B1)','A2=x*(y-B2)','x','y')x=-(A1-A2)/(B1-B2)y=(A1*B2-A2*B1)/(A1-A2)clea
你是要画图还是求a=?时可以使两式相等?另外你说两式相等是说x(t)=y(t)还是dx/dt=dy/dt?dsolve可以解微分方程组,ode45可以数值地解微分方程组,你需要数值解还是解析解?再问:
一般解非线性微分方程组可以用ode45,ode23等命令,编程时将p,v,th,x,y记为x(5),x(1),x(2),x(3),x(4)(方便方程组函数的编写就这么记号)下面便方程组函数,文件命名为
f=solve('8-8*cos(x)-10*t=0','t-4.9*t^2+3*sin(x)=0','t,x');%一共4组解f.tf.x
a=1;b=.1;[t,x]=ode45(@(t,x)[ab;-ba]*x,[0,10*pi],[1;1]);plot(x(:,1),x(:,2));xlabel('x1');ylabel('x2')
GeneralmodelGauss4: f(x)= &nbs
model:X1+X2+X3=0.030852;0.5*X1+X2+0.5*X5-0.21*na=0.012578;2*X3+X4+X5=0.029356;X7-0.79*na=0;36.5*X2*X
用solve函数再问:能再具体点吗?再答:symsx1x2solve('sin(x1)+cos(x2)=sin(x1+x2)+cos(x1)','sin(x2)=cos(x20)')
用switch……caseclearall;closeall;clcA=[{'as'}{'bd'}{'fn'}{'fh'}{'ac'}{'fa'}{'fa'}{'as'}];fori=1:length