博客主机
A-A+

利用MATLAB化简表达式或者多项式

2016年04月30日 MATLAB 评论 12 条 阅读 882 次
摘要:

如何利用matlab化简表达式。matlab符号计算结果往往显得繁冗,主要原因是:计算结果中有些表达式会多次出现在不同地方。为了使表达式看起来简洁,需要运用相关指令对多表达式进行化简。

Matlab Logo

本文主要讲述一下如何利用matlab对表达式或者多项式进行简化。

相关指令介绍:

利用公因子法简化表达式的指令为:“subexpr”,她是替换表达式命令。

matlab算出来的解析表达式中,经常会有一部分在整个表达式的多个地方出现。而且常常用“simple”或者“simplify”等函数都无法化简,这时我们可以使用subexpr函数进行简化。

subexpr指令的语法规则:

RS=subexpr(expr)     expr为表达式,他表示从expr中提取出公因子sigma,并且把采用sigma重写的expr表达式赋给RS;

RS=subexpr(expr,'s')  从expr中提取出公因子,记为S,并把用S重写的expr赋给RS;这里可以指定公因子的名称为'S'

[RS,s]=subexpr(expr,'s')   该调用语法的效果和上一句“RS=subexpr(expr,'s')”是一样的。

需要注意的是expr可以是符号表达式或符号表达式矩阵。此外,还可以应用help指令学习subexpr的用法。

函数功能演示:

首先,通过命令“A=[ a b;c d]"生成符号矩阵A。然后利用"eig"函数对符号矩阵A进行特征值和特征向量的分解,指令为”[V,D]=eig(A)“,表示:求矩阵A的全部特征值,构成对角阵D,并求A的特征向量构成矩阵V。如下图所示:

如何化简表达式/多项式?

如何化简表达式/多项式?

 

自动识别表达式中的公因子

下面我们就开始使用subexpr函数指令进行公因子识别了,同学们要多多注意subexpr函数的具体应用哦!这里我们先使用一下第一步用法中的第一条,具体如下图所示:

MATLAB

D进行“指定公因子名称”的简化

    下面探索一下subexpr函数指令的另一个用法,即对提取的公因子制定名称,即把从D中提取出的公因子命名为s,然后用s重写的D赋给Ds;这里可以指定公因子的名称为's'。代码:Ds=subexpr(D,'s') ;具体如下图所示:

MATLAB2

VD同时简化,并且制定相同的公因式名称

下面我们将V、D合成为一个矩阵,然后同时对矩阵[V;D]提取公因式,这时将公因式命名为w,并用w重写矩阵[V;D]并命名为VDw。代码指令:[VDw,w]=subexpr([V;D],'w') ,具体结果如下图所示:

MATLAB3

注意:在subexpr指令的所有用法中,所提取的公因式是由matlab自动寻找的,人工是无法指定的。

 

 

 

 

标签:

12 条留言  访客:12 条  博主:0 条

  1. 望天

    这个函数用着挺不错啊。

  2. 一元营销

    确实不错,这个要实话实说!

  3. 易路营销

    到此一游,立贴为证!

  4. 增达信购

    博文值得拜读。受益了!

  5. zengda

    研究研究,学习学习。

  6. 三五美女网

    常来看看,受益匪浅。

  7. 2898653050

    看看您的博客!

  8. 834022148

    年中快乐!

  9. 增达信购

    虚心学习!!

  10. 蒂欧娜

    我就是随便看看!

  11. 781486524

    如果有一天,我潇洒死去,请记得,我来过这里!

  12. diouna

    你的博客确实好,三天不来受不了!

给我留言

博客简介 | 广告合作 | 版权说明 | 网站地图
Copyright © 望天博客 保留所有权利.  Theme by Ality 蜀ICP备15004325号-2

用户登录

分享到: