24小时热门版块排行榜    

查看: 2449  |  回复: 7

muriel_xin

铜虫 (初入文坛)

[交流] 【求助】MATLAB 解方程组【已解决】 已有6人参与

请问哪位大侠知道,matlab里解方程组的程序?而且我要在得到解析解以后将参数系数代为具体的值再得到具体的解,请问谁知道怎么弄啊?谢谢了~~

[ Last edited by muriel_xin on 2011-4-11 at 22:39 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wodaifei

银虫 (小有名气)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
soliton923(金币+1): 谢谢参与 2011-04-09 23:57:48
你是求解线性方程组还是非线性方程组?说明白
要想拥有一切,就要让自己变得足够优秀!!!
2楼2011-03-22 17:01:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duxingxia

铜虫 (小有名气)

不明白你在说什么
3楼2011-03-22 17:39:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Missing洼

银虫 (小有名气)

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
soliton923(金币+2): 谢谢参与 2011-04-09 23:58:10
给你一个文件,希望有用1. 多项式的表达方式
        (1)用降幂排列的多项式的系数向量表示
【例1.6】  对多项式p=x4+2x3-5x+6和s=x2+2x+3,用多项式的系数表示为
>>p=[1,2,0,-5,6];
>>s=[1,2,3];
        (2)由根创建多项式
        >>r=[1,4,8];        %已知多项式的根为(1,4,8)
>>p=poly(r)
p =
             1   -13    44   -32
        >>poly2sym(p)         %将多项式的向量表示转变为符号形式
ans =
    x^3-13*x^2+44*x-32
2. 多项式的加减乘除
【例1.9】  求例1.6中多项式p,s的和、差、积、商.
conv(Convolution,卷积),deconv(deconvolution,去卷积,反褶积)
>>p=[1,2,0,-5,6];
>>s=[0,0,1,2,3];
%多项式加法,向量p,s必须同维,s扩维成s=[0,0,1,2,3]
>> p+s   
>>p-s   %多项式减法,向量p,s必须同维
  >>conv(p,s) %求多项式p和s的乘积,也是向量p,s的卷积
ans =
    0  0  1  4  7  1  -4  -3  18
>> p=[1,2,0,-5,6];s=[1,2,3];
>>[q,r]=deconv(p,s) %求多项式p除以s的商q和余项r,也是向量解卷积运算
q =
     1     0    -3
r =
     0     0     0     1    15
        即两多项式相除商为x2-3,余项为x+15.
3. 求多项式的根
compan( companion,同伴, 共事者)
格式:r=roots(p)  %求多项式p的根,即p(x)=0方程的解.
        pc=compan(p)  %求多项式p的伴随矩阵.
        r=eig(pc)  %多项式p的伴随矩阵的特征值等于多项式p的根.
【例】  求多项式p=x2+2x+6的根.
解一:
>>p=[1,2,6];
>>r=roots(p)
结果为:
r =
  -1.0000 + 2.2361i
  -1.0000 - 2.2361i
解二:
>> pc=compan(p);
>> r1=eig(pc)  
r1 =
   -1.0000 + 2.2361i
   -1.0000 - 2.2361i
        即多项式p=x2+2x+6的根为一对共轭虚数.
4. 多项式的微分和赋值运算
der(derivation,导出,微分),val(value价值, 数值)
格式:d=polyder(p)     %求多项式p的一阶微分.
        d=polyder(p,s)  %求多项式p,s乘积的一阶微分.
        [q,d]=polyder(p,s)  
        %求多项式p,s商p/s的一阶微分,q为分子,d为分母.
        y=polyval(p,a)          %计算x=a时多项式p的值.
【例】  求多项式p的一阶导数,求x= 1,3,5时多项式p(x)的值.
解:
>>p=[1,2,0,-5,6];
>>d= polyder(p)
结果为:
d=
  4  6  0  -5
        即多项式p(x)=x4+2x3-5x+6的一阶导数为:4x3+6x2-5.
>>x= 1:2:5;          %x取3个值
>>y=polyval(p,x)  %计算对应x的多项式p的3个值
结果为:
y =
  4   126   856
       
5. 非齐次线性方程组求解
rref( Reduced row echelon form.)
格式:X=A\b   %用矩阵左除法求线性方程组AX=b的解.
        C=[A,b]   %由系数矩阵A和常数列向量b构成增广矩阵C.
          D= rref (C)  %将C化成行最简行,则D的最后一列元素就是所求的解.
【例】  求线性方程组AX=b的解,其中,A=[2,3,5;3,6,8;6,5,4],b=[12;34;43].
解一:用矩阵左除法求解.
>>A=[2,3,5;3,6,8;6,5,4];
>>b=[12;34;43];
>>R=rank(A)  
>>X=A\b
结果为:
R =
     3
X =
    0.2759
   12.3793
   -5.1379
注意:b是列向量,求解前先检验A是否是满秩方阵.
         
解二:用函数rref求解.
>>C=[A,b]     
>>D=rref(C)
结果为:
C =
     2     3     5    12
     3     6     8    34
     6     5     4    43
D =
    1.0000          0          0    0.2759
          0    1.0000          0   12.3793
          0          0    1.0000   -5.1379
则D的最后一列元素就是所求的解,同解一结果相同.

       
表1.4  数据格式命令说明
命    令        数据显示(以sqrt(2)为例)        说    明
format short         1.4142        短格式,显示5位
format long         1.41421356237310        长格式,显示15位
format short e        1.4142e+000        最优化短格式,5位加指数
format long e        1.41421356237310 e+000        最优化长格式,15位加指数
format hex        3ff6a09e667f3bed        十六进制
format bank        1.41        货币银行格式,小数点后2位
format rat         1395/985        有理格式
format +        +        紧密格式,显示数据+,-,0
我的青春我做主!
4楼2011-03-22 22:03:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

leedobb

金虫 (正式写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
soliton923(金币+1): 谢谢参与 2011-04-09 23:58:27
引用回帖:
Originally posted by muriel_xin at 2011-03-17 20:41:03:
请问哪位大侠知道,matlab里解方程组的程序?而且我要在得到解析解以后将参数系数代为具体的值再得到具体的解,请问谁知道怎么弄啊?谢谢了~~

下面这个例子绝对能解决你的问题,用最强大的函数eval

比如

>>syms x y

>>f =x^3+y;

>>nx =4; ny = 5;
>>eval (strcat('x =',num2str(nx),'; y=',num2str(ny),';') ;
eval(f)

祝你好运
有一天,我打了个瞌睡就到了这里,但我知道我掉入了时光的循环中,虽得以永生,但只有第一个循环有意义。
5楼2011-03-23 12:35:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bahet

铁虫 (初入文坛)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
soliton923(金币+1): 谢谢参与 2011-04-09 23:58:43
{(0.051253@plus;1.74x1@plus;2981x1^{2})}{1@plus;157x1@plus;8.8x1^{2}@plus;12.67x3@plus;0.05x3^{2}@plus;48.5x1x3}-0.198x1 \frac{dx2}{dt}=\frac{(0.014@plus;259x1@plus;172x1^{2})}{(1@plus;157x1@plus;49x1^{2}@plus;25.133867x3@plus;0.0134x3^{2}@plus;1.17x1x3)}-0.075x2 \frac{dx3}{dt}=0.324@plus;\frac{264x1@plus;763x1^{2}1.89x2@plus;358x2^{2}}{1@plus;x1@plus;0.055x1^{2}@plus;0.224x2@plus;0.3x2^{2}8.4x1x2}@plus;0.133x4@plus;0.043x5-1.538x3 \frac{dx4}{dt}=ax3-0.1332x4 \frac{dx5}{dt}=0.0913x3-0.04365x5" target="_blank">[/img]
用matlab怎么编这个微分方程组的分岔图程序?
6楼2011-04-09 23:42:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

muriel_xin

铜虫 (初入文坛)

引用回帖:
Originally posted by Missing洼 at 2011-03-22 22:03:25:
给你一个文件,希望有用1. 多项式的表达方式
        (1)用降幂排列的多项式的系数向量表示
【例1.6】  对多项式p=x4+2x3-5x+6和s=x2+2x+3,用多项式的系数表示为
>>p=[1,2,0,-5,6];
>>s=[1,2,3];
         ...

谢谢了哈~
我现在已经解出来了,用了subs函数
7楼2011-04-11 16:59:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

muriel_xin

铜虫 (初入文坛)

引用回帖:
Originally posted by leedobb at 2011-03-23 12:35:25:
下面这个例子绝对能解决你的问题,用最强大的函数eval

比如

>>syms x y

>>f =x^3+y;

>>nx =4; ny = 5;
>>eval (strcat('x =',num2str(nx),'; y=',num2str(ny),';') ;
e ...

恩,谢谢~已经用subs函数解出来了
8楼2011-04-11 17:00:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 muriel_xin 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见