matlabmatlab 解矩阵方程组结果不准,有什么办法吗

只需一步,快速开始
扫一扫,访问微社区
查看: 4780|回复: 11|关注: 0
matlab求解方程得不到显示解
<h1 style="color:# 麦片财富积分
新手, 积分 6, 距离下一级还需 44 积分
&&& & 对程序简要说明下:B是一个3X3的矩阵,s=det(B),行列式S中仅含一个未知变量k,其他的参数的数值均是直接给出或者通过前面的程序求出,solve(s)就是希望求出k的值。
& &&&运行下面的程序时,得到的错误提示是:
& && & Warning: Explicit solution could not be found.
& &&&平日常逛matlab论坛,但发帖尚属首次,麻烦大家不吝赐教啊~~描述不清之处,欢迎批评指正!
syms n w ds df d kd vic b M11 M12 M22 L N A R Q P
syms a1 a2 a3
syms kp1 kp2 kp1re kp1im kp2re kp2im ks ksre ksim vp1 vp2 vs
syms k kR0 kR0re kR0im cR0 kRre kRim c cR
f=100;
w=2*pi*f;& && && && && && && && && && && && && && && && &% 频率
n=0.1;& && && && && && && && && && && && && && && && && &&&% 孔隙率
ds=2.65*10^3;& && && && && && && && && && && && && &% 固体颗粒密度
df=1.0*10^3;& && && && && && && && && && && && && && &% 流体密度
d=(1-n)*ds+n*& && && && && && && && && && && &&&% 土体单元密度
kd=10^(-10);& && && && && && && && && && && && && && &% 动力渗透系数
vic=8*10^(-3);& && && && && && && && && && && && && & % 流体粘滞系数(viscosity)
b=n^2*vic/& && && && && && && && && && && && && &&&% 耗散系数
M11=(1-n)*ds-1i*b/w;
M12=1i*b/w;
M22=n*df-1i*b/w;
Kb=4.36*10^7;& && && && && && && && && && && && &&&% 固体骨架体变模量
Ks=3.6*10^10;& && && && && && && && && && && && &&&% 固体颗粒体变模量
Kf=2.0*10^9;& && && && && && && && && && && && && & % 孔隙流体体变模量
a=1-Kb/Ks;& && && && && && && && && && && && && && && &% Biot系数
Kd=Ks*(1+n*(Ks/Kf-1));
M=Ks^2/(Kd-Kb);
L=2.61*10^7;& && && && && && && && && && && && && &% Lame常数
N=2.61*10^7;& && && && && && && && && && && && &&&% 剪切模量
A=L+(a-n)^2*M;
R=n^2*M;
Q=n*(a-n)*M;
P=A+2*N;
a1=M*(L+2*N);& && && && && && && && && && && && &&&% a1、a2、a3为压缩波一元二次特征方程中的系数
a2=(L+2*N+a^2*M)*(-w^2*df/n+1i*w*vic/kd)-M*d*w^2+2*a*M*df*w^2;
a3=d*w^4*df/n-1i*d*w^3*vic/kd-df^2*w^4;
kp1=sqrt((-a2-sqrt(a2^2-4*a1*a3))/(2*a1));& && && && && &&&% P1波波数
kp2=sqrt((-a2+sqrt(a2^2-4*a1*a3))/(2*a1));& && && && && & % P2波波数
kp1re=abs(real(kp1));& && && && && && && && && && && && && && && && && &&&% P1波波数实部
kp1im=abs(imag(kp1));& && && && && && && && && && && && && && && && && &% P1波波数虚部
kp2re=abs(real(kp2));& && && && && && && && && && && && && && && && && && &% P2波波数实部
kp2im=abs(imag(kp2));& && && && && && && && && && && && && && && && && & % P2波波数虚部
vp1=w/kp1re& && && && && && && && && && && && && && && && && && && && && && &&&% P1波波速
vp2=w/kp2re& && && && && && && && && && && && && && && && && && && && && && &&&% P2波波速
ks=sqrt(a3/(N*(w^2*df/n-1i*w*vic/kd)));& && && && && && && && &% S波波数
ksre=abs(real(ks));& && && && && && && && && && && && && && && && && && && && &% S波波数实部
ksim=abs(imag(ks));& && && && && && && && && && && && && && && && && && && &% S波波数虚部
vs=w/ksre& && && && && && && && && && && && && && && && && && && && && && && && & % S波波速
c=w/k;
E3=sqrt((c^2-vp1^2)/(c^2*vp1^2));
E4=sqrt((c^2-vp2^2)/(c^2*vp2^2));
B1=((P*R-Q^2)-vp1^2*(R*M11-Q*M12))/(vp1^2*(R*M12-Q*M22));
B2=((P*R-Q^2)-vp2^2*(R*M11-Q*M12))/(vp2^2*(R*M12-Q*M22));
b1=sqrt(w^2*E3^2+k^2);
b2=sqrt(w^2*E4^2+k^2);
r1=sqrt(c^2/vs^2-1);
A11=2*N*k^2-b1^2*(P+Q*B1);& && && && && && && && && && && && &% 特征方程矩阵元素
A12=2*N*k^2-b2^2*(P+Q*B2);
A13=2*N*k^2*r1;
A21=2*k*w*E3;
A22=2*k*w*E4;
A23=k^2*(r1^2-1);
A31=b1^2*(Q+R*B1);
A32=b2^2*(Q+R*B2);
A33=0;
B=[A11,A12,A13;A21,A22,A23;A31,A32,A33];& && && && && && && &&&% 特征方程矩阵
s=det(B);& && && && && && && && && && && && && && && && && && && && && && && && && && & % 特征方程行列式
kR0=solve(s)复制代码
论坛优秀回答者
帖子最佳答案
关注者: 813
|此回复为最佳答案
我这里求出来是有解的:
58.34751 + 36.473787*i
只不过是个复数解,你要求的 k 是实数还是复数?
<h1 style="color:# 麦片财富积分
winner245 发表于
我这里求出来是有解的:
58.34751 + 36.473787*i
非常感谢~~对,就应该是复数,为什么我就解不出来呢?我用的是matlab 7.0版
论坛优秀回答者
帖子最佳答案
关注者: 813
echead2006 发表于
非常感谢~~对,就应该是复数,为什么我就解不出来呢?我用的是matlab 7.0版 ...
版本太老了,我是2012b。你可以试试数值解法,你这个是一元方程,可以用 fzero,也可以用 fsolve
<h1 style="color:# 麦片财富积分
winner245 发表于
版本太老了,我是2012b。你可以试试数值解法,你这个是一元方程,可以用 fzero,也可以用 fsolve ...
谢谢,是得换个版本了!
<h1 style="color:# 麦片财富积分
winner245 发表于
版本太老了,我是2012b。你可以试试数值解法,你这个是一元方程,可以用 fzero,也可以用 fsolve ...
再请教下,你用2012b求解过程花的时间长吗? 我用7.0版本不但得不到解,还得花很长时间(20分钟左右)
论坛优秀回答者
帖子最佳答案
关注者: 813
echead2006 发表于
再请教下,你用2012b求解过程花的时间长吗? 我用7.0版本不但得不到解,还得花很长时间(20分钟左右) ...
挺快的,也就几秒钟把
<h1 style="color:# 麦片财富积分
winner245 发表于
挺快的,也就几秒钟把
同一个程序,不同版本的matlab计算出来的结果不一致,你有遇到过这种情况吗?
<h1 style="color:# 麦片财富积分
echead2006 发表于
同一个程序,不同版本的matlab计算出来的结果不一致,你有遇到过这种情况吗? ...
我这里得到与楼上的解了,2010b
<h1 style="color:# 麦片财富积分
站长推荐 /3
筑起功能安全的堡垒 - 基于模型设计的软件开发
MATLAB中文论坛是全球最大的 MATLAB & Simulink 中文社区。用户免费注册会员后,即可下载代码,讨论问题,请教资深用户及结识书籍作者。立即注册加入我们吧!
MATLAB官方社交平台
MATLAB中文论坛微社区matlab 解方程组结果不准_百度知道
matlab 解方程组结果不准
M=5.976*10^27;
G=6.67*10^(-11);
n=sqrt(M*G/r^3)
syms x0 z0 x00 z00
eq1=sqrt((8*a*c/b^2+8*a*(4*z0+2*x00/n)/b+...
3*(4*z0+2*x00/n)*n*t-2*(x0-2*z00/n))^2-...
谢谢 化学工程 别人告诉我的 和你说的一样 得调换变量顺序[x0,x00,z0,z00]=solve(eq1,eq2,eq3,eq4,x0,x00,z0,z00)现在还有一个问题,我现在要用3个方程,解四个变量,想以z0为基,x0、x00、z00都用z0表示,不过现在怎么弄都是用z00表示,还请指教!clcclear allt=600;xt=2;zt=2;a=2;b=1;c=-6;%(x,z)=(2,2) k=-1 2x+y-6=0M=5.976*10^27;G=6.67*10^(-11);r=4.;n=sqrt(M*G&#47;r^3) syms
z0 z00 x0 x00;eq1=b*((3*n*z0+2*x00)*sin(n*t)+z00*cos(n*t))+a*((4*x00+6*n*z0)*cos(n*t)-...
2*z00*sin(n*t)-3*(x00+2*n*z0));eq2=xt-(((4*x00)&#47;n+6*z0)*sin(n*t)+(2&#47;n)*z00*cos(n*t)-3*(x00+2*n*z0)*t+(x0-2*z00&#47;(n)));eq3=zt-((z00&#47;n)*sin(n*t)-((2*x00&#47;n)+3*z0)*cos(n*t)+4*z0+2*x00&#47;n);[x00,x0,z00,z0]=solve(eq1,eq2,eq3,x00,x0,z00,z0)
我有更好的答案
solve的输出是有顺序的,按照ascii顺序。clear allt=200;xt=1;zt=1;a=1;b=1;c=-2;M=5.976*10^27;G=6.67*10^(-11);r=4.;n=sqrt(M*G/r^3) syms x0 z0 x00 z00eq1=sqrt((8*a*c/b^2+8*a*(4*z0+2*x00/n)/b+...
3*(4*z0+2*x00/n)*n*t-2*(x0-2*z00/n))^2-...
4*((2*a/b)^2+1)*(((x0-2*z00/n)-1.5*(4*z0+2*x00/n)*n*t)^2+...
4*(4*z0+2*x00/n+c/b)^2-4*a^2));eq2=xt-(((4*x00)/n+6*z0)*sin(n*t)+(2/n)*z00*cos(n*t)-3*(x00+2*n*z0)*t+(x0-2*z00/(n)));eq3=zt-((z00/n)*sin(n*t)-((2*x00/n)+3*z0)*cos(n*t)+4*z0+2*x00/n);eq4=4*z0+2*x00/n-2;solve(eq1,eq2,eq3,eq4)%改动部分[x0,x00,z0,z00]=solve(eq1,eq2,eq3,eq4);%改动部分x0=double(x0)z0=double(z0)x00=double(x00)z00=double(z00)test1=subs(eq1)test2=subs(eq2)test3=subs(eq3)test4=subs(eq4)结果:n =
0.0023ans =
x0: [2x1 sym]
x00: [2x1 sym]
z0: [2x1 sym]
z00: [2x1 sym]x0 =
1.1557z0 =
0.3856x00 =
0.0005z00 =
0.0023test1 =
1.0e-006 *
0.0000 + 0.1012itest2 =
1.0e-015 *
1.0e-015 *
-0.1110test4 =
1.0e-015 *
0 补充:clcclear allt=600;xt=2;zt=2;a=2;b=1;c=-6;%(x,z)=(2,2) k=-1 2x+y-6=0M=5.976*10^27;G=6.67*10^(-11);r=4.;n=sqrt(M*G/r^3) syms
z0 z00 x0 x00;eq1=b*((3*n*z0+2*x00)*sin(n*t)+z00*cos(n*t))+a*((4*x00+6*n*z0)*cos(n*t)-...
2*z00*sin(n*t)-3*(x00+2*n*z0));eq2=xt-(((4*x00)/n+6*z0)*sin(n*t)+(2/n)*z00*cos(n*t)-3*(x00+2*n*z0)*t+(x0-2*z00/(n)));eq3=zt-((z00/n)*sin(n*t)-((2*x00/n)+3*z0)*cos(n*t)+4*z0+2*x00/n);[x0,x00,z00]=solve(eq1,eq2,eq3,&#39;x0,x00,z00&#39;)x0=vpa(x0,6)x00=vpa(x00,6)z00=vpa(z00,6)结果:x0 = .3569*z0x00 = -.*z0+.z00 = -.-.*z0
采纳率:61%
因为涉及到多位小数或者不能整除的情况导致系统自动有个保留一定位数的情况从而导致结果有偏差
如果想减少误差的话就提高你数据的精确度试试,
计算数目太大,系统省略了小数尾数,这种情况我也碰到过,换个精确点的东西算就行了。
其他1条回答
为您推荐:
其他类似问题
您可能关注的内容
matlab的相关知识
&#xe675;换一换
回答问题,赢新手礼包&#xe6b9;
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。当前位置:
&用MATLAB解一个方程组没有结果,请大神看看这个方程组有没有解,怎么解答啊
用MATLAB解一个方程组没有结果,请大神看看这个方程组有没有解,怎么解答啊
作者 一直在纠结
如图,用MATLAB解一个方程组没有结果,不知道是怎么了,也没有报错,就是一直没有反应,到底是怎么回事啊,请大神帮忙看一看,如果有解决办法麻烦把程序发过来,小白一个,只是提示看不懂的说。。。
下面是我写的解方程组的,一直没反应的那个。。。图片是方程组的原型
f1='a=c*exp(31.178-4.606*b)+c^2*exp(36.796-4.606*b)+c^3*exp(42.553-4.606*b)+c^4*exp(47.503-4.606*b)+exp(7.607-2.303*b)+exp(-38.744)+exp(-38.533+2.303*b)+exp(-62.699+4.606*b)+exp(25.721-4.606*b)+exp(-38.264+2.303*b)+exp(-67.656+4.606*b)+d*exp(56.16-6.909*b)';
f2='3=c+c*exp(21.304-2.303*b)+c*exp(31.178-4.606*b)+2*c^2*exp(36.796-4.606*b)+3*c^3*exp(42.553-4.606*b)+4*c^4*exp(47.503-4.606*b)+2*c^2*d*exp(42.771-4.606*b)+c*d*exp(45.204-4.606*b)';
f3='1=d+d*exp(23.762-2.303*b)+d*exp(134.267-4.606*b)+c^2*d*exp(42.771-4.606*b)+c*d*exp(45.204-4.606*b)+d*exp(56.16-6.909*b)';
f4='2*a+c*exp(21.304-2.303*b)+exp(-2.303*b)=2+exp(-32.271+2.303*b)';
[a,b,c,d]=solve(f1,f2,f3,f4)
91EFB557CD49DA815BA8C28.jpg
不一定有解析解,用数值试试:
d: 1.29E-31
引用回帖:: Originally posted by dingd at
不一定有解析解,用数值试试:
d: 1.29E-31 请问这是怎么做出来的呢,我不太懂,能麻烦您把数值解的方法的写一下吗,我还需要改变一下方程的参数解方程组,
我建议你的方程都写成等式一边为零的形式比如:
f4=2*a+c*exp(21.304-2.303*b)+exp(-2.303*b)-2+exp(-32.271+2.303*b);
然后再去求解。
如果还是不行,就要试试数值解了。fsolve来求
引用回帖:: Originally posted by 一直在纠结 at
请问这是怎么做出来的呢,我不太懂,能麻烦您把数值解的方法的写一下吗,我还需要改变一下方程的参数解方程组... 数值解Matlab的话用fsolve命令,关键是给出合适的初值。图方便就用1stOpt,不用猜初值,更好用些。
引用回帖:: Originally posted by dingd at
数值解Matlab的话用fsolve命令,关键是给出合适的初值。图方便就用1stOpt,不用猜初值,更好用些。... 为啥用1stOpt算出来的结果会有不同啊,那应该选择哪个啊,是版本的问题吗?
引用回帖:: Originally posted by 一直在纠结 at
为啥用1stOpt算出来的结果会有不同啊,那应该选择哪个啊,是版本的问题吗?... 把不同的结果贴上来看看。
24小时热帖
下载小木虫APP
与700万科研达人随时交流matlab解方程的问题我要求解一个方程,使用solve命令.结果计算出来了以后是这个,这是怎么回事?明显不正确.-学路网-学习路上 有我相伴
matlab解方程的问题我要求解一个方程,使用solve命令.结果计算出来了以后是这个,这是怎么回事?明显不正确.
来源:互联网 &责任编辑:李志 &
MATLAB解方程a=[43-9-0.413]%*把方程化成4*x*x*x*x+3*x*x*x-9*x*x-0.5*x-13=0;%x=roots(a)如何用Matlab解方程组?S=solve('2*x*y=1,x+2=y+z,x+y-z=4','x,y,z');%前面的参数是方程组列表,后面是未知变量列表S.x%输出未知数x的值S.y%输出未知数y的值S.z%输出未知数z的值f=@(x)2*x;%...matlab解方程temp)&0b=elsea=endifsubs(eqxx,temp)==0disp([&#39;精确解x=&#39;,num2str(temp)])elseifabs(subs(eqxx,temp))&0.0001disp([&#39;近似解x=&#39...matlab怎么解方程(1)y=sinx已知y的值怎么求x,很简单:x=asin(y),即是求解y。(2)方程组怎么解比如2*sin(x)+sin(y)=1和x+y=1求出x,y的值程序如下:A=solve(&#39;2*sin(x)+sin(y)=1&#...matlab解方程+画图问题出在符号量和数值量的的关系上。建议修改syms&&kx&ky&k3x&k5x&k2y&k4yS=solve('k3x^2=(2*pi/1.55)^2*(1..465^2)-kx...matlab解方程的问题我要求解一个方程,使用solve命令.结果计算出来了以后是这个,这是怎么回事?明显不正确.(图2)matlab解方程的问题我要求解一个方程,使用solve命令.结果计算出来了以后是这个,这是怎么回事?明显不正确.(图5)matlab解方程的问题我要求解一个方程,使用solve命令.结果计算出来了以后是这个,这是怎么回事?明显不正确.(图10)matlab解方程的问题我要求解一个方程,使用solve命令.结果计算出来了以后是这个,这是怎么回事?明显不正确.(图18)matlab解方程的问题我要求解一个方程,使用solve命令.结果计算出来了以后是这个,这是怎么回事?明显不正确.(图24)matlab解方程的问题我要求解一个方程,使用solve命令.结果计算出来了以后是这个,这是怎么回事?明显不正确.(图29)这是用户提出的一个学习问题,具体问题为:matlab解方程的问题我要求解一个方程,使用solve命令.结果计算出来了以后是这个,这是怎么回事?明显不正确.matlab解方程+画图问题出在符号量和数值量的的关系上。建议修改syms&&kx&ky&k3x&k5x&k2y&k4yS=sol防抓取,学路网提供内容。学路网 www.xue63.com 学路网 www.xue63.com matlab中解方程中的函数比如一个方程,其中a=[2]fc=&#39;a*x^2=1&#39;;如果直接计算的话,结果是a*x^2=1,请问,应该怎么办,怎么把a的数值带入方程?matlab中解方程防抓取,学路网提供内容。我们通过互联网以及本网用户共同努力为此问题提供了相关答案,以便碰到此类问题的同学参考学习,请注意,我们不能保证答案的准确性,仅供参考,具体如下:matlab解方程组,答案是sym没有具体数值8);sigma22=vpa(sigma22,8);epsilon33=vpa(epsilon33,8);val_sigma11=double(sigma防抓取,学路网提供内容。用户都认为优质的答案:matlab解方程组迭代问题程序有错,改正如下11213function&x=jacobi(A,b,x0,eps)D=diag(diag(A));L=-tril(A,防抓取,学路网提供内容。你这样求解方程,不出问题才怪了.你的错误主要有下列几点:matlab怎么解方程用solve命令解防抓取,学路网提供内容。错误1:以一大串数值用solve()去求解方程,是不太合理的,容易出现输入错误也不方便检查.正确的做法为可以四则运算应以一个具体数值代替,如(3/2)*(0.001/(0.01^(3/2)))*(958.68*4.57.2)),可用0.64代替matlab解方程组functionF=mymagic(x,b,c,e,f,h,m,n)F=[(m/2-n*sin(c/2)+e*cos(f))^2+(h+n*cos(c/2)-e*sin(f))^2-(m/2-n*sin(c/2+x(2))+e*cos(f-b))^2-(h+n*cos(c/2+x(2))-e*sin(f-b))^2(m/2-n*sin(c/2...防抓取,学路网提供内容。错误2:多处地方书写错误,如(10^-8)/pi,正确写法为10^(-8)/pimatla中A([1,1],[1,2])什么意思?答:直接用实例看就行了,图中A是个随机4阶矩阵。A([1,1],[1,2])是个2阶矩阵B。即是A行数第1行第1、2列为矩阵B第一行,A行数第1行第1防抓取,学路网提供内容。你把这几个问题解决了,就能得到你想要的答案.在网上下载了个matlab后我的电脑里就多了个E盘,叫...问:在网上下载了个matlab后我的电脑里就多了个E盘,叫DVD驱动器matlab,但...答:是不是病毒,查一下防抓取,学路网提供内容。======以下答案可供参考======求教育:matla关于结果为复数的隐函数方程作图问:小辈求解一隐函数,其中x和y为自变量和因变量。别的参数值已经给出,...答:%参数赋值k0=4.0516e+06;em=-127.8+3.21i;e防抓取,学路网提供内容。供参考答案1:matla如何显示每行代码占用内存答:在matlab命令窗口执行feature('memstats')可以查看:物理内存:使用,可用,总数交换页面:使用,可用,总数虚拟内存:使用,可用,总数最大连续可防抓取,学路网提供内容。你可以把值带进去验证一下 先令
tg=... 然后吧表达式粘进去MATLAB中怎样确保一个float数值的小数点位数,比如...问:MATLAB中怎样确保一个float数值的小数点位数,比如说:计算生成一个数值...答:matlab在保存数值的时候没有四舍五入,只防抓取,学路网提供内容。供参考答案2:在MATLA中如何将波形变得平稳一些答:这很正常,建议你看下光伏电池的伏安特性和功率特性曲线图,光伏电池的伏安特性,在电压由零开始增大的一段范围内,其输出电流是基本不变的,当电压增大到某一值U0时,对防抓取,学路网提供内容。ERFWEF EFFEEEFEFEFEmatlatsimulink中累加器如何表示?问:在simulink仿真中,如何表示一个累加器?答案被采用,定有重谢!答:防抓取,学路网提供内容。matlab中解方程中的函数比如一个方程,其中a=[2]fc=&#39;a*x^2=1&#39;;如果直接计算的话,结果是a*x^2=1,请问,应该怎么办,怎么把a的数值带入方程?matlab中解方程中的函数比如一个方程,其中a=[2...matlab解方程组,答案是sym没有具体数值8);sigma22=vpa(sigma22,8);epsilon33=vpa(epsilon33,8);val_sigma11=double(sigma11)val_sigma22=double(sigma22)val_epsilon33=double(epsilon33)matlab2013b...matlab解方程组迭代问题程序有错,改正如下11213function&x=jacobi(A,b,x0,eps)D=diag(diag(A));L=-tril(A,-1);U=-triu(A,1);B=inv(D)*(L+U);f=inv(D)*b;x=B*x0+f;n=1;while&abs(...matlab怎么解方程用solve命令解
相关信息:
- Copyright & 2017 www.xue63.com All Rights Reserved苹果/安卓/wp
积分 60, 距离下一级还需 25 积分
道具: 涂鸦板, 彩虹炫, 雷达卡, 热点灯, 显身卡, 匿名卡, 金钱卡下一级可获得
权限: 自定义头衔
购买后可立即获得
权限: 隐身
道具: 金钱卡, 变色卡, 彩虹炫, 雷达卡, 热点灯, 涂鸦板
开心签到天数: 1 天连续签到: 1 天[LV.1]初来乍到
这里有两个关于未知数c1和c2的方程,其中一个方程只包含未知数c1,另一个方程包含c1和c2,我单独解第一个方程的话可以得到c1的解,但是第二个方程就解不出结果了,请高手指点一下。
方程一是:1.668+.-exp(-.))+.-exp(-.))+.-exp(-1.))+.-exp(-1.))+.-exp(-2.))+.-exp(-2.))+0.4*.-exp(-2.))=0
方程二是:1.505+.-exp(-.))+.-exp(-.))+.-exp(-1.))+.-exp(-1.))+.-exp(-2.))+.-exp(-2.))+.-exp(-2.-.))+.-exp(-2.-1.00274*c2))+.-exp(-2.-1.49863*c2))+.-exp(-2.-2.00274*c2))+.-exp(-2.-2.49863*c2))+.-exp(-2.-3.00274*c2))+.-exp(-2.-3.49863*c2))+.-exp(-2.-4.00274*c2))+.-exp(-2.-4.50137*c2))+.-exp(-2.-5.))+0.4*.-exp(-2.-5.))=0
下面是我的程式:&& c1=solve('1.668+.-exp(-.))+.-exp(-.))+.-exp(-1.))+.-exp(-1.))+.-exp(-2.))+.-exp(-2.))+0.4*.-exp(-2.))','c1')
&& c2=solve('1.505+.-exp(-.))+.-exp(-.))+.-exp(-1.))+.-exp(-1.))+.-exp(-2.))+.-exp(-2.))+.-exp(-2.-.))+.-exp(-2.-1.00274*c2))+.-exp(-2.-1.49863*c2))+.-exp(-2.-2.00274*c2))+.-exp(-2.-2.49863*c2))+.-exp(-2.-3.00274*c2))+.-exp(-2.-3.49863*c2))+.-exp(-2.-4.00274*c2))+.-exp(-2.-4.50137*c2))+.-exp(-2.-5.))+0.4*.-exp(-2.-5.))','c2')
Warning: Explicit solution could not be found.
& In solve at 179
[ empty sym ]
我试过了fsolve函数,但是计算出来的结果跟上面计算出来的c1差太多,理论上c1和c2都是零点几的数字。
这个问题困扰了我好多天,实在想不出来该怎么解了。
请问高手,我要解这两个方程该怎样改程式啊?谢谢
function y = myfunc( c )
y = 1.668+.-exp(-.479452*c(1)))+.-exp(-.9835616*c(1)))+...
& & .-exp(-1.479452*c(1)))+.-exp(-1.983562*c(1)))+...
& & .-exp(-2.479452*c(1)))+.-exp(-2.983562*c(1)))+...
& & 0.4*.-exp(-2.983562*c(1)));
[x,fval] = fsolve(@myfunc,0.1)
& & 0.1544
&&-6.9046e-10
第二个函数, 当c1确定为0.时, 该函数关于c2似乎没有零点, 当c2趋于无穷时, 该函数的似乎图像趋于-1. 你可以试着画一下第二个函数关于c2的图像.
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
如有投资本站或合作意向,请联系(010-);
邮箱:service@pinggu.org
投诉或不良信息处理:(010-)
论坛法律顾问:王进律师

我要回帖

更多关于 matlab解矩阵方程 的文章

 

随机推荐